From 71cda18bdb2192cf46812f2b2c3418d7ad2f5d61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 13 Jul 2023 11:06:45 +0800 Subject: [PATCH 1/4] 1 --- .../purchase/tao_vegetable/store_sku2.go | 46 ++++++++++++++++++- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/tao_vegetable/store_sku2.go b/business/partner/purchase/tao_vegetable/store_sku2.go index d2ad605d8..2f0c5071e 100644 --- a/business/partner/purchase/tao_vegetable/store_sku2.go +++ b/business/partner/purchase/tao_vegetable/store_sku2.go @@ -242,7 +242,7 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), - SkuName: utils.String2Pointer(v.SkuName), + SkuName: utils.String2Pointer(checkNameLength(v.SkuName)), MemberPrice: price, SkuPrice: price, // 优先使用skuPrice 靠后SalePrice SuggestedPrice: price, // 优先使用skuPrice 靠后SalePrice @@ -291,7 +291,6 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku InventoryUnit: utils.String2Pointer("份"), ProducerPlace: utils.String2Pointer(tao_vegetable.CreateSkuProducerPlace), SkuCode: utils.String2Pointer(utils.Int2Str(storeSku.SkuID)), - SkuName: utils.String2Pointer(storeSku.SkuName), StorageType: utils.Int64ToPointer(tao_vegetable.CreateSkuStorageType), SuggestedPrice: price, Weight: utils.String2Pointer(utils.Int2Str(storeSku.Weight)), @@ -333,6 +332,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku if sku.SkuPicUrls == nil { continue } + sku.SkuName = utils.String2Pointer(checkNameLength(storeSku.Name)) if storeSku.MinOrderCount <= model.YES { sku.PurchaseQuantity = utils.Int64ToPointer(model.YES) // 起购单位 @@ -396,6 +396,48 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku return failedList, nil } +func checkNameLength(name string) string { + if len(name) <= tao_vegetable.NameMaxLength { + return name + } + + lastName := "" + if strings.Contains(name, "(") { + startIndex := strings.Index(name, "(") + endIndex := strings.Index(name, ")") + lastName = name[0:startIndex] + name[endIndex+1:] + if len(lastName) <= tao_vegetable.NameMaxLength { + return lastName + } + } + if strings.Contains(lastName, "(") { + startIndex := strings.Index(lastName, "(") + endIndex := strings.Index(lastName, ")") + lastName = lastName[0:startIndex] + " " + lastName[endIndex+3:] + if len(lastName) <= tao_vegetable.NameMaxLength { + return lastName + } + } + if strings.Contains(lastName, "[") { + startIndex := strings.Index(lastName, "[") + endIndex := strings.Index(lastName, "]") + lastName = lastName[0:startIndex] + lastName[endIndex+1:] + if len(lastName) <= tao_vegetable.NameMaxLength { + return lastName + } + } + + if strings.Contains(lastName, "【") { + startIndex := strings.Index(lastName, "【") + endIndex := strings.Index(lastName, "】") + lastName = lastName[0:startIndex] + " " + lastName[endIndex+3:] + if len(lastName) <= tao_vegetable.NameMaxLength { + return lastName + } + } + return name[0:60] +} + func uploadImg(api *tao_vegetable.API, imgs []string) *string { result := make([]string, 0, 0) for _, v := range imgs { From 6349a28868fac24407e55a5565293229df68bb44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 13 Jul 2023 11:20:01 +0800 Subject: [PATCH 2/4] 1 --- .../partner/purchase/tao_vegetable/store_sku2.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/business/partner/purchase/tao_vegetable/store_sku2.go b/business/partner/purchase/tao_vegetable/store_sku2.go index 2f0c5071e..09ea5fb9c 100644 --- a/business/partner/purchase/tao_vegetable/store_sku2.go +++ b/business/partner/purchase/tao_vegetable/store_sku2.go @@ -397,11 +397,21 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku } func checkNameLength(name string) string { + lastName := "" + if strings.Contains(name, "其它") { + name = strings.ReplaceAll(name, "其它", "") + } + if strings.Contains(name, "其她") { + name = strings.ReplaceAll(name, "其她", "") + } + if strings.Contains(name, "其他") { + name = strings.ReplaceAll(name, "其他", "") + } + if len(name) <= tao_vegetable.NameMaxLength { return name } - lastName := "" if strings.Contains(name, "(") { startIndex := strings.Index(name, "(") endIndex := strings.Index(name, ")") From edc748c865483956fa2cac34386b15d8a8262a9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 13 Jul 2023 14:01:24 +0800 Subject: [PATCH 3/4] 1 --- business/partner/delivery/rider.go | 2 +- .../purchase/tao_vegetable/store_sku2.go | 295 +++++++++++------- 2 files changed, 183 insertions(+), 114 deletions(-) diff --git a/business/partner/delivery/rider.go b/business/partner/delivery/rider.go index 83574f45f..ded668057 100644 --- a/business/partner/delivery/rider.go +++ b/business/partner/delivery/rider.go @@ -413,7 +413,7 @@ func UpdateFakeWayBillToTiktok() { handler := partner.GetPurchaseOrderHandlerFromVendorID(fakeWayBill[i].OrderVendorID) if handler != nil { if err := handler.GetOrderRider(fakeWayBill[i].VendorOrgCode, "", paramsMap); err != nil { - globals.SugarLogger.Errorf("Fake Pull Rider Info Err :%s--%s--%v", riderInfo.OrderId, riderInfo.ThirdCarrierOrderId, err) + globals.SugarLogger.Debugf("Fake Pull Rider Info Err :%s--%s--%v", riderInfo.OrderId, riderInfo.ThirdCarrierOrderId, err) continue } } diff --git a/business/partner/purchase/tao_vegetable/store_sku2.go b/business/partner/purchase/tao_vegetable/store_sku2.go index 09ea5fb9c..3825e8249 100644 --- a/business/partner/purchase/tao_vegetable/store_sku2.go +++ b/business/partner/purchase/tao_vegetable/store_sku2.go @@ -41,19 +41,19 @@ var ( func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) { switch funcID { case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice: - batchSize = 20 + batchSize = 5 case partner.FuncDeleteStoreSkus: - batchSize = 20 + batchSize = 5 case partner.FuncCreateStoreSkus: - batchSize = 20 // 可考虑用批量操作 + batchSize = 5 // 可考虑用批量操作 case partner.FuncUpdateStoreSkus: - batchSize = 20 // mtwmapi.MaxStoreSkuBatchSize + batchSize = 5 // mtwmapi.MaxStoreSkuBatchSize case partner.FuncGetStoreSkusFullInfo: - batchSize = 20 + batchSize = 5 case partner.FuncCreateActs: - batchSize = 20 + batchSize = 5 case partner.FuncCancelActs: - batchSize = 20 + batchSize = 5 } return batchSize } @@ -236,8 +236,8 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSyncInfo, vendorStoreID string, storeID int, syncType string) (failedList []*partner.StoreSkuInfoWithErr, err error) { param := &request585.AlibabaWdkSkuUpdateRequest{} updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) - totalCount := len(storeSkuList) - for index, v := range storeSkuList { + //totalCount := len(storeSkuList) + for _, v := range storeSkuList { price := utils.String2Pointer(utils.Float64ToStr(float64(v.VendorPrice) / float64(100))) updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), @@ -256,20 +256,29 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync } updateSku.SkuPicUrls = uploadImg(api, []string{v.Img, v.Img2, v.Img3, v.Img4, v.Img5, v.DescImg}) updateSkuList = append(updateSkuList, updateSku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { - param.ParamList = &updateSkuList - result, err := api.UpdateStoreSku(param) - if err != nil { - globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) - } - // 记录失败的同步数据 - createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) - failedList = append(failedList, createFailedList...) - // 记录同步成功的数据 - param.ParamList = nil - updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { + // param.ParamList = &updateSkuList + // result, err := api.UpdateStoreSku(param) + // if err != nil { + // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + // } + // // 记录失败的同步数据 + // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) + // failedList = append(failedList, createFailedList...) + // // 记录同步成功的数据 + // param.ParamList = nil + // updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //} } + + param.ParamList = &updateSkuList + result, err := api.UpdateStoreSku(param) + if err != nil { + globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + } + // 记录失败的同步数据 + createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) + failedList = append(failedList, createFailedList...) return failedList, err } @@ -277,11 +286,11 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSyncInfo, vendorStoreID string, storeID int, syncType string) (failedList []*partner.StoreSkuInfoWithErr, err error) { createPram := &request585.AlibabaWdkSkuAddRequest{} param := make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) - totalCount := len(storeSkuList) + //totalCount := len(storeSkuList) vendorSkuIdMap := make(map[string]string, 0) globals.SugarLogger.Debugf("storeSkuList := %d", len(storeSkuList)) - for index, storeSku := range storeSkuList { + for _, storeSku := range storeSkuList { price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100))) sku := domain585.AlibabaWdkSkuAddSkuDo{ Barcodes: utils.String2Pointer(utils.Int2Str(storeSku.SkuID)), @@ -361,22 +370,33 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku }, } param = append(param, sku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { - createPram.ParamList = ¶m - result, err := api.AddStoreSku(createPram) - if err != nil { - globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error()) - } - // 记录失败的同步数据 - failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) - failedList = append(failedList, failedList2...) - for k, v := range vendorSkuIdMap2 { - vendorSkuIdMap[k] = v - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { + // createPram.ParamList = ¶m + // result, err := api.AddStoreSku(createPram) + // if err != nil { + // globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error()) + // } + // // 记录失败的同步数据 + // failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) + // failedList = append(failedList, failedList2...) + // for k, v := range vendorSkuIdMap2 { + // vendorSkuIdMap[k] = v + // } + // + // createPram.ParamList = nil + // param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) + //} + } - createPram.ParamList = nil - param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) - } + result, err := api.AddStoreSku(createPram) + if err != nil { + globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error()) + } + // 记录失败的同步数据 + failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) + failedList = append(failedList, failedList2...) + for k, v := range vendorSkuIdMap2 { + vendorSkuIdMap[k] = v } var successSku = make([]int, 0, len(vendorSkuIdMap)) @@ -483,7 +503,7 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v param := &request585.AlibabaWdkSkuUpdateRequest{} updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) - for index, v := range storeSkuList { + for _, v := range storeSkuList { updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), @@ -491,19 +511,28 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v } updateSkuList = append(updateSkuList, updateSku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - param.ParamList = &updateSkuList - result, err := api.UpdateStoreSku(param) - if err != nil { - globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) - } - // 记录失败的同步数据 - createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)") - failedList = append(failedList, createFailedList...) - param.ParamList = nil - updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // param.ParamList = &updateSkuList + // result, err := api.UpdateStoreSku(param) + // if err != nil { + // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + // } + // // 记录失败的同步数据 + // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)") + // failedList = append(failedList, createFailedList...) + // param.ParamList = nil + // updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //} } + + param.ParamList = &updateSkuList + result, err := api.UpdateStoreSku(param) + if err != nil { + globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + } + // 记录失败的同步数据 + createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)") + failedList = append(failedList, createFailedList...) return failedList, err //param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{ // StoreId: utils.String2Pointer(vendorStoreID), @@ -535,7 +564,7 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) onlineStatus := skuStatusJX2Tao(status) - for index, v := range storeSkuList { + for _, v := range storeSkuList { updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), @@ -543,19 +572,28 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr } updateSkuList = append(updateSkuList, updateSku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - param.ParamList = &updateSkuList - result, err := api.UpdateStoreSku(param) - if err != nil { - globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) - } - // 记录失败的同步数据 - createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架") - failedList = append(failedList, createFailedList...) - param.ParamList = nil - updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // param.ParamList = &updateSkuList + // result, err := api.UpdateStoreSku(param) + // if err != nil { + // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + // } + // // 记录失败的同步数据 + // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架") + // failedList = append(failedList, createFailedList...) + // param.ParamList = nil + // updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //} } + + param.ParamList = &updateSkuList + result, err := api.UpdateStoreSku(param) + if err != nil { + globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + } + // 记录失败的同步数据 + createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架") + failedList = append(failedList, createFailedList...) return failedList, err } @@ -563,7 +601,7 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg param := &request585.AlibabaWdkSkuUpdateRequest{} updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) - for index, v := range storeSkuList { + for _, v := range storeSkuList { price := utils.String2Pointer(fmt.Sprintf("%.2f", float64(v.VendorPrice)/float64(100))) updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), @@ -575,19 +613,27 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg } updateSkuList = append(updateSkuList, updateSku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - param.ParamList = &updateSkuList - result, err := api.UpdateStoreSku(param) - if err != nil { - globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) - } - // 记录失败的同步数据 - createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格") - failedList = append(failedList, createFailedList...) - param.ParamList = nil - updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // param.ParamList = &updateSkuList + // result, err := api.UpdateStoreSku(param) + // if err != nil { + // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + // } + // // 记录失败的同步数据 + // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格") + // failedList = append(failedList, createFailedList...) + // param.ParamList = nil + // updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //} } + param.ParamList = &updateSkuList + result, err := api.UpdateStoreSku(param) + if err != nil { + globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + } + // 记录失败的同步数据 + createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格") + failedList = append(failedList, createFailedList...) return failedList, err } @@ -604,22 +650,29 @@ func updateStoreSkusStockByCreate(ctx *jxcontext.Context, api *tao_vegetable.API StockPublishDtos: nil, } stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) - for index, v := range storeSkuList { + for _, v := range storeSkuList { stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{ SkuCode: utils.String2Pointer(utils.Int2Str(v)), Quantity: utils.String2Pointer("9999"), OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)), OrderType: utils.String2Pointer("10006800"), // 这个不太确定 }) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - batchStockPublishDto.StockPublishDtos = &stockPublishDtos - param.BatchStockPublishDto = batchStockPublishDto - if err := api.StoreSkuStock(¶m); err != nil { - failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) - } - stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) - param.BatchStockPublishDto = nil - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // batchStockPublishDto.StockPublishDtos = &stockPublishDtos + // param.BatchStockPublishDto = batchStockPublishDto + // if err := api.StoreSkuStock(¶m); err != nil { + // failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) + // } + // stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) + // param.BatchStockPublishDto = nil + //} + } + + batchStockPublishDto.StockPublishDtos = &stockPublishDtos + param.BatchStockPublishDto = batchStockPublishDto + if err := api.StoreSkuStock(¶m); err != nil { + globals.SugarLogger.Debugf("Updat stock err := %s", err.Error()) + //failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) } globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", failedList) return failedList @@ -640,22 +693,27 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg StockPublishDtos: nil, } stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) - for index, v := range storeSkuList { + for _, v := range storeSkuList { stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{ SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), Quantity: utils.String2Pointer(utils.Int2Str(v.Stock)), OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)), OrderType: utils.String2Pointer("10006800"), // 这个不太确定 }) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - batchStockPublishDto.StockPublishDtos = &stockPublishDtos - param.BatchStockPublishDto = batchStockPublishDto - if err = api.StoreSkuStock(¶m); err != nil { - failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) - } - stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) - param.BatchStockPublishDto = nil - } + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // batchStockPublishDto.StockPublishDtos = &stockPublishDtos + // param.BatchStockPublishDto = batchStockPublishDto + // if err = api.StoreSkuStock(¶m); err != nil { + // failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) + // } + // stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) + // param.BatchStockPublishDto = nil + //} + } + batchStockPublishDto.StockPublishDtos = &stockPublishDtos + param.BatchStockPublishDto = batchStockPublishDto + if err = api.StoreSkuStock(¶m); err != nil { + failedList = append(failedList, putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) } return failedList, err } @@ -857,7 +915,7 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO param := &request585.AlibabaWdkSkuUpdateRequest{} updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) - for index, v := range storeSkuList { + for _, v := range storeSkuList { updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ OuCode: utils.String2Pointer(vendorStoreID), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), @@ -869,20 +927,31 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO } updateSkuList = append(updateSkuList, updateSku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { - param.ParamList = &updateSkuList - result, err := api.UpdateStoreSku(param) - if err != nil { - globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) - } - // 记录失败的同步数据 - for _, v := range *result { - if v.ErrMsg != "" { - errList = append(errList, v.ErrMsg) - } - } - param.ParamList = nil - updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { + // param.ParamList = &updateSkuList + // result, err := api.UpdateStoreSku(param) + // if err != nil { + // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + // } + // // 记录失败的同步数据 + // for _, v := range *result { + // if v.ErrMsg != "" { + // errList = append(errList, v.ErrMsg) + // } + // } + // param.ParamList = nil + // updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) + //} + } + param.ParamList = &updateSkuList + result, err := api.UpdateStoreSku(param) + if err != nil { + globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) + } + // 记录失败的同步数据 + for _, v := range *result { + if v.ErrMsg != "" { + errList = append(errList, v.ErrMsg) } } return fmt.Errorf("%s", strings.Join(errList, ",")) From f27844567a7534969088168d652eb0b794da2972 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 13 Jul 2023 14:09:18 +0800 Subject: [PATCH 4/4] 1 --- business/partner/purchase/tao_vegetable/store_sku2.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/business/partner/purchase/tao_vegetable/store_sku2.go b/business/partner/purchase/tao_vegetable/store_sku2.go index 3825e8249..74802d9af 100644 --- a/business/partner/purchase/tao_vegetable/store_sku2.go +++ b/business/partner/purchase/tao_vegetable/store_sku2.go @@ -387,7 +387,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku // param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) //} } - + createPram.ParamList = ¶m result, err := api.AddStoreSku(createPram) if err != nil { globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())