修改规格刷京西价修改

This commit is contained in:
苏尹岚
2020-03-23 18:28:14 +08:00
parent 0ae380e94b
commit b0e33ac9aa

View File

@@ -1121,21 +1121,14 @@ func UpdateSku(ctx *jxcontext.Context, skuID int, payload map[string]interface{}
} }
func refreshStoreSkuPrice(ctx *jxcontext.Context, db *dao.DaoDB, skuID int) (err error) { func refreshStoreSkuPrice(ctx *jxcontext.Context, db *dao.DaoDB, skuID int) (err error) {
dao.Begin(db)
defer func() {
if r := recover(); r != nil || err != nil {
dao.Rollback(db)
if r != nil {
panic(r)
}
}
}()
list, err := dao.GetStoreSkusAndSkuName(db, nil, []int{skuID}, nil) list, err := dao.GetStoreSkusAndSkuName(db, nil, []int{skuID}, nil)
for _, v := range list { task := tasksch.NewParallelTask("refreshStoreSkuPrice", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(true), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
v := batchItemList[0].(*dao.StoreSkuAndName)
storeID := v.StoreID storeID := v.StoreID
storeDetail, err := dao.GetStoreDetail(db, storeID, model.VendorIDJX) storeDetail, _ := dao.GetStoreDetail(db, storeID, model.VendorIDJX)
if err != nil { if storeDetail == nil {
return nil return retVal, err
} }
storeSku := &model.StoreSkuBind{} storeSku := &model.StoreSkuBind{}
storeSku.ID = v.BindID storeSku.ID = v.BindID
@@ -1146,9 +1139,21 @@ func refreshStoreSkuPrice(ctx *jxcontext.Context, db *dao.DaoDB, skuID int) (err
storeSku.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), int(storeSku.Price)) storeSku.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), int(storeSku.Price))
storeSku.LastOperator = ctx.GetUserName() storeSku.LastOperator = ctx.GetUserName()
storeSku.UpdatedAt = time.Now() storeSku.UpdatedAt = time.Now()
dao.UpdateEntity(db, storeSku, "Price", "JdSyncStatus", "MtwmSyncStatus", "EbaiSyncStatus", "JxPrice") dao.Begin(db)
defer func() {
if r := recover(); r != nil || err != nil {
dao.Rollback(db)
if r != nil {
panic(r)
} }
}
}()
dao.UpdateEntity(db, storeSku, "Price", "JdSyncStatus", "MtwmSyncStatus", "EbaiSyncStatus", "JxPrice")
dao.Commit(db) dao.Commit(db)
return retVal, err
}, list)
tasksch.HandleTask(task, nil, true).Run()
_, err = task.GetResult(0)
return err return err
} }