xuqiang пре 11 месеци
родитељ
комит
2d38c08eed

+ 1 - 1
src/main/java/com/ydtech/modules/partner/dao/PartnerUserMapper.java

@@ -201,7 +201,7 @@ public interface PartnerUserMapper extends BaseMapper<PartnerUser> {
     @Select("SELECT identity_time FROM partner_user WHERE user_id = #{userId} AND grade = #{originalLevel}")
     Date selectLockTime(@Param("userId") String userId, @Param("originalLevel")String originalLevel);
 
-    @Select(" SELECT user_id,grade,name,mobile,user_id,dept_id,dept_name,identity_time FROM partner_user WHERE identity_status = 1 AND DATE(DATE_ADD(identity_time, INTERVAL #{expireDays} DAY)) <=  CURDATE()  ")
+    @Select(" SELECT user_id,grade,name,mobile,user_id,dept_id,dept_name,identity_time FROM partner_user WHERE identity_status = 1 AND DATE(DATE_ADD(identity_time, INTERVAL (#{expireDays} + 1) DAY)) >=  CURDATE()  ")
     List<PartnerUser> queryExpiredRecords(Integer expireDays);
 
 

+ 7 - 2
src/main/java/com/ydtech/modules/partner/model/PartnerExpiredCommission.java

@@ -1,14 +1,12 @@
 package com.ydtech.modules.partner.model;
 
 
-import com.baomidou.mybatisplus.annotation.FieldFill;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
@@ -85,6 +83,13 @@ public class PartnerExpiredCommission {
     @TableField(value = "update_time")
     private Date updateTime;
 
+    /**
+     * 更新时间
+     */
+    @TableField(value = "data_time")
+    private String dataTime;
+
+
     /**
      * 当前页码
      */

+ 6 - 7
src/main/java/com/ydtech/modules/partner/utils/TimedTaskUtils.java

@@ -5,7 +5,6 @@ import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.extra.spring.SpringUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.xxl.job.core.handler.annotation.XxlJob;
 import com.ydtech.modules.partner.dao.PartnerExpiredCommissionMapper;
 import com.ydtech.modules.partner.dao.PartnerPartnerAccountMapper;
 import com.ydtech.modules.partner.dao.PartnerPremiumDetailsMapper;
@@ -21,11 +20,9 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 import java.math.BigDecimal;
-import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
-import java.util.Objects;
 import java.util.stream.Collectors;
 
 
@@ -69,7 +66,7 @@ public class TimedTaskUtils {
         log.info("记录佣金过期定时任务开始执行:{}", expireDays);
         List<PartnerUser> partnerUserList = partnerUserMapper.queryExpiredRecords(expireDays);
         for (PartnerUser partnerUser : partnerUserList) {
-            String date = PartnerDateUtils.timeExample(expireDays);
+            String date = PartnerDateUtils.timeExample(expireDays + 1);
             LambdaQueryWrapper<PartnerPremiumDetails> lambdaQueryWrapper = new LambdaQueryWrapper<>();
             lambdaQueryWrapper.eq(PartnerPremiumDetails::getUserId, partnerUser.getUserId())
                     .eq(PartnerPremiumDetails::getSource, partnerUser.getGrade())
@@ -78,7 +75,7 @@ public class TimedTaskUtils {
             List<PartnerPremiumDetails> partnerPremiumDetails = premiumDetailsMapper.selectList(lambdaQueryWrapper);
             if (CollectionUtil.isNotEmpty(partnerPremiumDetails)){
                 BigDecimal lockCommission = partnerPremiumDetails.stream().map(PartnerPremiumDetails::getExtractFee).reduce(BigDecimal.ZERO, BigDecimal::add);
-                PartnerExpiredCommission commission = getExpiredUserCommission(partnerUser,lockCommission);
+                PartnerExpiredCommission commission = getExpiredUserCommission(partnerUser,lockCommission,date);
                 expiredCommissionMapper.insert(commission);
                 if (null != lockCommission){
                     PartnerPartnerAccount account = accountMapper.selectOne(new LambdaQueryWrapper<>(PartnerPartnerAccount.class)
@@ -101,7 +98,7 @@ public class TimedTaskUtils {
     }
 
 
-    private static PartnerExpiredCommission getExpiredUserCommission(PartnerUser record, BigDecimal lockCommission) {
+    private static PartnerExpiredCommission getExpiredUserCommission(PartnerUser record, BigDecimal lockCommission,String date) {
         PartnerExpiredCommission commission = new PartnerExpiredCommission();
         commission.setName(record.getName());
         commission.setMobile(record.getMobile());
@@ -114,6 +111,7 @@ public class TimedTaskUtils {
         commission.setDowngradeTime(record.getIdentityTime());
         commission.setExpiration(new Date());
         commission.setCreateTime(new Date());
+        commission.setDataTime(date);
         return commission;
     }
 
@@ -143,6 +141,7 @@ public class TimedTaskUtils {
         List<PartnerRuleEntity> partnerRuleEntities = partnerRuleService.queryAll();
         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         List<PartnerUser> partnerUsers = partnerUserMapper.queryDowngradedData();
+        Date date = new Date();
         for (PartnerUser partnerUser : partnerUsers) {
             PartnerRuleEntity rule = getRule(String.valueOf(partnerUser.getGrade()), partnerRuleEntities);
             Integer khDays = rule.getKhDays();
@@ -154,7 +153,7 @@ public class TimedTaskUtils {
             //  生成结束时间
             Date upgradeEndTime = PartnerDateUtils.generateEndTime(upgradeStartTime, khDays);
             System.out.println("结束时间:" + formatter.format(upgradeEndTime));
-            if (PartnerDateUtils.isSameDay(upgradeEndTime)){
+            if (date.compareTo(upgradeEndTime) >= 0){
                 // TODO考核条件  不满足时需锁定
                 ExpiredCommissionUtils commissionUtils = SpringUtil.getBean(ExpiredCommissionUtils.class);
                 boolean checked = commissionUtils.checkUpgradeConditions(partnerUser);