Compare commits
4 Commits
3ed083bff6
...
e9d3dbece0
Author | SHA1 | Date |
---|---|---|
|
e9d3dbece0 | |
|
7ee666e459 | |
|
d488dddefd | |
|
daf5e2134f |
|
@ -15,10 +15,11 @@ var (
|
||||||
type OrderThirdPayLog struct {
|
type OrderThirdPayLog struct {
|
||||||
Id int64
|
Id int64
|
||||||
OrderId int64 `xorm:"'order_id' bigint(20)"`
|
OrderId int64 `xorm:"'order_id' bigint(20)"`
|
||||||
PayCallback string `xorm:"'pay_callback' varchar(255)"`
|
PayCallback string `xorm:"'pay_callback' JSON"`
|
||||||
Status int `xorm:"'status' TINYINT"`
|
Status int `xorm:"'status' TINYINT"`
|
||||||
MerchantParam string `xorm:"'merchant_param' varchar(255)"`
|
PayParam string `xorm:"'pay_param' JSON"`
|
||||||
MerchantCallback string `xorm:"'merchant_callback' varchar(255)"`
|
MerchantCallback string `xorm:"'merchant_callback' JSON"`
|
||||||
|
Type int `xorm:"'type' TINYINT"`
|
||||||
CreateTime time.Time `xorm:"'create_time' datetime created"`
|
CreateTime time.Time `xorm:"'create_time' datetime created"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -149,8 +149,8 @@ func ALiOrderQuery(ctx context.Context, aliConfig AliPay, OrderNo string) (PayOr
|
||||||
tradeStateDesc = "未付款交易超时关闭,或支付完成后全额退款"
|
tradeStateDesc = "未付款交易超时关闭,或支付完成后全额退款"
|
||||||
}
|
}
|
||||||
|
|
||||||
amountTotal, _ := strconv.Atoi(aliRsp.Response.TotalAmount)
|
amountTotal, _ := strconv.ParseFloat(aliRsp.Response.TotalAmount, 64)
|
||||||
payerTotal, _ := strconv.Atoi(aliRsp.Response.BuyerPayAmount)
|
payerTotal, _ := strconv.ParseFloat(aliRsp.Response.BuyerPayAmount, 64)
|
||||||
// 构建数据
|
// 构建数据
|
||||||
outTradeNo, _ := strconv.Atoi(aliRsp.Response.OutTradeNo)
|
outTradeNo, _ := strconv.Atoi(aliRsp.Response.OutTradeNo)
|
||||||
return PayOrderQueryInfo{
|
return PayOrderQueryInfo{
|
||||||
|
@ -177,9 +177,10 @@ func AliRefundOrder(ctx context.Context, orderRefundRequest OrderRefundRequest)
|
||||||
return OrderRefundInfo{}, err
|
return OrderRefundInfo{}, err
|
||||||
}
|
}
|
||||||
// 请求参数
|
// 请求参数
|
||||||
|
refundAmount := float64(orderRefundRequest.RefundAmount) / 100.0
|
||||||
bm := make(gopay.BodyMap)
|
bm := make(gopay.BodyMap)
|
||||||
bm.Set("out_trade_no", orderRefundRequest.OrderId).
|
bm.Set("out_trade_no", orderRefundRequest.OrderId).
|
||||||
Set("refund_amount", orderRefundRequest.RefundAmount).
|
Set("refund_amount", refundAmount).
|
||||||
Set("refund_reason", orderRefundRequest.RefundReason).
|
Set("refund_reason", orderRefundRequest.RefundReason).
|
||||||
Set("out_request_no", orderRefundRequest.RefundOrderId)
|
Set("out_request_no", orderRefundRequest.RefundOrderId)
|
||||||
|
|
||||||
|
@ -193,14 +194,15 @@ func AliRefundOrder(ctx context.Context, orderRefundRequest OrderRefundRequest)
|
||||||
return OrderRefundInfo{}, err
|
return OrderRefundInfo{}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
refundFee, _ := strconv.Atoi(aliRsp.Response.RefundFee)
|
refundFee, _ := strconv.ParseFloat(aliRsp.Response.RefundFee, 64)
|
||||||
outTradeNo, _ := strconv.Atoi(aliRsp.Response.OutTradeNo)
|
outTradeNo, _ := strconv.ParseFloat(aliRsp.Response.OutTradeNo, 64)
|
||||||
return OrderRefundInfo{
|
return OrderRefundInfo{
|
||||||
OutTradeNo: int64(outTradeNo),
|
OutTradeNo: int64(outTradeNo),
|
||||||
TransactionId: aliRsp.Response.TradeNo,
|
TransactionId: aliRsp.Response.TradeNo,
|
||||||
RefundFee: int64(refundFee * 100),
|
RefundFee: int64(refundFee * 100),
|
||||||
RefundOrderId: orderRefundRequest.RefundOrderId,
|
RefundOrderId: orderRefundRequest.RefundOrderId,
|
||||||
RefundStatus: payCommon.PAY_REFUND_STATU_SUCCESS,
|
RefundStatus: payCommon.PAY_REFUND_STATU_SUCCESS,
|
||||||
|
RefundSuccessTime: aliRsp.Response.GmtRefundPay,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -230,7 +232,7 @@ func AliRefundOrderQuery(ctx context.Context, orderRefundQueryRequest OrderRefun
|
||||||
}
|
}
|
||||||
return OrderRefundInfo{}, err
|
return OrderRefundInfo{}, err
|
||||||
}
|
}
|
||||||
refundFee, _ := strconv.Atoi(aliRsp.Response.RefundAmount)
|
refundFee, _ := strconv.ParseFloat(aliRsp.Response.RefundAmount, 64)
|
||||||
outTradeNo, _ := strconv.Atoi(aliRsp.Response.OutTradeNo)
|
outTradeNo, _ := strconv.Atoi(aliRsp.Response.OutTradeNo)
|
||||||
refundOrderId, _ := strconv.Atoi(aliRsp.Response.OutRequestNo)
|
refundOrderId, _ := strconv.Atoi(aliRsp.Response.OutRequestNo)
|
||||||
return OrderRefundInfo{
|
return OrderRefundInfo{
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -73,7 +73,7 @@ func WxH5PayInfo(c context.Context, payOrderRequest PayOrderRequest) (string, er
|
||||||
bm.Set("appid", payOrderRequest.Wx.AppId).
|
bm.Set("appid", payOrderRequest.Wx.AppId).
|
||||||
Set("mchid", payOrderRequest.Wx.MchId).
|
Set("mchid", payOrderRequest.Wx.MchId).
|
||||||
Set("description", payOrderRequest.Description).
|
Set("description", payOrderRequest.Description).
|
||||||
Set("out_trade_no", payOrderRequest.OrderId).
|
Set("out_trade_no", strconv.FormatInt(payOrderRequest.OrderId, 10)).
|
||||||
Set("time_expire", expire).
|
Set("time_expire", expire).
|
||||||
Set("notify_url", fmt.Sprintf(envConfig.PayService.Host+payCommon.WX_NOTIFY_URL_TEST+"%d", payOrderRequest.PayChannelId)).
|
Set("notify_url", fmt.Sprintf(envConfig.PayService.Host+payCommon.WX_NOTIFY_URL_TEST+"%d", payOrderRequest.PayChannelId)).
|
||||||
SetBodyMap("amount", func(bm gopay.BodyMap) {
|
SetBodyMap("amount", func(bm gopay.BodyMap) {
|
||||||
|
@ -199,10 +199,10 @@ func WxOrderRefund(ctx context.Context, orderRefundRequest OrderRefundRequest) (
|
||||||
}
|
}
|
||||||
// 初始化 BodyMap
|
// 初始化 BodyMap
|
||||||
bm := make(gopay.BodyMap)
|
bm := make(gopay.BodyMap)
|
||||||
bm.Set("out_trade_no", orderRefundRequest.OrderId).
|
bm.Set("out_trade_no", strconv.FormatInt(orderRefundRequest.OrderId, 10)).
|
||||||
Set("sign_type", "MD5").
|
Set("sign_type", "MD5").
|
||||||
// 必填 退款订单号(程序员定义的)
|
// 必填 退款订单号(程序员定义的)
|
||||||
Set("out_refund_no", orderRefundRequest.RefundOrderId).
|
Set("out_refund_no", strconv.FormatInt(orderRefundRequest.RefundOrderId, 10)).
|
||||||
// 选填 退款描述
|
// 选填 退款描述
|
||||||
Set("reason", orderRefundRequest.RefundReason).
|
Set("reason", orderRefundRequest.RefundReason).
|
||||||
SetBodyMap("amount", func(bm gopay.BodyMap) {
|
SetBodyMap("amount", func(bm gopay.BodyMap) {
|
||||||
|
@ -298,7 +298,7 @@ func WxCloseOrder(ctx context.Context, orderCloseRequest OrderCloseRequest) (Ord
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return OrderCloseInfo{}, err
|
return OrderCloseInfo{}, err
|
||||||
}
|
}
|
||||||
wxRsp, err := wxClient.V3TransactionCloseOrder(ctx, "FY160932049419637602")
|
wxRsp, err := wxClient.V3TransactionCloseOrder(ctx, strconv.FormatInt(orderCloseRequest.OrderId, 10))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return OrderCloseInfo{}, err
|
return OrderCloseInfo{}, err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue