|
|
|
@ -25,12 +25,14 @@ import com.qniao.dam.domian.aggregate.marriagebount.constant.PublishIdentityType |
|
|
|
import com.qniao.dam.domian.aggregate.paymentorder.constant.PaymentOrderStatusEnum; |
|
|
|
import com.qniao.dam.domian.aggregate.product.constant.ProductSubCategoryEnum; |
|
|
|
import com.qniao.dam.domian.aggregate.rewardconfig.constant.RewardTypeEnum; |
|
|
|
import com.qniao.dam.infrastructure.persistent.dao.domain.MatchmakerDao; |
|
|
|
import com.qniao.dam.infrastructure.persistent.dao.domain.ProductSpecDao; |
|
|
|
import com.qniao.dam.query.marriagebounty.MarriageBountyOrderQueryService; |
|
|
|
import com.qniao.dam.query.matchmaker.MatchmakerQueryService; |
|
|
|
import com.qniao.dam.query.paymentchannelorder.PaymentChannelOrderQueryService; |
|
|
|
import com.qniao.dam.query.paymentorder.PaymentOrderQueryService; |
|
|
|
import com.qniao.dam.query.rewardconfig.RewardConfigQueryService; |
|
|
|
import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker; |
|
|
|
import com.qniao.domain.BaseApplicationService; |
|
|
|
import com.qniao.domain.BaseDomainEvent; |
|
|
|
import com.qniao.framework.exception.BizException; |
|
|
|
@ -63,6 +65,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
private RewardConfigQueryService rewardConfigQueryService; |
|
|
|
@Resource |
|
|
|
private MatchmakerQueryService matchmakerQueryService; |
|
|
|
@Resource |
|
|
|
private MatchmakerDao matchmakerDao; |
|
|
|
|
|
|
|
public void save(Long orderId) { |
|
|
|
Order order = orderRepository.load(orderId); |
|
|
|
@ -211,7 +215,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
List<MarriageBountyOrderRewardReceiveRecord> rewardReceiveRecordList = new ArrayList<>(); |
|
|
|
//分润 发榜嘉宾实名认证 |
|
|
|
if (Objects.nonNull(rewardInviteUserId)) { |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(rewardInviteUserId); |
|
|
|
Matchmaker matchmaker = matchmakerQueryService.queryByUserId(rewardInviteUserId); |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(matchmaker); |
|
|
|
if (Objects.nonNull(guestCertificationReward)) { |
|
|
|
BigDecimal receivedAmount = guestCertificationReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -222,7 +227,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
} |
|
|
|
//分润 匹配嘉宾实名认证 |
|
|
|
if (Objects.nonNull(guestsInviteUserId)) { |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(guestsInviteUserId); |
|
|
|
Matchmaker matchmaker = matchmakerQueryService.queryByUserId(guestsInviteUserId); |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(matchmaker); |
|
|
|
if (Objects.nonNull(guestCertificationReward)) { |
|
|
|
BigDecimal receivedAmount = guestCertificationReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -233,7 +239,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
} |
|
|
|
//分润 发布悬赏招亲 |
|
|
|
if (Objects.nonNull(rewardPublishMatchmakerUserId)) { |
|
|
|
RewardConfig publishMarriageBountyReward = rewardConfigQueryService.queryPublishMarriageBountyReward(rewardPublishMatchmakerUserId); |
|
|
|
Matchmaker matchmaker = matchmakerQueryService.queryByUserId(rewardPublishMatchmakerUserId); |
|
|
|
RewardConfig publishMarriageBountyReward = rewardConfigQueryService.queryPublishMarriageBountyReward(matchmaker); |
|
|
|
if (Objects.nonNull(publishMarriageBountyReward)) { |
|
|
|
BigDecimal receivedAmount = publishMarriageBountyReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -244,7 +251,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
} |
|
|
|
//分润 发布悬赏招亲 |
|
|
|
if (Objects.nonNull(guestsMatchmakerUserId)) { |
|
|
|
RewardConfig matchMarriageBountyReward = rewardConfigQueryService.queryMatchMarriageBountyReward(guestsMatchmakerUserId); |
|
|
|
Matchmaker matchmaker = matchmakerQueryService.queryByUserId(guestsMatchmakerUserId); |
|
|
|
RewardConfig matchMarriageBountyReward = rewardConfigQueryService.queryMatchMarriageBountyReward(matchmaker); |
|
|
|
if (Objects.nonNull(matchMarriageBountyReward)) { |
|
|
|
BigDecimal receivedAmount = matchMarriageBountyReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -297,7 +305,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
List<MarriageBountyOrderRewardReceiveRecord> rewardReceiveRecordList = new ArrayList<>(); |
|
|
|
//分润 发榜嘉宾实名认证 红娘发布的榜单已经扣除佣金 |
|
|
|
if (Objects.nonNull(rewardInviteUserId) && PublishIdentityTypeEnum.GUEST.equals(existMarriageBountyOrder.getPublishType())) { |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(rewardInviteUserId); |
|
|
|
Matchmaker matchmaker = matchmakerDao.selectById(rewardInviteUserId); |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(matchmaker); |
|
|
|
if (Objects.nonNull(guestCertificationReward)) { |
|
|
|
BigDecimal receivedAmount = guestCertificationReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -308,7 +317,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
} |
|
|
|
//分润 匹配嘉宾实名认证 |
|
|
|
if (Objects.nonNull(guestsInviteUserId)) { |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(guestsInviteUserId); |
|
|
|
Matchmaker matchmaker = matchmakerDao.selectById(guestsInviteUserId); |
|
|
|
RewardConfig guestCertificationReward = rewardConfigQueryService.queryGuestCertificationReward(matchmaker); |
|
|
|
if (Objects.nonNull(guestCertificationReward)) { |
|
|
|
BigDecimal receivedAmount = guestCertificationReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -321,7 +331,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
|
|
|
|
//分润 发布悬赏招亲 红娘发布的榜单已经扣除佣金 |
|
|
|
if (Objects.nonNull(rewardPublishMatchmakerUserId) && PublishIdentityTypeEnum.GUEST.equals(existMarriageBountyOrder.getPublishType())) { |
|
|
|
RewardConfig publishMarriageBountyReward = rewardConfigQueryService.queryPublishMarriageBountyReward(rewardPublishMatchmakerUserId); |
|
|
|
Matchmaker matchmaker = matchmakerDao.selectById(rewardPublishMatchmakerUserId); |
|
|
|
RewardConfig publishMarriageBountyReward = rewardConfigQueryService.queryPublishMarriageBountyReward(matchmaker); |
|
|
|
if (Objects.nonNull(publishMarriageBountyReward)) { |
|
|
|
BigDecimal receivedAmount = publishMarriageBountyReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
@ -332,7 +343,8 @@ public class MarriageBountyOrderApplicationService extends BaseApplicationServic |
|
|
|
} |
|
|
|
//分润 发布悬赏招亲 |
|
|
|
if (Objects.nonNull(guestsMatchmakerUserId)) { |
|
|
|
RewardConfig matchMarriageBountyReward = rewardConfigQueryService.queryMatchMarriageBountyReward(guestsMatchmakerUserId); |
|
|
|
Matchmaker matchmaker = matchmakerDao.selectById(guestsMatchmakerUserId); |
|
|
|
RewardConfig matchMarriageBountyReward = rewardConfigQueryService.queryMatchMarriageBountyReward(matchmaker); |
|
|
|
if (Objects.nonNull(matchMarriageBountyReward)) { |
|
|
|
BigDecimal receivedAmount = matchMarriageBountyReward.calculateReward(marriageBountyOrderReward.getRewardAmount()); |
|
|
|
MarriageBountyOrderRewardReceiveRecord rewardReceiveRecord = MarriageBountyOrderRewardReceiveRecord.build( |
|
|
|
|