优化京东服务

master
李光春 2 years ago
parent 02880b68dd
commit 3815d5db98

@ -28,12 +28,12 @@ type JdJyOrderDetailsResponse struct {
type JdJyOrderDetailsResult struct { type JdJyOrderDetailsResult struct {
Result JdJyOrderDetailsResponse // 结果 Result JdJyOrderDetailsResponse // 结果
Byte []byte // 内容 body []byte // 内容
Err error // 错误 Err error // 错误
} }
func NewJdJyOrderDetailsResult(result JdJyOrderDetailsResponse, byte []byte, err error) *JdJyOrderDetailsResult { func NewJdJyOrderDetailsResult(result JdJyOrderDetailsResponse, body []byte, err error) *JdJyOrderDetailsResult {
return &JdJyOrderDetailsResult{Result: result, Byte: byte, Err: err} return &JdJyOrderDetailsResult{Result: result, body: body, Err: err}
} }
// JdJyOrderDetails 【官方不维护】 京佣订单 // JdJyOrderDetails 【官方不维护】 京佣订单

@ -28,12 +28,12 @@ type WaimaiMeituanOrdersResponse struct {
type WaimaiMeituanOrdersResult struct { type WaimaiMeituanOrdersResult struct {
Result WaimaiMeituanOrdersResponse // 结果 Result WaimaiMeituanOrdersResponse // 结果
Byte []byte // 内容 body []byte // 内容
Err error // 错误 Err error // 错误
} }
func NewWaimaiMeituanOrdersResult(result WaimaiMeituanOrdersResponse, byte []byte, err error) *WaimaiMeituanOrdersResult { func NewWaimaiMeituanOrdersResult(result WaimaiMeituanOrdersResponse, body []byte, err error) *WaimaiMeituanOrdersResult {
return &WaimaiMeituanOrdersResult{Result: result, Byte: byte, Err: err} return &WaimaiMeituanOrdersResult{Result: result, body: body, Err: err}
} }
// WaimaiMeituanOrders 美团联盟外卖/闪购/优选/酒店订单查询API // WaimaiMeituanOrders 美团联盟外卖/闪购/优选/酒店订单查询API

@ -1,7 +1,6 @@
package jd package jd
import ( import (
"encoding/json"
"fmt" "fmt"
"github.com/go-redis/redis/v8" "github.com/go-redis/redis/v8"
"go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo"
@ -19,12 +18,6 @@ type App struct {
MDb *mongo.Client // 非关系数据库服务 MDb *mongo.Client // 非关系数据库服务
} }
type ErrResp struct {
Code string `json:"code"`
ErrorMessage string `json:"errorMessage"`
ErrorSolution string `json:"errorSolution"`
}
func (app *App) request(params map[string]interface{}) (resp []byte, err error) { func (app *App) request(params map[string]interface{}) (resp []byte, err error) {
// 签名 // 签名
app.Sign(params) app.Sign(params)
@ -34,9 +27,6 @@ func (app *App) request(params map[string]interface{}) (resp []byte, err error)
if app.ZapLog != nil { if app.ZapLog != nil {
app.ZapLog.Sugar().Info(fmt.Sprintf("https://api.jd.com/routerjson?method=%s %s %s", params["method"], get.Header, get.Body)) app.ZapLog.Sugar().Info(fmt.Sprintf("https://api.jd.com/routerjson?method=%s %s %s", params["method"], get.Header, get.Body))
} }
// 检查错误
var errResp ErrResp
err = json.Unmarshal(get.Body, &errResp)
return get.Body, err return get.Body, err
} }

@ -1,6 +1,8 @@
package jd package jd
type UnionOpenGoodsJIngFenQueryResult struct { import "encoding/json"
type UnionOpenGoodsJIngFenQueryResultResponse struct {
JdUnionOpenGoodsJingfenQueryResponce struct { JdUnionOpenGoodsJingfenQueryResponce struct {
Code string `json:"code"` Code string `json:"code"`
QueryResult string `json:"queryResult"` QueryResult string `json:"queryResult"`
@ -103,13 +105,29 @@ type UnionOpenGoodsJIngFenQueryQueryResult struct {
TotalCount int `json:"totalCount"` TotalCount int `json:"totalCount"`
} }
type UnionOpenGoodsJIngFenQueryResult struct {
Responce UnionOpenGoodsJIngFenQueryResultResponse // 结果
Result UnionOpenGoodsJIngFenQueryQueryResult // 结果
body []byte // 内容
Err error // 错误
}
func NewUnionOpenGoodsJIngFenQueryResult(responce UnionOpenGoodsJIngFenQueryResultResponse, result UnionOpenGoodsJIngFenQueryQueryResult, body []byte, err error) *UnionOpenGoodsJIngFenQueryResult {
return &UnionOpenGoodsJIngFenQueryResult{Responce: responce, Result: result, body: body, Err: err}
}
// UnionOpenGoodsJIngFenQuery // UnionOpenGoodsJIngFenQuery
// 京东联盟精选优质商品每日更新可通过频道ID查询各个频道下的精选商品。用获取的优惠券链接调用转链接口时需传入搜索接口link字段返回的原始优惠券链接切勿对链接进行任何encode、decode操作否则将导致转链二合一推广链接时校验失败 // 京东联盟精选优质商品每日更新可通过频道ID查询各个频道下的精选商品。用获取的优惠券链接调用转链接口时需传入搜索接口link字段返回的原始优惠券链接切勿对链接进行任何encode、decode操作否则将导致转链二合一推广链接时校验失败
// https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.goods.jingfen.query // https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.goods.jingfen.query
func (app *App) UnionOpenGoodsJIngFenQuery(notMustParams ...Params) (body []byte, err error) { func (app *App) UnionOpenGoodsJIngFenQuery(notMustParams ...Params) *UnionOpenGoodsJIngFenQueryResult {
// 参数 // 参数
params := NewParamsWithType("jd.union.open.goods.jingfen.query", notMustParams...) params := NewParamsWithType("jd.union.open.goods.jingfen.query", notMustParams...)
// 请求 // 请求
body, err = app.request(params) body, err := app.request(params)
return // 定义
var responce UnionOpenGoodsJIngFenQueryResultResponse
var result UnionOpenGoodsJIngFenQueryQueryResult
err = json.Unmarshal(body, &responce)
err = json.Unmarshal([]byte(responce.JdUnionOpenGoodsJingfenQueryResponce.QueryResult), &result)
return NewUnionOpenGoodsJIngFenQueryResult(responce, result, body, err)
} }

@ -1,6 +1,8 @@
package jd package jd
type UnionOpenGoodsPromotionGoodsInfoQueryResult struct { import "encoding/json"
type UnionOpenGoodsPromotionGoodsInfoQueryResultResponse struct {
JdUnionOpenGoodsPromotiongoodsinfoQueryResponce struct { JdUnionOpenGoodsPromotiongoodsinfoQueryResponce struct {
Code string `json:"code"` Code string `json:"code"`
QueryResult string `json:"queryResult"` QueryResult string `json:"queryResult"`
@ -38,13 +40,29 @@ type UnionOpenGoodsPromotionGoodsInfoQueryQueryResult struct {
RequestId string `json:"requestId"` RequestId string `json:"requestId"`
} }
type UnionOpenGoodsPromotionGoodsInfoQueryResult struct {
Responce UnionOpenGoodsPromotionGoodsInfoQueryResultResponse // 结果
Result UnionOpenGoodsPromotionGoodsInfoQueryQueryResult // 结果
body []byte // 内容
Err error // 错误
}
func NewUnionOpenGoodsPromotionGoodsInfoQueryResult(responce UnionOpenGoodsPromotionGoodsInfoQueryResultResponse, result UnionOpenGoodsPromotionGoodsInfoQueryQueryResult, body []byte, err error) *UnionOpenGoodsPromotionGoodsInfoQueryResult {
return &UnionOpenGoodsPromotionGoodsInfoQueryResult{Responce: responce, Result: result, body: body, Err: err}
}
// UnionOpenGoodsPromotionGoodsInfoQuery // UnionOpenGoodsPromotionGoodsInfoQuery
// 通过SKUID查询推广商品的名称、主图、类目、价格、物流、是否自营、30天引单数量等详细信息支持批量获取。通常用于在媒体侧展示商品详情。 // 通过SKUID查询推广商品的名称、主图、类目、价格、物流、是否自营、30天引单数量等详细信息支持批量获取。通常用于在媒体侧展示商品详情。
// https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.goods.promotiongoodsinfo.query // https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.goods.promotiongoodsinfo.query
func (app *App) UnionOpenGoodsPromotionGoodsInfoQuery(notMustParams ...Params) (body []byte, err error) { func (app *App) UnionOpenGoodsPromotionGoodsInfoQuery(notMustParams ...Params) *UnionOpenGoodsPromotionGoodsInfoQueryResult {
// 参数 // 参数
params := NewParamsWithType("jd.union.open.goods.promotiongoodsinfo.query", notMustParams...) params := NewParamsWithType("jd.union.open.goods.promotiongoodsinfo.query", notMustParams...)
// 请求 // 请求
body, err = app.request(params) body, err := app.request(params)
return // 定义
var responce UnionOpenGoodsPromotionGoodsInfoQueryResultResponse
var result UnionOpenGoodsPromotionGoodsInfoQueryQueryResult
err = json.Unmarshal(body, &responce)
err = json.Unmarshal([]byte(responce.JdUnionOpenGoodsPromotiongoodsinfoQueryResponce.QueryResult), &result)
return NewUnionOpenGoodsPromotionGoodsInfoQueryResult(responce, result, body, err)
} }

@ -1,6 +1,8 @@
package jd package jd
type UnionOpenPromotionCommonGetResult struct { import "encoding/json"
type UnionOpenPromotionCommonGetResultResponse struct {
JdUnionOpenPromotionCommonGetResponce struct { JdUnionOpenPromotionCommonGetResponce struct {
Code string `json:"code"` Code string `json:"code"`
GetResult string `json:"getResult"` GetResult string `json:"getResult"`
@ -17,13 +19,29 @@ type UnionOpenPromotionCommonGetGetResult struct {
RequestId string `json:"requestId"` RequestId string `json:"requestId"`
} }
type UnionOpenPromotionCommonGetResult struct {
Responce UnionOpenPromotionCommonGetResultResponse // 结果
Result UnionOpenPromotionCommonGetGetResult // 结果
body []byte // 内容
Err error // 错误
}
func NewUnionOpenPromotionCommonGetResult(responce UnionOpenPromotionCommonGetResultResponse, result UnionOpenPromotionCommonGetGetResult, body []byte, err error) *UnionOpenPromotionCommonGetResult {
return &UnionOpenPromotionCommonGetResult{Responce: responce, Result: result, body: body, Err: err}
}
// UnionOpenPromotionCommonGet // UnionOpenPromotionCommonGet
// 网站/APP来获取的推广链接功能同宙斯接口的自定义链接转换、 APP领取代码接口通过商品链接、活动链接获取普通推广链接支持传入subunionid参数可用于区分媒体自身的用户ID该参数可在订单查询接口返回需向cps-qxsq@jd.com申请权限。 // 网站/APP来获取的推广链接功能同宙斯接口的自定义链接转换、 APP领取代码接口通过商品链接、活动链接获取普通推广链接支持传入subunionid参数可用于区分媒体自身的用户ID该参数可在订单查询接口返回需向cps-qxsq@jd.com申请权限。
// https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.promotion.common.get // https://union.jd.com/openplatform/api/v2?apiName=jd.union.open.promotion.common.get
func (app *App) UnionOpenPromotionCommonGet(notMustParams ...Params) (body []byte, err error) { func (app *App) UnionOpenPromotionCommonGet(notMustParams ...Params) *UnionOpenPromotionCommonGetResult {
// 参数 // 参数
params := NewParamsWithType("jd.union.open.promotion.common.get", notMustParams...) params := NewParamsWithType("jd.union.open.promotion.common.get", notMustParams...)
// 请求 // 请求
body, err = app.request(params) body, err := app.request(params)
return // 定义
var responce UnionOpenPromotionCommonGetResultResponse
var result UnionOpenPromotionCommonGetGetResult
err = json.Unmarshal(body, &responce)
err = json.Unmarshal([]byte(responce.JdUnionOpenPromotionCommonGetResponce.GetResult), &result)
return NewUnionOpenPromotionCommonGetResult(responce, result, body, err)
} }

Loading…
Cancel
Save