From bd9c97607ad88871c785d185507ff12ee5419c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Mon, 18 May 2020 15:55:09 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E9=97=A8=E5=BA=97=E5=BA=93?= =?UTF-8?q?=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- platformapi/jdshopapi/sku.go | 13 ------------- platformapi/jdshopapi/store.go | 29 ++++++++++++++++++++++++++--- platformapi/jdshopapi/store_test.go | 10 +++++++++- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/platformapi/jdshopapi/sku.go b/platformapi/jdshopapi/sku.go index e4a30c6d..b53ebcf4 100644 --- a/platformapi/jdshopapi/sku.go +++ b/platformapi/jdshopapi/sku.go @@ -358,19 +358,6 @@ func (a *API) UpdateSkuStock(skuId, stockNum int) (err error) { return err } -//设置门店sku库存 -//https://open.jd.com/home/home#/doc/api?apiCateId=48&apiId=2980&apiName=jingdong.stock.write.updateSkuSiteStock -//siteId 门店ID,venderSource 固定传4 -func (a *API) UpdateSkuSiteStock(skuId, stockNum, siteId int) (err error) { - _, err = a.AccessAPI("jingdong.stock.write.updateSkuSiteStock", prodURL, map[string]interface{}{ - "skuId": skuId, - "stockNum": stockNum, - "siteId": siteId, - "venderSource": 4, - }) - return err -} - //修改sku京东价 //https://open.jd.com/home/home#/doc/api?apiCateId=48&apiId=1253&apiName=jingdong.price.write.updateSkuJdPrice //单位为元 diff --git a/platformapi/jdshopapi/store.go b/platformapi/jdshopapi/store.go index a2f1966f..e50a7635 100644 --- a/platformapi/jdshopapi/store.go +++ b/platformapi/jdshopapi/store.go @@ -109,16 +109,39 @@ func (a *API) GetCounty(parentID int) (getAddressCodeResult []*GetAddressCodeRes return getAddressCodeResult, err } +type FindSkuSiteStockResult struct { + VenderSource string `json:"venderSource"` + OrderBookingNum int `json:"orderBookingNum"` + SiteID int `json:"siteId"` + StockNum int `json:"stockNum"` + AppBookingNum int `json:"appBookingNum"` + SkuID int64 `json:"skuId"` + CanUsedNum int `json:"canUsedNum"` +} + //查询门店库存 //https://open.jd.com/home/home#/doc/api?apiCateId=48&apiId=2983&apiName=jingdong.stock.read.findSkuSiteStock -func (a *API) FindSkuSiteStock(siteId int, skuId int64) (getAddressCodeResult []*GetAddressCodeResult, err error) { +func (a *API) FindSkuSiteStock(siteId int, skuId int64) (findSkuSiteStockResult *FindSkuSiteStockResult, err error) { result, err := a.AccessAPI("jingdong.stock.read.findSkuSiteStock", prodURL, map[string]interface{}{ "siteId": siteId, "skuId": skuId, "venderSource": 4, }) if err == nil { - utils.Map2StructByJson(result["jingdong_areas_county_get_responce"].(map[string]interface{})["baseAreaServiceResponse"].(map[string]interface{})["data"], &getAddressCodeResult, false) + utils.Map2StructByJson(result["jingdong_stock_read_findSkuSiteStock_responce"].(map[string]interface{})["app_params"], &findSkuSiteStockResult, false) } - return getAddressCodeResult, err + return findSkuSiteStockResult, err +} + +//设置门店sku库存 +//https://open.jd.com/home/home#/doc/api?apiCateId=48&apiId=2980&apiName=jingdong.stock.write.updateSkuSiteStock +//siteId 门店ID,venderSource 固定传4 +func (a *API) UpdateSkuSiteStock(skuId, stockNum, siteId int) (err error) { + _, err = a.AccessAPI("jingdong.stock.write.updateSkuSiteStock", prodURL, map[string]interface{}{ + "skuId": skuId, + "stockNum": stockNum, + "siteId": siteId, + "venderSource": 4, + }) + return err } diff --git a/platformapi/jdshopapi/store_test.go b/platformapi/jdshopapi/store_test.go index ab1c66d3..9faa293f 100644 --- a/platformapi/jdshopapi/store_test.go +++ b/platformapi/jdshopapi/store_test.go @@ -63,9 +63,17 @@ func TestGetCounty(t *testing.T) { } func TestFindSkuSiteStock(t *testing.T) { - result, err := api.FindSkuSiteStock(24330612, 69411607059) + result, err := api.FindSkuSiteStock(24332466, 69411607059) if err != nil { t.Fatal(err) } t.Log(utils.Format4Output(result, false)) } + +func TestUpdateSkuSiteStock(t *testing.T) { + err := api.UpdateSkuSiteStock(69411607059, 0, 24332466) + if err != nil { + t.Fatal(err) + } + // t.Log(utils.Format4Output(result, false)) +}