This commit is contained in:
邹宗楠
2025-04-27 10:17:40 +08:00
parent cf38acc037
commit 1a5a3ffc29
14 changed files with 920 additions and 156 deletions

View File

@@ -14,7 +14,12 @@ const (
MsgTypePayZFB = "VSP511" //支付宝
MsgTypeRefundZFB = "VSP513"
TrxStatusSuccess = "0000"
TrxStatusSuccess = "0000" // 交易成功
TrxStatusTransaction = "2000" // 支付中
TrxStatusTransaction2 = "2008" // 支付中
OnlinePayStatusSuccess = "SUCCESS"
OnlinePayStatusFail = "FAIL"
MisStatusSuccess = "Y0000" // 调用成功
)
type CallBackResult struct {
@@ -57,3 +62,50 @@ func (a *API) GetCallbackMsg(request *http.Request) (call *CallBackResult, err e
utils.Map2StructByJson(mapData, &call, false)
return call, err
}
// CallBackResultOnlinePay 扫码支付回调
type CallBackResultOnlinePay struct {
AppID string `json:"appID"`
OuttrxID string `json:"outtrxID"`
TrxCode string `json:"trxCode"`
TrxID string `json:"trxID"`
TrxAmt string `json:"trxAmt"`
TrxDate string `json:"trxDate"`
PayTime string `json:"payTime"`
ChnlTrxID string `json:"chnlTrxID"`
TrxStatus string `json:"trxStatus"`
CusID string `json:"cusID"`
TermNo string `json:"termNo"`
TermBatchid string `json:"termBatchid"`
TermTraceno string `json:"termTraceno"`
TermAuthno string `json:"termAuthno"`
TermRefnum string `json:"termRefnum"`
TrxReserved string `json:"trxReserved"`
SrcTrxid string `json:"srcTrxid"`
CusorderID string `json:"cusorderID"`
Acct string `json:"acct"`
Fee string `json:"fee"`
SignType string `json:"signType"`
Cmid string `json:"cmid"`
Chnlid string `json:"chnlid"`
Sign string `json:"sign"`
Initamt string `json:"initamt"`
Chnldata string `json:"chnldata"`
Accttype string `json:"accttype"`
Bankcode string `json:"bankcode"`
Logonid string `json:"logonid"`
}
func (a *API) GetCallbackOnlinePayMsg(request *http.Request) (call *CallBackResultOnlinePay, err error) {
data, err := ioutil.ReadAll(request.Body)
if err != nil {
return nil, err
}
values, err := utils.HTTPBody2Values(data, false)
if err != nil {
return nil, err
}
mapData := utils.URLValues2Map(values)
utils.Map2StructByJson(mapData, &call, false)
return call, err
}