diff --git a/dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/paymentorderrefund/constant/PaymentOrderRefundStatusEnum.java b/dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/paymentorderrefund/constant/PaymentOrderRefundStatusEnum.java index 9c8af8c..2394115 100644 --- a/dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/paymentorderrefund/constant/PaymentOrderRefundStatusEnum.java +++ b/dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/paymentorderrefund/constant/PaymentOrderRefundStatusEnum.java @@ -10,13 +10,15 @@ import lombok.Getter; @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum PaymentOrderRefundStatusEnum { - SUCCESS(1, "退款成功"), + INIT(1, "初始化"), - CLOSED(2, "退款关闭"), + SUCCESS(2, "退款成功"), - PROCESSING(3, "退款处理中"), + CLOSED(3, "退款关闭"), - ABNORMAL(4, "退款异常"); + PROCESSING(4, "退款处理中"), + + ABNORMAL(5, "退款异常"); @EnumValue @JsonValue diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentchannelorder/processor/wechat/WeChatPayProcessor.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentchannelorder/processor/wechat/WeChatPayProcessor.java index 927fc7c..731f129 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentchannelorder/processor/wechat/WeChatPayProcessor.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentchannelorder/processor/wechat/WeChatPayProcessor.java @@ -93,7 +93,8 @@ public class WeChatPayProcessor extends IChannelPayService { public void refund(PaymentOrderRefund paymentOrderRefund) { try { Map reqParams = new HashMap<>(); - reqParams.put("out_refund_no", paymentOrderRefund.getPaymentOrderId().toString()); + reqParams.put("out_trade_no", paymentOrderRefund.getPaymentOrderId().toString()); + reqParams.put("out_refund_no", paymentOrderRefund.getId().toString()); reqParams.put("amount", new HashMap() { { put("refund", paymentOrderRefund.getRefundAmount().multiply(BigDecimal.valueOf(100)).intValue()); diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentorderrefund/PaymentOrderRefundApplicationService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentorderrefund/PaymentOrderRefundApplicationService.java index 19f6b28..ee39e70 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentorderrefund/PaymentOrderRefundApplicationService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/paymentorderrefund/PaymentOrderRefundApplicationService.java @@ -22,6 +22,7 @@ public class PaymentOrderRefundApplicationService extends BaseApplicationService List eventList = new ArrayList<>(); if (CollUtil.isNotEmpty(paymentOrderRefundList)) { for (PaymentOrderRefund paymentOrderRefund : paymentOrderRefundList) { + paymentOrderRefundAggregate.init(paymentOrderRefund); IChannelPayService channelPayService = IChannelPayService.getService(paymentOrderRefund.getPaymentMethod()); channelPayService.refund(paymentOrderRefund); eventList.add(paymentOrderRefundAggregate.refund(paymentOrderRefund)); diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/paymentorderrefund/PaymentOrderRefundAggregate.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/paymentorderrefund/PaymentOrderRefundAggregate.java index cc7aeeb..c825a37 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/paymentorderrefund/PaymentOrderRefundAggregate.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/paymentorderrefund/PaymentOrderRefundAggregate.java @@ -2,6 +2,7 @@ package com.qniao.dam.domain.aggregate.paymentorderrefund; import com.qniao.dam.domain.aggregate.paymentorderrefund.entity.PaymentOrderRefund; import com.qniao.dam.domain.aggregate.paymentorderrefund.impl.PaymentOrderRefundRepository; +import com.qniao.dam.domian.aggregate.paymentorderrefund.constant.PaymentOrderRefundStatusEnum; import com.qniao.dam.domian.aggregate.paymentorderrefund.event.PaymentOrderRefundRefundedEvent; import com.qniao.domain.BaseDomainEvent; import com.qniao.framework.utils.TypeConvertUtils; @@ -19,4 +20,9 @@ public class PaymentOrderRefundAggregate { paymentOrderRefundRepository.save(paymentOrderRefund); return TypeConvertUtils.convert(paymentOrderRefund, PaymentOrderRefundRefundedEvent.class); } + + public void init(PaymentOrderRefund paymentOrderRefund) { + paymentOrderRefund.setStatus(PaymentOrderRefundStatusEnum.INIT); + paymentOrderRefundRepository.save(paymentOrderRefund); + } }