diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 489fdd058..f8bf90569 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -2836,9 +2836,8 @@ func FocusStoreSkusByExcelBin(ctx *jxcontext.Context, reader io.Reader, isAsync, taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { store := batchItemList[0].(*model.Store) var ( - skuBindInfos []*StoreSkuBindInfo - skuNameMap = make(map[int]int) - skuInfoMap = make(map[int][]*StoreSkuBindSkuInfo) + skuNameMap = make(map[int]int) + skuInfoMap = make(map[int][]*StoreSkuBindSkuInfo) ) for _, v := range skuList { var ( @@ -2879,23 +2878,19 @@ func FocusStoreSkusByExcelBin(ctx *jxcontext.Context, reader io.Reader, isAsync, IsSale: 1, Skus: skuInfoMap[k], } - skuBindInfos = append(skuBindInfos, skuBindInfo) + retVal = []*StoreSkuBindInfo{skuBindInfo} } - tUpdate := &tUpdateStoresSkus{ - StoreID: store.ID, - SkuBindInfos: skuBindInfos, - } - retVal = []*tUpdateStoresSkus{tUpdate} return retVal, err } taskParallel := tasksch.NewParallelTask("根据skuID关注商品", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, taskFunc, storeList) tasksch.HandleTask(taskParallel, task, true).Run() result1, _ = taskParallel.GetResult(0) case 2: + var skuBindInfos []*StoreSkuBindInfo for _, v := range result1 { - tUpdate := v.(*tUpdateStoresSkus) - UpdateStoresSkusByBind(ctx, tUpdate.SkuBindInfos, true, true) + skuBindInfos = append(skuBindInfos, v.(*StoreSkuBindInfo)) } + UpdateStoresSkusByBind(ctx, skuBindInfos, true, true) } return result, err } @@ -2950,7 +2945,6 @@ func FocusStoreSkusBySku(ctx *jxcontext.Context, skuIDs []int, isAsync, isContin case 1: taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { store := batchItemList[0].(*model.Store) - var skuBindInfos []*StoreSkuBindInfo for k, v := range skuNameMap { var price int focusList, _ := dao.GetStoreSkuBindByNameID(db, store.ID, k, model.StoreSkuBindStatusNormal) @@ -2976,23 +2970,19 @@ func FocusStoreSkusBySku(ctx *jxcontext.Context, skuIDs []int, isAsync, isContin IsFocus: 1, Skus: v, } - skuBindInfos = append(skuBindInfos, skuBindInfo) + retVal = []*StoreSkuBindInfo{skuBindInfo} } - tUpdate := &tUpdateStoresSkus{ - StoreID: store.ID, - SkuBindInfos: skuBindInfos, - } - retVal = []*tUpdateStoresSkus{tUpdate} return retVal, err } taskParallel := tasksch.NewParallelTask("根据skuID部分关注商品", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, taskFunc, storeList) tasksch.HandleTask(taskParallel, task, true).Run() result1, _ = taskParallel.GetResult(0) case 2: + var skuBindInfos []*StoreSkuBindInfo for _, v := range result1 { - tUpdate := v.(*tUpdateStoresSkus) - UpdateStoresSkusByBind(ctx, tUpdate.SkuBindInfos, isAsync, isContinueWhenError) + skuBindInfos = append(skuBindInfos, v.(*StoreSkuBindInfo)) } + UpdateStoresSkusByBind(ctx, skuBindInfos, isAsync, isContinueWhenError) } return result, err } @@ -3009,12 +2999,12 @@ func FocusStoreSkusBySku(ctx *jxcontext.Context, skuIDs []int, isAsync, isContin func AutoFocusStoreSkusWithoutFocusForTopSkus(ctx *jxcontext.Context) (err error) { db := dao.GetDB() + var skuBindInfoList []*StoreSkuBindInfo storeList, err := dao.GetStoreList(db, nil, nil, "") for _, v := range storeList { var ( - skuName []*model.SkuName - skuNameMap = make(map[int]int) - skuBindInfoList []*StoreSkuBindInfo + skuName []*model.SkuName + skuNameMap = make(map[int]int) ) sql := ` SELECT DISTINCT a.name_id id @@ -3065,8 +3055,8 @@ func AutoFocusStoreSkusWithoutFocusForTopSkus(ctx *jxcontext.Context) (err error } } } - UpdateStoresSkusByBind(ctx, skuBindInfoList, true, true) } + UpdateStoresSkusByBind(ctx, skuBindInfoList, true, true) return err }