This commit is contained in:
邹宗楠
2024-01-29 21:29:12 +08:00
parent bfee6687c3
commit 6c2030ca60

View File

@@ -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 {