From fa3ed06aa1ffa889107c6b22a807987d5210e578 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:19:55 +0800 Subject: [PATCH 01/17] 1 --- business/jxstore/cms/system_store_sku.go | 68 +++++++++--------------- 1 file changed, 26 insertions(+), 42 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index dbacd121c..37b181fc4 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -37,30 +37,15 @@ func CopyOnStoreSkuToOther(ctx *jxcontext.Context, fromStoreId, toStoreId string case model.VendorIDMTWM: return CopyMtToMT(ctx, fromStore, toStore, isAsync, offSet) case model.VendorIDEBAI: - return CopyEBaiToEBai(ctx, fromStore, toStore, isAsync) + return CopyEBaiToEBai(ctx, fromStore, toStore, isAsync, offSet) default: return "", fmt.Errorf("暂时还不支持") } } // CopyEBaiToEBai 饿了么商品复制到饿了么 -func CopyEBaiToEBai(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool) (hint string, err error) { - VendorCategoryIDMap := map[int64]int64{ - 170606586622696: 170625362622152, - 170606586622697: 170625362622153, - 170606586722698: 170625362622154, - 170606586822844: 170625362622155, - 170606586922845: 170625362722162, - 170606587022847: 170625362722163, - 170606587122869: 170625362722164, - 170606587222899: 170625362722165, - 170606587322900: 170625362822166, - 170606587422901: 170625362822167, - 170606587522928: 170625362822168, - 170606587622931: 170625362822169, - 170606587722932: 170625362922170, - 170606587822933: 170625362922171, - } +func CopyEBaiToEBai(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offset int) (hint string, err error) { + VendorCategoryIDMap := map[int64]int64{} api := api.EbaiAPI taskName := fmt.Sprintf("将饿了么平台门店[%s],分类和商品复制到[%s]", fromStore.VendorStoreID, toStore.VendorStoreID) config := tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(false) @@ -75,29 +60,29 @@ func CopyEBaiToEBai(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, // return nil, errs[0] //} case 2: - // 同步分类 - //fromCategoryList, err := api.ShopCategoryGet(utils.Int2Str(fromStore.ID)) - //if err != nil { - // return nil, err - //} - //for _, v := range fromCategoryList { - // parentID, categoryErr := api.ShopCategoryCreate(utils.Int2Str(toStore.ID), 0, v.Name, v.Rank) - // if categoryErr != nil { - // globals.SugarLogger.Debugf("err := RetailCatUpdate : %v", categoryErr) - // continue - // } - // VendorCategoryIDMap[v.CategoryID] = parentID - // if v.Children != nil && len(v.Children) != 0 { - // for _, c := range v.Children { - // childrenCateId, err := api.ShopCategoryCreate(utils.Int2Str(toStore.ID), parentID, c.Name, c.Rank) - // if err != nil { - // globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err) - // continue - // } - // VendorCategoryIDMap[c.CategoryID] = childrenCateId - // } - // } - //} + //同步分类 + fromCategoryList, err := api.ShopCategoryGet(utils.Int2Str(fromStore.ID)) + if err != nil { + return nil, err + } + for _, v := range fromCategoryList { + parentID, categoryErr := api.ShopCategoryCreate(utils.Int2Str(toStore.ID), 0, v.Name, v.Rank) + if categoryErr != nil { + globals.SugarLogger.Debugf("err := RetailCatUpdate : %v", categoryErr) + continue + } + VendorCategoryIDMap[v.CategoryID] = parentID + if v.Children != nil && len(v.Children) != 0 { + for _, c := range v.Children { + childrenCateId, err := api.ShopCategoryCreate(utils.Int2Str(toStore.ID), parentID, c.Name, c.Rank) + if err != nil { + globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err) + continue + } + VendorCategoryIDMap[c.CategoryID] = childrenCateId + } + } + } case 3: i := 1 for { @@ -108,7 +93,6 @@ func CopyEBaiToEBai(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, if len(fromFoodList.List) == 0 || fromFoodList == nil { return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) } - globals.SugarLogger.Debugf("============len %d", len(fromFoodList.List)) if err = BatchInitSkuEBai2EBai(ctx, fromFoodList.List, api, utils.Int2Str(toStore.ID), VendorCategoryIDMap); err != nil { globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) } From 22867e30830c9cb374c8df6bdd4cf3f2f72702fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:27:53 +0800 Subject: [PATCH 02/17] 1 --- business/jxstore/cms/system_store_sku.go | 36 +++++++++++++----------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 37b181fc4..3f4344023 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -176,7 +176,9 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA //} case 2: // 同步分类 - fromCategoryList, _ := fromAPI.RetailCatList(fromStore.VendorStoreID) + fromCategoryList, err := fromAPI.RetailCatList(fromStore.VendorStoreID) + globals.SugarLogger.Debugf("==fromCategoryList= : %d", len(fromCategoryList)) + globals.SugarLogger.Debugf("==fromCategoryList= : %v", err) for _, v := range fromCategoryList { categoryErr := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryCode: v.Code, @@ -200,22 +202,22 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA } case 3: - i := offSet - for { - // 同步商品 - fromFoodList, err1 := fromAPI.RetailListAll(fromStore.VendorStoreID, i) - if len(fromFoodList) == 0 || fromFoodList == nil { - return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) - } - - if err = BatchInitSkuMT2MT(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(fromStore.VendorStoreID, i) + // if len(fromFoodList) == 0 || fromFoodList == nil { + // return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) + // } + // + // if err = BatchInitSkuMT2MT(ctx, fromFoodList, toAPI, toStore.VendorStoreID, i); err != nil { + // globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) + // } + // if len(fromFoodList) < 100 { + // break + // } + // i++ + //} } return From fcc0a3fcd4dfa97bc4685309cf072dcfab936f4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:38:28 +0800 Subject: [PATCH 03/17] 1 --- business/jxstore/cms/system_store_sku.go | 36 ++++++++++++------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 3f4344023..9548e59ea 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -153,12 +153,12 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t // CopyMtToMT 美团商品复制到美团 func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) - if fromStore.VendorOrgCode == globals.Mtwm2Code { + if fromStore.VendorOrgCode == "5873" { fromAPI.SetToken(fromStore.MtwmToken) } toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) - if toStore.VendorOrgCode == globals.Mtwm2Code { + if toStore.VendorOrgCode == "5873" { toAPI.SetToken(toStore.MtwmToken) } @@ -202,22 +202,22 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA } case 3: - //i := offSet - //for { - // // 同步商品 - // fromFoodList, err1 := fromAPI.RetailListAll(fromStore.VendorStoreID, i) - // if len(fromFoodList) == 0 || fromFoodList == nil { - // return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) - // } - // - // if err = BatchInitSkuMT2MT(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(fromStore.VendorStoreID, i) + if len(fromFoodList) == 0 || fromFoodList == nil { + return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) + } + + if err = BatchInitSkuMT2MT(ctx, fromFoodList, toAPI, toStore.VendorStoreID, i); err != nil { + globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) + } + if len(fromFoodList) < 100 { + break + } + i++ + } } return From 6ca1ac444e6bd0a7798ced5ed98d2f0674bef37a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:42:10 +0800 Subject: [PATCH 04/17] 1 --- business/jxstore/cms/system_store_sku.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 9548e59ea..ce379d9c7 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -154,11 +154,13 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) if fromStore.VendorOrgCode == "5873" { + globals.SugarLogger.Debugf("=====token1 := %s", fromStore.MtwmToken) fromAPI.SetToken(fromStore.MtwmToken) } toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) if toStore.VendorOrgCode == "5873" { + globals.SugarLogger.Debugf("=====token2 := %s", fromStore.MtwmToken) toAPI.SetToken(toStore.MtwmToken) } From 7d49a5a40a0c8009006f60fbd66a91f4f25558fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:46:28 +0800 Subject: [PATCH 05/17] 1 --- business/jxstore/cms/system_store_sku.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index ce379d9c7..7e0964c36 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -154,13 +154,13 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) if fromStore.VendorOrgCode == "5873" { - globals.SugarLogger.Debugf("=====token1 := %s", fromStore.MtwmToken) + globals.SugarLogger.Debugf("=====token1 := %s", utils.Format4Output(fromStore, false)) fromAPI.SetToken(fromStore.MtwmToken) } toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) if toStore.VendorOrgCode == "5873" { - globals.SugarLogger.Debugf("=====token2 := %s", fromStore.MtwmToken) + globals.SugarLogger.Debugf("=====token1 := %s", utils.Format4Output(toStore, false)) toAPI.SetToken(toStore.MtwmToken) } From 818f4f87fac4a5b2f496fc9cb7bcfaaa523a985d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 18:51:54 +0800 Subject: [PATCH 06/17] 1 --- business/jxstore/cms/system_store_sku.go | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 7e0964c36..a806ea8f9 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -154,13 +154,11 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) if fromStore.VendorOrgCode == "5873" { - globals.SugarLogger.Debugf("=====token1 := %s", utils.Format4Output(fromStore, false)) fromAPI.SetToken(fromStore.MtwmToken) } toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) if toStore.VendorOrgCode == "5873" { - globals.SugarLogger.Debugf("=====token1 := %s", utils.Format4Output(toStore, false)) toAPI.SetToken(toStore.MtwmToken) } @@ -178,9 +176,9 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA //} case 2: // 同步分类 - fromCategoryList, err := fromAPI.RetailCatList(fromStore.VendorStoreID) + globals.SugarLogger.Debugf("==fromCategoryList= : %s", utils.Format4Output(fromAPI, false)) + fromCategoryList, _ := fromAPI.RetailCatList(fromStore.VendorStoreID) globals.SugarLogger.Debugf("==fromCategoryList= : %d", len(fromCategoryList)) - globals.SugarLogger.Debugf("==fromCategoryList= : %v", err) for _, v := range fromCategoryList { categoryErr := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryCode: v.Code, From 9207af34452394b90ad50b6a412465ab326f2f3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 19:00:24 +0800 Subject: [PATCH 07/17] 1 --- business/jxstore/cms/system_store_sku.go | 30 ++++++++++++++---------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index a806ea8f9..d9048fc29 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -152,16 +152,6 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t // CopyMtToMT 美团商品复制到美团 func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { - fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) - if fromStore.VendorOrgCode == "5873" { - fromAPI.SetToken(fromStore.MtwmToken) - } - - toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) - if toStore.VendorOrgCode == "5873" { - toAPI.SetToken(toStore.MtwmToken) - } - taskName := fmt.Sprintf("将美团平台门店[%s],分类和商品复制到[%s]", fromStore.VendorStoreID, toStore.VendorStoreID) config := tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(false) work := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { @@ -175,10 +165,17 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA // return nil, errs[0] //} case 2: + fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) + if fromStore.VendorOrgCode == "5873" { + fromAPI.SetToken(fromStore.MtwmToken) + } + + toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) + if toStore.VendorOrgCode == "5873" { + toAPI.SetToken(toStore.MtwmToken) + } // 同步分类 - globals.SugarLogger.Debugf("==fromCategoryList= : %s", utils.Format4Output(fromAPI, false)) fromCategoryList, _ := fromAPI.RetailCatList(fromStore.VendorStoreID) - globals.SugarLogger.Debugf("==fromCategoryList= : %d", len(fromCategoryList)) for _, v := range fromCategoryList { categoryErr := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryCode: v.Code, @@ -203,6 +200,15 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA case 3: i := offSet + fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) + if fromStore.VendorOrgCode == "5873" { + fromAPI.SetToken(fromStore.MtwmToken) + } + + toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) + if toStore.VendorOrgCode == "5873" { + toAPI.SetToken(toStore.MtwmToken) + } for { // 同步商品 fromFoodList, err1 := fromAPI.RetailListAll(fromStore.VendorStoreID, i) From bfee6687c3e3f71d0054369033b3225304c88a55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 20:24:58 +0800 Subject: [PATCH 08/17] 1 --- business/jxstore/cms/system_store_sku.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index d9048fc29..61d73206f 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -174,8 +174,13 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA if toStore.VendorOrgCode == "5873" { toAPI.SetToken(toStore.MtwmToken) } + globals.SugarLogger.Debugf("========from := %s", fromAPI.GetToken()) + globals.SugarLogger.Debugf("========to := %s", toAPI.GetToken()) // 同步分类 - fromCategoryList, _ := fromAPI.RetailCatList(fromStore.VendorStoreID) + fromCategoryList, err := fromAPI.RetailCatList(fromStore.VendorStoreID) + if len(fromCategoryList) == model.NO { + return nil, err + } for _, v := range fromCategoryList { categoryErr := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryCode: v.Code, From 6c2030ca6088fdd8606292bbe8c99c21ee64d5c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 21:29:12 +0800 Subject: [PATCH 09/17] 1 --- business/jxstore/cms/system_store_sku.go | 47 ++++++++++++------------ 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 61d73206f..9fd26f350 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -9,6 +9,7 @@ import ( "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/globals" "git.rosy.net.cn/jx-callback/globals/api" + beego "github.com/astaxie/beego/server/web" "time" "git.rosy.net.cn/baseapi/platformapi/mtwmapi" @@ -152,6 +153,23 @@ func BatchInitSkuEBai2EBai(ctx *jxcontext.Context, fromSku []*ebaiapi.SkuInfo, t // CopyMtToMT 美团商品复制到美团 func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isAsync bool, offSet int) (hint string, err error) { + var fromApi *mtwmapi.API + var toApi *mtwmapi.API + + if fromStore.VendorOrgCode == globals.Mtwm2Code { + fromApi = mtwmapi.New(beego.AppConfig.DefaultString("mtwmAppID2", ""), beego.AppConfig.DefaultString("mtwmSecret2", ""), beego.AppConfig.DefaultString("mtwmCallbackURL2", ""), "") + fromApi.SetToken(fromStore.MtwmToken) + } else { + fromApi = partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) + } + + if toStore.VendorOrgCode == globals.Mtwm2Code { + toApi = mtwmapi.New(beego.AppConfig.DefaultString("mtwmAppID2", ""), beego.AppConfig.DefaultString("mtwmSecret2", ""), beego.AppConfig.DefaultString("mtwmCallbackURL2", ""), "") + toApi.SetToken(toStore.MtwmToken) + } else { + toApi = partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) + } + taskName := fmt.Sprintf("将美团平台门店[%s],分类和商品复制到[%s]", fromStore.VendorStoreID, toStore.VendorStoreID) config := tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(false) work := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { @@ -165,24 +183,14 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA // return nil, errs[0] //} case 2: - fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) - if fromStore.VendorOrgCode == "5873" { - fromAPI.SetToken(fromStore.MtwmToken) - } - toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) - if toStore.VendorOrgCode == "5873" { - toAPI.SetToken(toStore.MtwmToken) - } - globals.SugarLogger.Debugf("========from := %s", fromAPI.GetToken()) - globals.SugarLogger.Debugf("========to := %s", toAPI.GetToken()) // 同步分类 - fromCategoryList, err := fromAPI.RetailCatList(fromStore.VendorStoreID) + fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) if len(fromCategoryList) == model.NO { return nil, err } for _, v := range fromCategoryList { - categoryErr := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ + categoryErr := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryCode: v.Code, Sequence: v.Sequence, }) @@ -191,7 +199,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA } if v.Children != nil && len(v.Children) != 0 { for _, c := range v.Children { - if err3 := toAPI.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ + if err3 := toApi.RetailCatUpdate(toStore.VendorStoreID, v.Name, &mtwmapi.Param4UpdateCat{ CategoryNameOrigin: v.Name, SecondaryCategoryCode: c.Code, SecondaryCategoryName: c.Name, @@ -205,23 +213,14 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA case 3: i := offSet - fromAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, fromStore.VendorOrgCode).(*mtwmapi.API) - if fromStore.VendorOrgCode == "5873" { - fromAPI.SetToken(fromStore.MtwmToken) - } - - toAPI := partner.CurAPIManager.GetAPI(model.VendorIDMTWM, toStore.VendorOrgCode).(*mtwmapi.API) - if toStore.VendorOrgCode == "5873" { - toAPI.SetToken(toStore.MtwmToken) - } for { // 同步商品 - fromFoodList, err1 := fromAPI.RetailListAll(fromStore.VendorStoreID, i) + fromFoodList, err1 := fromApi.RetailListAll(fromStore.VendorStoreID, i) if len(fromFoodList) == 0 || fromFoodList == nil { return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) } - if err = BatchInitSkuMT2MT(ctx, fromFoodList, toAPI, toStore.VendorStoreID, i); err != nil { + if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) } if len(fromFoodList) < 100 { From 5b0d4fb4e7d3e958e71eb2aa24d53c219616393b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 21:55:14 +0800 Subject: [PATCH 10/17] 1 --- business/jxstore/cms/system_store_sku.go | 42 ++++++++++++++---------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 9fd26f350..b94ee695c 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -189,28 +189,33 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA if len(fromCategoryList) == model.NO { return nil, 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, - SecondaryCategoryCode: c.Code, - SecondaryCategoryName: c.Name, - Sequence: c.Sequence, - }); err3 != nil { - globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + toCategoryList, err := toApi.RetailCatList(fromStore.VendorStoreID) + if len(toCategoryList) == model.NO { + return nil, err + } + if len(fromCategoryList) != len(toCategoryList) { + 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, + SecondaryCategoryCode: c.Code, + SecondaryCategoryName: c.Name, + Sequence: c.Sequence, + }); err3 != nil { + globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + } } } } } - case 3: i := offSet for { @@ -227,6 +232,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA break } i++ + time.Sleep(1 * time.Second) } } From 9f74f11ccdfe8f1e0ab5d197b0a2cf989d956e97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 22:01:16 +0800 Subject: [PATCH 11/17] 1 --- business/jxstore/cms/system_store_sku.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index b94ee695c..72566586c 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -189,7 +189,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA if len(fromCategoryList) == model.NO { return nil, err } - toCategoryList, err := toApi.RetailCatList(fromStore.VendorStoreID) + toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) if len(toCategoryList) == model.NO { return nil, err } @@ -232,7 +232,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA break } i++ - time.Sleep(1 * time.Second) + time.Sleep(500 * time.Millisecond) } } From f0721c3fb98d550feb1fb1c40440de8882ad5337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 22:13:40 +0800 Subject: [PATCH 12/17] 1 --- business/jxstore/cms/system_store_sku.go | 64 ++++++++++++------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 72566586c..e16bba1f8 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -185,37 +185,37 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA case 2: // 同步分类 - fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) - if len(fromCategoryList) == model.NO { - return nil, err - } - toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) - if len(toCategoryList) == model.NO { - return nil, err - } - if len(fromCategoryList) != len(toCategoryList) { - 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, - SecondaryCategoryCode: c.Code, - SecondaryCategoryName: c.Name, - Sequence: c.Sequence, - }); err3 != nil { - globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) - } - } - } - } - } + //fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) + //if len(fromCategoryList) == model.NO { + // return nil, err + //} + //toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) + //if len(toCategoryList) == model.NO { + // return nil, err + //} + //if len(fromCategoryList) != len(toCategoryList) { + // 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, + // SecondaryCategoryCode: c.Code, + // SecondaryCategoryName: c.Name, + // Sequence: c.Sequence, + // }); err3 != nil { + // globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + // } + // } + // } + // } + //} case 3: i := offSet for { @@ -228,11 +228,11 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) } + globals.SugarLogger.Debugf("==============i: %d len: %s", i, len(fromFoodList)) if len(fromFoodList) < 100 { break } i++ - time.Sleep(500 * time.Millisecond) } } From c670018c1acc978ce76319c06d0cd9928125f6d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 22:26:58 +0800 Subject: [PATCH 13/17] 1 --- business/jxstore/cms/system_store_sku.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index e16bba1f8..2b0af56e7 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -228,7 +228,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) } - globals.SugarLogger.Debugf("==============i: %d len: %s", i, len(fromFoodList)) + globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) if len(fromFoodList) < 100 { break } @@ -261,7 +261,10 @@ func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi } skus := make([]interface{}, 0) - for _, v := range storeSku.SkuList { + for k, v := range storeSku.SkuList { + if v.SkuId == "" { + v.SkuId = utils.Int64ToStr(time.Now().UnixNano() + int64(k)) + } mapSkuList := utils.Struct2MapByJson(v) if v.BoxNum == "" { delete(mapSkuList, "box_num") From bfb05c5cac110fa2cc32e4d66ee9bcbb0e7e7823 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 22:56:38 +0800 Subject: [PATCH 14/17] 1 --- business/jxstore/cms/system_store_sku.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 2b0af56e7..92ac542a0 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -230,7 +230,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA } globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) if len(fromFoodList) < 100 { - break + return nil, nil } i++ } @@ -261,9 +261,9 @@ func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi } skus := make([]interface{}, 0) - for k, v := range storeSku.SkuList { + for _, v := range storeSku.SkuList { if v.SkuId == "" { - v.SkuId = utils.Int64ToStr(time.Now().UnixNano() + int64(k)) + v.SkuId = storeSku.AppFoodCode } mapSkuList := utils.Struct2MapByJson(v) if v.BoxNum == "" { @@ -301,6 +301,7 @@ func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi foodData["picture_contents"] = storeSku.PictureContents foodData["sequence"] = storeSku.Sequence foodData["tag_id"] = storeSku.TagID + foodData["upc"] = "no_upc" foodDataList[i] = foodData } From dbe1af2e952abd2a0f24d4054bc8ac704dee3b82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 23:20:56 +0800 Subject: [PATCH 15/17] 1 --- business/jxstore/cms/system_store_sku.go | 105 +++++++++++------------ 1 file changed, 49 insertions(+), 56 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 92ac542a0..f174a9f82 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -176,69 +176,62 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA step := batchItemList[0].(int) switch step { case 1: - // 1.加载门店商品,删除商品.当分类下没有商品时.删除分类 - //errs := LoadingStoreSkuList(ctx, toApi, toStore.VendorStoreID) - // errs := LoadingStoreSkuList(ctx, toApi, toStore.VendorStoreID) - //if errs != nil && len(errs) > 0 { - // return nil, errs[0] - //} - case 2: // 同步分类 - //fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) - //if len(fromCategoryList) == model.NO { - // return nil, err - //} - //toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) - //if len(toCategoryList) == model.NO { - // return nil, err - //} - //if len(fromCategoryList) != len(toCategoryList) { - // 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, - // 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(fromStore.VendorStoreID, i) - if len(fromFoodList) == 0 || fromFoodList == nil { - return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) - } - - if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { - globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) - } - globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) - if len(fromFoodList) < 100 { - return nil, nil - } - i++ + fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) + if len(fromCategoryList) == model.NO { + return nil, err } + toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) + if len(toCategoryList) == model.NO { + return nil, err + } + if len(fromCategoryList) != len(toCategoryList) { + 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, + SecondaryCategoryCode: c.Code, + SecondaryCategoryName: c.Name, + Sequence: c.Sequence, + }); err3 != nil { + globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + } + } + } + } + } + case 2: + //i := offSet + //for { + // // 同步商品 + // fromFoodList, err1 := fromApi.RetailListAll(fromStore.VendorStoreID, i) + // if len(fromFoodList) == 0 || fromFoodList == nil { + // return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) + // } + // + // if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { + // globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) + // } + // globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) + // if len(fromFoodList) < 100 { + // return nil, nil + // } + // i++ + //} } return } - task := tasksch.NewParallelTask(taskName, config, ctx, work, []int{1, 2, 3}) + task := tasksch.NewParallelTask(taskName, config, ctx, work, []int{1, 2}) tasksch.HandleTask(task, nil, true).Run() if !isAsync { _, err = task.GetResult(0) From 0f4eef417927e6350d4f8af7d1e8e6789f7cb327 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 29 Jan 2024 23:24:06 +0800 Subject: [PATCH 16/17] 1 --- business/jxstore/cms/system_store_sku.go | 96 ++++++++++++------------ 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index f174a9f82..b6f8c91d4 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -178,55 +178,55 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA case 1: // 同步分类 - fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) - if len(fromCategoryList) == model.NO { - return nil, err - } - toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) - if len(toCategoryList) == model.NO { - return nil, err - } - if len(fromCategoryList) != len(toCategoryList) { - 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, - SecondaryCategoryCode: c.Code, - SecondaryCategoryName: c.Name, - Sequence: c.Sequence, - }); err3 != nil { - globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) - } - } - } - } - } - case 2: - //i := offSet - //for { - // // 同步商品 - // fromFoodList, err1 := fromApi.RetailListAll(fromStore.VendorStoreID, i) - // if len(fromFoodList) == 0 || fromFoodList == nil { - // return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) - // } - // - // if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { - // globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) - // } - // globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) - // if len(fromFoodList) < 100 { - // return nil, nil - // } - // i++ + //fromCategoryList, err := fromApi.RetailCatList(fromStore.VendorStoreID) + //if len(fromCategoryList) == model.NO { + // return nil, err //} + //toCategoryList, err := toApi.RetailCatList(toStore.VendorStoreID) + //if len(toCategoryList) == model.NO { + // return nil, err + //} + //if len(fromCategoryList) != len(toCategoryList) { + // 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, + // SecondaryCategoryCode: c.Code, + // SecondaryCategoryName: c.Name, + // Sequence: c.Sequence, + // }); err3 != nil { + // globals.SugarLogger.Debugf("err := RetailCatUpdate Children : %v", err3) + // } + // } + // } + // } + //} + case 2: + i := offSet + for { + // 同步商品 + fromFoodList, err1 := fromApi.RetailListAll(fromStore.VendorStoreID, i) + if len(fromFoodList) == 0 || fromFoodList == nil { + return nil, fmt.Errorf("fromFoodList 为空 %s ,i:= %d", utils.Format4Output(err1, false), i) + } + + if err = BatchInitSkuMT2MT(ctx, fromFoodList, toApi, toStore.VendorStoreID, i); err != nil { + globals.SugarLogger.Debugf("BatchInitData : %s", utils.Format4Output(err, false)) + } + globals.SugarLogger.Debugf("==============i: %d len: %d", i, len(fromFoodList)) + if len(fromFoodList) < 100 { + return nil, nil + } + i++ + } } return From 594028c189e395dd705e779f9bfe742c7ed42618 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 30 Jan 2024 09:21:10 +0800 Subject: [PATCH 17/17] 1 --- business/jxstore/cms/system_store_sku.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index b6f8c91d4..9afe0674a 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -245,7 +245,7 @@ func CopyMtToMT(ctx *jxcontext.Context, fromStore, toStore *dao.StoreDetail, isA // BatchInitSkuMT2MT 批量创建商品 func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi *mtwmapi.API, vendorStoreID string, i int) error { foodDataList := make([]map[string]interface{}, len(fromSku)) - for i, storeSku := range fromSku { + for _, storeSku := range fromSku { foodData := make(map[string]interface{}) if storeSku.AppFoodCode != "" { foodData[mtwmapi.KeyAppFoodCode] = storeSku.AppFoodCode @@ -294,7 +294,10 @@ func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi foodData["picture_contents"] = storeSku.PictureContents foodData["sequence"] = storeSku.Sequence foodData["tag_id"] = storeSku.TagID - foodData["upc"] = "no_upc" + foodData["upc"] = storeSku.UpcCode + if storeSku.UpcCode == "" { + foodData["upc"] = "no_upc" + } foodDataList[i] = foodData } @@ -303,6 +306,7 @@ func BatchInitSkuMT2MT(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi if len(foodDataList)%10 != 0 { count += 1 } + globals.SugarLogger.Debugf("===============data := %s", utils.Format4Output(foodDataList, false)) for i := 0; i < count; i++ { if i == count-1 { failedFoodList, _ := toApi.RetailBatchInitData(ctx.GetTrackInfo(), vendorStoreID, foodDataList[i*10:])