|
|
|
@ -42,6 +42,7 @@ import com.qniao.das.domian.aggregate.mntp.entity.MatchmakerNoviceTaskProgress; |
|
|
|
import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker; |
|
|
|
import com.qniao.dau.domain.aggregate.operationcenter.entity.OperationCenter; |
|
|
|
import com.qniao.dau.domain.aggregate.store.entity.Store; |
|
|
|
import com.qniao.dau.domian.aggregate.matchmaker.constant.MatchmakerLevelEnum; |
|
|
|
import com.qniao.dau.domian.aggregate.matchmaker.event.MatchmakerInvitedMQ; |
|
|
|
import com.qniao.dau.domian.aggregate.matchmakeraudit.constant.MatchmakerAuditBehaviorEnum; |
|
|
|
import com.qniao.domain.BaseApplicationService; |
|
|
|
@ -164,10 +165,10 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
//门店回本前 拿100% 20%推荐费+50%门店费用(30%直接拿+20%新手任务完成)+ 30%回本补贴 |
|
|
|
//门店回本后 拿70% 20%推荐费+50%门店费用(30%直接拿+20%新手任务完成) |
|
|
|
RevenueReward storeRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
if (Objects.nonNull(store.getFranchiseFee()) && store.getFranchiseFee().compareTo(BigDecimal.ZERO)>0 && !storeRevenueReward.getAllRecoveryRequirement()) { |
|
|
|
if (Objects.nonNull(store.getFranchiseFee()) && store.getFranchiseFee().compareTo(BigDecimal.ZERO) > 0 && !storeRevenueReward.getAllRecoveryRequirement()) { |
|
|
|
//未回本 拿100% 20%推荐费+50%门店费用+ 30%回本补贴 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50, associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30, associateOrder); |
|
|
|
|
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward stRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
@ -175,14 +176,14 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
this.sendEvent(storeReEvent); |
|
|
|
} else { |
|
|
|
//回本后 拿70% 20%推荐费+50%门店费用 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50, associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward stRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
RevenueRewardUpdatedEvent storeReEvent = new RevenueRewardUpdatedEvent(stRevenueReward.getId()); |
|
|
|
this.sendEvent(storeReEvent); |
|
|
|
|
|
|
|
//区域分润 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE, associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward operationCenterRevenueReward = revenueRewardQueryService.queryByOrgId(store.getOperationCenterOrgId()); |
|
|
|
RevenueRewardUpdatedEvent operationCenterReEvent = new RevenueRewardUpdatedEvent(operationCenterRevenueReward.getId()); |
|
|
|
@ -193,29 +194,31 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
//门店回本前+红娘没有完成新手任务: 红娘直接拿20%+30%回本补贴+对照新手任务奖励 |
|
|
|
//门店回本后: 红娘直接拿20%+30%回本补贴+对照新手任务奖励 |
|
|
|
if (Objects.nonNull(initiatorMatchmaker)) { |
|
|
|
MatchmakerNoviceTaskProgress matchmakerNoviceTaskProgress = matchmakerNoviceTaskProgressQueryService.queryByMatchmakerId(initiatorMatchmaker.getId()); |
|
|
|
if (Objects.nonNull(matchmakerNoviceTaskProgress)) { |
|
|
|
if (matchmakerNoviceTaskProgress.getIsFinish()) { |
|
|
|
MatchmakerLevelEnum matchmakerLevel = matchmakerQueryService.queryLevelByUserId(initiatorMatchmaker.getUserId()); |
|
|
|
if (Objects.nonNull(matchmakerLevel) && MatchmakerLevelEnum.MATCHMAKER_PARTNER.getLevel() <= matchmakerLevel.getLevel()) { |
|
|
|
//红娘推荐的话 |
|
|
|
MatchmakerNoviceTaskProgress matchmakerNoviceTaskProgress = matchmakerNoviceTaskProgressQueryService.queryByMatchmakerId(initiatorMatchmaker.getId()); |
|
|
|
if (Objects.nonNull(matchmakerNoviceTaskProgress) && matchmakerNoviceTaskProgress.getIsFinish()) { |
|
|
|
// 红娘已完成新手任务 门店拿50%, 没回本再拿30%回本补贴 |
|
|
|
RevenueReward storeRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
if (!storeRevenueReward.getAllRecoveryRequirement()) { |
|
|
|
//未回本 门店拿50% + 30%回本补贴 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50, associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30, associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求. |
|
|
|
RevenueReward stRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
RevenueRewardUpdatedEvent storeReEvent = new RevenueRewardUpdatedEvent(stRevenueReward.getId()); |
|
|
|
this.sendEvent(storeReEvent); |
|
|
|
} else { |
|
|
|
//已回本 门店拿50% |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50, associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward stRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
RevenueRewardUpdatedEvent storeReEvent = new RevenueRewardUpdatedEvent(stRevenueReward.getId()); |
|
|
|
this.sendEvent(storeReEvent); |
|
|
|
|
|
|
|
//区域分润 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE,associateOrder); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE, associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward operationCenterRevenueReward = revenueRewardQueryService.queryByOrgId(store.getOperationCenterOrgId()); |
|
|
|
RevenueRewardUpdatedEvent operationCenterReEvent = new RevenueRewardUpdatedEvent(operationCenterRevenueReward.getId()); |
|
|
|
|