Browse Source

相亲角订单

master
张彭杰 11 months ago
parent
commit
66a26f30ab
4 changed files with 68 additions and 13 deletions
  1. 31
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java
  2. 46
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/revenuereward/RevenueRewardEventHandler.java
  3. 2
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java
  4. 2
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java

31
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java

@ -67,11 +67,11 @@ public enum RewardTypeEnum {
/**
* 红娘到期续费保护周期
*/
MATCHMAKER_PARTNER_RENEW_VALIDITY_PERIOD(126,"高级红娘续费保护周期"),
MATCHMAKER_PARTNER_RENEW_VALIDITY_PERIOD(126, "高级红娘续费保护周期"),
MATCHMAKER_ONLINE_RENEW_VALIDITY_PERIOD(127,"线上红娘续费保护周期"),
MATCHMAKER_ONLINE_RENEW_VALIDITY_PERIOD(127, "线上红娘续费保护周期"),
MATCHMAKER_TRAINEE_RENEW_VALIDITY_PERIOD(128,"实习红娘续费保护周期"),
MATCHMAKER_TRAINEE_RENEW_VALIDITY_PERIOD(128, "实习红娘续费保护周期"),
// 2** 服务费
@ -90,27 +90,32 @@ public enum RewardTypeEnum {
// 3** 招亲榜 MarriageBounty
//低消
MARRIAGE_BOUNTY_MEETING_MIN_AMOUNT(301,"招亲榜-见面低消"),
MARRIAGE_BOUNTY_MEETING_MIN_AMOUNT(301, "招亲榜-见面低消"),
MARRIAGE_BOUNTY_DATING_MIN_AMOUNT(302,"招亲榜-牵手低消"),
MARRIAGE_BOUNTY_DATING_MIN_AMOUNT(302, "招亲榜-牵手低消"),
MARRIAGE_BOUNTY_MARRIAGE_MIN_AMOUNT(303,"招亲榜-结婚低消"),
MARRIAGE_BOUNTY_MARRIAGE_MIN_AMOUNT(303, "招亲榜-结婚低消"),
//服务退款有效期
MARRIAGE_BOUNTY_MEETING_VALIDITY_PERIOD(304,"招亲榜-见面服务有效期"),
MARRIAGE_BOUNTY_MEETING_VALIDITY_PERIOD(304, "招亲榜-见面服务有效期"),
MARRIAGE_BOUNTY_DATING_VALIDITY_PERIOD(305,"招亲榜-牵手服务有效期"),
MARRIAGE_BOUNTY_DATING_VALIDITY_PERIOD(305, "招亲榜-牵手服务有效期"),
MARRIAGE_BOUNTY_MARRIAGE_VALIDITY_PERIOD(306,"招亲榜-结婚服务有效期"),
MARRIAGE_BOUNTY_MARRIAGE_VALIDITY_PERIOD(306, "招亲榜-结婚服务有效期"),
//周期保护 红娘升级补差价周期 红娘推荐奖励周期 用户发榜红娘奖励周期 用户升级红娘邀请奖励周期
MATCHMAKER_UPGRADE_PROTECTION_PERIOD(401,"红娘升级保护周期"),
MATCHMAKER_UPGRADE_PROTECTION_PERIOD(401, "红娘升级保护周期"),
MATCHMAKER_RECOMMEND_PROTECTION_PERIOD(402,"红娘推荐奖励保护周期"),
MATCHMAKER_RECOMMEND_PROTECTION_PERIOD(402, "红娘推荐奖励保护周期"),
MARRIAGE_BOUNTY_MATCHMAKER_PROTECTION_PERIOD(403,"发榜红娘奖励保护周期"),
MARRIAGE_BOUNTY_MATCHMAKER_PROTECTION_PERIOD(403, "发榜红娘奖励保护周期"),
GUEST_JOIN_MATCHMAKER_RECOMMEND_PROTECTION_PERIOD(404,"嘉宾成为红娘邀请奖励保护周期");
GUEST_JOIN_MATCHMAKER_RECOMMEND_PROTECTION_PERIOD(404, "嘉宾成为红娘邀请奖励保护周期"),
//服务商推荐费
NON_OPERATING_RECOMMEND(501, "非经营性质推荐收益"),
NON_OPERATING_PIPELINE_REVENUE(502, "非经营性质管道收益");
@EnumValue
@JsonValue

46
dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/revenuereward/RevenueRewardEventHandler.java

@ -0,0 +1,46 @@
package com.qniao.dam.application.handler.revenuereward;
import com.qniao.dam.infrastructure.constant.MqExchange;
import com.qniao.dam.infrastructure.constant.MqQueue;
import com.qniao.dam.query.rewardconfig.RewardConfigQueryService;
import com.qniao.dau.domian.aggregate.store.event.StoreCreatedMQ;
import com.qniao.domain.BaseApplicationService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.ExchangeTypes;
import org.springframework.amqp.rabbit.annotation.Exchange;
import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.QueueBinding;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Objects;
@Component
@Slf4j
public class RevenueRewardEventHandler extends BaseApplicationService {
@Resource
private RewardConfigQueryService rewardConfigQueryService;
@RabbitListener(bindings = @QueueBinding(value = @Queue(MqQueue.STORE_CREATED),
exchange = @Exchange(value = MqExchange.STORE_CREATED,
type = ExchangeTypes.FANOUT)))
public void handle(StoreCreatedMQ mq) {
try {
if (Objects.nonNull(mq.getFranchiseFee()) && mq.getFranchiseFee().compareTo(BigDecimal.ZERO) > 0) {
if (mq.getOperationCenterOrgId().equals(mq.getRecommendServiceProviderOrgId())) {
//经营性质推荐
//推荐服务商回本前 100%获得
//推荐服务商回本后 先提取50%,剩余20需要被推荐服务商回本50%后才能提取
} else {
//非经营性质推荐
//推荐服务商直接拿取20%,被推荐服务商回本后获得1%管道收益
}
}
} catch (Exception e) {
log.error("门店已创建事件处理异常", e);
}
}
}

2
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqExchange.java

@ -25,4 +25,6 @@ public interface MqExchange {
String SITE_ACTIVITY_PARTICIPANT_SETTLED = "fanout.siteActivityParticipantSettled";
String MATCHMAKING_CORNER_PAID = "fanout.matchmakingCornerPaid";
String STORE_CREATED = "fanout.storeCreated";
}

2
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/constant/MqQueue.java

@ -19,4 +19,6 @@ public interface MqQueue {
String POINT_REWARD_CREATED = MqExchange.POINT_REWARD_CREATED + serviceName;
String SITE_ACTIVITY_PARTICIPANT_SETTLED = MqExchange.SITE_ACTIVITY_PARTICIPANT_SETTLED + serviceName;
String STORE_CREATED = MqExchange.STORE_CREATED + serviceName;
}
Loading…
Cancel
Save