From 3bf7e93280dfb00e6a1a9cee5a841ba5c5aeb863 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期二, 15 十月 2024 10:48:37 +0800
Subject: [PATCH] 考核积分刷新功能

---
 ycl-server/src/main/java/com/ycl/platform/mapper/CheckScoreMapper.java |    3 +++
 ycl-server/src/main/java/com/ycl/task/CheckScoreTask.java              |   18 ++++++++++++++++--
 ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml         |    5 +++++
 3 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/CheckScoreMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/CheckScoreMapper.java
index df111e8..61c4981 100644
--- a/ycl-server/src/main/java/com/ycl/platform/mapper/CheckScoreMapper.java
+++ b/ycl-server/src/main/java/com/ycl/platform/mapper/CheckScoreMapper.java
@@ -95,4 +95,7 @@
     CheckScore getLast(CheckScore checkScore);
 
     List<CheckScore> dashboard(DashboardQuery dashboardQuery);
+
+    List<CheckScore> selectToday(String day);
+
 }
diff --git a/ycl-server/src/main/java/com/ycl/task/CheckScoreTask.java b/ycl-server/src/main/java/com/ycl/task/CheckScoreTask.java
index 9b5c7a6..7cfeee1 100644
--- a/ycl-server/src/main/java/com/ycl/task/CheckScoreTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/CheckScoreTask.java
@@ -34,6 +34,8 @@
     @Autowired
     private CheckScoreMapper scoreMapper;
     @Autowired
+    private ICheckScoreService checkScoreService;
+    @Autowired
     private CheckIndexVideoMapper videoMapper;
     @Autowired
     private CheckIndexFaceMapper faceMapper;
@@ -52,7 +54,6 @@
             //鏌ヤ粖澶╃殑index鎸囨爣
             SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
             String day = dateFormat.format(new Date());
-
             //鍒涘缓score闆嗗悎鏂逛究鏈�鍚庢壒閲忓瓨鍌�
             List<CheckScore> scoreList = new ArrayList<>();
             //鏍规嵁鑰冩牳绫诲埆鍜岃�冩牳鏍囩锛屾煡涓嶅悓index琛紙鍖哄垎鐪佸巺鍖哄幙锛�
@@ -87,9 +88,22 @@
                     addToList(templateId, checkTemplate, examineTag, templateRuleList, scoreList, indexFace, CheckConstants.Rule_Category_Face);
                 }
             }
+
+            //鏌ュ嚭浠婂ぉ鐢熸垚score
+            List<CheckScore> todays = scoreMapper.selectToday(day);
+            //閬嶅巻scoreList闆嗗悎锛屽鏋滀粖澶╃敓鎴愯繃琛ュ厖id
+            for (CheckScore result : scoreList) {
+                for (CheckScore today : todays) {
+                    //鏍规嵁鑰冩牳鏍囩銆佽�冩牳绉嶇被銆侀儴闂╥d鏌ヨ鏄惁瀛樺湪浠婃棩鏁版嵁
+                    if(result.getExamineTag().equals(today.getExamineTag()) && result.getExamineCategory().equals(today.getExamineCategory()) && result.getDeptId().equals(today.getDeptId())){
+                        //琛ュ厖id锛屽悗缁牴鎹甶d saveOrUpdate
+                        result.setId(today.getId());
+                    }
+                }
+            }
             //鍌ㄥ瓨鍒嗘暟
             if (!CollectionUtils.isEmpty(scoreList)) {
-                scoreMapper.saveBatch(scoreList);
+                checkScoreService.saveOrUpdateBatch(scoreList);
             }
         }
     }
diff --git a/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
index 15812fe..59996de 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/CheckScoreMapper.xml
@@ -224,4 +224,9 @@
         GROUP BY s.dept_id
         ORDER BY s.create_time DESC
     </select>
+
+    <select id="selectToday" resultType="com.ycl.platform.domain.entity.CheckScore">
+        select * from t_check_score
+        where date(create_time) = #{day}
+    </select>
 </mapper>

--
Gitblit v1.8.0