diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index 1db00161e..8d2cb061c 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -372,6 +372,13 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e } continue } + dao.Begin(db) + defer func() { + if r := recover(); r != nil { + dao.Rollback(db) + panic(r) + } + }() if isAdd { stock = storeSku.Stock + sku.Count } else { @@ -395,6 +402,7 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e if order.VendorID != model.VendorIDJX { dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID}, model.SyncFlagStockMask) } + dao.Commit(db) } return err }