提交 25807edd authored 作者: 张立波's avatar 张立波

aliNew OrderBefore

上级 878ee907
...@@ -61,7 +61,7 @@ type OrderCreateRes struct { ...@@ -61,7 +61,7 @@ type OrderCreateRes struct {
} `json:"result,omitempty"` } `json:"result,omitempty"`
} }
//Create 下单 // Create 下单
func (s *orderAli) Create(ctx context.Context, req *OrderCommonReq) (res *OrderCreateRes, err error) { func (s *orderAli) Create(ctx context.Context, req *OrderCommonReq) (res *OrderCreateRes, err error) {
method := "com.alibaba.trade/alibaba.trade.fastCreateOrder" method := "com.alibaba.trade/alibaba.trade.fastCreateOrder"
//添加分销关系 //添加分销关系
...@@ -211,7 +211,7 @@ type OrderDetailRes struct { ...@@ -211,7 +211,7 @@ type OrderDetailRes struct {
} `json:"result"` } `json:"result"`
} }
//Detail 订单详情 // Detail 订单详情
func (s *orderAli) Detail(ctx context.Context, orderSn string) (res *OrderDetailRes, err error) { func (s *orderAli) Detail(ctx context.Context, orderSn string) (res *OrderDetailRes, err error) {
method := "com.alibaba.trade/alibaba.trade.get.buyerView" method := "com.alibaba.trade/alibaba.trade.get.buyerView"
...@@ -224,52 +224,15 @@ func (s *orderAli) Detail(ctx context.Context, orderSn string) (res *OrderDetail ...@@ -224,52 +224,15 @@ func (s *orderAli) Detail(ctx context.Context, orderSn string) (res *OrderDetail
return return
} }
//Pay 支付 // Pay 支付
func (s *orderAli) Pay(ctx context.Context, orderSn string) (res *CommonRes, err error) { func (s *orderAli) Pay(ctx context.Context, orderSn string) (res *CommonRes, err error) {
method := "com.alibaba.trade/alibaba.trade.pay.protocolPay.preparePay" method := "com.alibaba.trade/alibaba.trade.pay.protocolPay.preparePay"
result, err := server.Post(ctx, method, g.Map{ result, err := server.Post(ctx, method, g.Map{
"access_token": server.AccessToken, "access_token": server.AccessToken,
"tradeWithholdPreparePayParam":gjson.New(g.Map{"orderId":orderSn}).MustToJsonString(), "tradeWithholdPreparePayParam": gjson.New(g.Map{"orderId": orderSn}).MustToJsonString(),
}) })
_ = gjson.New(result).Scan(&res) _ = gjson.New(result).Scan(&res)
return return
} }
type OrderBeforeRes struct {
CommonRes
OrderPreviewResuslt []OrderBeforeItem `json:"orderPreviewResuslt"`
}
type OrderBeforeItem struct {
SumPayment int64 `json:"sumPayment"` //订单总费用, 单位为分
SumPaymentNoCarriage int64 `json:"sumPaymentNoCarriage"` //不包含运费的货品总费用, 单位为分.
SumCarriage int64 `json:"sumCarriage"` //总运费信息, 单位为分.
Status bool `json:"status"` //
ShopPromotionList []struct { //可用店铺级别优惠列表
PromotionId int64 `json:"promotionId"` //优惠券ID
} `json:"shopPromotionList"` //规格信息
Message string `json:"message"` //返回信息
CargoList []struct {
FinalUnitPrice float64 `json:"finalUnitPrice"` //最终单价
SpecId string `json:"specId"` //规格ID,offer内唯一
OfferId string `json:"offerId"` //商品ID
SkuId int64 `json:"skuId"` //规格ID
} `json:"cargoList"` //规格信息
}
//Before 验证订单商品
func (s *orderAli) Before(ctx context.Context, req *OrderCommonReq) (res *OrderBeforeRes, err error) {
method := "com.alibaba.trade/alibaba.createOrder.preview"
result, err := server.Post(ctx, method, g.Map{
"access_token": server.AccessToken,
"addressParam": gjson.New(req.AddressParam).MustToJsonString(),
"cargoParamList": gjson.New(req.CargoParam).MustToJsonString(),
"flow": "ttpft",
})
_ = gjson.New(result).Scan(&res)
return
}
package aliNew
import (
"context"
"github.com/gogf/gf/encoding/gjson"
"github.com/gogf/gf/frame/g"
)
type OrderBeforeRes struct {
Success bool `json:"success"`
ErrorCode string `json:"errorCode"`
ErrorMsg string `json:"errorMsg"`
OrderPreviewResuslt []OrderBeforeItem `json:"orderPreviewResuslt"`
}
type OrderBeforeItem struct {
SumPayment int64 `json:"sumPayment"` //订单总费用, 单位为分
SumPaymentNoCarriage int64 `json:"sumPaymentNoCarriage"` //不包含运费的货品总费用, 单位为分.
SumCarriage int64 `json:"sumCarriage"` //总运费信息, 单位为分.
Status bool `json:"status"` //
ShopPromotionList []struct { //可用店铺级别优惠列表
PromotionId int64 `json:"promotionId"` //优惠券ID
} `json:"shopPromotionList"` //规格信息
Message string `json:"message"` //返回信息
CargoList []struct {
FinalUnitPrice float64 `json:"finalUnitPrice"` //最终单价
SpecId string `json:"specId"` //规格ID,offer内唯一
OfferId string `json:"offerId"` //商品ID
SkuId int64 `json:"skuId"` //规格ID
} `json:"cargoList"` //规格信息
}
// Before 验证订单商品
func (s *orderAli) Before(ctx context.Context, req *OrderCommonReq) (res *OrderBeforeRes, err error) {
method := "com.alibaba.trade/alibaba.createOrder.preview"
result, err := server.Post(ctx, method, g.Map{
"access_token": server.AccessToken,
"addressParam": gjson.New(req.AddressParam).MustToJsonString(),
"cargoParamList": gjson.New(req.CargoParam).MustToJsonString(),
"flow": "ttpft",
})
_ = gjson.New(result).Scan(&res)
return
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论