From 9327c466a60e43f1ebfe675e6a98ac05bcb8e8b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 15 Jun 2023 15:21:36 +0800 Subject: [PATCH] 1 --- platformapi/tao_vegetable/api_token.go | 18 ++++++++++-- platformapi/tao_vegetable/order_afs.go | 22 +++++++-------- platformapi/tao_vegetable/order_delivery.go | 10 +++---- platformapi/tao_vegetable/sdk/topclient.go | 1 + platformapi/tao_vegetable/store_categary.go | 24 ++++++++-------- platformapi/tao_vegetable/store_model.go | 24 ++++++++++------ platformapi/tao_vegetable/store_sku.go | 15 +++++----- platformapi/tao_vegetable/store_test.go | 31 +++++++++++++++------ platformapi/tao_vegetable/upload_img.go | 2 +- 9 files changed, 92 insertions(+), 55 deletions(-) diff --git a/platformapi/tao_vegetable/api_token.go b/platformapi/tao_vegetable/api_token.go index 2c0e965c..ad82c17a 100644 --- a/platformapi/tao_vegetable/api_token.go +++ b/platformapi/tao_vegetable/api_token.go @@ -19,8 +19,8 @@ const ( ServerUrl4 = "http://qimen.api.taobao.com/top/router/qmtest" // 沙箱环境http ) -func NewTaoVegetable(appKey, appSecret, serverUrl string) API { - return API{client: topsdk.NewDefaultTopClient(appKey, appSecret, serverUrl, 2000, 2000)} +func NewTaoVegetable(appKey, appSecret, serverUrl string) *API { + return &API{client: topsdk.NewDefaultTopClient(appKey, appSecret, serverUrl, 2000, 2000)} } type API struct { @@ -29,7 +29,19 @@ type API struct { refreshToken string } -func (a API) GetStoreToken(code, uuId string) (*StoreTokenInfo, error) { +func (a *API) GetVendorOrgCode() string { + return a.client.AppKey +} + +func (a *API) SetToken(token string) { + a.token = token +} + +func (a *API) SetRefreshToken(refreshToken string) { + a.refreshToken = refreshToken +} + +func (a *API) GetStoreToken(code, uuId string) (*StoreTokenInfo, error) { param := &request.TaobaoTopAuthTokenCreateRequest{ Code: &code, } diff --git a/platformapi/tao_vegetable/order_afs.go b/platformapi/tao_vegetable/order_afs.go index 9e9add9c..1a9d78c9 100644 --- a/platformapi/tao_vegetable/order_afs.go +++ b/platformapi/tao_vegetable/order_afs.go @@ -16,7 +16,7 @@ import ( ) // AgreeUserCancel 同意用户售后申请 -func (a API) AgreeUserCancel(req *request2.AlibabaTclsAelophyRefundAgreeRequest) error { +func (a *API) AgreeUserCancel(req *request2.AlibabaTclsAelophyRefundAgreeRequest) error { client := ability3156.NewAbility3156(&a.client) data, err := client.AlibabaTclsAelophyRefundAgree(req, a.token) @@ -34,7 +34,7 @@ func (a API) AgreeUserCancel(req *request2.AlibabaTclsAelophyRefundAgreeRequest) } // DisAgreeUserCancel 拒绝用户售后申请 -func (a API) DisAgreeUserCancel(req *request2.AlibabaTclsAelophyRefundDisagreeRequest) error { +func (a *API) DisAgreeUserCancel(req *request2.AlibabaTclsAelophyRefundDisagreeRequest) error { client := ability3156.NewAbility3156(&a.client) data, err := client.AlibabaTclsAelophyRefundDisagree(req, a.token) @@ -52,7 +52,7 @@ func (a API) DisAgreeUserCancel(req *request2.AlibabaTclsAelophyRefundDisagreeRe } // PartialRefundReason 商户逆向取消订单数据渲染(获取订单商品列表已经取消原因:部分退款) -func (a API) PartialRefundReason(req *request2.AlibabaTclsAelophyRefundCsapplyrenderRequest) (*domain.AlibabaTclsAelophyRefundCsapplyrenderRefundCsApplyRenderResponseDto, error) { +func (a *API) PartialRefundReason(req *request2.AlibabaTclsAelophyRefundCsapplyrenderRequest) (*domain.AlibabaTclsAelophyRefundCsapplyrenderRefundCsApplyRenderResponseDto, error) { client := ability3156.NewAbility3156(&a.client) data, err := client.AlibabaTclsAelophyRefundCsapplyrender(req, a.token) @@ -70,7 +70,7 @@ func (a API) PartialRefundReason(req *request2.AlibabaTclsAelophyRefundCsapplyre } // PartialRefund 商户逆向取消订单 -func (a API) PartialRefund(req *request2.AlibabaTclsAelophyRefundCsapplyRequest) error { +func (a *API) PartialRefund(req *request2.AlibabaTclsAelophyRefundCsapplyRequest) error { client := ability3156.NewAbility3156(&a.client) data, err := client.AlibabaTclsAelophyRefundCsapply(req, a.token) @@ -88,7 +88,7 @@ func (a API) PartialRefund(req *request2.AlibabaTclsAelophyRefundCsapplyRequest) } // UserApplyRefund 用户申请售后单消息通知 -func (a API) UserApplyRefund(c *http.Request) (*UserApplyRefundCallBack, error) { +func (a *API) UserApplyRefund(c *http.Request) (*UserApplyRefundCallBack, error) { data, err := ioutil.ReadAll(c.Body) if err != nil { return nil, err @@ -101,7 +101,7 @@ func (a API) UserApplyRefund(c *http.Request) (*UserApplyRefundCallBack, error) } // UserCancelRefundApply 用户取消售后申请 -func (a API) UserCancelRefundApply(c *http.Request) (*UserCancelRefundApply, error) { +func (a *API) UserCancelRefundApply(c *http.Request) (*UserCancelRefundApply, error) { data, err := ioutil.ReadAll(c.Body) if err != nil { return nil, err @@ -114,7 +114,7 @@ func (a API) UserCancelRefundApply(c *http.Request) (*UserCancelRefundApply, err } // RefundOrderFinish 同城零售逆向订单状态完成接口(退款完成) -func (a API) RefundOrderFinish(c *http.Request) (*RefundOrderFinish, error) { +func (a *API) RefundOrderFinish(c *http.Request) (*RefundOrderFinish, error) { data, err := ioutil.ReadAll(c.Body) if err != nil { return nil, err @@ -127,7 +127,7 @@ func (a API) RefundOrderFinish(c *http.Request) (*RefundOrderFinish, error) { } // QueryAfsOrderDetail 获取订单退款详情 -func (a API) QueryAfsOrderDetail(req *request591.AlibabaWdkOrderRefundGetRequest) (*domain591.AlibabaWdkOrderRefundGetOrderSyncRefundListResult, error) { +func (a *API) QueryAfsOrderDetail(req *request591.AlibabaWdkOrderRefundGetRequest) (*domain591.AlibabaWdkOrderRefundGetOrderSyncRefundListResult, error) { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaWdkOrderRefundGet(req, a.token) @@ -145,7 +145,7 @@ func (a API) QueryAfsOrderDetail(req *request591.AlibabaWdkOrderRefundGetRequest } // QueryAfsOrderDetailList 批量获取订单退款详情 -func (a API) QueryAfsOrderDetailList(req *request591.AlibabaWdkOrderRefundListRequest) (*domain591.AlibabaWdkOrderRefundListOrderSyncRefundListResult, error) { +func (a *API) QueryAfsOrderDetailList(req *request591.AlibabaWdkOrderRefundListRequest) (*domain591.AlibabaWdkOrderRefundListOrderSyncRefundListResult, error) { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaWdkOrderRefundList(req, a.token) @@ -163,7 +163,7 @@ func (a API) QueryAfsOrderDetailList(req *request591.AlibabaWdkOrderRefundListRe } // GetTransactionOrderList 实时拉取交易列表 -func (a API) GetTransactionOrderList(req *request591.AlibabaWdkOrderListRequest) (*domain591.AlibabaWdkOrderListResult, error) { +func (a *API) GetTransactionOrderList(req *request591.AlibabaWdkOrderListRequest) (*domain591.AlibabaWdkOrderListResult, error) { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaWdkOrderList(req, a.token) @@ -181,7 +181,7 @@ func (a API) GetTransactionOrderList(req *request591.AlibabaWdkOrderListRequest) } // QueryBillList 获取账单信息 -func (a API) QueryBillList(req *request591.AlibabaWdkBillListRequest) (*domain591.AlibabaWdkBillListTxdBillListGetResult, error) { +func (a *API) QueryBillList(req *request591.AlibabaWdkBillListRequest) (*domain591.AlibabaWdkBillListTxdBillListGetResult, error) { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaWdkBillList(req, a.token) diff --git a/platformapi/tao_vegetable/order_delivery.go b/platformapi/tao_vegetable/order_delivery.go index 47ac3f00..00327fe7 100644 --- a/platformapi/tao_vegetable/order_delivery.go +++ b/platformapi/tao_vegetable/order_delivery.go @@ -13,7 +13,7 @@ import ( ) // ReaderOrderInfo 获取订单状态回调 -func (a API) ReaderOrderInfo(c *http.Request) (*CallbackOrder, error) { +func (a *API) ReaderOrderInfo(c *http.Request) (*CallbackOrder, error) { body, _ := ioutil.ReadAll(c.Body) var callbackOrder *CallbackOrder @@ -24,7 +24,7 @@ func (a API) ReaderOrderInfo(c *http.Request) (*CallbackOrder, error) { return callbackOrder, nil } -func (a API) OnSaleRefundOrder(c *http.Request) (*OnSaleCancel, error) { +func (a *API) OnSaleRefundOrder(c *http.Request) (*OnSaleCancel, error) { body, _ := ioutil.ReadAll(c.Body) var onSaleOrder *OnSaleCancel @@ -35,7 +35,7 @@ func (a API) OnSaleRefundOrder(c *http.Request) (*OnSaleCancel, error) { } // QueryOrderDetail 自配送查询订单详情 -func (a API) QueryOrderDetail(req *request2.AlibabaAelophyOrderGetRequest) (*domain.AlibabaAelophyOrderGetOrderResponse, error) { +func (a *API) QueryOrderDetail(req *request2.AlibabaAelophyOrderGetRequest) (*domain.AlibabaAelophyOrderGetOrderResponse, error) { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaAelophyOrderGet(req, a.token) if err != nil { @@ -53,7 +53,7 @@ func (a API) QueryOrderDetail(req *request2.AlibabaAelophyOrderGetRequest) (*dom // DeliveryFinish 订单一下的没一个状态通知接口 // ACCEPTED = 商户接单 REJECTED = 商户取消订单 PICKED = 拣货完成 PACKAGED = 打包出库 SHIPPING = 开始配送 SIGN = 用户签收 REFUSED = 用户拒收 -func (a API) DeliveryFinish(req *request2.AlibabaAelophyOrderWorkCallbackRequest) error { +func (a *API) DeliveryFinish(req *request2.AlibabaAelophyOrderWorkCallbackRequest) error { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaAelophyOrderWorkCallback(req, a.token) @@ -71,7 +71,7 @@ func (a API) DeliveryFinish(req *request2.AlibabaAelophyOrderWorkCallbackRequest } // DeliveryTrajectory 自配送轨迹回传(骑手开始配送之后同步订单数据) -func (a API) DeliveryTrajectory(req *request2.AlibabaAelophyOrderLogisticsTraceCallbackRequest) error { +func (a *API) DeliveryTrajectory(req *request2.AlibabaAelophyOrderLogisticsTraceCallbackRequest) error { client := ability591.NewAbility591(&a.client) data, err := client.AlibabaAelophyOrderLogisticsTraceCallback(req, a.token) diff --git a/platformapi/tao_vegetable/sdk/topclient.go b/platformapi/tao_vegetable/sdk/topclient.go index e0ddc76c..0dff4d6c 100644 --- a/platformapi/tao_vegetable/sdk/topclient.go +++ b/platformapi/tao_vegetable/sdk/topclient.go @@ -27,6 +27,7 @@ type TopClient struct { Simplify bool httpClient *http.Client } + type HttpTransportConfig struct { DialTimeout int64 KeepAlive int64 diff --git a/platformapi/tao_vegetable/store_categary.go b/platformapi/tao_vegetable/store_categary.go index 1e3d82d5..b48e144d 100644 --- a/platformapi/tao_vegetable/store_categary.go +++ b/platformapi/tao_vegetable/store_categary.go @@ -2,15 +2,19 @@ package tao_vegetable import ( "encoding/json" - "fmt" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/domain" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/request" + + "fmt" ) -func (a API) GetStoreCategoryInfo(code string) (*CategoryInfo, error) { +// GetStoreAllCategory 获取门店所有分类 + +// GetStoreCategoryInfo 获取门店指定分类 +func (a *API) GetStoreCategoryInfo(code string) (*CategoryInfo, error) { storeCategory := ability587.NewAbility587(&a.client) - resp, err := storeCategory.AlibabaWdkSkuCategoryQuery(&request.AlibabaWdkSkuCategoryQueryRequest{Param: &domain.AlibabaWdkSkuCategoryQueryCategoryDo{Code: &code}}, "") + resp, err := storeCategory.AlibabaWdkSkuCategoryQuery(&request.AlibabaWdkSkuCategoryQueryRequest{Param: &domain.AlibabaWdkSkuCategoryQueryCategoryDo{Code: &code}}, a.token) if err != nil { return nil, err } @@ -25,19 +29,15 @@ func (a API) GetStoreCategoryInfo(code string) (*CategoryInfo, error) { return info, nil } -func (a API) AddStoreCategoryInfo(param *request.AlibabaWdkSkuCategoryAddRequest) (*CategoryInfo, error) { +func (a *API) AddStoreCategoryInfo(param *request.AlibabaWdkSkuCategoryAddRequest) (string, error) { storeCategory := ability587.NewAbility587(&a.client) - resp, err := storeCategory.AlibabaWdkSkuCategoryAdd(param, "258adasdad222aa") + resp, err := storeCategory.AlibabaWdkSkuCategoryAdd(param, a.token) if err != nil { - return nil, err + return "", err } if resp.Result.ErrMsg != nil { - return nil, fmt.Errorf("requestId:" + resp.RequestId + "msg:" + *resp.Result.ErrMsg) - } - var info *CategoryInfo - if err := json.Unmarshal([]byte(*resp.Result.Model), &info); err != nil { - return nil, err + return "", fmt.Errorf("requestId:" + resp.RequestId + "msg:" + *resp.Result.ErrMsg) } - return info, nil + return *resp.Result.Model, nil } diff --git a/platformapi/tao_vegetable/store_model.go b/platformapi/tao_vegetable/store_model.go index 87af823f..76d5de33 100644 --- a/platformapi/tao_vegetable/store_model.go +++ b/platformapi/tao_vegetable/store_model.go @@ -6,12 +6,20 @@ const ( /*商品分类*/ type CategoryInfo struct { - Code string `json:"code"` // 类目编码 - Name string `json:"name"` // 类目名称 - Leaf string `json:"leaf"` // 是否叶子结点 - SortOrder string `json:"sortOrder"` // 排序值 - Desc string `json:"desc"` // 详细描述 - ChildCategorys string `json:"childCategorys"` // 子节点信息 - ForestId string `json:"forestId"` // 类目id - ParentForestId string `json:"parentForestId"` // 父节点id + ChildCategorys []struct { + Code string `json:"code"` // 类目编码 + Desc string `json:"desc"` // 详细描述 + ForestId int `json:"forestId"` // 类目id + Leaf bool `json:"leaf"` // 是否叶子结点 + Name string `json:"name"` // 类目名称 + ParentForestId int `json:"parentForestId"` // 父节点id + Status int `json:"status"` + } `json:"childCategorys"` + Code string `json:"code"` + Desc string `json:"desc"` + ForestId int `json:"forestId"` + Leaf bool `json:"leaf"` + Name string `json:"name"` + ParentForestId int `json:"parentForestId"` + Status int `json:"status"` } diff --git a/platformapi/tao_vegetable/store_sku.go b/platformapi/tao_vegetable/store_sku.go index b1d3fb48..3ca863ce 100644 --- a/platformapi/tao_vegetable/store_sku.go +++ b/platformapi/tao_vegetable/store_sku.go @@ -5,16 +5,17 @@ import ( "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/domain" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability585/request" - "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587" request2 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587/request" - "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589" request589 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589/request" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/globals" + + "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability587" + "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability589" ) // AddStoreSku 新增门店商品 -func (a API) AddStoreSku(param *request.AlibabaWdkSkuAddRequest) (*[]domain.AlibabaWdkSkuAddApiResult, error) { +func (a *API) AddStoreSku(param *request.AlibabaWdkSkuAddRequest) (*[]domain.AlibabaWdkSkuAddApiResult, error) { client := ability585.NewAbility585(&a.client) data, err := client.AlibabaWdkSkuAdd(param, a.token) @@ -32,7 +33,7 @@ func (a API) AddStoreSku(param *request.AlibabaWdkSkuAddRequest) (*[]domain.Alib } // UpdateStoreSku 更新门店商品 -func (a API) UpdateStoreSku(param *request.AlibabaWdkSkuUpdateRequest) (*[]domain.AlibabaWdkSkuUpdateApiResult, error) { +func (a *API) UpdateStoreSku(param *request.AlibabaWdkSkuUpdateRequest) (*[]domain.AlibabaWdkSkuUpdateApiResult, error) { client := ability585.NewAbility585(&a.client) data, err := client.AlibabaWdkSkuUpdate(param, a.token) @@ -50,7 +51,7 @@ func (a API) UpdateStoreSku(param *request.AlibabaWdkSkuUpdateRequest) (*[]domai } // QueryStoreSKu 查询门店商品 -func (a API) QueryStoreSKu(param *request.AlibabaWdkSkuQueryRequest) (*[]domain.AlibabaWdkSkuQueryApiResult, error) { +func (a *API) QueryStoreSKu(param *request.AlibabaWdkSkuQueryRequest) (*[]domain.AlibabaWdkSkuQueryApiResult, error) { client := ability585.NewAbility585(&a.client) data, err := client.AlibabaWdkSkuQuery(param, a.token) @@ -68,7 +69,7 @@ func (a API) QueryStoreSKu(param *request.AlibabaWdkSkuQueryRequest) (*[]domain. } // StoreSkuUpdate 门店商品上下架 -func (a API) StoreSkuUpdate(param *request2.AlibabaAxChannelSkuStatusUpdateRequest) error { +func (a *API) StoreSkuUpdate(param *request2.AlibabaAxChannelSkuStatusUpdateRequest) error { client := ability587.NewAbility587(&a.client) data, err := client.AlibabaAxChannelSkuStatusUpdate(param, a.token) @@ -86,7 +87,7 @@ func (a API) StoreSkuUpdate(param *request2.AlibabaAxChannelSkuStatusUpdateReque } // StoreSkuStock 商品库存同步 -func (a API) StoreSkuStock(param *request589.AlibabaWdkStockPublishRequest) error { +func (a *API) StoreSkuStock(param *request589.AlibabaWdkStockPublishRequest) error { client := ability589.NewAbility589(&a.client) data, err := client.AlibabaWdkStockPublish(param) diff --git a/platformapi/tao_vegetable/store_test.go b/platformapi/tao_vegetable/store_test.go index 646af4ea..d5f8e11b 100644 --- a/platformapi/tao_vegetable/store_test.go +++ b/platformapi/tao_vegetable/store_test.go @@ -11,31 +11,46 @@ import ( ) var ( - apiTao API + apiTao *API sugarLogger *zap.SugaredLogger ) +/*{ +"w2_valid": 1686799202942, +"r1_valid": 1702349402942, +"sp": "hema", +"r2_valid": 1687056602942, +"w1_valid": 1702349402942, +"locale": "zh_CN", +"user_id": "2215979737042", +"expire_time": 1702349402942, +"refresh_token": "50003C01414dSdI4diuByqeaiB124723d9yCmsxcIiMnXDrxjh0noxEuo20VpEXyHize", +"user_nick": "%E5%88%98%E7%A3%8A", +"refresh_token_valid_time": 1686797402942, +"access_token": "50002C00414zMSClqLiSDjBr2N19748391yiazjtFmsgTOdbBftik0XDfkUQywSmcjfC" +} +*/ func init() { apiTao = NewTaoVegetable(AppKey, AppSecret, ServerUrl) - + apiTao.SetToken("50002C00414zMSClqLiSDjBr2N19748391yiazjtFmsgTOdbBftik0XDfkUQywSmcjfC") logger, _ := zap.NewDevelopment() sugarLogger = logger.Sugar() baseapi.Init(sugarLogger) } func TestGetStoreCategory(t *testing.T) { - data, err := apiTao.GetStoreCategoryInfo("11111") + data, err := apiTao.GetStoreCategoryInfo("") globals.SugarLogger.Debugf("data := %s", utils.Format4Output(data, false)) globals.SugarLogger.Debugf("err := %s", utils.Format4Output(err, false)) } func TestAddCategory(t *testing.T) { data, err := apiTao.AddStoreCategoryInfo(&request.AlibabaWdkSkuCategoryAddRequest{Param: &domain.AlibabaWdkSkuCategoryAddCategoryDo{ - Code: utils.String2Pointer("1111"), - Name: utils.String2Pointer("1111"), - ParentCode: utils.String2Pointer("1111"), + Code: utils.String2Pointer("222201"), + Name: utils.String2Pointer("叶菜类"), + ParentCode: utils.String2Pointer("2222"), Leaf: utils.Bool2Point(false), - Desc: utils.String2Pointer("1111"), - SortOrder: utils.Int64ToPointer(1), + Desc: utils.String2Pointer("叶菜"), + SortOrder: utils.Int64ToPointer(3), }}) globals.SugarLogger.Debugf("data := %s", utils.Format4Output(data, false)) globals.SugarLogger.Debugf("err := %s", utils.Format4Output(err, false)) diff --git a/platformapi/tao_vegetable/upload_img.go b/platformapi/tao_vegetable/upload_img.go index 35463045..fb523da9 100644 --- a/platformapi/tao_vegetable/upload_img.go +++ b/platformapi/tao_vegetable/upload_img.go @@ -9,7 +9,7 @@ import ( ) // UploadImg 上传图片 -func (a API) UploadImg(param *request.AlibabaWdkPictureUploadRequest) (string, error) { +func (a *API) UploadImg(param *request.AlibabaWdkPictureUploadRequest) (string, error) { client := ability1475.NewAbility1475(&a.client) data, err := client.AlibabaWdkPictureUpload(param, a.token)