diff --git a/jwtech-quartz/src/main/java/com/jwtech/quartz/task/CreditPublicityTask.java b/jwtech-quartz/src/main/java/com/jwtech/quartz/task/CreditPublicityTask.java new file mode 100644 index 00000000..e7860a7e --- /dev/null +++ b/jwtech-quartz/src/main/java/com/jwtech/quartz/task/CreditPublicityTask.java @@ -0,0 +1,56 @@ +package com.jwtech.quartz.task; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.kms.enterprise.domain.BsSgcYxjdDynamicCredit; +import com.kms.enterprise.mapper.BsSgcYxjdDynamicCreditMapper; +import com.kms.enterprise.service.BsSgcYxjdDynamicCreditService; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.time.LocalDate; +import java.time.ZoneId; +import java.time.temporal.ChronoUnit; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +@Component("CreditPublicityTask") +public class CreditPublicityTask { + + @Resource + private BsSgcYxjdDynamicCreditMapper bsSgcYxjdDynamicCreditMapper; + + + public void creditPublicity() { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(BsSgcYxjdDynamicCredit.class).eq(BsSgcYxjdDynamicCredit::getStatus, "3") + .isNull(BsSgcYxjdDynamicCredit::getNoticeBeginTime); + + List creditList = bsSgcYxjdDynamicCreditMapper.selectList(queryWrapper); + + creditList.stream().forEach(x->x.setNoticeBeginTime(new Date())); + + LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(BsSgcYxjdDynamicCredit.class).eq(BsSgcYxjdDynamicCredit::getStatus, "3") + .isNotNull(BsSgcYxjdDynamicCredit::getNoticeBeginTime); + List list = bsSgcYxjdDynamicCreditMapper.selectList(lambdaQueryWrapper); + + for (BsSgcYxjdDynamicCredit credit : list) { + LocalDate now = LocalDate.now(); + Date beginTime = credit.getNoticeBeginTime(); + LocalDate targetDate = beginTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); + + long daysBetween = ChronoUnit.DAYS.between(now, targetDate); + + if (daysBetween >= 5) { + credit.setStatus("4"); + bsSgcYxjdDynamicCreditMapper.updateById(credit); + } + + + } + + + } + + +} diff --git a/jwtech-system/src/main/java/com/kms/enterprise/domain/BsSgcYxjdDynamicCredit.java b/jwtech-system/src/main/java/com/kms/enterprise/domain/BsSgcYxjdDynamicCredit.java index 0af0462f..1abcdbec 100644 --- a/jwtech-system/src/main/java/com/kms/enterprise/domain/BsSgcYxjdDynamicCredit.java +++ b/jwtech-system/src/main/java/com/kms/enterprise/domain/BsSgcYxjdDynamicCredit.java @@ -115,4 +115,10 @@ public class BsSgcYxjdDynamicCredit extends BaseEntity private String recordId; + @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8") + private Date noticeBeginTime; + + @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8") + private Date noticeEndTime; + }