This commit is contained in:
richboo111
2022-09-30 16:24:50 +08:00
parent 4829577ec9
commit 18ba37a154
21 changed files with 1140 additions and 17 deletions

View File

@@ -4,23 +4,50 @@ import (
"errors"
address_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_create/request"
address_create_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_create/response"
address_list_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_list/request"
address_list_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/address_list/response"
freightTemplate_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request"
freightTemplate_create_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/response"
shop_batchCreateStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_batchCreateStore/request"
shop_batchCreateStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_batchCreateStore/response"
shop_bindStoreFreight_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreFreight/request"
shop_bindStoreFreight_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreFreight/response"
shop_bindStoreSaleLimit_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreSaleLimit/request"
shop_bindStoreSaleLimit_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_bindStoreSaleLimit/response"
shop_editStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_editStore/request"
shop_editStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_editStore/response"
shop_getStoreDetail_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreDetail/request"
shop_getStoreDetail_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreDetail/response"
shop_getStoreList_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreList/request"
shop_getStoreList_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_getStoreList/response"
shop_storeSuspend_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_storeSuspend/request"
shop_storeSuspend_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_storeSuspend/response"
shop_unsuspendStore_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/shop_unsuspendStore/request"
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_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"
warehouse_bindStore_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_bindStore/response"
warehouse_createBatch_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createBatch/request"
warehouse_createBatch_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createBatch/response"
warehouse_createFence_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createFence/request"
warehouse_createFence_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_createFence/response"
)
//GetStoreDetail 单个获取门店信息
func (a *API) GetStoreDetail() {
func (a *API) GetStoreDetail(param *shop_getStoreDetail_request.ShopGetStoreDetailParam) (*shop_getStoreDetail_response.ShopGetStoreDetailData, error) {
request := shop_getStoreDetail_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, err
}
//BatchCreateStore 批量创建门店
@@ -31,8 +58,8 @@ func (a *API) BatchCreateStore(param *shop_batchCreateStore_request.ShopBatchCre
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -45,8 +72,8 @@ func (a *API) EditStore(param *shop_editStore_request.ShopEditStoreParam) (*shop
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -59,8 +86,8 @@ func (a *API) StoreSuspend(param *shop_storeSuspend_request.ShopStoreSuspendPara
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -73,8 +100,22 @@ func (a *API) UnsuspendStore(param *shop_unsuspendStore_request.ShopUnsuspendSto
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
//门店列表分页查询
func (a *API) GetStoreList(param *shop_getStoreList_request.ShopGetStoreListParam) (*shop_getStoreList_response.ShopGetStoreListData, error) {
request := shop_getStoreList_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -87,8 +128,8 @@ func (a *API) CreateTradeLimitTemplate(param *trade_createTradeLimitTemplate_req
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -101,8 +142,8 @@ func (a *API) BindStoreSaleLimit(param *shop_bindStoreSaleLimit_request.ShopBind
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
@@ -115,8 +156,106 @@ func (a *API) AddressCreate(param *address_create_request.AddressCreateParam) (*
if err != nil {
return nil, err
}
if response.Code != 1000 {
return nil, errors.New(response.Msg)
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
//分页获取商家地址列表
func (a *API) GetAddressList(param *address_list_request.AddressListParam) (*address_list_response.AddressListData, error) {
request := address_list_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
// 创建运费模板
func (a *API) FreightTemplateCreate(param *freightTemplate_create_request.FreightTemplateCreateParam) (*freightTemplate_create_response.FreightTemplateCreateData, error) {
request := freightTemplate_create_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
// 门店绑定运费模板 1对1
func (a *API) BindFreightTemplate(param *shop_bindStoreFreight_request.ShopBindStoreFreightParam) (*shop_bindStoreFreight_response.ShopBindStoreFreightData, error) {
request := shop_bindStoreFreight_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
// 批量创建区域仓
func (a *API) BatchCreateWarehouse(param *warehouse_createBatch_request.WarehouseCreateBatchParam) (*warehouse_createBatch_response.WarehouseCreateBatchData, error) {
request := warehouse_createBatch_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
// 仓库绑定门店
func (a *API) StoreBindWarehouse(param *warehouse_bindStore_request.WarehouseBindStoreParam) (*warehouse_bindStore_response.WarehouseBindStoreData, error) {
request := warehouse_bindStore_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
//创建电子围栏
func (a *API) CreateFence(param *warehouse_createFence_request.WarehouseCreateFenceParam) (*warehouse_createFence_response.WarehouseCreateFenceData, error) {
request := warehouse_createFence_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}
// 门店绑定电子围栏
func (a *API) BindFenceByStore(param *warehouse_bindFencesByStore_request.WarehouseBindFencesByStoreParam) (*warehouse_bindFencesByStore_response.WarehouseBindFencesByStoreData, error) {
request := warehouse_bindFencesByStore_request.New()
request.Param = param
response, err := request.Execute(AccessToken)
if err != nil {
return nil, err
}
if response.Code != 10000 {
return nil, errors.New(response.SubMsg)
}
return response.Data, nil
}

View File

@@ -0,0 +1,9 @@
package tiktok_api
type StoreCallbackResponse struct {
Data string `json:"data"`
}
// 创建店铺回调信息
type CallbackCreateStore struct {
}

View File

@@ -1,7 +1,8 @@
package tiktok_api
const (
import freightTemplate_create_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/freightTemplate_create/request"
const (
//限购模型
TradeLimitModelWeight = 1 //重量
TradeLimitModelQuantity = 2 //数量
@@ -30,6 +31,80 @@ const (
LinkTypePhone = 0 //手机
LinkTypeOrdinary = 1 //普通座机
LinkTypeEnterprise = 2 //企业座机
//店铺状态
StoreStatusOffline = 0 // 暂停营业/下线
StoreStatusOnline = 1 // 营业中/上线
StoreStatusChecking = 3 //审核通过后可上线(可能暂时用不上)
//店铺绑定状态
StoreStateBinding = 1 //绑定中
StoreStateSuccessBind = 2 //绑定成功
StoreStateQualificationChecking = 3 //资质验证中
StoreStateAccountChecking = 4 //账户认证中
StoreStateNormalBusiness = 5 //正常营业c端可下单
StoreStateSuspendBusiness = 6 //暂停营业
//poi审核子状态 StorePoiAudiInfo 同时使用
PoiAuditStateChecking = 1 //审核中
PoiAuditStateSuccessBind = 2 //绑定成功
PoiAuditStateReject = 3 //驳回
//资质审核状态
QualStateUnsubmitted = 0 //未提交
QualStateChecking = 1 //审核中
QualStateCheckingPassed = 2 //审核通过
QualStateReject = 3 //驳回
//账户验证状态
RemitStateUnsubmitted = 0 //未提交
RemitStateChecking = 1 //验证中
RemitStateCheckingPassed = 2 //通过
RemitStateDefeat = 3 //失败
//开户状态
OpenAccountStateOpen = 1 //已开户
OpenAccountStateNotOpen = 0 //未开户
//停业类型
SuspendTypeInitiative = 1 //商家主动操作
SuspendTypePlatformPenalty = 2 //平台处罚
//关联抖店信息 RelShopUser
//1 营业状态
OperateStatusNormalBusiness = 0 //正常营业
OperateStatusBusinessReorganization = 1 //停业整顿
//2 业务类型
BizTypeSecondClassEcommerce = 0 //二级电商
BizTypeConfidenceBuy = 1 //放心购
//3 资质类型
VTypeEnterprise = 0 //企业
VTypePersonal = 11 //个人
VTypeIndividual = 41 //个体
//4 店铺类型
ShopTypeNormal = 0 //普通
ShopTypeFranchise = 1 //专营
ShopTypeMonopoly = 2 //专卖
ShopTypeFlagShip = 3 //旗舰
//运费模板信息
//计价方式
CalculateTypeWeight = 1 //按重量
CalculateTypeNum = 2 //按数量模板类型为1、2、3时计价类型传2
//模板类型
RuleTypeLadderPricing = 0 //阶梯计价
RuleTypeFlatShipping = 1 //固定运费
RuleTypeFreeShipping = 2 //卖家包邮
RuleTypeCashOnDelivery = 3 //货到付款
//模板规则信息
IsDefaultYes = 1 //默认计价方式
IsDefaultNo = 0 //不是默认计价方式
//创建围栏信息
//围栏形状
ShapeCircular = 3 //圆
ShapePolygon = 2 //多边形,各点经纬度逆时针传递
)
//门店信息
@@ -212,3 +287,57 @@ type Address struct {
FixedPhone string `json:"fixed_phone"` // 普通座机格式:区号-座机号-分机号(分机号选填)、区号3~4位、座机号7~8位、分机号不超过5位。企业座机400/800开头不超过10位、95开头在5~8we
Remark string `json:"remark"` // 售后备注
}
// 创建运费模板
type StoreTempalteReq struct {
Template Template `json:"template"` //运费模板信息
Columns []Columns `json:"columns"` //运费模板规则
}
//运费模板信息
type Template struct {
TemplateName string `json:"templateName"` //模板名称
ProductProvince int64 `json:"productProvince"` //发货省份id
ProductCity int64 `json:"productCity"` //发货城市id
CalculateType int64 `json:"calculateType"` //计价方式-1.按重量 2.按数量模板类型为1、2、3时计价类型传2
TransferType int64 `json:"transferType"` //快递方式-1.快递 目前仅支持1
RuleType int64 `json:"ruleType"` //模板类型-0:阶梯计价 1:固定运费 2:卖家包邮 3:货到付款
FixedAmount int64 `json:"fixedAmount"` //固定运费金额(单位:分) 固定运费模板必填 1-9900之间的整数
}
//运费模板规则信息;
//每种类型模板可创建的规则类型: 阶梯计价模板-默认规则,普通计价规则,包邮规则,限运规则;
//固定运费模板-包邮规则,限运规则;
//固定运费模板-包邮规则,限运规则;
//包邮模板-限运规则;
//货到付款模板-限运规则
type Columns struct {
FirstWeight float64 `json:"firstWeight"` //首重(单位:kg) 按重量计价必填 0.1-999.9之间的小数,小数点后一位
FirstWeightPrice float64 `json:"firstWeightPrice"` //首重价格(单位:元) 按重量计价必填 0.00-30.00之间的小数,小数点后两位
FirstNum int64 `json:"firstNum"` //首件数量(单位:个) 按数量计价必填 1-999的整数
FirstNumPrice float64 `json:"firstNumPrice"` //首件价格(单位:元)按数量计价必填 0.00-30.00之间的小数,小数点后两位
AddWeight float64 `json:"addWeight"` //续重(单位:kg) 按重量计价必填 0.1-999.9之间的小数,小数点后一位
AddWeightPrice float64 `json:"addWeightPrice"` //续重价格(单位:元) 按重量计价必填 0.00-30.00之间的小数,小数点后两位
AddNum int64 `json:"addNum"` //续件(单位:个) 按数量计价必填 1-999的整数
AddNumPrice float64 `json:"addNumPrice"` //续件价格(单位:元) 按数量计价必填 0.00-30.00之间的小数,小数点后两位
IsDefault int64 `json:"isDefault"` //是否默认计价方式(1:是0:不是)
IsLimited bool `json:"isLimited"` //是否限运规则
RuleAddress string `json:"ruleAddress"` //当前规则生效的地址非默认规则必填。map>>>的json格式省->市->区->街道,填至选择到的层级即可,仅限售规则支持四级街道
IsOverFree bool `json:"isOverFree"` //是否包邮规则
OverWeight float64 `json:"overWeight"` //满xx重量包邮(单位:kg)0.1-10.0之间的小数,小数点后一位
OverAmount int64 `json:"overAmount"` //满xx金额包邮(单位:分)10-99900的整数
OverNum int64 `json:"overNum"` //满xx件包邮 1-10之间的整数
MinSkuAmount int64 `json:"minSkuAmount"` //最小金额限制,单位分,不限制填-1
MaxSkuAmount int64 `json:"maxSkuAmount"` //最大金额限制,单位分,不限制填-1
ProvinceInfos []freightTemplate_create_request.ProvinceInfosItem `json:"province_infos"` //当前规则生效的地址
}
//当前规则生效的地址统一以List结构返回该结构为嵌套结构。
//对应的json格式为
//[{"id":"32","children":[{"id":"320500","children":[{"id":"320508","children":[{"id":"320508014"},{"id":"320508004"}]}]}]}]
//注意:返回的为最新的四级地址版本(地址存储升级变更的可能,以最新的返回)
type ProvinceInfosItem struct {
ID int `json:"id"` //地址id第一级是省份、第二级是城市、第三级是区、第四级是街道
Children []ProvinceInfosItem `json:"children"` //下一级地址id
}