diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/ora/OrderRefundApplicationEventHandler.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/ora/OrderRefundApplicationEventHandler.java index 8e33771..340c861 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/ora/OrderRefundApplicationEventHandler.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/ora/OrderRefundApplicationEventHandler.java @@ -3,10 +3,15 @@ package com.qniao.dam.application.handler.ora; import com.google.common.eventbus.Subscribe; import com.qniao.dam.application.service.eso.EntrustServiceOrderApplicationService; import com.qniao.dam.application.service.marriagebounty.MarriageBountyOrderApplicationService; +import com.qniao.dam.domain.aggregate.eso.EntrustServiceOrderAggregate; +import com.qniao.dam.domain.aggregate.eso.entity.EntrustServiceOrder; import com.qniao.dam.domain.aggregate.ora.entity.OrderRefundApplication; +import com.qniao.dam.domian.aggregate.eso.constant.EntrustServicePaymentStatusEnum; +import com.qniao.dam.domian.aggregate.eso.constant.EntrustServiceStatusEnum; import com.qniao.dam.domian.aggregate.ora.constant.OrderRefundApplicationStatus; import com.qniao.dam.domian.aggregate.ora.constant.RefundOrderTypeEnum; import com.qniao.dam.domian.aggregate.ora.event.OrderRefundApplicationAuditedEvent; +import com.qniao.dam.infrastructure.persistent.dao.eso.EntrustServiceOrderDao; import com.qniao.dam.infrastructure.persistent.dao.ora.OrderRefundApplicationDao; import com.qniao.domain.BaseApplicationService; import lombok.extern.slf4j.Slf4j; @@ -24,6 +29,10 @@ public class OrderRefundApplicationEventHandler extends BaseApplicationService { private EntrustServiceOrderApplicationService entrustServiceOrderApplicationService; @Resource private OrderRefundApplicationDao orderRefundApplicationDao; + @Resource + private EntrustServiceOrderDao entrustServiceOrderDao; + @Resource + private EntrustServiceOrderAggregate entrustServiceOrderAggregate; @Subscribe public void handle(OrderRefundApplicationAuditedEvent event) { @@ -35,6 +44,13 @@ public class OrderRefundApplicationEventHandler extends BaseApplicationService { } else if (orderRefundApplication.getRefundOrderType().equals(RefundOrderTypeEnum.ENTRUST_SERVICE)) { entrustServiceOrderApplicationService.refundConfirm(orderRefundApplication.getOrderId()); } + } else { + if (orderRefundApplication.getRefundOrderType().equals(RefundOrderTypeEnum.ENTRUST_SERVICE)) { + EntrustServiceOrder entrustServiceOrder = entrustServiceOrderDao.selectById(orderRefundApplication.getOrderId()); + entrustServiceOrder.setStatus(entrustServiceOrder.getOriginalStatus()); + entrustServiceOrder.setPaymentStatus(EntrustServicePaymentStatusEnum.PAID); + entrustServiceOrderAggregate.edit(entrustServiceOrder); + } } } catch (Exception e) { log.error("订单退款申请审核处理异常:", e); diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/ora/OrderRefundApplicationApplicationService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/ora/OrderRefundApplicationApplicationService.java index 2563e16..5cd7c6c 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/ora/OrderRefundApplicationApplicationService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/ora/OrderRefundApplicationApplicationService.java @@ -48,8 +48,7 @@ public class OrderRefundApplicationApplicationService extends BaseApplicationSer public void audit(OrderRefundApplication orderRefundApplication) { OrderRefundApplication existOrderRefundApplication = orderRefundApplicationDao.selectById(orderRefundApplication.getId()); - if (Objects.nonNull(existOrderRefundApplication) && existOrderRefundApplication.getStatus().equals(OrderRefundApplicationStatus.UNAUDITED) - && existOrderRefundApplication.getOperationStatus().equals(OrderRefundApplicationStatus.APPROVED)) { + if (Objects.nonNull(existOrderRefundApplication) && existOrderRefundApplication.getStatus().equals(OrderRefundApplicationStatus.UNAUDITED)) { BaseDomainEvent event = orderRefundApplicationAggregate.audit(orderRefundApplication); this.sendEvent(event); }