|
|
@@ -23,6 +23,7 @@ import java.math.BigDecimal;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
|
|
|
/**
|
|
|
@@ -63,31 +64,68 @@ public class TimedTaskUtils {
|
|
|
@Scheduled(cron = "0 0 0 * * *")
|
|
|
public void updateOrderDateNoon() {
|
|
|
log.info("记录佣金过期定时任务开始执行:{}", expireDays);
|
|
|
- List<PartnerLiftingRecord> list = liftingRecordService.queryExpireDays(expireDays);
|
|
|
- for (PartnerLiftingRecord record : list) {
|
|
|
- //清空 当前用户抽成账户表
|
|
|
+ List<PartnerUser> partnerUserList = partnerUserMapper.queryExpiredRecords(expireDays);
|
|
|
+ for (PartnerUser partnerUser : partnerUserList) {
|
|
|
PartnerPartnerAccount account = accountMapper.selectOne(new LambdaQueryWrapper<>(PartnerPartnerAccount.class)
|
|
|
- .eq(PartnerPartnerAccount::getUserId, record.getUserId()).eq(PartnerPartnerAccount::getGrade, record.getOriginalLevel()));
|
|
|
- if (null == account){
|
|
|
+ .eq(PartnerPartnerAccount::getUserId, partnerUser.getUserId()).eq(PartnerPartnerAccount::getGrade, partnerUser.getGrade()));
|
|
|
+ if (null == account) {
|
|
|
continue;
|
|
|
}
|
|
|
- BigDecimal lockCommission = liftingRecordService.queryLockCommission(record.getUserId(), record.getOriginalLevel());
|
|
|
- PartnerExpiredCommission commission = getExpiredCommission(record,lockCommission);
|
|
|
+ BigDecimal lockCommission = liftingRecordService.queryLockCommission(partnerUser.getUserId(), String.valueOf(partnerUser.getGrade()));
|
|
|
+ PartnerExpiredCommission commission = getExpiredUserCommission(partnerUser,lockCommission);
|
|
|
expiredCommissionMapper.insert(commission);
|
|
|
if (null != lockCommission){
|
|
|
account.setExpiredAmount(account.getExpiredAmount().add(lockCommission));
|
|
|
accountMapper.updateById(account);
|
|
|
}
|
|
|
- liftingRecordService.updateAuditStatusById(record);
|
|
|
- PartnerUser partnerUser = partnerUserMapper.selectOne(new LambdaQueryWrapper<PartnerUser>().eq(PartnerUser::getUserId, record.getUserId())
|
|
|
- .eq(PartnerUser::getGrade, record.getOriginalLevel()));
|
|
|
-// partnerUser.setIdentityTime(PartnerDateUtils.addDaysToday(new Date(),0));
|
|
|
-// partnerUserMapper.updateById(partnerUser);
|
|
|
+ //liftingRecordService.updateAuditStatusById(record);
|
|
|
//更新单据状态
|
|
|
- premiumDetailsMapper.updateAppStatus(record.getOriginalLevel(), record.getUserId(), 2,partnerUser.getIdentityTime());
|
|
|
+ premiumDetailsMapper.updateAppStatus(String.valueOf(partnerUser.getGrade()), partnerUser.getUserId(), 2,partnerUser.getUpgradeCycleStartTime(),partnerUser.getExpiredTime());
|
|
|
}
|
|
|
|
|
|
+// List<PartnerLiftingRecord> list = liftingRecordService.queryExpireDays(expireDays);
|
|
|
+//
|
|
|
+// for (PartnerLiftingRecord record : list) {
|
|
|
+// //清空 当前用户抽成账户表
|
|
|
+// PartnerPartnerAccount account = accountMapper.selectOne(new LambdaQueryWrapper<>(PartnerPartnerAccount.class)
|
|
|
+// .eq(PartnerPartnerAccount::getUserId, record.getUserId()).eq(PartnerPartnerAccount::getGrade, record.getOriginalLevel()));
|
|
|
+// if (null == account){
|
|
|
+// continue;
|
|
|
+// }
|
|
|
+// BigDecimal lockCommission = liftingRecordService.queryLockCommission(record.getUserId(), record.getOriginalLevel());
|
|
|
+// PartnerExpiredCommission commission = getExpiredCommission(record,lockCommission);
|
|
|
+// expiredCommissionMapper.insert(commission);
|
|
|
+// if (null != lockCommission){
|
|
|
+// account.setExpiredAmount(account.getExpiredAmount().add(lockCommission));
|
|
|
+// accountMapper.updateById(account);
|
|
|
+// }
|
|
|
+// liftingRecordService.updateAuditStatusById(record);
|
|
|
+// PartnerUser partnerUser = partnerUserMapper.selectOne(new LambdaQueryWrapper<PartnerUser>().eq(PartnerUser::getUserId, record.getUserId())
|
|
|
+// .eq(PartnerUser::getGrade, record.getOriginalLevel()));
|
|
|
+//// partnerUser.setIdentityTime(PartnerDateUtils.addDaysToday(new Date(),0));
|
|
|
+// partnerUser.setExpiredTime(PartnerDateUtils.addDaysToday(new Date(),0));
|
|
|
+// partnerUserMapper.updateById(partnerUser);
|
|
|
+// //更新单据状态
|
|
|
+// premiumDetailsMapper.updateAppStatus(record.getOriginalLevel(), record.getUserId(), 2,partnerUser.getIdentityTime());
|
|
|
+// }
|
|
|
+ checkCommissionExpireTime();
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
+ private static PartnerExpiredCommission getExpiredUserCommission(PartnerUser record, BigDecimal lockCommission) {
|
|
|
+ PartnerExpiredCommission commission = new PartnerExpiredCommission();
|
|
|
+ commission.setName(record.getName());
|
|
|
+ commission.setMobile(record.getMobile());
|
|
|
+ commission.setUserId(record.getUserId());
|
|
|
+ commission.setDeptId(record.getDeptId());
|
|
|
+ commission.setDeptName(record.getDeptName());
|
|
|
+ commission.setGrade(String.valueOf(record.getGrade()));
|
|
|
+ commission.setGradeAfter(String.valueOf(record.getGrade() + 1));
|
|
|
+ commission.setLockCommission(null == lockCommission ? new BigDecimal("0") : lockCommission);
|
|
|
+ commission.setDowngradeTime(record.getCreateTime());
|
|
|
+ commission.setExpiration(new Date());
|
|
|
+ commission.setCreateTime(new Date());
|
|
|
+ return commission;
|
|
|
}
|
|
|
|
|
|
private static PartnerExpiredCommission getExpiredCommission(PartnerLiftingRecord record, BigDecimal lockCommission) {
|
|
|
@@ -110,8 +148,6 @@ public class TimedTaskUtils {
|
|
|
/**
|
|
|
* TODO: 更新降级考核时间
|
|
|
*/
|
|
|
- //@XxlJob("checkCommissionExpireTime")
|
|
|
- @Scheduled(cron = "0 0 0 * * *")
|
|
|
public void checkCommissionExpireTime() {
|
|
|
// TODO等级规则
|
|
|
List<PartnerRuleEntity> partnerRuleEntities = partnerRuleService.queryAll();
|
|
|
@@ -137,7 +173,7 @@ public class TimedTaskUtils {
|
|
|
commissionUtils.generateLockRecords(partnerUser);
|
|
|
}
|
|
|
//TODO 更新考核周期
|
|
|
- partnerUserMapper.updateUpgradeCycleStartTime(partnerUser.getUserId(), PartnerDateUtils.addDaysToday(upgradeEndTime, 1),partnerUser.getGrade());
|
|
|
+ partnerUserMapper.updateUpgradeCycleStartTime(partnerUser.getUserId(), PartnerDateUtils.addDaysToday(upgradeEndTime, 1),partnerUser.getGrade(),PartnerDateUtils.addDaysToday(upgradeEndTime,khDays));
|
|
|
}
|
|
|
}
|
|
|
update(partnerRuleEntities);
|
|
|
@@ -180,7 +216,7 @@ public class TimedTaskUtils {
|
|
|
today = true;
|
|
|
}
|
|
|
if (today){
|
|
|
- partnerUserMapper.updateUpgradeCycleStartTime(partnerUser.getUserId(), upgradeTime,partnerUser.getGrade());
|
|
|
+ partnerUserMapper.updateUpgradeCycleStartTime(partnerUser.getUserId(), upgradeTime,partnerUser.getGrade(), PartnerDateUtils.addDaysToday(upgradeTime,khDays));
|
|
|
}
|
|
|
}
|
|
|
|