From 7fc59fe0b434f891ea35a7c35a7b97acd7d517ce Mon Sep 17 00:00:00 2001 From: richboo111 Date: Mon, 13 Mar 2023 17:14:15 +0800 Subject: [PATCH] 1 --- ..._batchGetTradeLimitTemplateList_request.go | 50 ++++++++++ ...batchGetTradeLimitTemplateList_response.go | 94 +++++++++++++++++++ platformapi/tiktok_shop/tiktok_api/store.go | 21 ++++- 3 files changed, 164 insertions(+), 1 deletion(-) create mode 100644 platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/request/trade_batchGetTradeLimitTemplateList_request.go create mode 100644 platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/response/trade_batchGetTradeLimitTemplateList_response.go diff --git a/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/request/trade_batchGetTradeLimitTemplateList_request.go b/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/request/trade_batchGetTradeLimitTemplateList_request.go new file mode 100644 index 00000000..8d35f908 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/request/trade_batchGetTradeLimitTemplateList_request.go @@ -0,0 +1,50 @@ +package trade_batchGetTradeLimitTemplateList_request + +import ( + "encoding/json" + trade_batchGetTradeLimitTemplateList_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type TradeBatchGetTradeLimitTemplateListRequest struct { + doudian_sdk.BaseDoudianOpApiRequest + Param *TradeBatchGetTradeLimitTemplateListParam +} + +func (c *TradeBatchGetTradeLimitTemplateListRequest) GetUrlPath() string { + return "/trade/batchGetTradeLimitTemplateList" +} + +func New() *TradeBatchGetTradeLimitTemplateListRequest { + request := &TradeBatchGetTradeLimitTemplateListRequest{ + Param: &TradeBatchGetTradeLimitTemplateListParam{}, + } + request.SetConfig(doudian_sdk.GlobalConfig) + request.SetClient(doudian_sdk.DefaultDoudianOpApiClient) + return request + +} + +func (c *TradeBatchGetTradeLimitTemplateListRequest) Execute(accessToken *doudian_sdk.AccessToken) (*trade_batchGetTradeLimitTemplateList_response.TradeBatchGetTradeLimitTemplateListResponse, error) { + responseJson, err := c.GetClient().Request(c, accessToken) + if err != nil { + return nil, err + } + response := &trade_batchGetTradeLimitTemplateList_response.TradeBatchGetTradeLimitTemplateListResponse{} + _ = json.Unmarshal([]byte(responseJson), response) + return response, nil + +} + +func (c *TradeBatchGetTradeLimitTemplateListRequest) GetParamObject() interface{} { + return c.Param +} + +func (c *TradeBatchGetTradeLimitTemplateListRequest) GetParams() *TradeBatchGetTradeLimitTemplateListParam { + return c.Param +} + +type TradeBatchGetTradeLimitTemplateListParam struct { + // 限购模板ID列表 + TradeLimitTemplateIdList *[]int64 `json:"trade_limit_template_id_list,omitempty"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/response/trade_batchGetTradeLimitTemplateList_response.go b/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/response/trade_batchGetTradeLimitTemplateList_response.go new file mode 100644 index 00000000..46844236 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/response/trade_batchGetTradeLimitTemplateList_response.go @@ -0,0 +1,94 @@ +package trade_batchGetTradeLimitTemplateList_response + +import ( + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type TradeBatchGetTradeLimitTemplateListResponse struct { + doudian_sdk.BaseDoudianOpApiResponse + Data *TradeBatchGetTradeLimitTemplateListData `json:"data"` +} +type TimePeriodFixed struct { + // 开始时间戳 + StartTime int64 `json:"start_time"` + // 结束时间戳 + EndTime int64 `json:"end_time"` + // 是否循环 + Cyclic bool `json:"cyclic"` + // 循环参数 + CyclicOption *CyclicOption `json:"cyclic_option"` +} +type TimePeriodSlidingWindow struct { + // 窗口大小,单位为S + WindowSize int64 `json:"window_size"` + // 滑动窗口结束时间距离Now的偏移量 + TimeShift int64 `json:"time_shift"` +} +type TradeBatchGetTradeLimitTemplateListData struct { + // 限购模板信息列表 + TradeLimitTemplateList []TradeLimitTemplateListItem `json:"trade_limit_template_list"` +} +type TradeLimitResourceObject struct { + // 限购资源具体值 + TradeLimitResourceIdList []string `json:"trade_limit_resource_id_list"` + // 限购类目信息 + ProductCategoryList []ProductCategoryListItem `json:"product_category_list"` +} +type CyclicOption struct { + // 循环类别 + CyclicInterval int32 `json:"cyclic_interval"` + // 过期时间 + ExpireTime int64 `json:"expire_time"` + // 每Frequency个CyclicUnit循环一次 + Frequency int64 `json:"frequency"` + // 循环单位 1日 2周 3月 4年 + CyclicUnit int32 `json:"cyclic_unit"` +} +type TimePeriod struct { + // 限购时间类型 1固定起止时间 2滑动窗口 + TimePeriodPattern int32 `json:"time_period_pattern"` + // 限购时间段 + TimePeriodFixed *TimePeriodFixed `json:"time_period_fixed"` + // 时间滑动窗口 + TimePeriodSlidingWindow *TimePeriodSlidingWindow `json:"time_period_sliding_window"` +} +type TradeLimitRuleListItem struct { + // 限购模型 1-重量,2-数量,3-地区,4-金额 + TradeLimitModel int32 `json:"trade_limit_model"` + // 限购维度1 // 端用户(比如uid=122,aid=1128) 2 // 用户组用户(比如uid=122,group=aweme) 3 // 设备 4 // 下单电话 5 // 收件电话 6 // 身份证号 7 // 支付账号 + TradeLimitSubject int32 `json:"trade_limit_subject"` + // 限购资源类别1-抖店,2-门店,3-商品ID,4-sku,5-类目,6-活动,7-商品标 + TradeLimitResource int32 `json:"trade_limit_resource"` + // 限购资源值 + TradeLimitResourceObject *TradeLimitResourceObject `json:"trade_limit_resource_object"` + // 限购范围 + TradeLimitPattern *TradeLimitPattern `json:"trade_limit_pattern"` + // 限购时间 + TimePeriod *TimePeriod `json:"time_period"` +} +type TradeLimitTemplateListItem struct { + // 限购模板ID + TradeLimitTemplateId int64 `json:"trade_limit_template_id"` + // 店铺ID + ShopId int64 `json:"shop_id"` + // 规则列表 + TradeLimitRuleList []TradeLimitRuleListItem `json:"trade_limit_rule_list"` +} +type ProductCategoryListItem struct { + // 一级类目 + FirstCid int64 `json:"first_cid"` + // 二级类目 + SecondCid int64 `json:"second_cid"` + // 三级类目 + ThridCid int64 `json:"thrid_cid"` + // 四级类目 + FourthCid int64 `json:"fourth_cid"` +} +type TradeLimitPattern struct { + // 限购下限 + Minimum int64 `json:"minimum"` + // 限购上限 + Maximum int64 `json:"maximum"` + // 累计限购 + CumulativeMax int64 `json:"cumulative_max"` +} diff --git a/platformapi/tiktok_shop/tiktok_api/store.go b/platformapi/tiktok_shop/tiktok_api/store.go index ff6164a8..5e356bb4 100644 --- a/platformapi/tiktok_shop/tiktok_api/store.go +++ b/platformapi/tiktok_shop/tiktok_api/store.go @@ -36,6 +36,8 @@ import ( shop_unsuspendStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_unsuspendStore/response" trade_UpdateTradeLimitTemplate_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_UpdateTradeLimitTemplate/request" trade_UpdateTradeLimitTemplate_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_UpdateTradeLimitTemplate/response" + trade_batchGetTradeLimitTemplateList_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/request" + trade_batchGetTradeLimitTemplateList_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/trade_batchGetTradeLimitTemplateList/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" @@ -242,7 +244,7 @@ func (a *API) BindStoreSaleLimit(param *shop_bindStoreSaleLimit_request.ShopBind return nil } -// 门店查询限售模板 +// 门店查询限售模板id func (a *API) StoreQuerySaleLimitTemp(storeId int64) (int64, error) { request := shop_getStoreSaleLimit_request.New() request.Param.StoreId = storeId @@ -259,6 +261,23 @@ func (a *API) StoreQuerySaleLimitTemp(storeId int64) (int64, error) { return result.Data.StoreSaleLimits[0].SaleLimitId, nil } +//id 查询限售模板详情 +func (a *API) GetSaleLimitDetail(saleLimitId *[]int64) (*trade_batchGetTradeLimitTemplateList_response.TradeBatchGetTradeLimitTemplateListData, error) { + request := trade_batchGetTradeLimitTemplateList_request.New() + request.Param.TradeLimitTemplateIdList = saleLimitId + result, err := request.Execute(a.accessTokenObj) + if err != nil { + return nil, err + } + if result.Code != RequestSuccessCode { + return nil, errors.New(result.SubMsg) + } + if result.Data == nil || len(result.Data.TradeLimitTemplateList) == 0 { + return nil, errors.New("未查找到限售模板详情") + } + return result.Data, nil +} + // 创建运费模板 func (a *API) FreightTemplateCreate(param *freightTemplate_create_request.FreightTemplateCreateParam) (*freightTemplate_create_response.FreightTemplateCreateData, error) { request := freightTemplate_create_request.New()