This commit is contained in:
邹宗楠
2023-07-13 14:01:24 +08:00
parent 6349a28868
commit edc748c865
2 changed files with 183 additions and 114 deletions

View File

@@ -413,7 +413,7 @@ func UpdateFakeWayBillToTiktok() {
handler := partner.GetPurchaseOrderHandlerFromVendorID(fakeWayBill[i].OrderVendorID) handler := partner.GetPurchaseOrderHandlerFromVendorID(fakeWayBill[i].OrderVendorID)
if handler != nil { if handler != nil {
if err := handler.GetOrderRider(fakeWayBill[i].VendorOrgCode, "", paramsMap); err != 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 continue
} }
} }

View File

@@ -41,19 +41,19 @@ var (
func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) { func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) {
switch funcID { switch funcID {
case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice: case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice:
batchSize = 20 batchSize = 5
case partner.FuncDeleteStoreSkus: case partner.FuncDeleteStoreSkus:
batchSize = 20 batchSize = 5
case partner.FuncCreateStoreSkus: case partner.FuncCreateStoreSkus:
batchSize = 20 // 可考虑用批量操作 batchSize = 5 // 可考虑用批量操作
case partner.FuncUpdateStoreSkus: case partner.FuncUpdateStoreSkus:
batchSize = 20 // mtwmapi.MaxStoreSkuBatchSize batchSize = 5 // mtwmapi.MaxStoreSkuBatchSize
case partner.FuncGetStoreSkusFullInfo: case partner.FuncGetStoreSkusFullInfo:
batchSize = 20 batchSize = 5
case partner.FuncCreateActs: case partner.FuncCreateActs:
batchSize = 20 batchSize = 5
case partner.FuncCancelActs: case partner.FuncCancelActs:
batchSize = 20 batchSize = 5
} }
return batchSize 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) { func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSyncInfo, vendorStoreID string, storeID int, syncType string) (failedList []*partner.StoreSkuInfoWithErr, err error) {
param := &request585.AlibabaWdkSkuUpdateRequest{} param := &request585.AlibabaWdkSkuUpdateRequest{}
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
totalCount := len(storeSkuList) //totalCount := len(storeSkuList)
for index, v := range storeSkuList { for _, v := range storeSkuList {
price := utils.String2Pointer(utils.Float64ToStr(float64(v.VendorPrice) / float64(100))) price := utils.String2Pointer(utils.Float64ToStr(float64(v.VendorPrice) / float64(100)))
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
OuCode: utils.String2Pointer(vendorStoreID), 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}) updateSku.SkuPicUrls = uploadImg(api, []string{v.Img, v.Img2, v.Img3, v.Img4, v.Img5, v.DescImg})
updateSkuList = append(updateSkuList, updateSku) updateSkuList = append(updateSkuList, updateSku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
param.ParamList = &updateSkuList // param.ParamList = &updateSkuList
result, err := api.UpdateStoreSku(param) // result, err := api.UpdateStoreSku(param)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType)
failedList = append(failedList, createFailedList...) // failedList = append(failedList, createFailedList...)
// 记录同步成功的数据 // // 记录同步成功的数据
param.ParamList = nil // param.ParamList = nil
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) // 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 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) { 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{} createPram := &request585.AlibabaWdkSkuAddRequest{}
param := make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) param := make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0)
totalCount := len(storeSkuList) //totalCount := len(storeSkuList)
vendorSkuIdMap := make(map[string]string, 0) vendorSkuIdMap := make(map[string]string, 0)
globals.SugarLogger.Debugf("storeSkuList := %d", len(storeSkuList)) 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))) price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100)))
sku := domain585.AlibabaWdkSkuAddSkuDo{ sku := domain585.AlibabaWdkSkuAddSkuDo{
Barcodes: utils.String2Pointer(utils.Int2Str(storeSku.SkuID)), 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) param = append(param, sku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
createPram.ParamList = &param // createPram.ParamList = &param
result, err := api.AddStoreSku(createPram) // result, err := api.AddStoreSku(createPram)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error()) // globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType) // failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType)
failedList = append(failedList, failedList2...) // failedList = append(failedList, failedList2...)
for k, v := range vendorSkuIdMap2 { // for k, v := range vendorSkuIdMap2 {
vendorSkuIdMap[k] = v // vendorSkuIdMap[k] = v
} // }
//
// createPram.ParamList = nil
// param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0)
//}
}
createPram.ParamList = nil result, err := api.AddStoreSku(createPram)
param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0) 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)) var successSku = make([]int, 0, len(vendorSkuIdMap))
@@ -483,7 +503,7 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v
param := &request585.AlibabaWdkSkuUpdateRequest{} param := &request585.AlibabaWdkSkuUpdateRequest{}
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
for index, v := range storeSkuList { for _, v := range storeSkuList {
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
OuCode: utils.String2Pointer(vendorStoreID), OuCode: utils.String2Pointer(vendorStoreID),
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), 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) updateSkuList = append(updateSkuList, updateSku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
param.ParamList = &updateSkuList // param.ParamList = &updateSkuList
result, err := api.UpdateStoreSku(param) // result, err := api.UpdateStoreSku(param)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)") // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)")
failedList = append(failedList, createFailedList...) // failedList = append(failedList, createFailedList...)
param.ParamList = nil // param.ParamList = nil
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) // 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 return failedList, err
//param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{ //param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
// StoreId: utils.String2Pointer(vendorStoreID), // StoreId: utils.String2Pointer(vendorStoreID),
@@ -535,7 +564,7 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
onlineStatus := skuStatusJX2Tao(status) onlineStatus := skuStatusJX2Tao(status)
for index, v := range storeSkuList { for _, v := range storeSkuList {
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
OuCode: utils.String2Pointer(vendorStoreID), OuCode: utils.String2Pointer(vendorStoreID),
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
@@ -543,19 +572,28 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
} }
updateSkuList = append(updateSkuList, updateSku) updateSkuList = append(updateSkuList, updateSku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
param.ParamList = &updateSkuList // param.ParamList = &updateSkuList
result, err := api.UpdateStoreSku(param) // result, err := api.UpdateStoreSku(param)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架") // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架")
failedList = append(failedList, createFailedList...) // failedList = append(failedList, createFailedList...)
param.ParamList = nil // param.ParamList = nil
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) // 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 return failedList, err
} }
@@ -563,7 +601,7 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
param := &request585.AlibabaWdkSkuUpdateRequest{} param := &request585.AlibabaWdkSkuUpdateRequest{}
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) 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))) price := utils.String2Pointer(fmt.Sprintf("%.2f", float64(v.VendorPrice)/float64(100)))
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
OuCode: utils.String2Pointer(vendorStoreID), OuCode: utils.String2Pointer(vendorStoreID),
@@ -575,19 +613,27 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
} }
updateSkuList = append(updateSkuList, updateSku) updateSkuList = append(updateSkuList, updateSku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
param.ParamList = &updateSkuList // param.ParamList = &updateSkuList
result, err := api.UpdateStoreSku(param) // result, err := api.UpdateStoreSku(param)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格") // createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格")
failedList = append(failedList, createFailedList...) // failedList = append(failedList, createFailedList...)
param.ParamList = nil // param.ParamList = nil
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) // 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 return failedList, err
} }
@@ -604,22 +650,29 @@ func updateStoreSkusStockByCreate(ctx *jxcontext.Context, api *tao_vegetable.API
StockPublishDtos: nil, StockPublishDtos: nil,
} }
stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0)
for index, v := range storeSkuList { for _, v := range storeSkuList {
stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{ stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{
SkuCode: utils.String2Pointer(utils.Int2Str(v)), SkuCode: utils.String2Pointer(utils.Int2Str(v)),
Quantity: utils.String2Pointer("9999"), Quantity: utils.String2Pointer("9999"),
OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)), OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)),
OrderType: utils.String2Pointer("10006800"), // 这个不太确定 OrderType: utils.String2Pointer("10006800"), // 这个不太确定
}) })
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
batchStockPublishDto.StockPublishDtos = &stockPublishDtos // batchStockPublishDto.StockPublishDtos = &stockPublishDtos
param.BatchStockPublishDto = batchStockPublishDto // param.BatchStockPublishDto = batchStockPublishDto
if err := api.StoreSkuStock(&param); err != nil { // if err := api.StoreSkuStock(&param); err != nil {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) // failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...)
} // }
stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) // stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0)
param.BatchStockPublishDto = nil // 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) globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", failedList)
return failedList return failedList
@@ -640,22 +693,27 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
StockPublishDtos: nil, StockPublishDtos: nil,
} }
stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) stockPublishDtos := make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0)
for index, v := range storeSkuList { for _, v := range storeSkuList {
stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{ stockPublishDtos = append(stockPublishDtos, domain589.AlibabaWdkStockPublishStockPublishDto{
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
Quantity: utils.String2Pointer(utils.Int2Str(v.Stock)), Quantity: utils.String2Pointer(utils.Int2Str(v.Stock)),
OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)), OrderNo: utils.String2Pointer(fmt.Sprintf("%s_%d_%d", vendorStoreID, time.Now().UnixNano(), 84671)),
OrderType: utils.String2Pointer("10006800"), // 这个不太确定 OrderType: utils.String2Pointer("10006800"), // 这个不太确定
}) })
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
batchStockPublishDto.StockPublishDtos = &stockPublishDtos // batchStockPublishDto.StockPublishDtos = &stockPublishDtos
param.BatchStockPublishDto = batchStockPublishDto // param.BatchStockPublishDto = batchStockPublishDto
if err = api.StoreSkuStock(&param); err != nil { // if err = api.StoreSkuStock(&param); err != nil {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...) // failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "更新库存错误")...)
} // }
stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0) // stockPublishDtos = make([]domain589.AlibabaWdkStockPublishStockPublishDto, 0, 0)
param.BatchStockPublishDto = nil // 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 return failedList, err
} }
@@ -857,7 +915,7 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO
param := &request585.AlibabaWdkSkuUpdateRequest{} param := &request585.AlibabaWdkSkuUpdateRequest{}
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID) api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
for index, v := range storeSkuList { for _, v := range storeSkuList {
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{ updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
OuCode: utils.String2Pointer(vendorStoreID), OuCode: utils.String2Pointer(vendorStoreID),
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)), SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
@@ -869,20 +927,31 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO
} }
updateSkuList = append(updateSkuList, updateSku) updateSkuList = append(updateSkuList, updateSku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) { //if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
param.ParamList = &updateSkuList // param.ParamList = &updateSkuList
result, err := api.UpdateStoreSku(param) // result, err := api.UpdateStoreSku(param)
if err != nil { // if err != nil {
globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error()) // globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
} // }
// 记录失败的同步数据 // // 记录失败的同步数据
for _, v := range *result { // for _, v := range *result {
if v.ErrMsg != "" { // if v.ErrMsg != "" {
errList = append(errList, v.ErrMsg) // errList = append(errList, v.ErrMsg)
} // }
} // }
param.ParamList = nil // param.ParamList = nil
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0) // 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, ",")) return fmt.Errorf("%s", strings.Join(errList, ","))