diff --git a/platformapi/jdapi/store_sku.go b/platformapi/jdapi/store_sku.go index 08ae1886..25e12752 100644 --- a/platformapi/jdapi/store_sku.go +++ b/platformapi/jdapi/store_sku.go @@ -109,7 +109,7 @@ func (a *API) UpdateVendorStationPrice(trackInfo string, outStationNo, stationNo result, err := a.AccessAPINoPage2("venderprice/updateStationPrice", jdParams, nil, nil, genNoPageResultParser("code", "msg", "result", "0"), trackInfo) if result != nil { var err2 error - if responseList, err2 = a.handleBatchOpResult(len(skuPriceInfoList), result, "json2"); err2 != nil && err == nil { + if responseList, err2 = a.handleBatchOpResult(len(skuPriceInfoList), err, result, "json2"); err2 != nil && err == nil { err = err2 } } @@ -146,18 +146,20 @@ func (a *API) GetStationInfoList(stationNo string, skuIds []int64) (priceInfo [] return priceInfo, err } -func (a *API) handleBatchOpResult(batchCount int, result interface{}, tagName string) (responseList []*StoreSkuBatchUpdateResponse, err error) { - if err = utils.Map2Struct(result, &responseList, true, tagName); err == nil { - var failedList []*StoreSkuBatchUpdateResponse - for _, v := range responseList { - if v.Code != 0 { - failedList = append(failedList, v) +func (a *API) handleBatchOpResult(batchCount int, inErr error, result interface{}, tagName string) (responseList []*StoreSkuBatchUpdateResponse, err error) { + if inErr != nil { + if err = utils.Map2Struct(result, &responseList, true, tagName); err == nil { + var failedList []*StoreSkuBatchUpdateResponse + for _, v := range responseList { + if v.Code != 0 { + failedList = append(failedList, v) + } + } + if len(failedList) >= batchCount { + err = utils.NewErrorCode(string(utils.MustMarshal(failedList)), ResponseCodeAccessFailed, 1) // 此错误基本用不到 + } else if len(failedList) > 0 { // 部分失败 + err = utils.NewErrorCode(string(utils.MustMarshal(failedList)), ResponseInnerCodePartialFailed, 1) } - } - if len(failedList) >= batchCount { - err = utils.NewErrorCode(string(utils.MustMarshal(failedList)), ResponseCodeAccessFailed, 1) // 此错误基本用不到 - } else if len(failedList) > 0 { // 部分失败 - err = utils.NewErrorCode(string(utils.MustMarshal(failedList)), ResponseInnerCodePartialFailed, 1) } } return responseList, err @@ -181,7 +183,7 @@ func (a *API) BatchUpdateCurrentQtys(trackInfo, outStationNo, stationNo string, result, err := a.AccessAPINoPage2("stock/batchUpdateCurrentQtys", jdParams, nil, nil, genNoPageResultParser("retCode", "retMsg", "data", "0"), trackInfo) if result != nil { var err2 error - if responseList, err2 = a.handleBatchOpResult(len(skuStockList), result, ""); err2 != nil && err == nil { + if responseList, err2 = a.handleBatchOpResult(len(skuStockList), err, result, ""); err2 != nil && err == nil { err = err2 } } @@ -231,7 +233,7 @@ func (a *API) UpdateVendibility(trackInfo string, listBaseStockCenterRequest []* result, err := a.AccessAPINoPage2("stock/updateVendibility", jdParams, nil, nil, genNoPageResultParser("retCode", "retMsg", "data", "0"), trackInfo) if result != nil { var err2 error - if responseList, err2 = a.handleBatchOpResult(len(listBaseStockCenterRequest), result, ""); err2 != nil && err == nil { + if responseList, err2 = a.handleBatchOpResult(len(listBaseStockCenterRequest), err, result, ""); err2 != nil && err == nil { err = err2 } } @@ -256,7 +258,7 @@ func (a *API) BatchUpdateVendibility(trackInfo, outStationNo, stationNo string, result, err := a.AccessAPINoPage2("stock/batchUpdateVendibility", jdParams, nil, nil, genNoPageResultParser("retCode", "retMsg", "data", "0"), trackInfo) if result != nil { var err2 error - if responseList, err2 = a.handleBatchOpResult(len(stockVendibilityList), result, ""); err2 != nil && err == nil { + if responseList, err2 = a.handleBatchOpResult(len(stockVendibilityList), err, result, ""); err2 != nil && err == nil { err = err2 } }