From 006278bbd6c3d7936e6e992f9034b6909af84e6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 18 Feb 2020 10:59:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=A5=BF=E7=99=BE=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=8D=95=E4=B8=AA=E9=97=A8=E5=BA=97=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- platformapi/ebaiapi/store_page.go | 131 ++++++++++++++++++++++++- platformapi/ebaiapi/store_page_test.go | 7 +- 2 files changed, 133 insertions(+), 5 deletions(-) diff --git a/platformapi/ebaiapi/store_page.go b/platformapi/ebaiapi/store_page.go index b51699b9..b52fcacb 100644 --- a/platformapi/ebaiapi/store_page.go +++ b/platformapi/ebaiapi/store_page.go @@ -459,6 +459,119 @@ type ExianDaSku struct { Width string `json:"width"` } +type EbaiSku struct { + SkuID string `json:"sku_id"` + UpcID string `json:"upc_id"` + Upc string `json:"upc"` + Wid string `json:"wid"` + LeftNum string `json:"left_num"` + MarketPrice int `json:"market_price"` + SalePrice float64 `json:"sale_price"` + Discount int `json:"discount"` + Enabled string `json:"enabled"` + PurchaseLimit string `json:"purchase_limit"` + ShelfNumber string `json:"shelf_number"` + Ext string `json:"ext"` + NeedIce string `json:"need_ice"` + SkuProperty []interface{} `json:"sku_property"` + ExtCode string `json:"ext_code"` + WeightFlag string `json:"weight_flag"` + SaleUnit string `json:"sale_unit"` + PreminusWeight int `json:"preminus_weight"` + Minimum string `json:"minimum"` + SaleStep string `json:"sale_step"` + PreparationTime string `json:"preparation_time"` + ProcessType int `json:"process_type"` + ProcessDetail []interface{} `json:"process_detail"` + IsInActivity int `json:"is_in_activity"` + UpcType string `json:"upc_type"` + UpcName string `json:"upc_name"` + BrandID string `json:"brand_id"` + Description string `json:"description"` + Rtf string `json:"rtf"` + Summary string `json:"summary"` + Photos []struct { + URL string `json:"url"` + IsMaster int `json:"is_master"` + } `json:"photos"` + Cat1ID string `json:"cat1_id"` + Cat2ID string `json:"cat2_id"` + Cat3ID string `json:"cat3_id"` + Propertys []interface{} `json:"propertys"` + Length string `json:"length"` + Width string `json:"width"` + Height string `json:"height"` + Weight string `json:"weight"` + ProductionAddr1 string `json:"production_addr1"` + ProductionAddr2 string `json:"production_addr2"` + ProductionAddr3 string `json:"production_addr3"` + CustomCatID string `json:"custom_cat_id"` + CustomCatName string `json:"custom_cat_name"` + Cat1Name string `json:"cat1_name"` + Cat2Name string `json:"cat2_name"` + Cat3Name string `json:"cat3_name"` + BrandName string `json:"brand_name"` + Brand struct { + BrandID string `json:"brand_id"` + BrandName string `json:"brand_name"` + } `json:"brand"` + Illustration []interface{} `json:"illustration"` + IllustrationOrigin []interface{} `json:"illustration_origin"` + Cat struct { + Cat1 struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat1"` + Cat2 struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat2"` + Cat3 struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat3"` + } `json:"cat"` + LengthOrigin string `json:"length_origin"` + WidthOrigin string `json:"width_origin"` + HeightOrigin string `json:"height_origin"` + ProductionAddr1Origin string `json:"production_addr1_origin"` + ProductionAddr2Origin string `json:"production_addr2_origin"` + ProductionAddr3Origin string `json:"production_addr3_origin"` + SummaryOrigin string `json:"summary_origin"` + Cat1Origin struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat1_origin"` + Cat2Origin struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat2_origin"` + Cat3Origin struct { + ID string `json:"id"` + Name string `json:"name"` + } `json:"cat3_origin"` + BrandOrigin struct { + BrandID string `json:"brand_id"` + BrandName string `json:"brand_name"` + } `json:"brand_origin"` + IsDrug int `json:"is_drug"` + SupplierID string `json:"supplier_id"` + Editable int `json:"editable"` + IsWaterDiscount int `json:"is_water_discount"` + DiscountRange int `json:"discount_range"` + CtrlEdit struct { + UpcName int `json:"upc_name"` + Upc int `json:"upc"` + Cat int `json:"cat"` + BrandID int `json:"brand_id"` + Photos int `json:"photos"` + Description int `json:"description"` + Volumn int `json:"volumn"` + Weight int `json:"weight"` + Discount int `json:"discount"` + } `json:"ctrl_edit"` +} + func (a *API) AccessStorePage2(subURL, storeURL2 string, params map[string]interface{}, isPost bool, cookies map[string]string) (retVal map[string]interface{}, err error) { if a.GetCookieCount() == 0 { return nil, fmt.Errorf("需要设置Store Cookie才能使用此方法") @@ -656,10 +769,10 @@ func (a *API) PageGetSkuList(baiduShopID int64) (skuList []map[string]interface{ pageSize := 200 pageNo := 1 params := map[string]interface{}{ - "upc_type": 2, - "weight": 2, - "wid": baiduShopID, - "perpage": pageSize, + // "upc_type": 2, + // "weight": 2, + "wid": baiduShopID, + "perpage": pageSize, } for { params["curpage"] = pageNo @@ -679,6 +792,16 @@ func (a *API) PageGetSkuList(baiduShopID int64) (skuList []map[string]interface{ return nil, err } +func (a *API) PageGetSku(baiduShopID int64, skuID int64) (ebaiSku *EbaiSku, err error) { + params := map[string]interface{}{ + "wid": baiduShopID, + "sku_id": skuID, + } + retVal, err := a.AccessStorePage("commodity/getsku", "", params, false) + utils.Map2StructByJson(retVal, &ebaiSku, false) + return ebaiSku, err +} + func (a *API) PageGetCustomSkuList(baiduShopID int64, customCatID int64) (skuList []map[string]interface{}, err error) { params := map[string]interface{}{ "wid": baiduShopID, diff --git a/platformapi/ebaiapi/store_page_test.go b/platformapi/ebaiapi/store_page_test.go index 429dc9d0..36c7d90f 100644 --- a/platformapi/ebaiapi/store_page_test.go +++ b/platformapi/ebaiapi/store_page_test.go @@ -54,7 +54,7 @@ func TestGetEleCommentList(t *testing.T) { } func TestPageGetSkuList(t *testing.T) { - skuList, err := api.PageGetSkuList(2233065941) + skuList, err := api.PageGetSkuList(32267350915) if err != nil { t.Fatal(err) } @@ -164,3 +164,8 @@ func TestGetExianDaSku(t *testing.T) { result, _ := api.GetExianDaSku(100000000000184645) t.Log(utils.Format4Output(result, false)) } + +func TestPageGetSku(t *testing.T) { + result, _ := api.PageGetSku(32267350915, 15813853840796298) + t.Log(utils.Format4Output(result, false)) +}