aa
This commit is contained in:
@@ -101,7 +101,7 @@ func (s *StoreAcctManager) UpdateStoreAcctBalance(ctx *jxcontext.Context, storeI
|
|||||||
storeAcct := &model.StoreAcct{
|
storeAcct := &model.StoreAcct{
|
||||||
StoreID: storeID,
|
StoreID: storeID,
|
||||||
}
|
}
|
||||||
txDB , _ := dao.Begin(db)
|
txDB, _ := dao.Begin(db)
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil || err != nil {
|
if r := recover(); r != nil || err != nil {
|
||||||
dao.Rollback(db, txDB)
|
dao.Rollback(db, txDB)
|
||||||
@@ -113,7 +113,7 @@ func (s *StoreAcctManager) UpdateStoreAcctBalance(ctx *jxcontext.Context, storeI
|
|||||||
if err = dao.GetEntity(db, storeAcct, "StoreID"); err != nil && dao.IsNoRowsError(err) {
|
if err = dao.GetEntity(db, storeAcct, "StoreID"); err != nil && dao.IsNoRowsError(err) {
|
||||||
//新增门店账单
|
//新增门店账单
|
||||||
dao.WrapAddIDCULEntity(storeAcct, ctx.GetUserName())
|
dao.WrapAddIDCULEntity(storeAcct, ctx.GetUserName())
|
||||||
if err = dao.CreateEntity(db, storeAcct); err != nil {
|
if err = dao.CreateEntityTx(txDB, storeAcct); err != nil {
|
||||||
dao.Rollback(db, txDB)
|
dao.Rollback(db, txDB)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -124,7 +124,7 @@ func (s *StoreAcctManager) UpdateStoreAcctBalance(ctx *jxcontext.Context, storeI
|
|||||||
} else {
|
} else {
|
||||||
storeAcct.AccountBalance -= price
|
storeAcct.AccountBalance -= price
|
||||||
}
|
}
|
||||||
if _, err = dao.UpdateEntity(db, storeAcct, "AccountBalance"); err != nil {
|
if _, err = dao.UpdateEntityTx(txDB, storeAcct, "AccountBalance"); err != nil {
|
||||||
dao.Rollback(db, txDB)
|
dao.Rollback(db, txDB)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -197,6 +197,17 @@ func UpdateEntity(db *DaoDB, item interface{}, cols ...string) (num int64, err e
|
|||||||
return num, err
|
return num, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func UpdateEntityTx(txDB orm.TxOrmer, item interface{}, cols ...string) (num int64, err error) {
|
||||||
|
if txDB == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
num, err = txDB.Update(item, cols...)
|
||||||
|
if err != nil && !IsDuplicateError(err) {
|
||||||
|
globals.SugarLogger.Errorf("UpdateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err)
|
||||||
|
}
|
||||||
|
return num, err
|
||||||
|
}
|
||||||
|
|
||||||
func CreateEntity(db *DaoDB, item interface{}) (err error) {
|
func CreateEntity(db *DaoDB, item interface{}) (err error) {
|
||||||
if db == nil {
|
if db == nil {
|
||||||
db = GetDB()
|
db = GetDB()
|
||||||
|
|||||||
Reference in New Issue
Block a user