From a86a0c43db54d3d22e1f5e900e4385446bd99795 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 29 Jan 2026 15:26:49 +0800 Subject: [PATCH] 1 --- business/jxstore/cms/sku.go | 100 +++++++++++++++++++----------------- 1 file changed, 53 insertions(+), 47 deletions(-) diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index 50c499a47..d61d42264 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -4,7 +4,7 @@ import ( "encoding/json" "errors" "fmt" - "git.rosy.net.cn/jx-callback/business/partner/purchase/mtwm" + "git.rosy.net.cn/baseapi/platformapi/mtwmapi" "io" "math" "mime/multipart" @@ -3069,54 +3069,60 @@ func UpdateVendorImg(ctx *jxcontext.Context, i, storeId int, imgWaterMark string if err != nil { return nil, err } - api := mtwm.GetAPI(storeDetail.VendorOrgCode, storeId, storeDetail.VendorStoreID) - //for { - foodList, _ := api.RetailListAll(storeDetail.VendorStoreID, i) - for _, v := range foodList { - skuEx := &model.SkuExinfoMap{ - NameID: storeId, - ImgWatermark: v.PictureList[0], // 原图 - ImgWatermarkMix: v.AppFoodCode, // 商品ID - ExPrefix: exPrefix, - VendorID: vendorID, - BeginAt: fromTimeP, - EndAt: toTimeP, - BrandID: 0, - } - dao.WrapAddIDCULDEntity(skuEx, ctx.GetUserName()) - dao.CreateEntity(db, skuEx) - - param := map[string]interface{}{} - qiNiuImg := "" - ImgMix := "" - if imgWaterMark != "" { - qiNiuImg = jxutils.UploadQiNiuImg(v.PictureList[0]) - if ImgMix = jxutils.MixWatermarkImg2(imgWaterMark, qiNiuImg, &fromTimeP, &toTimeP); ImgMix != "" { - picture := make([]string, 0, len(v.PictureList)) - picture = append(picture, ImgMix) - if len(v.PictureList) > 1 { - picture = append(picture, v.PictureList[1:]...) - } - param["picture"] = strings.Join(picture, ",") - } - } - if exPrefix != "" { - param["name"] = fmt.Sprintf("%s %s", exPrefix, v.Name) - } - if err = api.RetailInitData(utils.GetUUID(), storeDetail.VendorStoreID, v.AppFoodCode, param); err != nil { - globals.SugarLogger.Debugf("------foodCode := %s ,err := %v param := %s", v.AppFoodCode, err, utils.Format4Output(params, false)) - } - imgList = append(imgList, qiNiuImg, ImgMix) - time.Sleep(100 * time.Microsecond) + var api *mtwmapi.API //= mtwm.GetAPI(fromStore.VendorOrgCode, fromStore.ID, fromStore.VendorStoreID) + if storeDetail.VendorOrgCode == globals.Mtwm2Code { + api = mtwmapi.New(beego.AppConfig.DefaultString("mtwmAppID2", ""), beego.AppConfig.DefaultString("mtwmSecret2", ""), beego.AppConfig.DefaultString("mtwmCallbackURL2", ""), "") + api.SetToken(storeDetail.MtwmToken) + } else { + api = partner.CurAPIManager.GetAPI(model.VendorIDMTWM, storeDetail.VendorOrgCode).(*mtwmapi.API) + } + + for { + foodList, _ := api.RetailListAll(storeDetail.VendorStoreID, i) + for _, v := range foodList { + skuEx := &model.SkuExinfoMap{ + NameID: storeId, + ImgWatermark: v.PictureList[0], // 原图 + ImgWatermarkMix: v.AppFoodCode, // 商品ID + ExPrefix: exPrefix, + VendorID: vendorID, + BeginAt: fromTimeP, + EndAt: toTimeP, + BrandID: 0, + } + dao.WrapAddIDCULDEntity(skuEx, ctx.GetUserName()) + dao.CreateEntity(db, skuEx) + + param := map[string]interface{}{} + qiNiuImg := "" + ImgMix := "" + if imgWaterMark != "" { + qiNiuImg = jxutils.UploadQiNiuImg(v.PictureList[0]) + if ImgMix = jxutils.MixWatermarkImg2(imgWaterMark, qiNiuImg, &fromTimeP, &toTimeP); ImgMix != "" { + picture := make([]string, 0, len(v.PictureList)) + picture = append(picture, ImgMix) + if len(v.PictureList) > 1 { + picture = append(picture, v.PictureList[1:]...) + } + param["picture"] = strings.Join(picture, ",") + } + } + if exPrefix != "" { + param["name"] = fmt.Sprintf("%s %s", exPrefix, v.Name) + } + if err = api.RetailInitData(utils.GetUUID(), storeDetail.VendorStoreID, v.AppFoodCode, param); err != nil { + globals.SugarLogger.Debugf("------foodCode := %s ,err := %v param := %s", v.AppFoodCode, err, utils.Format4Output(params, false)) + } + imgList = append(imgList, qiNiuImg, ImgMix) + time.Sleep(100 * time.Microsecond) + } + globals.SugarLogger.Debugf("----i := %d,len := %d", i, len(foodList)) + if len(foodList) < 100 { + break + } + i++ } - // globals.SugarLogger.Debugf("----i := %d,len := %d", i, len(foodList)) - // if len(foodList) < 100 { - // break - // } - // i++ - //} - time.Sleep(1 * time.Second) for _, v := range imgList { jxutils.DeleteExportContent(strings.Split(v, "/")[3]) time.Sleep(100 * time.Microsecond)