Browse Source

基础配置

master
张彭杰 2 years ago
parent
commit
41083a93b1
3 changed files with 27 additions and 20 deletions
  1. 16
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/right/RightApplicationService.java
  2. 24
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/task/AcquireGiftRightTask.java
  3. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/domain/UserMarriageInformationDao.java

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

@ -80,11 +80,11 @@ public class RightApplicationService {
right.setId(oldSpecPeriodRight.getId());
}
//权益时间范围+考虑周期 todo 没有有效期限制如何提现永久?
right.setStartTime(Objects.nonNull(oldSpecPeriodRight) ? oldSpecPeriodRight.getStartTime() : LocalDateTime.now());
LocalDateTime startTime = Objects.nonNull(oldSpecPeriodRight) ? oldSpecPeriodRight.getEndTime() : LocalDateTime.now();
Tuple validityTuple = handleValidity(startTime, productSpec.getProductSpecTermList());
if (Objects.nonNull(validityTuple)) {
right.setStartTime(validityTuple.get(0));
right.setEndTime(validityTuple.get(1));
LocalDateTime endTime = handleValidity(startTime, productSpec.getProductSpecTermList());
if (Objects.nonNull(endTime)) {
right.setEndTime(endTime);
}
right.setEnable(true);
//权益条款
@ -139,16 +139,14 @@ public class RightApplicationService {
/**
* 权益有效期处理
*/
private Tuple handleValidity(LocalDateTime startTime, List<ProductSpecTerm> productSpecTermList) {
Tuple tuple = null;
private LocalDateTime handleValidity(LocalDateTime startTime, List<ProductSpecTerm> productSpecTermList) {
LocalDateTime endTime = null;
ProductSpecTerm term = productQueryService.getTermByName(productSpecTermList, ProductSpecTermNameEnum.VALIDITY_PERIOD);
if (Objects.nonNull(term)) {
LocalDateTime endTime;
int validityDays = Integer.parseInt(term.getValue());
endTime = startTime.plusDays(validityDays);
tuple = new Tuple(startTime, endTime);
}
return tuple;
return endTime;
}
/**

24
dating-agency-mall-server/src/main/java/com/qniao/dam/application/task/AcquireGiftRightTask.java

@ -7,7 +7,9 @@ import com.qniao.dam.domain.aggregate.right.valueobj.RightAcquireRecord;
import com.qniao.dam.domian.aggregate.right.constant.RightAcquireEnum;
import com.qniao.dam.infrastructure.persistent.dao.domain.MarriageInformationDao;
import com.qniao.dam.infrastructure.persistent.dao.domain.RightAcquireRecordDao;
import com.qniao.dam.infrastructure.persistent.dao.domain.UserMarriageInformationDao;
import com.qniao.das.domian.aggregate.marriageinformation.MarriageInformation;
import com.qniao.das.domian.aggregate.marriageinformation.UserMarriageInformation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@ -22,7 +24,7 @@ import java.util.List;
public class AcquireGiftRightTask {
@Resource
private MarriageInformationDao marriageInformationDao;
private UserMarriageInformationDao userMarriageInformationDao;
@Resource
private RightApplicationService rightApplicationService;
@Resource
@ -41,26 +43,26 @@ public class AcquireGiftRightTask {
LocalDateTime endTime = date.atTime(23, 59, 59);
LocalDateTime todayStartTime = LocalDate.now().atTime(0, 0, 0);
LocalDateTime todayEndTime = LocalDate.now().atTime(23, 59, 59);
int count = marriageInformationDao.selectCount(new LambdaQueryWrapper<MarriageInformation>()
.ge(MarriageInformation::getCreateTime, startTime)
.le(MarriageInformation::getCreateTime, endTime));
int count = userMarriageInformationDao.selectCount(new LambdaQueryWrapper<UserMarriageInformation>()
.ge(UserMarriageInformation::getCreateTime, startTime)
.le(UserMarriageInformation::getCreateTime, endTime));
if (count > 0) {
int num = 100;
for (int i = 0; i < count; i += num) {
List<MarriageInformation> list = marriageInformationDao.selectList(new LambdaQueryWrapper<MarriageInformation>()
.ge(MarriageInformation::getCreateTime, startTime)
.le(MarriageInformation::getCreateTime, endTime)
List<UserMarriageInformation> list = userMarriageInformationDao.selectList(new LambdaQueryWrapper<UserMarriageInformation>()
.ge(UserMarriageInformation::getCreateTime, startTime)
.le(UserMarriageInformation::getCreateTime, endTime)
.last("limit " + i + "," + num));
if (CollUtil.isNotEmpty(list)) {
for (MarriageInformation marriageInformation : list) {
for (UserMarriageInformation userMarriageInformation : list) {
//判断资料是否领取过免费权益
if (rightAcquireRecordDao.selectCount(new LambdaQueryWrapper<RightAcquireRecord>()
.eq(RightAcquireRecord::getUserId, marriageInformation.getUserId())
.eq(RightAcquireRecord::getMiId, marriageInformation.getId())
.eq(RightAcquireRecord::getUserId, userMarriageInformation.getUserId())
.eq(RightAcquireRecord::getMiId, userMarriageInformation.getMiId())
.eq(RightAcquireRecord::getAcquireType, RightAcquireEnum.GIFT)
.ge(RightAcquireRecord::getCreateTime, todayStartTime)
.le(RightAcquireRecord::getCreateTime, todayEndTime)) == 0) {
rightApplicationService.acquireNewMIRight(marriageInformation.getUserId(), marriageInformation.getId());
rightApplicationService.acquireNewMIRight(userMarriageInformation.getUserId(), userMarriageInformation.getMiId());
}
}
}

7
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/domain/UserMarriageInformationDao.java

@ -0,0 +1,7 @@
package com.qniao.dam.infrastructure.persistent.dao.domain;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qniao.das.domian.aggregate.marriageinformation.UserMarriageInformation;
public interface UserMarriageInformationDao extends BaseMapper<UserMarriageInformation> {
}
Loading…
Cancel
Save