修正了微信支付相关配置文件1
This commit is contained in:
+12
-23
@@ -195,7 +195,7 @@ func (r *OrderMemberService) GetAppPrepay(m *model.OrderMember) (prepay *app.Pre
|
||||
// OrderRefund 订单退款
|
||||
func (r *OrderMemberService) OrderRefund(tx *gorm.DB, order *model.OrderMember, refundAmount *float64, refundReason string) (*model.OrderMemberRefund, error) {
|
||||
var refundStatus int
|
||||
var successTime time.Time
|
||||
var successTime *time.Time
|
||||
var refundId string
|
||||
|
||||
// 判断订单支付状态(1:未支付 2:已支付 3:支付中 4:支付失败 5:支付超时 6:支付关闭 7:已撤销 8:转入退款)
|
||||
@@ -217,7 +217,9 @@ func (r *OrderMemberService) OrderRefund(tx *gorm.DB, order *model.OrderMember,
|
||||
// 支付金额为0,模拟退款
|
||||
refundId = "模拟退款:" + strconv.FormatInt(global.Snowflake.Generate().Int64(), 10)
|
||||
refundStatus = 3
|
||||
successTime = time.Now()
|
||||
|
||||
now := time.Now()
|
||||
successTime = &now
|
||||
}
|
||||
|
||||
// 退款金额大于0
|
||||
@@ -237,27 +239,14 @@ func (r *OrderMemberService) OrderRefund(tx *gorm.DB, order *model.OrderMember,
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if refund.Status == nil {
|
||||
return nil, errors.New("退款状态错误")
|
||||
// 处理退款状态
|
||||
wxPayRefundResult, err := weChat.HandlePayRefundStatus(refund)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// 处理订单状态
|
||||
switch *refund.Status {
|
||||
case "SUCCESS": // 退款成功
|
||||
refundStatus = 3
|
||||
if refund.SuccessTime != nil {
|
||||
successTime = *refund.SuccessTime
|
||||
}
|
||||
case "CLOSED": // 退款关闭
|
||||
|
||||
refundStatus = 5
|
||||
case "PROCESSING": // 退款处理中
|
||||
refundStatus = 2
|
||||
case "ABNORMAL": // 退款异常
|
||||
return nil, errors.New("退款状态错误")
|
||||
default:
|
||||
return nil, errors.New("退款状态错误")
|
||||
}
|
||||
refundStatus = wxPayRefundResult.RefundStatus
|
||||
successTime = wxPayRefundResult.SuccessTime
|
||||
|
||||
if refund.RefundId == nil {
|
||||
return nil, errors.New("缺少退款订单编号")
|
||||
@@ -279,8 +268,8 @@ func (r *OrderMemberService) OrderRefund(tx *gorm.DB, order *model.OrderMember,
|
||||
RefundReason: refundReason,
|
||||
}
|
||||
|
||||
if refundStatus == 3 && !successTime.IsZero() {
|
||||
t := model.LocalTime(successTime)
|
||||
if refundStatus == 3 && successTime != nil {
|
||||
t := model.LocalTime(*successTime)
|
||||
orderRefund.SuccessTime = &t
|
||||
}
|
||||
|
||||
|
||||
+12
-23
@@ -221,7 +221,7 @@ func (r *OrderSingleService) CompleteUnPayOrderSingle(tx *gorm.DB, userId int64)
|
||||
// OrderRefund 订单退款
|
||||
func (r *OrderSingleService) OrderRefund(tx *gorm.DB, order *model.OrderSingle, refundAmount *float64, refundReason string) (*model.OrderSingleRefund, error) {
|
||||
var refundStatus int
|
||||
var successTime time.Time
|
||||
var successTime *time.Time
|
||||
var refundId string
|
||||
|
||||
// 判断订单支付状态(1:未支付 2:已支付 3:支付中 4:支付失败 5:支付超时 6:支付关闭 7:已撤销 8:转入退款)
|
||||
@@ -243,7 +243,9 @@ func (r *OrderSingleService) OrderRefund(tx *gorm.DB, order *model.OrderSingle,
|
||||
// 支付金额为0,模拟退款
|
||||
refundId = "模拟退款:" + strconv.FormatInt(global.Snowflake.Generate().Int64(), 10)
|
||||
refundStatus = 3
|
||||
successTime = time.Now()
|
||||
|
||||
now := time.Now()
|
||||
successTime = &now
|
||||
}
|
||||
|
||||
// 退款金额大于0
|
||||
@@ -263,27 +265,14 @@ func (r *OrderSingleService) OrderRefund(tx *gorm.DB, order *model.OrderSingle,
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if refund.Status == nil {
|
||||
return nil, errors.New("退款状态错误")
|
||||
// 处理退款状态
|
||||
wxPayRefundResult, err := weChat.HandlePayRefundStatus(refund)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// 处理订单状态
|
||||
switch *refund.Status {
|
||||
case "SUCCESS": // 退款成功
|
||||
refundStatus = 3
|
||||
if refund.SuccessTime != nil {
|
||||
successTime = *refund.SuccessTime
|
||||
}
|
||||
case "CLOSED": // 退款关闭
|
||||
|
||||
refundStatus = 5
|
||||
case "PROCESSING": // 退款处理中
|
||||
refundStatus = 2
|
||||
case "ABNORMAL": // 退款异常
|
||||
return nil, errors.New("退款状态错误")
|
||||
default:
|
||||
return nil, errors.New("退款状态错误")
|
||||
}
|
||||
refundStatus = wxPayRefundResult.RefundStatus
|
||||
successTime = wxPayRefundResult.SuccessTime
|
||||
|
||||
if refund.RefundId == nil {
|
||||
return nil, errors.New("缺少退款订单编号")
|
||||
@@ -305,8 +294,8 @@ func (r *OrderSingleService) OrderRefund(tx *gorm.DB, order *model.OrderSingle,
|
||||
RefundReason: refundReason,
|
||||
}
|
||||
|
||||
if refundStatus == 3 && !successTime.IsZero() {
|
||||
t := model.LocalTime(successTime)
|
||||
if refundStatus == 3 && successTime != nil {
|
||||
t := model.LocalTime(*successTime)
|
||||
orderRefund.SuccessTime = &t
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user