Browse Source

直播红娘任务

master
张彭杰 1 month ago
parent
commit
1d3240ad77
2 changed files with 25 additions and 5 deletions
  1. 2
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/right/constant/RightTypeEnum.java
  2. 28
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/right/RightApplicationService.java

2
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/right/constant/RightTypeEnum.java

@ -30,6 +30,8 @@ public enum RightTypeEnum {
VIP(601,"会员"),
VIP_TRIAL(602,"会员体验"),
CONTRACT_LOVE(701,"包恋爱"),
CONTRACTED_MARRIAGE(801,"包领证");

28
dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/right/RightApplicationService.java

@ -74,10 +74,27 @@ public class RightApplicationService {
right.setUserId(order.getUserId());
right.setMiId(order.getMiId());
right.setType(type);
//寻找用户未过期的且规格属于周期的权益
Right oldSpecPeriodRight = rightQueryService.getEnableRight(order.getUserId(), order.getMiId(), type, RightUnitEnum.SPEC_PERIOD);
if (Objects.nonNull(oldSpecPeriodRight)) {
right.setId(oldSpecPeriodRight.getId());
Right oldSpecPeriodRight = null;
//会员逻辑处理
if (RightTypeEnum.VIP.equals(type) || RightTypeEnum.VIP_TRIAL.equals(type)) {
oldSpecPeriodRight = rightQueryService.getEnableRight(order.getUserId(), order.getMiId(), RightTypeEnum.VIP, RightUnitEnum.SPEC_PERIOD);
if (Objects.nonNull(oldSpecPeriodRight)) {
right.setId(oldSpecPeriodRight.getId());
}else{
oldSpecPeriodRight = rightQueryService.getEnableRight(order.getUserId(), order.getMiId(), RightTypeEnum.VIP_TRIAL, RightUnitEnum.SPEC_PERIOD);
if (Objects.nonNull(oldSpecPeriodRight)) {
right.setId(oldSpecPeriodRight.getId());
if (RightTypeEnum.VIP.equals(type)){
right.setType(RightTypeEnum.VIP);
}
}
}
} else {
//寻找用户未过期的且规格属于周期的权益
oldSpecPeriodRight = rightQueryService.getEnableRight(order.getUserId(), order.getMiId(), type, RightUnitEnum.SPEC_PERIOD);
if (Objects.nonNull(oldSpecPeriodRight)) {
right.setId(oldSpecPeriodRight.getId());
}
}
//权益时间范围+考虑周期 todo 没有有效期限制如何提现永久?
right.setStartTime(Objects.nonNull(oldSpecPeriodRight) ? oldSpecPeriodRight.getStartTime() : LocalDateTime.now());
@ -167,11 +184,12 @@ public class RightApplicationService {
case CHAT_CARD:
return RightTypeEnum.CHAT_CARD;
case VIP:
case VIP_TRIAL_CARD:
case VIP_MONTHLY_CARD:
case VIP_QUARTERLY_CARD:
case VIP_YEARLY_CARD:
return RightTypeEnum.VIP;
case VIP_TRIAL_CARD:
return RightTypeEnum.VIP_TRIAL;
case CONTRACT_LOVE:
return RightTypeEnum.CONTRACT_LOVE;
case CONTRACTED_MARRIAGE:

Loading…
Cancel
Save