diff --git a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/marriagebounty/entity/MarriageBountyOrder.java b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/marriagebounty/entity/MarriageBountyOrder.java index 62330fa..0cc1d34 100644 --- a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/marriagebounty/entity/MarriageBountyOrder.java +++ b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/marriagebounty/entity/MarriageBountyOrder.java @@ -28,6 +28,9 @@ public class MarriageBountyOrder extends Entity { @ApiModelProperty("征婚资料标识") private Long miId; + @ApiModelProperty("红娘ID") + private Long matchmakerId; + @ApiModelProperty("悬赏招亲版本展示") private MarriageBountyOrderDisplay display; diff --git a/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedEvent.java b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedEvent.java index 2479a4e..cc5ef38 100644 --- a/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedEvent.java +++ b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedEvent.java @@ -20,6 +20,8 @@ public class MarriageBountyOrderCreatedEvent extends BaseDomainEvent { private Long miId; + private Long matchmakerId; + private MarriageBountyOrderType type; private Integer meetingQuantity; diff --git a/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedMQ.java b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedMQ.java index 0b891c1..b78f5b0 100644 --- a/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedMQ.java +++ b/dating-agency-mall-event/src/main/java/com/qniao/dam/domian/aggregate/marriagebounty/event/MarriageBountyOrderCreatedMQ.java @@ -15,6 +15,8 @@ public class MarriageBountyOrderCreatedMQ implements Serializable { private Long miId; + private Long matchmakerId; + private MarriageBountyOrderType type; private Integer meetingQuantity; diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/order/OrderApplicationService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/order/OrderApplicationService.java index 5764cb1..9fb84bc 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/order/OrderApplicationService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/order/OrderApplicationService.java @@ -24,6 +24,7 @@ import com.qniao.dam.domain.service.order.SubmitSiteActivityOrderDomainService; import com.qniao.dam.domian.aggregate.marriagebount.constant.MarriageBountyOrderPaymentStatusEnum; import com.qniao.dam.domian.aggregate.marriagebount.constant.MarriageBountyOrderStatusEnum; import com.qniao.dam.domian.aggregate.marriagebount.constant.MarriageBountyOrderVersion; +import com.qniao.dam.domian.aggregate.marriagebount.constant.PublishIdentityTypeEnum; import com.qniao.dam.domian.aggregate.order.constant.OrderBelongingEnum; import com.qniao.dam.domian.aggregate.order.constant.OrderTypeEnum; import com.qniao.dam.domian.aggregate.product.constant.ProductSubCategoryEnum; @@ -97,6 +98,9 @@ public class OrderApplicationService extends BaseApplicationService { @Value("${marriage_bounty_meeting_quantity:5}") private Integer marriageBountyMeetingQuantity; + @Value("${default_marriage_bounty_matchmaker_id}") + private Long defaultMarriageBountyMatchmakerId; + /** * todo 库存校验 暂时不用考虑 * @@ -199,11 +203,20 @@ public class OrderApplicationService extends BaseApplicationService { MarriageBountyOrder existMarriageBountyOrder = marriageBountyOrderQueryService.queryBy(order.getUserId(), order.getMiId(), MarriageBountyOrderStatusEnum.MATCHMAKING, MarriageBountyOrderPaymentStatusEnum.PAID); if (Objects.isNull(existMarriageBountyOrder)) { - checkMinAmount(marriageBountyOrder,order); + checkMinAmount(marriageBountyOrder, order); } //4. 设置订单号 order.setOrderCode(snowFlakeUtil.getSnowflakeOrderCode()); - //5. 组装付款单信息 + //5. 选择发榜服务红娘 + if (PublishIdentityTypeEnum.GUEST.equals(marriageBountyOrder.getPublishType())) { + //选择默认平台红娘 + marriageBountyOrder.setMatchmakerId(defaultMarriageBountyMatchmakerId); + } else { + //红娘发榜 + Matchmaker matchmaker = matchmakerQueryService.queryByUserId(marriageBountyOrder.getUserId()); + marriageBountyOrder.setMatchmakerId(matchmaker.getId()); + } + //6. 组装付款单信息 PaymentOrder paymentOrder = makePaymentOrder(order); submitOrderDomainService.handle(order, paymentOrder); if (Objects.isNull(existMarriageBountyOrder)) {