|
|
|
@ -166,8 +166,8 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
RevenueReward storeRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
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); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30); |
|
|
|
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 +175,14 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
this.sendEvent(storeReEvent); |
|
|
|
} else { |
|
|
|
//回本后 拿70% 20%推荐费+50%门店费用 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50); |
|
|
|
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); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE,associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward operationCenterRevenueReward = revenueRewardQueryService.queryByOrgId(store.getOperationCenterOrgId()); |
|
|
|
RevenueRewardUpdatedEvent operationCenterReEvent = new RevenueRewardUpdatedEvent(operationCenterRevenueReward.getId()); |
|
|
|
@ -200,22 +200,22 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
RevenueReward storeRevenueReward = revenueRewardQueryService.queryByOrgId(dto.getStoreOrgId()); |
|
|
|
if (!storeRevenueReward.getAllRecoveryRequirement()) { |
|
|
|
//未回本 门店拿50% + 30%回本补贴 |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.OPERATING_RECOMMEND_50); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.PAYBACK_SUBSIDY_30); |
|
|
|
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); |
|
|
|
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); |
|
|
|
handleStoreRecommendMatchmakerFee(store.getOperationCenterOrgId(), dto.getReceiveUserName(), rewardAmount, RewardTypeEnum.SERVICE_PROVIDER_MANAGEMENT_FEE,associateOrder); |
|
|
|
//发送事件 检查是否满足回本要求 |
|
|
|
RevenueReward operationCenterRevenueReward = revenueRewardQueryService.queryByOrgId(store.getOperationCenterOrgId()); |
|
|
|
RevenueRewardUpdatedEvent operationCenterReEvent = new RevenueRewardUpdatedEvent(operationCenterRevenueReward.getId()); |
|
|
|
@ -244,7 +244,8 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
public void handleStoreRecommendMatchmakerFee(Long orgId, |
|
|
|
String name, |
|
|
|
BigDecimal franchiseFee, |
|
|
|
RewardTypeEnum rewardType) { |
|
|
|
RewardTypeEnum rewardType, |
|
|
|
Order associateOrder) { |
|
|
|
//服务商管理费 |
|
|
|
RewardConfig rewardConfig = rewardConfigQueryService.queryByRewardType(rewardType); |
|
|
|
RevenueReward revenueReward = revenueRewardQueryService.queryByOrgId(orgId); |
|
|
|
@ -256,6 +257,8 @@ public class RewardApplicationService extends BaseApplicationService { |
|
|
|
if (RewardTypeEnum.PAYBACK_SUBSIDY_30.equals(rewardType)) { |
|
|
|
revenueRewardRecord.setContent(revenueRewardRecord.getContent() + "回本补贴"); |
|
|
|
} |
|
|
|
RevenueRewardAssociateOrderRecord associateOrderRecord = RevenueRewardAssociateOrderRecord.build(associateOrder.getId(), associateOrder.getSettlementAmount()); |
|
|
|
revenueRewardRecord.setAssociateOrderRecordList(Collections.singletonList(associateOrderRecord)); |
|
|
|
revenueReward.setRecordList(Collections.singletonList(revenueRewardRecord)); |
|
|
|
//计算本次回本金额 |
|
|
|
revenueReward.handleRevenueReward(revenue); |
|
|
|
|