diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 8184c8fd9..6be3c2546 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -1,7 +1,6 @@ package cms import ( - "encoding/json" "fmt" "git.rosy.net.cn/jx-callback/globals" beego "github.com/astaxie/beego/server/web" @@ -52,49 +51,49 @@ func CopyOnStoreSkuToOther(ctx *jxcontext.Context, fromVendorStoreId, toStoreId //} case 2: // 同步分类 - fromCategoryList, err := fromApi.RetailCatList(utils.Int2Str(fromVendorStoreId)) - globals.SugarLogger.Debugf("err ============ %v", err) - for _, v := range fromCategoryList { - categoryErr := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ - CategoryCode: v.Code, - Sequence: v.Sequence, - }) - if categoryErr != nil { - globals.SugarLogger.Debugf("err := RetailCatUpdate : %v", categoryErr) - } - if v.Children != nil && len(v.Children) != 0 { - for _, c := range v.Children { - if err3 := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ - CategoryNameOrigin: v.Name, - //CategoryCodeOrigin: v.Code, - //CategoryCode: v.Code, - SecondaryCategoryCode: c.Code, - SecondaryCategoryName: c.Name, - Sequence: c.Sequence, - }); err3 != nil { - globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) - } - } - } - } + //fromCategoryList, err := fromApi.RetailCatList(utils.Int2Str(fromVendorStoreId)) + //globals.SugarLogger.Debugf("err ============ %v", err) + //for _, v := range fromCategoryList { + // categoryErr := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ + // CategoryCode: v.Code, + // Sequence: v.Sequence, + // }) + // if categoryErr != nil { + // globals.SugarLogger.Debugf("err := RetailCatUpdate : %v", categoryErr) + // } + // if v.Children != nil && len(v.Children) != 0 { + // for _, c := range v.Children { + // if err3 := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ + // CategoryNameOrigin: v.Name, + // //CategoryCodeOrigin: v.Code, + // //CategoryCode: v.Code, + // SecondaryCategoryCode: c.Code, + // SecondaryCategoryName: c.Name, + // Sequence: c.Sequence, + // }); err3 != nil { + // globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + // } + // } + // } + //} case 3: - //i := offSet - //for { - // // 同步商品 - // fromFoodList, err1 := fromApi.RetailListAll(utils.Int2Str(fromVendorStoreId), i) - // if len(fromFoodList) == 0 || fromFoodList == nil { - // return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) - // } - // - // if err := BatchInitData(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { - // globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) - // } - // if len(fromFoodList) < 100 { - // break - // } - // i++ - //} + i := offSet + for { + // 同步商品 + fromFoodList, err1 := fromApi.RetailListAll(utils.Int2Str(fromVendorStoreId), i) + if len(fromFoodList) == 0 || fromFoodList == nil { + return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) + } + + if err := BatchInitData(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { + globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) + } + if len(fromFoodList) < 100 { + break + } + i++ + } } return @@ -171,12 +170,12 @@ func BatchInitData(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi *mt foodData[mtwmapi.KeyAppFoodCode] = time.Now().UnixNano() + int64(i*3) } - skus := []map[string]interface{}{ - map[string]interface{}{ - "sku_id": foodData[mtwmapi.KeyAppFoodCode], - }, - } - foodData["skus"] = skus + //skus := []map[string]interface{}{ + // map[string]interface{}{ + // "sku_id": foodData[mtwmapi.KeyAppFoodCode], + // }, + //} + foodData["skus"] = storeSku.SkuList foodData["name"] = utils.LimitUTF8StringLen(storeSku.Name, mtwmapi.MaxSkuNameCharCount) foodData["description"] = storeSku.Description foodData["price"] = storeSku.Price @@ -207,29 +206,29 @@ func BatchInitData(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi *mt foodData["sequence"] = storeSku.Sequence foodData["tag_id"] = storeSku.TagID - skusAttr := make([]*Skus, 0, 0) - if err := json.Unmarshal([]byte(storeSku.Skus), &skusAttr); err != nil { - return err - } - //skus2 := make([]*Skus, 0, 0) - for i2 := 0; i2 < len(skusAttr); i2++ { - if skusAttr[i2].Weight != "" && skusAttr[i2].WeightForUnit != "" { - skusAttr[i2].WeightForUnit = "" - } - //skus2 = append(skus2, skusAttr[i2]) - skus[0]["spec"] = skusAttr[i2].Spec - skus[0]["price"] = skusAttr[i2].Price - skus[0]["stock"] = skusAttr[i2].Stock - if skusAttr[i2].Upc != "" { - skus[0]["upc"] = skusAttr[i2].Upc - } - skus[0]["ladder_box_num"] = skusAttr[i2].LadderBoxNum - skus[0]["ladder_box_price"] = skusAttr[i2].BoxPrice - if foodData["tag_id"] != nil { - skus[0]["weight"] = skusAttr[i2].Weight // weight字段仅限服饰鞋帽、美妆、日用品、母婴、生鲜果蔬、生活超市下的便利店/超市门店品类的商家使用 - } - break - } + //skusAttr := make([]*Skus, 0, 0) + //if err := json.Unmarshal([]byte(storeSku.Skus), &skusAttr); err != nil { + // return err + //} + ////skus2 := make([]*Skus, 0, 0) + //for i2 := 0; i2 < len(skusAttr); i2++ { + // if skusAttr[i2].Weight != "" && skusAttr[i2].WeightForUnit != "" { + // skusAttr[i2].WeightForUnit = "" + // } + // //skus2 = append(skus2, skusAttr[i2]) + // skus[0]["spec"] = skusAttr[i2].Spec + // skus[0]["price"] = skusAttr[i2].Price + // skus[0]["stock"] = skusAttr[i2].Stock + // if skusAttr[i2].Upc != "" { + // skus[0]["upc"] = skusAttr[i2].Upc + // } + // skus[0]["ladder_box_num"] = skusAttr[i2].LadderBoxNum + // skus[0]["ladder_box_price"] = skusAttr[i2].BoxPrice + // if foodData["tag_id"] != nil { + // skus[0]["weight"] = skusAttr[i2].Weight // weight字段仅限服饰鞋帽、美妆、日用品、母婴、生鲜果蔬、生活超市下的便利店/超市门店品类的商家使用 + // } + // break + //} foodDataList[i] = foodData }