提交 522ac7d8 authored 作者: 张立波's avatar 张立波

Merge remote-tracking branch 'origin/master'

package hcw
import (
"encoding/json"
"github.com/gogf/gf/net/ghttp"
)
//notify_id string 唯一请求ID(用于幂等校验)示例:20240320140000_123456
//app_id string 平台分配的应用ID
//type string 业务类型标识,见下表
//data object 业务数据对象
//signature string 请求签名(验证方法见第四章)
type OrderNotifyRes struct {
NotifyId string `json:"notify_id"`
AppId string `json:"app_id"`
Type string `json:"type"`
Data OrderNotifyData `json:"data"`
Signature string `json:"signature"`
}
// order_shipped 订单发货 { "order_no":"P123"}
// refund_result 发起售后成功 { "order_no":100.00}
// product_status 产品状态变更(1上架2下架) { "product_no":"SKU123"}
type OrderNotifyData struct {
OrderNo string `json:"order_no"`
ProductNo string `json:"product_no"`
RefundNo string `json:"refund_no"`
Type string `json:"type"`
Source string `json:"source"`
}
// 回调
func (s *HcwClient) CallBack(r *ghttp.Request) (res *OrderNotifyRes, err error) {
body, err := CheckSign(r)
if nil != err {
return
}
if body == "" {
return
}
err = json.Unmarshal([]byte(body), &res)
return
}
func CheckSign(r *ghttp.Request) (body string, err error) {
body = r.GetBodyString()
return
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论