diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java index e558baf..f093c8d 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java @@ -5,12 +5,16 @@ import cn.hutool.core.util.StrUtil; import com.qniao.dam.api.command.reward.user.request.AcquireMatchmakerConfirmMatchRewardDto; import com.qniao.dam.api.command.reward.user.request.AcquireMatchmakerConfirmMeetingRewardDto; import com.qniao.dam.api.command.reward.user.request.UserAcquireMatchmakerJoinRecommendRewardDto; +import com.qniao.dam.domain.aggregate.marriagebounty.entity.MarriageBountyOrder; import com.qniao.dam.domain.aggregate.revenuereward.entity.RevenueReward; import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardAssociateOrderRecord; import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardRecord; import com.qniao.dam.domain.service.revenuereward.AcquireRevenueRewardDomainService; +import com.qniao.dam.domian.aggregate.pointaccount.event.PointRewardCreatedMQ; +import com.qniao.dam.domian.aggregate.prc.constant.PointRewardConfigTypeEnum; import com.qniao.dam.domian.aggregate.product.constant.ProductSubCategoryEnum; import com.qniao.dam.domian.aggregate.walletaccount.constant.IdentityTypeEnum; +import com.qniao.dam.infrastructure.constant.MqExchange; import com.qniao.dam.infrastructure.persistent.dao.domain.MarriageInformationDao; import com.qniao.dam.infrastructure.persistent.dao.domain.OrderDao; import com.qniao.dam.query.matchmaker.MatchmakerQueryService; @@ -29,6 +33,7 @@ import com.qniao.dam.query.rewardconfig.RewardConfigQueryService; import com.qniao.das.domian.aggregate.marriageinformation.MarriageInformation; import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker; import com.qniao.dau.domain.aggregate.store.entity.Store; +import org.springframework.amqp.core.AmqpTemplate; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -58,6 +63,8 @@ public class RewardApplicationService { private MatchmakerQueryService matchmakerQueryService; @Resource private StoreQueryService storeQueryService; + @Resource + private AmqpTemplate amqpTemplate; /** * 获得红娘推荐奖励 @@ -96,6 +103,18 @@ public class RewardApplicationService { WalletAccountRecord record = WalletAccountRecord.build(TradeTypeEnum.MATCHMAKER_JOIN_RECOMMEND_FEE, revenue, true, originalBalance, walletAccount.getTotalBalance()); walletAccount.setRecordList(Collections.singletonList(record)); acquireRevenueRewardDomainService.handle(revenueReward, walletAccount); + + //积分奖励 + PointRewardCreatedMQ mq = new PointRewardCreatedMQ(); + mq.setOwnId(dto.getInitiatorUserId()); + mq.setIdentityType(IdentityTypeEnum.INDIVIDUAL); + mq.setPointType(PointRewardConfigTypeEnum.INVITE_MATCHMAKER); + mq.setContent("邀请红娘:" + dto.getReceiveUserName()); + mq.setIsIncome(true); + mq.setAssociateId(dto.getAssociateOrderId()); + mq.setAmount(rewardAmount); + // 发送mq事件 + amqpTemplate.convertAndSend(MqExchange.POINT_REWARD_CREATED, null, mq); } } }