订单修改库存

This commit is contained in:
苏尹岚
2020-08-05 10:03:10 +08:00
parent 1b3c1fdd6a
commit 42b1c9ac17
2 changed files with 21 additions and 2 deletions

View File

@@ -313,7 +313,7 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
}
//修改商品库存
if err == nil {
err = modifySkusStock(order, true)
err = modifyOrderSkusStock(db, order, false)
}
} else {
globals.SugarLogger.Warnf("saveOrder create order:%v, error:%v", order, err)
@@ -324,7 +324,24 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
return isDuplicated, err
}
func modifySkusStock(order *model.GoodsOrder, isAdd bool) (err error) {
func modifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (err error) {
skus := order.Skus
for _, sku := range skus {
storeSkus, _ := dao.GetStoresSkusInfo(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID})
if len(storeSkus) == 0 {
globals.SugarLogger.Warnf("此订单商品没得storsku%v,%v", order.VendorOrderID, sku.SkuID)
continue
}
storeSku, stock := storeSkus[0], 0
if isAdd {
stock = storeSku.Stock + 1
} else {
stock = storeSku.Stock - 1
}
storeSku.Stock = stock
dao.UpdateEntity(db, storeSku, "Stock")
dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{}, []int{}, model.SyncFlagStockMask)
}
return err
}

View File

@@ -4789,3 +4789,5 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
}
return nil, hint, err
}