This commit is contained in:
@@ -298,6 +298,7 @@ func (h *ClientWalletHandler) CreateRecharge(c *fiber.Ctx) error {
|
||||
}
|
||||
|
||||
rechargeNo := generateClientRechargeNo()
|
||||
paymentNo := generateClientPaymentNo()
|
||||
|
||||
// 先初始化微信支付实例并创建预支付订单,确认支付通道可用
|
||||
// 避免先写入充值记录后支付初始化失败,导致产生孤儿记录
|
||||
@@ -305,7 +306,7 @@ func (h *ClientWalletHandler) CreateRecharge(c *fiber.Ctx) error {
|
||||
resolved.SkipPermissionCtx,
|
||||
config,
|
||||
appID,
|
||||
rechargeNo,
|
||||
paymentNo,
|
||||
"资产钱包充值",
|
||||
openID,
|
||||
int(req.Amount),
|
||||
@@ -334,7 +335,7 @@ func (h *ClientWalletHandler) CreateRecharge(c *fiber.Ctx) error {
|
||||
}
|
||||
|
||||
payment := &model.Payment{
|
||||
PaymentNo: rechargeNo,
|
||||
PaymentNo: paymentNo,
|
||||
OrderID: rechargeOrder.ID,
|
||||
OrderType: model.PaymentOrderTypeRecharge,
|
||||
PaymentMethod: model.PaymentByWechat,
|
||||
@@ -639,6 +640,10 @@ func generateClientRechargeNo() string {
|
||||
return fmt.Sprintf("%s%s%06d", constants.AssetRechargeOrderPrefix, timestamp, randomNum)
|
||||
}
|
||||
|
||||
func generateClientPaymentNo() string {
|
||||
return fmt.Sprintf("PAY%d%06d", time.Now().UnixNano()/1e6, rand.Intn(1000000))
|
||||
}
|
||||
|
||||
func buildClientRechargePayConfig(appID string, result *wechat.JSAPIPayResult) dto.ClientRechargePayConfig {
|
||||
resp := dto.ClientRechargePayConfig{AppID: appID}
|
||||
if result == nil || result.PayConfig == nil {
|
||||
|
||||
Reference in New Issue
Block a user