Browse Source

积分奖励配置

release
张彭杰 1 year ago
parent
commit
a77b44e9a8
1 changed files with 19 additions and 0 deletions
  1. 19
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java

19
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.AcquireMatchmakerConfirmMatchRewardDto;
import com.qniao.dam.api.command.reward.user.request.AcquireMatchmakerConfirmMeetingRewardDto; import com.qniao.dam.api.command.reward.user.request.AcquireMatchmakerConfirmMeetingRewardDto;
import com.qniao.dam.api.command.reward.user.request.UserAcquireMatchmakerJoinRecommendRewardDto; 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.entity.RevenueReward;
import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardAssociateOrderRecord; import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardAssociateOrderRecord;
import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardRecord; import com.qniao.dam.domain.aggregate.revenuereward.valueobj.RevenueRewardRecord;
import com.qniao.dam.domain.service.revenuereward.AcquireRevenueRewardDomainService; 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.product.constant.ProductSubCategoryEnum;
import com.qniao.dam.domian.aggregate.walletaccount.constant.IdentityTypeEnum; 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.MarriageInformationDao;
import com.qniao.dam.infrastructure.persistent.dao.domain.OrderDao; import com.qniao.dam.infrastructure.persistent.dao.domain.OrderDao;
import com.qniao.dam.query.matchmaker.MatchmakerQueryService; 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.das.domian.aggregate.marriageinformation.MarriageInformation;
import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker; import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker;
import com.qniao.dau.domain.aggregate.store.entity.Store; import com.qniao.dau.domain.aggregate.store.entity.Store;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -58,6 +63,8 @@ public class RewardApplicationService {
private MatchmakerQueryService matchmakerQueryService; private MatchmakerQueryService matchmakerQueryService;
@Resource @Resource
private StoreQueryService storeQueryService; 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()); WalletAccountRecord record = WalletAccountRecord.build(TradeTypeEnum.MATCHMAKER_JOIN_RECOMMEND_FEE, revenue, true, originalBalance, walletAccount.getTotalBalance());
walletAccount.setRecordList(Collections.singletonList(record)); walletAccount.setRecordList(Collections.singletonList(record));
acquireRevenueRewardDomainService.handle(revenueReward, walletAccount); 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);
} }
} }
} }

Loading…
Cancel
Save