diff --git a/platformapi/jdapi/sku.go b/platformapi/jdapi/sku.go index d9a346d8..bd150b8b 100644 --- a/platformapi/jdapi/sku.go +++ b/platformapi/jdapi/sku.go @@ -99,6 +99,11 @@ type SkuIDPair struct { OutSkuId string `json:"outSkuId"` } +type BatchUpdateOutSkuIdFailedItem struct { + Detail string `json:"detail"` + SkuInfo *SkuIDPair `json:"skuInfo"` +} + type BrandInfo struct { ID int `json:"id"` BrandName string `json:"brandName"` @@ -415,12 +420,13 @@ func (a *API) UpdateSku2(param *OpSkuParam) (skuID string, err error) { // 根据到家商品编码批量更新商家商品编码接口 // https://opendj.jd.com/staticnew/widgets/resources.html?groupid=180&apiid=4155d29bbdf649b69c67473b705ce7e7 -func (a *API) BatchUpdateOutSkuId(skuInfoList []*SkuIDPair) (retVal interface{}, err error) { +func (a *API) BatchUpdateOutSkuId(skuInfoList []*SkuIDPair) (failedList []*BatchUpdateOutSkuIdFailedItem, err error) { result, err := a.AccessAPINoPage("pms/sku/batchUpdateOutSkuId", utils.Params2Map("skuInfoList", skuInfoList), nil, nil, nil) + err2 := utils.Map2StructByJson(result, &failedList, false) if err == nil { - return result, nil + err = err2 } - return nil, err + return failedList, err } // 查询商家已上传商品信息列表接口 diff --git a/platformapi/jdapi/sku_test.go b/platformapi/jdapi/sku_test.go index 1f6c5b40..ea73605d 100644 --- a/platformapi/jdapi/sku_test.go +++ b/platformapi/jdapi/sku_test.go @@ -39,21 +39,24 @@ func TestQueryChildCategoriesForOP(t *testing.T) { } func TestBatchUpdateOutSkuId(t *testing.T) { - // result, err := jdapi.BatchUpdateOutSkuId([]*SkuIDPair{ - // &SkuIDPair{ - // SkuId: 2012286955, - // OutSkuId: "1", - // }, - // &SkuIDPair{ - // SkuId: 2012286956, - // OutSkuId: "2", - // }, - // &SkuIDPair{ - // SkuId: 2012286957, - // OutSkuId: "3", - // }, - // }) - // baseapi.SugarLogger.Debug(result, err) + result, err := api.BatchUpdateOutSkuId([]*SkuIDPair{ + &SkuIDPair{ + SkuId: 2012286956, + OutSkuId: "2", + }, + &SkuIDPair{ + SkuId: 2029317908, + OutSkuId: "34523", + }, + &SkuIDPair{ + SkuId: 2012286957, + OutSkuId: "3", + }, + }) + baseapi.SugarLogger.Debug(utils.Format4Output(result, false), err) + if err != nil { + t.Fatal(err) + } } func TestQuerySkuInfos(t *testing.T) { @@ -172,9 +175,9 @@ func TestAddSku(t *testing.T) { "ifViewDesc":0, "images":["http://image.jxc4.com/e42be71501d0fbb841743bfb7a9ebbcf.jpg"], "isSale":false, - "outSkuId":"29935", + "outSkuId":"29936", "shopCategories":[4247719], - "skuName":"黑2龙江冰宝珍珠米10kg/袋", + "skuName":"黑3龙江冰宝珍珠米10kg/袋", "skuPrice":7245,"traceId":"4414AEAD1CCA11EAB689525400E86DC0,xujianhua","weight":1} ` var param *OpSkuParam @@ -182,7 +185,7 @@ func TestAddSku(t *testing.T) { if err != nil { t.Fatal(err) } - param.Upc = "6666000029935" + param.Upc = "66660003446710" result, err := api.AddSku2(param) if err != nil { t.Fatal(err)