From 5989f0e5838b58f5bc32dbe5583063fd74c171d7 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 08 Jan 2024 10:42:49 +0800
Subject: [PATCH] 根据开始时间修改状态
---
src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java | 22 ++++++++++++++++------
src/main/java/org/springblade/scheduled/ScheduledTasks.java | 26 ++++++++++++++++++++++++++
2 files changed, 42 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java b/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
index 8e2d97a..a3cef49 100644
--- a/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
@@ -16,21 +16,22 @@
*/
package org.springblade.modules.assessment.service.impl;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.AllArgsConstructor;
+import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.assessment.entity.AssessmentSetEntity;
import org.springblade.modules.assessment.entity.AssessmentTaskEntity;
+import org.springblade.modules.assessment.excel.AssessmentTaskExcel;
+import org.springblade.modules.assessment.mapper.AssessmentTaskMapper;
import org.springblade.modules.assessment.service.IAssessmentScoreService;
import org.springblade.modules.assessment.service.IAssessmentSetAssessorService;
import org.springblade.modules.assessment.service.IAssessmentSetService;
-import org.springblade.modules.assessment.vo.AssessmentTaskVO;
-import org.springblade.modules.assessment.excel.AssessmentTaskExcel;
-import org.springblade.modules.assessment.mapper.AssessmentTaskMapper;
import org.springblade.modules.assessment.service.IAssessmentTaskService;
+import org.springblade.modules.assessment.vo.AssessmentTaskVO;
+import org.springblade.modules.utils.DateUtils;
import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import javax.validation.constraints.NotEmpty;
@@ -66,6 +67,15 @@
}
@Override
+ public boolean saveOrUpdate(AssessmentTaskEntity assessmentTask) {
+
+ if (DateUtils.isToday(assessmentTask.getStartTime())) { //如果是今天 状态修改为进行中
+ assessmentTask.setIsAssessmentOk(1);
+ }
+ return super.saveOrUpdate(assessmentTask);
+ }
+
+ @Override
@Transactional
public boolean deleteLogic(@NotEmpty List<Long> ids) {
boolean ret = super.deleteLogic(ids);
diff --git a/src/main/java/org/springblade/scheduled/ScheduledTasks.java b/src/main/java/org/springblade/scheduled/ScheduledTasks.java
index b53cf97..9465ba4 100644
--- a/src/main/java/org/springblade/scheduled/ScheduledTasks.java
+++ b/src/main/java/org/springblade/scheduled/ScheduledTasks.java
@@ -29,8 +29,34 @@
private final IAssessmentTaskService assessmentTaskService;
private final IEvaluateTaskService evaluateTaskService;
+ /**
+ * 考核任务根据开始时间修改状态
+ */
+ @Scheduled(fixedRate = 1000*60*10)
+ public void assessmentDoSomething() {
+ QueryWrapper queryWrapper = new QueryWrapper();
+ queryWrapper.eq("is_assessment_ok", -1);
+ queryWrapper.ge("start_time", LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd 00:00:00")));
+ queryWrapper.le("start_time", LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd 23:59:59")));
+ List<AssessmentTaskEntity> assessmentTaskEntityList = assessmentTaskService.list(queryWrapper);
+ if (assessmentTaskEntityList.size() > 0) {
+ List<AssessmentTaskEntity> editList = assessmentTaskEntityList.stream()
+ .map(ate -> {
+ ate.setIsAssessmentOk(0); // 给每个Person对象的name属性设置新值
+ return ate; // 返回修改后的对象
+ })
+ .collect(Collectors.toList()); // 收集流中的对象到一个新的列表中
+
+ assessmentTaskService.updateBatchById(editList);
+
+ log.info("考核任务状态修改,修改数量为:" + assessmentTaskEntityList.size());
+ } else
+ log.info("考核任务状态修改,修改数量为:0");
+ }
+
/**
+ * 考核任务根据结束时间修改当前状态
* 第一个字段(秒):0
* 第二个字段(分):0
* 第三个字段(小时):0
--
Gitblit v1.9.3