From c2e4ee7c5d88e48b1aa0afa3b56d9a4a794b1ca9 Mon Sep 17 00:00:00 2001 From: richboo111 Date: Thu, 13 Oct 2022 13:45:26 +0800 Subject: [PATCH] 1 --- .../request/freightTemplate_create_request.go | 16 ++-- .../trade_createTradeLimitTemplate_request.go | 34 +++++---- .../request/warehouse_bindFences_request.go | 22 +++--- .../response/warehouse_bindFences_response.go | 2 +- platformapi/tiktok_shop/tiktok_api/store.go | 30 ++++++++ .../tiktok_shop/tiktok_api/store_test.go | 73 ++++++++++++++++++- 6 files changed, 137 insertions(+), 40 deletions(-) diff --git a/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request/freightTemplate_create_request.go b/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request/freightTemplate_create_request.go index abd0dc1c..7fff169c 100644 --- a/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request/freightTemplate_create_request.go +++ b/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request/freightTemplate_create_request.go @@ -72,31 +72,31 @@ type ColumnsItem struct { // 首件价格(单位:元)按数量计价必填 0.00-30.00之间的小数,小数点后两位 FirstNumPrice float64 `json:"first_num_price"` // 续重(单位:kg) 按重量计价必填 0.1-999.9之间的小数,小数点后一位 - AddWeight float64 `json:"add_weight"` + //AddWeight float64 `json:"add_weight"` // 续重价格(单位:元) 按重量计价必填 0.00-30.00之间的小数,小数点后两位 - AddWeightPrice float64 `json:"add_weight_price"` + //AddWeightPrice float64 `json:"add_weight_price"` // 续件(单位:个) 按数量计价必填 1-999的整数 AddNum int64 `json:"add_num"` // 续件价格(单位:元) 按数量计价必填 0.00-30.00之间的小数,小数点后两位 AddNumPrice float64 `json:"add_num_price"` // 是否默认计价方式(1:是;0:不是) - IsDefault int64 `json:"is_default"` + //IsDefault int64 `json:"is_default"` // 是否限运规则 - IsLimited bool `json:"is_limited"` + //IsLimited bool `json:"is_limited"` // 当前规则生效的地址,非默认规则必填。map>>>的json格式,省->市->区->街道,填至选择到的层级即可,仅限售规则支持四级街道 RuleAddress string `json:"rule_address"` // 是否包邮规则 IsOverFree bool `json:"is_over_free"` // 满xx重量包邮(单位:kg)0.1-10.0之间的小数,小数点后一位 - OverWeight float64 `json:"over_weight"` + //OverWeight float64 `json:"over_weight"` // 满xx金额包邮(单位:分)10-99900的整数 OverAmount int64 `json:"over_amount"` // 满xx件包邮 1-10之间的整数 - OverNum int64 `json:"over_num"` + //OverNum int64 `json:"over_num"` // 最小金额限制,单位分,不限制填-1 - MinSkuAmount int64 `json:"min_sku_amount"` + //MinSkuAmount int64 `json:"min_sku_amount"` // 最大金额限制,单位分,不限制填-1 - MaxSkuAmount int64 `json:"max_sku_amount"` + //MaxSkuAmount int64 `json:"max_sku_amount"` // 当前规则生效的地址,统一以List结构返回,该结构为嵌套结构。对应的json格式为[{"id":"32","children":[{"id":"320500","children":[{"id":"320508","children":[{"id":"320508014"},{"id":"320508004"}]}]}]}] 注意:返回的为最新的四级地址版本(地址存储升级变更的可能,以最新的返回) ProvinceInfos []ProvinceInfosItem `json:"province_infos"` } diff --git a/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request/trade_createTradeLimitTemplate_request.go b/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request/trade_createTradeLimitTemplate_request.go index d1a09ed5..1f8b11bb 100644 --- a/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request/trade_createTradeLimitTemplate_request.go +++ b/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request/trade_createTradeLimitTemplate_request.go @@ -52,27 +52,28 @@ type TradeLimitPattern struct { // 累计限购值 CumulativeMax int64 `json:"cumulative_max"` } -type TimePeriod struct { - // 限购开始时间 - StartTime int64 `json:"start_time"` - // 限购结束时间 - EndTime int64 `json:"end_time"` - // 限购滑动窗口时长 - LimitPeriod int64 `json:"limit_period"` - // 限购滑动窗口结束时间 - LimitPeriodEndTime int64 `json:"limit_period_end_time"` -} + +//type TimePeriod struct { +// // 限购开始时间 +// StartTime int64 `json:"start_time"` +// // 限购结束时间 +// EndTime int64 `json:"end_time"` +// // 限购滑动窗口时长 +// LimitPeriod int64 `json:"limit_period"` +// // 限购滑动窗口结束时间 +// LimitPeriodEndTime int64 `json:"limit_period_end_time"` +//} type TradeLimitRuleRequestListItem struct { // 限购模型 1-重量,2-数量,3-地区,4-金额 TradeLimitModel int32 `json:"trade_limit_model"` // 限购资源类别1-抖店,2-门店,3-商品ID,4-sku,5-类目,6-活动,7-商品标 TradeLimitResource int32 `json:"trade_limit_resource"` // 限购资源值 - TradeLimitResourceObject *TradeLimitResourceObject `json:"trade_limit_resource_object"` + //TradeLimitResourceObject *TradeLimitResourceObject `json:"trade_limit_resource_object"` // 限购值,模型为重量则单位为毫克,模型为金额则单位为分 TradeLimitPattern *TradeLimitPattern `json:"trade_limit_pattern"` // 限购时间 - TimePeriod *TimePeriod `json:"time_period"` + //TimePeriod *TimePeriod `json:"time_period"` // 限购维度1 // 端用户(比如uid=122,aid=1128) 2 // 用户组用户(比如uid=122,group=aweme) 3 // 设备 4 // 下单电话 5 // 收件电话 6 // 身份证号 7 // 支付账号 TradeLimitSubjectList []int32 `json:"trade_limit_subject_list"` } @@ -82,7 +83,8 @@ type TradeCreateTradeLimitTemplateParam struct { // 限购参数 TradeLimitRuleRequestList []TradeLimitRuleRequestListItem `json:"trade_limit_rule_request_list"` } -type TradeLimitResourceObject struct { - // 限购资源值列表 - TradeLimitResourceIdList []string `json:"trade_limit_resource_id_list"` -} + +//type TradeLimitResourceObject struct { +// // 限购资源值列表 +// TradeLimitResourceIdList []string `json:"trade_limit_resource_id_list"` +//} diff --git a/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request/warehouse_bindFences_request.go b/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request/warehouse_bindFences_request.go index 368177f4..dc1f1625 100644 --- a/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request/warehouse_bindFences_request.go +++ b/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request/warehouse_bindFences_request.go @@ -1,21 +1,21 @@ package warehouse_bindFences_request import ( - "doudian.com/open/sdk_golang/api/warehouse_bindFences/response" - "doudian.com/open/sdk_golang/core" "encoding/json" + warehouse_bindFences_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" ) type WarehouseBindFencesRequest struct { doudian_sdk.BaseDoudianOpApiRequest - Param *WarehouseBindFencesParam + Param *WarehouseBindFencesParam } -func (c *WarehouseBindFencesRequest) GetUrlPath() string{ + +func (c *WarehouseBindFencesRequest) GetUrlPath() string { return "/warehouse/bindFences" } - -func New() *WarehouseBindFencesRequest{ +func New() *WarehouseBindFencesRequest { request := &WarehouseBindFencesRequest{ Param: &WarehouseBindFencesParam{}, } @@ -25,8 +25,7 @@ func New() *WarehouseBindFencesRequest{ } - -func (c *WarehouseBindFencesRequest) Execute(accessToken *doudian_sdk.AccessToken) (*warehouse_bindFences_response.WarehouseBindFencesResponse, error){ +func (c *WarehouseBindFencesRequest) Execute(accessToken *doudian_sdk.AccessToken) (*warehouse_bindFences_response.WarehouseBindFencesResponse, error) { responseJson, err := c.GetClient().Request(c, accessToken) if err != nil { return nil, err @@ -37,17 +36,14 @@ func (c *WarehouseBindFencesRequest) Execute(accessToken *doudian_sdk.AccessToke } - -func (c *WarehouseBindFencesRequest) GetParamObject() interface{}{ +func (c *WarehouseBindFencesRequest) GetParamObject() interface{} { return c.Param } - -func (c *WarehouseBindFencesRequest) GetParams() *WarehouseBindFencesParam{ +func (c *WarehouseBindFencesRequest) GetParams() *WarehouseBindFencesParam { return c.Param } - type WarehouseBindFencesParam struct { // 外部仓id OutWarehouseId string `json:"out_warehouse_id"` diff --git a/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/response/warehouse_bindFences_response.go b/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/response/warehouse_bindFences_response.go index 3f2b8171..4ef6049f 100644 --- a/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/response/warehouse_bindFences_response.go +++ b/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/response/warehouse_bindFences_response.go @@ -1,7 +1,7 @@ package warehouse_bindFences_response import ( - "doudian.com/open/sdk_golang/core" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" ) type WarehouseBindFencesResponse struct { diff --git a/platformapi/tiktok_shop/tiktok_api/store.go b/platformapi/tiktok_shop/tiktok_api/store.go index e4465bd6..78401fbd 100644 --- a/platformapi/tiktok_shop/tiktok_api/store.go +++ b/platformapi/tiktok_shop/tiktok_api/store.go @@ -32,6 +32,7 @@ import ( shop_unsuspendStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_unsuspendStore/response" trade_createTradeLimitTemplate_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/request" trade_createTradeLimitTemplate_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_createTradeLimitTemplate/response" + warehouse_bindFences_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request" warehouse_bindFencesByStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFencesByStore/request" warehouse_bindFencesByStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFencesByStore/response" warehouse_bindStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindStore/request" @@ -44,6 +45,7 @@ import ( warehouse_createFence_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createFence/response" warehouse_list_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_list/request" warehouse_list_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_list/response" + warehouse_setFence_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_setFence/request" warehouse_unbindStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_unbindStore/request" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/globals" @@ -323,6 +325,20 @@ func (a *API) CreateFence(param *warehouse_createFence_request.WarehouseCreateFe return response.Data, nil } +//更新电子围栏 +func (a *API) SetFence(param *warehouse_setFence_request.WarehouseSetFenceParam) error { + request := warehouse_setFence_request.New() + request.Param = param + response, err := request.Execute(a.accessTokenObj) + if err != nil { + return err + } + if response.Code != RequestSuccessCode { + return errors.New(response.SubMsg) + } + return nil +} + // 门店绑定电子围栏 func (a *API) BindFenceByStore(param *warehouse_bindFencesByStore_request.WarehouseBindFencesByStoreParam) (*warehouse_bindFencesByStore_response.WarehouseBindFencesByStoreData, error) { request := warehouse_bindFencesByStore_request.New() @@ -337,6 +353,20 @@ func (a *API) BindFenceByStore(param *warehouse_bindFencesByStore_request.Wareho return response.Data, nil } +//仓库绑定电子围栏 +func (a *API) WarehouseBindFence(param *warehouse_bindFences_request.WarehouseBindFencesParam) error { + request := warehouse_bindFences_request.New() + request.Param = param + response, err := request.Execute(a.accessTokenObj) + if err != nil { + return err + } + if response.Code != RequestSuccessCode { + return errors.New(response.SubMsg) + } + return nil +} + //address //门店新增查询发货地址 diff --git a/platformapi/tiktok_shop/tiktok_api/store_test.go b/platformapi/tiktok_shop/tiktok_api/store_test.go index ad82329b..89013c05 100644 --- a/platformapi/tiktok_shop/tiktok_api/store_test.go +++ b/platformapi/tiktok_shop/tiktok_api/store_test.go @@ -4,8 +4,12 @@ import ( "fmt" freightTemplate_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request" shop_batchCreateStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_batchCreateStore/request" + warehouse_bindFences_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFences/request" + warehouse_bindFencesByStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindFencesByStore/request" warehouse_bindStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindStore/request" warehouse_createBatch_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createBatch/request" + warehouse_createFence_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createFence/request" + warehouse_setFence_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_setFence/request" "git.rosy.net.cn/baseapi/utils" "math/rand" "testing" @@ -96,8 +100,8 @@ func TestBindWarehouseToStore(t *testing.T) { a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) data, err := a.StoreBindWarehouse(&warehouse_bindStore_request.WarehouseBindStoreParam{ - StoreIds: []int64{63114504}, - OutWarehouseId: "666668", + StoreIds: []int64{65312663}, + OutWarehouseId: "668510", }) fmt.Println(data) fmt.Println(err) @@ -109,3 +113,68 @@ func TestUnBindd(t *testing.T) { a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) a.WarehouseUnbindStore([]int64{63114504}, "666667") } + +//创建电子围栏 +func TestCreateFence(t *testing.T) { + token := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652230,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authority_id":""}` + a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) + param := &warehouse_createFence_request.WarehouseCreateFenceParam{ + FenceInfo: &warehouse_createFence_request.FenceInfo{ + OutFenceId: "668410-2", + Shape: 1, + Circular: &warehouse_createFence_request.Circular{ + Center: &warehouse_createFence_request.Center{ + Longitude: 104.056976, + Latitude: 30.755311, + }, + Radius: 100000, + }, + }, + } + fenceID, err := a.CreateFence(param) + fmt.Println(fenceID) + fmt.Println(err) +} + +//绑定电子围栏与门店 +func TestBindFence(t *testing.T) { + token := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652230,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authority_id":""}` + a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) + var ids = []string{"668469"} + param := &warehouse_bindFencesByStore_request.WarehouseBindFencesByStoreParam{ + StoreId: 63114504, + AddOutFenceIds: ids, + } + _, err := a.BindFenceByStore(param) + fmt.Println(err) +} + +func TestUpdateFence(t *testing.T) { + token := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652230,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authority_id":""}` + a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) + param := &warehouse_setFence_request.WarehouseSetFenceParam{ + FenceInfo: &warehouse_setFence_request.FenceInfo{ + OutFenceId: "668469", + Shape: 1, + Circular: &warehouse_setFence_request.Circular{ + Center: &warehouse_setFence_request.Center{ + Longitude: 104.056976, + Latitude: 30.755311, + }, + Radius: 30000, + }, + }, + } + err := a.SetFence(param) + fmt.Println(err) +} +func TestWarehouseBindFence(t *testing.T) { + token := `{"access_token":"a1746210-a8a3-4497-a87b-09d1f10dbb95","expires_in":1665652230,"scope":"SCOPE","shop_id":"","shop_name":"小时达开放平台对接专用店","refresh_token":"c1cf8d88-0983-4f2a-b969-3746fae6b0cd","authority_id":""}` + a := New("7136048270014416392", "c397aa9f-3927-47c4-8cfe-4d84e02602e0", token) + param := &warehouse_bindFences_request.WarehouseBindFencesParam{ + OutWarehouseId: "668510", + OutFenceIds: []string{"668410-2"}, + } + _, err := a.WarehouseBindFence(param) + fmt.Println(err) +}