From cecd7580b5e629173bdb5b258f2676d16d580f72 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 30 七月 2026 15:49:55 +0800
Subject: [PATCH] fix: 安全培训考核签到修改

---
 src/main/java/com/ruoyi/safe/service/impl/SafeTrainingServiceImpl.java |   33 +++++++++++++--------------------
 1 files changed, 13 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/ruoyi/safe/service/impl/SafeTrainingServiceImpl.java b/src/main/java/com/ruoyi/safe/service/impl/SafeTrainingServiceImpl.java
index 05f1ae7..0dd877f 100644
--- a/src/main/java/com/ruoyi/safe/service/impl/SafeTrainingServiceImpl.java
+++ b/src/main/java/com/ruoyi/safe/service/impl/SafeTrainingServiceImpl.java
@@ -5,37 +5,29 @@
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.deepoove.poi.XWPFTemplate;
 import com.deepoove.poi.config.Configure;
 import com.ruoyi.common.utils.HackLoopTableRenderPolicy;
-import com.ruoyi.production.pojo.ProductOrder;
-import com.ruoyi.production.pojo.ProductWorkOrder;
-import com.ruoyi.project.system.domain.SysNotice;
 import com.ruoyi.safe.dto.SafeTrainingDetailsDto;
 import com.ruoyi.safe.dto.SafeTrainingDto;
 import com.ruoyi.safe.mapper.SafeTrainingDetailsMapper;
 import com.ruoyi.safe.mapper.SafeTrainingFileMapper;
-import com.ruoyi.safe.pojo.SafeTraining;
 import com.ruoyi.safe.mapper.SafeTrainingMapper;
+import com.ruoyi.safe.pojo.SafeTraining;
 import com.ruoyi.safe.pojo.SafeTrainingDetails;
 import com.ruoyi.safe.pojo.SafeTrainingFile;
 import com.ruoyi.safe.service.SafeTrainingService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
-import javax.servlet.http.HttpServletResponse;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.URLEncoder;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
-import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 
@@ -48,19 +40,18 @@
  * @since 2026-01-29 10:54:06
  */
 @Service
+@RequiredArgsConstructor
 public class SafeTrainingServiceImpl extends ServiceImpl<SafeTrainingMapper, SafeTraining> implements SafeTrainingService {
 
-    @Autowired
-    private SafeTrainingMapper safeTrainingMapper;
+    private final SafeTrainingMapper safeTrainingMapper;
 
-    @Autowired
-    private SafeTrainingFileMapper safeTrainingFileMapper;
+    private final SafeTrainingFileMapper safeTrainingFileMapper;
 
-    @Autowired
-    private SafeTrainingDetailsMapper safeTrainingDetailsMapper;
+    private final SafeTrainingDetailsMapper safeTrainingDetailsMapper;
 
     @Override
     public IPage<SafeTrainingDto> pageSafeTraining(Page page, SafeTrainingDto safeTrainingDto) {
+        safeTrainingMapper.refreshTrainingState();
         return safeTrainingMapper.pageSafeTraining(page, safeTrainingDto);
     }
 
@@ -94,10 +85,11 @@
         String trainingDate = safeTraining.getTrainingDate().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
         LocalDateTime openingTime = LocalDateTime.parse((trainingDate + safeTraining.getOpeningTime()), DateTimeFormatter.ofPattern("yyyy-MM-ddHH:mm:ss"));
         LocalDateTime endTime = LocalDateTime.parse((trainingDate + safeTraining.getEndTime()), DateTimeFormatter.ofPattern("yyyy-MM-ddHH:mm:ss"));
-        if (LocalDateTime.now().isBefore(openingTime)) {
+        LocalDateTime now = LocalDateTime.now();
+        if (now.isBefore(openingTime)) {
             //鏈紑濮�
             safeTraining.setState(0);
-        } else if (LocalDateTime.now().isAfter(endTime)) {
+        } else if (!now.isBefore(endTime)) {
             //宸茬粨鏉�
             safeTraining.setState(2);
         } else {
@@ -111,6 +103,7 @@
 
     @Override
     public SafeTrainingDto getSafeTraining(Long id) {
+        safeTrainingMapper.refreshTrainingState();
         //涓昏〃鏁版嵁
         SafeTrainingDto safeTrainingDto = safeTrainingMapper.getSafeTraining(id);
         //闄勪欢

--
Gitblit v1.9.3