Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop

This commit is contained in:
richboo111
2023-07-14 09:45:32 +08:00
2 changed files with 238 additions and 117 deletions

View File

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

View File

@@ -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,13 +236,13 @@ 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),
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
@@ -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)),
@@ -291,7 +300,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 +341,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) // 起购单位
@@ -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 = &param
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)
}
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
// createPram.ParamList = &param
// 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 = &param
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))
@@ -396,6 +416,58 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
return failedList, nil
}
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
}
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 {
@@ -431,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)),
@@ -439,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),
@@ -483,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)),
@@ -491,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
}
@@ -511,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),
@@ -523,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
}
@@ -552,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(&param); 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(&param); 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(&param); 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
@@ -588,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(&param); 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(&param); 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(&param); err != nil {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...)
}
return failedList, err
}
@@ -805,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)),
@@ -817,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, ","))