11 changed files with 158 additions and 47 deletions
Split View
Diff Options
-
40dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/mcur/vobj/MatchCardUsageRecord.java
-
13dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/mica/user/MarriageInformationContactApplyUserCommandController.java
-
26dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/mica/user/request/UserConfirmMarriageInformationContactApplyDto.java
-
12dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/mica/user/request/UserDeleteMarriageInformationContactApplyDto.java
-
25dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/mica/user/request/UserUnlockMarriageInformationContactApplyDto.java
-
12dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/mica/user/response/UnlockMarriageInformationContactApplyVo.java
-
2dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/ccur/ContactCardUsageRecordApplicationService.java
-
56dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/mica/MarriageInformationContactApplyApplicationService.java
-
7dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/mcur/MatchCardUsageRecordDao.java
-
4dating-agency-mall-server/src/main/java/com/qniao/dam/query/mcur/MatchCardUsageRecordQueryService.java
-
8dating-agency-mall-server/src/main/java/com/qniao/dam/query/mcur/impl/MatchCardUsageRecordQueryServiceImpl.java
@ -0,0 +1,40 @@ |
|||
package com.qniao.dam.domain.aggregate.mcur.vobj; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.qniao.dam.domian.aggregate.pcur.constant.CardUsageTyepEnum; |
|||
import com.qniao.domain.ValueObject; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.time.LocalDate; |
|||
|
|||
@Data |
|||
@EqualsAndHashCode(callSuper = true) |
|||
@TableName("da_profile_card_usage_record") |
|||
public class MatchCardUsageRecord extends ValueObject<MatchCardUsageRecord> { |
|||
|
|||
@ApiModelProperty("用户标识") |
|||
private Long userId; |
|||
|
|||
@ApiModelProperty("目标申请标识") |
|||
private Long targetApplyId; |
|||
|
|||
@ApiModelProperty("使用类型") |
|||
private CardUsageTyepEnum usageType; |
|||
|
|||
@ApiModelProperty("使用日期") |
|||
private LocalDate usageDate; |
|||
|
|||
public static MatchCardUsageRecord build(Long userId, |
|||
Long targetApplyId, |
|||
CardUsageTyepEnum usageType) { |
|||
MatchCardUsageRecord matchCardUsageRecord = new MatchCardUsageRecord(); |
|||
matchCardUsageRecord.setUserId(userId); |
|||
matchCardUsageRecord.setTargetApplyId(targetApplyId); |
|||
matchCardUsageRecord.setUsageType(usageType); |
|||
matchCardUsageRecord.setUsageDate(LocalDate.now()); |
|||
return matchCardUsageRecord; |
|||
} |
|||
|
|||
} |
|||
@ -1,33 +1,25 @@ |
|||
package com.qniao.dam.api.command.mica.user.request; |
|||
|
|||
import com.qniao.dam.domain.aggregate.mica.entity.MarriageInformationContactApply; |
|||
import com.qniao.dam.domian.aggregate.mica.constant.MarriageInformationContactApplyStatusEnum; |
|||
import com.qniao.domain.Trans2DomainAssembler; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import com.qniao.framework.utils.TypeConvertUtils; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class UserEditMarriageInformationContactApplyDto implements Trans2DomainAssembler<MarriageInformationContactApply> { |
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
@Data |
|||
public class UserConfirmMarriageInformationContactApplyDto implements Trans2DomainAssembler<MarriageInformationContactApply> { |
|||
|
|||
@ApiModelProperty("唯一标识") |
|||
@NotNull |
|||
private Long id; |
|||
|
|||
@ApiModelProperty("申请人用户id") |
|||
private Long applicantUserId; |
|||
|
|||
@ApiModelProperty("申请人资料id") |
|||
private Long applicantMiId; |
|||
|
|||
@ApiModelProperty("目标用户id") |
|||
private Long targetUserId; |
|||
|
|||
@ApiModelProperty("目标资料id") |
|||
private Long targetMiId; |
|||
|
|||
@ApiModelProperty("状态") |
|||
private Integer status; |
|||
|
|||
@NotNull |
|||
private MarriageInformationContactApplyStatusEnum status; |
|||
|
|||
@Override |
|||
public MarriageInformationContactApply trans2Domain() { |
|||
return TypeConvertUtils.convert(this, MarriageInformationContactApply.class); |
|||
@ -1,12 +0,0 @@ |
|||
package com.qniao.dam.api.command.mica.user.request; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class UserDeleteMarriageInformationContactApplyDto { |
|||
|
|||
@ApiModelProperty("唯一标识") |
|||
private Long id; |
|||
|
|||
} |
|||
@ -0,0 +1,12 @@ |
|||
package com.qniao.dam.api.command.mica.user.response; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class UnlockMarriageInformationContactApplyVo { |
|||
|
|||
@ApiModelProperty("是否成功") |
|||
private Boolean success = false; |
|||
|
|||
} |
|||
@ -1,14 +1,70 @@ |
|||
package com.qniao.dam.application.service.mica; |
|||
|
|||
import com.qniao.dam.api.command.mica.user.response.UnlockMarriageInformationContactApplyVo; |
|||
import com.qniao.dam.domain.aggregate.mica.MarriageInformationContactApplyAggregate; |
|||
import com.qniao.dam.domain.aggregate.mica.entity.MarriageInformationContactApply; |
|||
import com.qniao.dam.domain.aggregate.right.entity.Right; |
|||
import com.qniao.dam.domian.aggregate.mica.constant.MarriageInformationContactApplyStatusEnum; |
|||
import com.qniao.dam.domian.aggregate.pcur.constant.CardUsageTyepEnum; |
|||
import com.qniao.dam.domian.aggregate.right.constant.RightTypeEnum; |
|||
import com.qniao.dam.infrastructure.persistent.dao.mica.MarriageInformationContactApplyDao; |
|||
import com.qniao.dam.query.mcur.MatchCardUsageRecordQueryService; |
|||
import com.qniao.dam.query.right.RightQueryService; |
|||
import com.qniao.framework.exception.BizException; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import javax.annotation.Resource; |
|||
import java.time.LocalDate; |
|||
import java.time.temporal.TemporalAdjusters; |
|||
import java.util.Objects; |
|||
|
|||
@Service |
|||
public class MarriageInformationContactApplyApplicationService { |
|||
|
|||
@Resource |
|||
private MarriageInformationContactApplyAggregate marriageInformationContactApplyAggregate; |
|||
@Resource |
|||
private MarriageInformationContactApplyDao marriageInformationContactApplyDao; |
|||
@Resource |
|||
private RightQueryService rightQueryService; |
|||
@Resource |
|||
private MatchCardUsageRecordQueryService matchCardUsageRecordQueryService; |
|||
|
|||
public void confirm(MarriageInformationContactApply apply) { |
|||
MarriageInformationContactApply existApply = marriageInformationContactApplyDao.selectById(apply.getId()); |
|||
if (MarriageInformationContactApplyStatusEnum.PENDING.equals(existApply.getStatus())) { |
|||
marriageInformationContactApplyAggregate.edit(apply); |
|||
} |
|||
} |
|||
|
|||
|
|||
public UnlockMarriageInformationContactApplyVo unlock(MarriageInformationContactApply apply, Long applicantUserId) { |
|||
MarriageInformationContactApply existApply = marriageInformationContactApplyDao.selectById(apply.getId()); |
|||
if (!MarriageInformationContactApplyStatusEnum.APPROVED.equals(existApply.getStatus())) { |
|||
throw new BizException("对方未同意您的申请"); |
|||
} |
|||
UnlockMarriageInformationContactApplyVo vo = new UnlockMarriageInformationContactApplyVo(); |
|||
if (existApply.getUnlocked()) { |
|||
vo.setSuccess(true); |
|||
} else { |
|||
//未解锁 |
|||
if (!applicantUserId.equals(existApply.getApplicantUserId())) { |
|||
throw new BizException("您不是申请人"); |
|||
} else { |
|||
//判断是否会员 |
|||
Right right = rightQueryService.getUserVipInfo(existApply.getApplicantUserId(), existApply.getApplicantMiId()); |
|||
if (Objects.nonNull(right)) { |
|||
//是会员 |
|||
if (RightTypeEnum.VIP.equals(right.getType())) { |
|||
// int lastDay = LocalDate.now().with(TemporalAdjusters.lastDayOfMonth()) |
|||
//正式会员 |
|||
//int usageFreeCount = matchCardUsageRecordQueryService.countUsageRecord(usageRecord.getUserId(), CardUsageTyepEnum.FREE,); |
|||
} else { |
|||
//体验会员(周会员) |
|||
} |
|||
} |
|||
} |
|||
} |
|||
return vo; |
|||
} |
|||
} |
|||
@ -0,0 +1,7 @@ |
|||
package com.qniao.dam.infrastructure.persistent.dao.mcur; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qniao.dam.domain.aggregate.mcur.vobj.MatchCardUsageRecord; |
|||
|
|||
public interface MatchCardUsageRecordDao extends BaseMapper<MatchCardUsageRecord> { |
|||
} |
|||
@ -0,0 +1,4 @@ |
|||
package com.qniao.dam.query.mcur; |
|||
|
|||
public interface MatchCardUsageRecordQueryService { |
|||
} |
|||
@ -0,0 +1,8 @@ |
|||
package com.qniao.dam.query.mcur.impl; |
|||
|
|||
import com.qniao.dam.query.mcur.MatchCardUsageRecordQueryService; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
@Service |
|||
public class MatchCardUsageRecordQueryServiceImpl implements MatchCardUsageRecordQueryService { |
|||
} |
|||
Write
Preview
Loading…
Cancel
Save