From 7ee844962f050cfc548e5dd661a586a4993cbf89 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Thu, 25 Jun 2026 10:28:01 +0800
Subject: [PATCH] 优化问题

---
 src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java               |   25 ++-
 src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/DealDataTask.java             |   54 ++++---
 src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/SpecialCheckTaskDownload.java |  259 +++++++++++++++++++-----------------
 src/test/ReportTest.java                                                                      |   27 +++
 src/main/resources/mybatis/tr/TbSpecialCheckTaskLogMapper.xml                                 |    2 
 5 files changed, 205 insertions(+), 162 deletions(-)

diff --git a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
index bec60ee..036be06 100644
--- a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
+++ b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
@@ -740,21 +740,24 @@
                         }
 
                         //找排查点,然后查措施
-                        PreventRiskCheckUnit unit = preventRiskCheckUnitService.getUnitByBaseCheckPointId(hiddenDanger.getCheckPointId());
-                        if (null != unit){
-                            //查管控措施
-                            PreventRiskControlMeasure controlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(unit.getControlMeasureId());
-                            if (null != controlMeasureById){
-                                CJDangerInfo.setRiskMeasureId(controlMeasureById.getUuid());//管控措施uuid
-                                CJDangerInfo.setControlMeasures(controlMeasureById.getCheckContent());//控制措施 ,整改措施
+                        if (hiddenDanger.getCheckPointId() == null){
+                            CJDangerInfo.setRiskMeasureId( null);
+                        }else {
+                            PreventRiskCheckUnit unit = preventRiskCheckUnitService.getUnitByBaseCheckPointId(hiddenDanger.getCheckPointId());
+                            if (null != unit){
+                                //查管控措施
+                                PreventRiskControlMeasure controlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(unit.getControlMeasureId());
+                                if (null != controlMeasureById){
+                                    CJDangerInfo.setRiskMeasureId(controlMeasureById.getUuid());//管控措施uuid
+                                    CJDangerInfo.setControlMeasures(controlMeasureById.getCheckContent());//控制措施 ,整改措施
+                                }else {
+                                    CJDangerInfo.setRiskMeasureId(null);
+                                }
+
                             }else {
                                 CJDangerInfo.setRiskMeasureId(null);
                             }
-
-                        }else {
-                            CJDangerInfo.setRiskMeasureId(null);
                         }
-
                     }else {
                         CJDangerInfo.setCheckRecordId(null);
                         CJDangerInfo.setRiskMeasureId(null);
diff --git a/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/DealDataTask.java b/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/DealDataTask.java
index 267f402..c7e7a7c 100644
--- a/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/DealDataTask.java
+++ b/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/DealDataTask.java
@@ -1,5 +1,8 @@
 package com.ruoyi.project.tr.specialCheck.scheduleLogTask;
 
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckItem;
+import com.ruoyi.project.tr.specialCheck.domin.TbSpecialCheckItemLog;
 import com.ruoyi.project.tr.specialCheck.domin.TbSpecialCheckTaskLog;
 import com.ruoyi.project.tr.specialCheck.mapper.TbBaseCheckItemMapper;
 import com.ruoyi.project.tr.specialCheck.mapper.TbSpecialCheckItemLogMapper;
@@ -18,7 +21,7 @@
      * 每年拉取完检查项需要生成对应的专项任务数据
      */
 
-    public static final String  TASK_ID = "a8de03f0-4c3e-43fe-a139-0e4ed34edd35";
+    public static final String  TASK_ID = "47da41f5-c747-4bd3-b4ab-d4d496e31e93";
 
 
     @Autowired
@@ -40,8 +43,9 @@
                 tbSpecialCheckTaskLog.setIndexId(null);
                 tbSpecialCheckTaskLog.setId(UUID.randomUUID().toString());
                 tbSpecialCheckTaskLog.setReportStatus((byte) 1);
+                tbSpecialCheckTaskLog.setZhunReportStatus((byte) 1);
                 //1为企业自查 2是市级及以下
-                tbSpecialCheckTaskLog.setCheckType("2");
+                tbSpecialCheckTaskLog.setCheckType(tbSpecialCheckTaskLog.getCheckType());
                 tbSpecialCheckTaskLog.setCreateDate(LocalDateTime.now());
                 tbSpecialCheckTaskLog.setUpdateDate(LocalDateTime.now());
                 taskSpecialLogMapper.save(tbSpecialCheckTaskLog);
@@ -50,28 +54,30 @@
         }
 
 
-//        //任务item
-//
-//        List<TbBaseCheckItem> tbBaseCheckItems = baseCheckItemMapper.listBaseCheckItemBytaskId(TASK_ID);
-//        if (ObjectUtils.isNotEmpty(tbBaseCheckItems)){
-//            for (TbBaseCheckItem tbBaseCheckItem : tbBaseCheckItems) {
-//                TbSpecialCheckItemLog tbSpecialCheckItemLog = new TbSpecialCheckItemLog();
-//                tbSpecialCheckItemLog.setId(UUID.randomUUID().toString());
-//                tbSpecialCheckItemLog.setCompanyCode("652310082");
-//                tbSpecialCheckItemLog.setTaskId(TASK_ID);
-//                tbSpecialCheckItemLog.setCheckItemId(tbBaseCheckItem.getId());
-//                tbSpecialCheckItemLog.setCheckName(tbBaseCheckItem.getCheckName());
-//                tbSpecialCheckItemLog.setCheckContent(tbBaseCheckItem.getCheckContent());
-//                tbSpecialCheckItemLog.setCheckWay(tbBaseCheckItem.getCheckWay());
-//                tbSpecialCheckItemLog.setCheckBasis(tbBaseCheckItem.getCheckBasis());
-//                tbSpecialCheckItemLog.setApplicablePlace(tbBaseCheckItem.getApplicablePlace());
-//                tbSpecialCheckItemLog.setCreateBy("李康");
-//                tbSpecialCheckItemLog.setCreateDate(tbBaseCheckItem.getCreateDate());
-//                tbSpecialCheckItemLog.setUpdateBy("李康");
-//                tbSpecialCheckItemLog.setUpdateDate(tbBaseCheckItem.getUpdateDate());
-//                itemLogMapper.save(tbSpecialCheckItemLog);
-//            }
-//        }
+        //任务item
+
+        List<TbBaseCheckItem> tbBaseCheckItems = baseCheckItemMapper.listBaseCheckItemBytaskId(TASK_ID);
+        if (ObjectUtils.isNotEmpty(tbBaseCheckItems)){
+            for (TbBaseCheckItem tbBaseCheckItem : tbBaseCheckItems) {
+                TbSpecialCheckItemLog tbSpecialCheckItemLog = new TbSpecialCheckItemLog();
+                tbSpecialCheckItemLog.setId(UUID.randomUUID().toString());
+                tbSpecialCheckItemLog.setCompanyCode("652310082");
+                tbSpecialCheckItemLog.setTaskId(TASK_ID);
+                tbSpecialCheckItemLog.setCheckItemId(tbBaseCheckItem.getId());
+                tbSpecialCheckItemLog.setCheckName(tbBaseCheckItem.getCheckName());
+                tbSpecialCheckItemLog.setCheckContent(tbBaseCheckItem.getCheckContent());
+                tbSpecialCheckItemLog.setCheckWay(tbBaseCheckItem.getCheckWay());
+                tbSpecialCheckItemLog.setCheckBasis(tbBaseCheckItem.getCheckBasis());
+                tbSpecialCheckItemLog.setApplicablePlace(tbBaseCheckItem.getApplicablePlace());
+                tbSpecialCheckItemLog.setCreateBy("李康");
+                tbSpecialCheckItemLog.setCreateDate(tbBaseCheckItem.getCreateDate());
+                tbSpecialCheckItemLog.setUpdateBy("李康");
+                tbSpecialCheckItemLog.setDeleted((byte) 0);
+                tbSpecialCheckItemLog.setReportStatus((byte)1);
+                tbSpecialCheckItemLog.setUpdateDate(tbBaseCheckItem.getUpdateDate());
+                itemLogMapper.save(tbSpecialCheckItemLog);
+            }
+        }
 
 
 
diff --git a/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/SpecialCheckTaskDownload.java b/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/SpecialCheckTaskDownload.java
index c6aba98..aae91e9 100644
--- a/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/SpecialCheckTaskDownload.java
+++ b/src/main/java/com/ruoyi/project/tr/specialCheck/scheduleLogTask/SpecialCheckTaskDownload.java
@@ -31,6 +31,8 @@
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 
+import static com.ruoyi.common.utils.Threads.sleep;
+
 @Component
 public class SpecialCheckTaskDownload {
 
@@ -78,6 +80,7 @@
         }
         return sr;
     }
+
     public static String decrypt(String encryptedText, byte[] key, byte[] iv) {
         String sr;
         try {
@@ -96,7 +99,7 @@
     }
 
 
-    @Transactional
+  //  @Transactional
 //    @Scheduled(cron = "0 0 23 * * ?")    //每天晚上23点执行一次0 0 22,23 * * ?
 //    @Scheduled(cron = "0 0 22,23 * * ?")    //每天晚上22、23点执行一次
 //    @Scheduled(cron = "0 0/1 * * * ? ")    // 分钟
@@ -114,7 +117,7 @@
 
         Date date = new Date();
         //格式化时间,作为token的时间戳
-        SimpleDateFormat tokenDate= new SimpleDateFormat("yyyyMMddHHmmssSSS");
+        SimpleDateFormat tokenDate = new SimpleDateFormat("yyyyMMddHHmmssSSS");
         String formatDate = tokenDate.format(date);
 
         logger.info("【token时间】" + formatDate);
@@ -128,53 +131,56 @@
 
         //String taskId = "84766708-9b18-4133-8acf-08aba67792c7";
 
-        String taskId = "a8de03f0-4c3e-43fe-a139-0e4ed34edd35";
+        String taskId = "47da41f5-c747-4bd3-b4ab-d4d496e31e93";
+
+
+        int count = 0;
         /**
          * 1
          * */
-//        logger.info("【####】拉取专项任务数据开始...");
+        logger.info("【####】拉取专项任务数据开始...");
         TbCheckConfig specialCheckConfig = configMapper.getSpecialCheckConfig();
-        if (specialCheckConfig.getStatus() == 2){
+        if (specialCheckConfig.getStatus() == 2) {
 
             StringBuffer specialCheckBuffer = null;
 
             //上报数据
-             try {
-             URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckTask");
-             //得到连接对象
-             con = (HttpURLConnection) url.openConnection();
-             //设置请求类型
-             con.setRequestMethod("POST");
-             //允许写出
-             con.setDoOutput(true);
-             //允许读入
-             con.setDoInput(true);
-             //不使用缓存
-             con.setUseCaches(false);
-             con.setInstanceFollowRedirects(true);
-             //设置请求头
-             con.setRequestProperty("X-Access-Token",token+formatDate.toString());
-             //设置Content-Type,此处根据实际情况确定
-             con.setRequestProperty("Content-Type", "application/json;charset=utf8");
+            try {
+                URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckTask");
+                //得到连接对象
+                con = (HttpURLConnection) url.openConnection();
+                //设置请求类型
+                con.setRequestMethod("POST");
+                //允许写出
+                con.setDoOutput(true);
+                //允许读入
+                con.setDoInput(true);
+                //不使用缓存
+                con.setUseCaches(false);
+                con.setInstanceFollowRedirects(true);
+                //设置请求头
+                con.setRequestProperty("X-Access-Token", token + formatDate.toString());
+                //设置Content-Type,此处根据实际情况确定
+                con.setRequestProperty("Content-Type", "application/json;charset=utf8");
 
-             OutputStream os = con.getOutputStream();
+                OutputStream os = con.getOutputStream();
 
-                 System.out.println("token:"+token+formatDate.toString());
+                System.out.println("token:" + token + formatDate.toString());
 
-            //本段日志,测试成功后,可注释掉
-            if (responseCode == HttpURLConnection.HTTP_OK) {
-                //得到响应流
-                InputStream inputStream = con.getInputStream();
-                //将响应流转换成字符串
-                specialCheckBuffer = new StringBuffer();
-                String line;
-                buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
-                while ((line = buffer.readLine()) != null) {
-                    specialCheckBuffer.append(line);
-                }
+                //本段日志,测试成功后,可注释掉
+                if (responseCode == HttpURLConnection.HTTP_OK) {
+                    //得到响应流
+                    InputStream inputStream = con.getInputStream();
+                    //将响应流转换成字符串
+                    specialCheckBuffer = new StringBuffer();
+                    String line;
+                    buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
+                    while ((line = buffer.readLine()) != null) {
+                        specialCheckBuffer.append(line);
+                    }
 //                    logger.info("result:" + unitResultBuffer.toString());
-                System.out.println("result:" + specialCheckBuffer.toString());
-            }
+                    System.out.println("result:" + specialCheckBuffer.toString());
+                }
 
             } catch (Exception e) {
                 e.printStackTrace();
@@ -184,7 +190,7 @@
             TbBaseCheckTaskDownloadBO checkTaskDownloadDTO = JSONObject.parseObject(specialCheckBuffer.toString(), TbBaseCheckTaskDownloadBO.class);
             //接收返回值,保存返回值
             List<TbBaseCheckTask> tbBaseCheckTasks = JSONArray.parseArray(checkTaskDownloadDTO.getData(), TbBaseCheckTask.class);
-            if (tbBaseCheckTasks.size() > 0){
+            if (tbBaseCheckTasks.size() > 0) {
                 for (TbBaseCheckTask tbBaseCheckTask : tbBaseCheckTasks) {
                     LocalDateTime taskStartTime = tbBaseCheckTask.getTaskStartTime();
                     LocalDate localDate = taskStartTime.toLocalDate();
@@ -202,7 +208,7 @@
 
             logger.info("【专项检查任务】-读取任务结果:" + checkTaskDownloadDTO.getCode());
             System.out.println("【专项检查任务】-读取任务完成");
-        }else {
+        } else {
             System.out.println("【专项检查任务】- 不读取任务");
         }
 
@@ -210,7 +216,7 @@
          * 2
          * */
         logger.info("【####】拉取检查项数据开始...");
-        if (specialCheckConfig.getStatus() == 2){
+        if (specialCheckConfig.getStatus() == 2) {
 
             StringBuffer specialCheckBuffer = null;
 
@@ -225,8 +231,8 @@
             System.out.println("请求参数:" + JSONObject.toJSONString(itemDownloadRespDTO));
 
             JSONObject itemDownloadRespDTOJson = new JSONObject();
-            itemDownloadRespDTOJson.put("taskId",taskId);
-            itemDownloadRespDTOJson.put("page",page);
+            itemDownloadRespDTOJson.put("taskId", taskId);
+            itemDownloadRespDTOJson.put("page", page);
             System.out.println("【【原始数据2】】" + JSONObject.toJSONString(itemDownloadRespDTOJson));
             String encrypted = encrypt(JSONObject.toJSONString(itemDownloadRespDTOJson), key.getBytes(), iv.getBytes());
             System.out.println("【【加密数据2】】" + encrypted);
@@ -248,14 +254,14 @@
                 con.setUseCaches(false);
                 con.setInstanceFollowRedirects(true);
                 //设置请求头
-                con.setRequestProperty("X-Access-Token",token+formatDate.toString());
+                con.setRequestProperty("X-Access-Token", token + formatDate.toString());
                 //设置Content-Type,此处根据实际情况确定
                 con.setRequestProperty("Content-Type", "application/json;charset=utf8");
 
                 OutputStream os = con.getOutputStream();
 //                Map paraMap = new HashMap();
 //                paraMap.put("data", encrypted); /**封装数据*/
-               // System.out.println("【【加密请求体】】" +  JSONArray.toJSON(paraMap).toString());
+                // System.out.println("【【加密请求体】】" +  JSONArray.toJSON(paraMap).toString());
                 //组装入参,设置请求体
                 os.write(JSON.toJSONString(itemDownloadRespDTOJson).getBytes());
 
@@ -282,25 +288,25 @@
             ItemDownloadRespBO itemDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ItemDownloadRespBO.class);
             //接收返回值,保存返回值
             String data = itemDownloadRespBO.getData();
-            if (ObjectUtils.isNotEmpty(data)){
+            if (ObjectUtils.isNotEmpty(data)) {
                 JSONObject jsonObject = JSON.parseObject(data);
                 String data1 = jsonObject.get("data").toString();
                 List<TbBaseCheckItem> tbBaseCheckItems = JSONObject.parseArray(data1, TbBaseCheckItem.class);
-                    if (ObjectUtils.isNotEmpty(tbBaseCheckItems)){
-                        for (TbBaseCheckItem item : tbBaseCheckItems) {
-                            item.setStatus(1);
-                            item.setId(item.getCheckItemId());
-                            int insert = itemTbRepository.insertBatch(item);
-                        }
-
+                if (ObjectUtils.isNotEmpty(tbBaseCheckItems)) {
+                    for (TbBaseCheckItem item : tbBaseCheckItems) {
+                        item.setStatus(1);
+                        item.setId(item.getCheckItemId());
+                        int insert = itemTbRepository.insertBatch(item);
                     }
+                    count = tbBaseCheckItems.size();
+                }
             }
 
             taskTbRepository.updateStatusById(baseCheckTask.getTaskId());
 
             logger.info("【专项任务检查项】-读取检查项结果:" + itemDownloadRespBO.getCode());
             System.out.println("【专项任务检查项】-读取检查项完成");
-        }else {
+        } else {
             System.out.println("【专项任务检查项】- 不读取检查项");
         }
 
@@ -308,92 +314,105 @@
          * 3
          * */
         logger.info("【####】拉取评分细则开始...");
-        if (specialCheckConfig.getStatus() == 2){
+        if (specialCheckConfig.getStatus() == 2) {
+            if (count <= 0) {
+                logger.info("【拉取评分细则开始】-无检查项数据");
+                return;
+            }
+            for (int i = 0; i < count + 20; i++) {
 
-            StringBuffer specialCheckBuffer = null;
 
-            ScoreDownloadRespDTO scoreDownloadRespDTO = new ScoreDownloadRespDTO();
-            TbBaseCheckItem baseItemByStatus = itemTbRepository.getBaseItemByStatus(date);
-            Page page = new Page();
-            page.setCurrent(String.valueOf(1));
-            page.setSize(String.valueOf(1000));
+                StringBuffer specialCheckBuffer = null;
 
-            scoreDownloadRespDTO.setTaskId(baseItemByStatus.getTaskId());
-            scoreDownloadRespDTO.setCheckItemId(baseItemByStatus.getId());
-            scoreDownloadRespDTO.setPage(page);
-            System.out.println("【【加密前请求体】】" +JSON.toJSONString(scoreDownloadRespDTO));
-            //加密请求数据
-            String AESReportUnitDate = encrypt(JSON.toJSONString(scoreDownloadRespDTO), key.getBytes(), iv.getBytes());
-            System.out.println("【【加密请求体】】" +AESReportUnitDate);
-            String decrypt = decrypt(AESReportUnitDate, key.getBytes(), iv.getBytes());
-            System.out.println("【【解密请求体】】" +decrypt);
-            //上报数据
-            try {
-                URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckScore");
-                //得到连接对象
-                con = (HttpURLConnection) url.openConnection();
-                //设置请求类型
-                con.setRequestMethod("POST");
-                //允许写出
-                con.setDoOutput(true);
-                //允许读入
-                con.setDoInput(true);
-                //不使用缓存
-                con.setUseCaches(false);
-                con.setInstanceFollowRedirects(true);
-                //设置请求头
-                con.setRequestProperty("X-Access-Token",token+formatDate.toString());
-                //设置Content-Type,此处根据实际情况确定
-                con.setRequestProperty("Content-Type", "application/json;charset=utf8");
 
-                OutputStream os = con.getOutputStream();
+                TbBaseCheckItem baseItemByStatus = itemTbRepository.getBaseItemByStatus(date);
+
+                ScoreDownloadRespDTO scoreDownloadRespDTO = new ScoreDownloadRespDTO();
+
+                Page page = new Page();
+                page.setCurrent(String.valueOf(1));
+                page.setSize(String.valueOf(1000));
+
+                scoreDownloadRespDTO.setTaskId(baseItemByStatus.getTaskId());
+                scoreDownloadRespDTO.setCheckItemId(baseItemByStatus.getId());
+                scoreDownloadRespDTO.setPage(page);
+                System.out.println("【【加密前请求体】】" + JSON.toJSONString(scoreDownloadRespDTO));
+                //加密请求数据
+                String AESReportUnitDate = encrypt(JSON.toJSONString(scoreDownloadRespDTO), key.getBytes(), iv.getBytes());
+                System.out.println("【【加密请求体】】" + AESReportUnitDate);
+                String decrypt = decrypt(AESReportUnitDate, key.getBytes(), iv.getBytes());
+                System.out.println("【【解密请求体】】" + decrypt);
+                //上报数据
+                try {
+                    URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckScore");
+                    //得到连接对象
+                    con = (HttpURLConnection) url.openConnection();
+                    //设置请求类型
+                    con.setRequestMethod("POST");
+                    //允许写出
+                    con.setDoOutput(true);
+                    //允许读入
+                    con.setDoInput(true);
+                    //不使用缓存
+                    con.setUseCaches(false);
+                    con.setInstanceFollowRedirects(true);
+                    //设置请求头
+                    con.setRequestProperty("X-Access-Token", token + formatDate.toString());
+                    //设置Content-Type,此处根据实际情况确定
+                    con.setRequestProperty("Content-Type", "application/json;charset=utf8");
+
+                    OutputStream os = con.getOutputStream();
 //                Map paraMap = new HashMap();
 //                paraMap.put("data", AESReportUnitDate); /**封装数据*/
 //                System.out.println("【【加密请求体】】" +  JSONArray.toJSON(paraMap).toString());
-                //组装入参,设置请求体
-                os.write(JSON.toJSONString(scoreDownloadRespDTO).getBytes());
+                    //组装入参,设置请求体
+                    os.write(JSON.toJSONString(scoreDownloadRespDTO).getBytes());
 
-                //本段日志,测试成功后,可注释掉
-                if (responseCode == HttpURLConnection.HTTP_OK) {
-                    //得到响应流
-                    InputStream inputStream = con.getInputStream();
-                    //将响应流转换成字符串
-                    specialCheckBuffer = new StringBuffer();
-                    String line;
-                    buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
-                    while ((line = buffer.readLine()) != null) {
-                        specialCheckBuffer.append(line);
-                    }
+                    //本段日志,测试成功后,可注释掉
+                    if (responseCode == HttpURLConnection.HTTP_OK) {
+                        //得到响应流
+                        InputStream inputStream = con.getInputStream();
+                        //将响应流转换成字符串
+                        specialCheckBuffer = new StringBuffer();
+                        String line;
+                        buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
+                        while ((line = buffer.readLine()) != null) {
+                            specialCheckBuffer.append(line);
+                        }
 //                    logger.info("result:" + unitResultBuffer.toString());
-                    System.out.println("result:" + specialCheckBuffer.toString());
+                        System.out.println("result:" + specialCheckBuffer.toString());
+                    }
+
+                } catch (Exception e) {
+                    e.printStackTrace();
                 }
 
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
+                //接收返回值,保存返回值
+                ScoreDownloadRespBO scoreDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ScoreDownloadRespBO.class);
 
-            //接收返回值,保存返回值
-            ScoreDownloadRespBO scoreDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ScoreDownloadRespBO.class);
-
-            String data = scoreDownloadRespBO.getData();
-            if (ObjectUtils.isNotEmpty(data)){
-                JSONObject jsonObject = JSON.parseObject(data);
-                String data1 = jsonObject.get("data").toString();
-                List<TbBaseCheckScore> tbBaseCheckScores = JSONObject.parseArray(data1, TbBaseCheckScore.class);
-                    if (ObjectUtils.isNotEmpty(tbBaseCheckScores)){
+                String data = scoreDownloadRespBO.getData();
+                if (ObjectUtils.isNotEmpty(data)) {
+                    JSONObject jsonObject = JSON.parseObject(data);
+                    String data1 = jsonObject.get("data").toString();
+                    List<TbBaseCheckScore> tbBaseCheckScores = JSONObject.parseArray(data1, TbBaseCheckScore.class);
+                    if (ObjectUtils.isNotEmpty(tbBaseCheckScores)) {
                         for (TbBaseCheckScore item : tbBaseCheckScores) {
                             item.setId(item.getScoreId());
                             int insert = scoreTbRepository.save(item);
                         }
 
                     }
+
+                }
+
+                itemTbRepository.updateStatusById(baseItemByStatus.getId());
+
+                logger.info("【评分细则】-读取结果:" + scoreDownloadRespBO.getCode());
+                System.out.println("【评分细则】-读取完成");
+
+                sleep(6000);
             }
-
-            itemTbRepository.updateStatusById(baseItemByStatus.getId());
-
-            logger.info("【评分细则】-读取结果:" + scoreDownloadRespBO.getCode());
-            System.out.println("【评分细则】-读取完成");
-        }else {
+        } else {
             System.out.println("【评分细则】- 不读取");
         }
 
diff --git a/src/main/resources/mybatis/tr/TbSpecialCheckTaskLogMapper.xml b/src/main/resources/mybatis/tr/TbSpecialCheckTaskLogMapper.xml
index f6efa44..27c8106 100644
--- a/src/main/resources/mybatis/tr/TbSpecialCheckTaskLogMapper.xml
+++ b/src/main/resources/mybatis/tr/TbSpecialCheckTaskLogMapper.xml
@@ -163,7 +163,7 @@
 
     <select id="listTestReportTaskTest" resultMap="BaseResultMap">
         select * from tb_special_check_task_log
-        where deleted = 0  and create_date &gt;= '2024-01-01 00:00:00' and create_date &lt;= '2024-06-16 23:59:59'
+        where deleted = 0  and create_date &gt;= '2025-01-01 00:00:00' and create_date &lt;= '2025-08-16 23:59:59'
     </select>
 
 
diff --git a/src/test/ReportTest.java b/src/test/ReportTest.java
index 3aeeb31..5f1739a 100644
--- a/src/test/ReportTest.java
+++ b/src/test/ReportTest.java
@@ -1,9 +1,10 @@
-import com.ruoyi.doublePrevention.scheduls.ExecCJReportDateSchedule;
+import com.ruoyi.RuoYiApplication;
+import com.ruoyi.project.tr.specialCheck.scheduleLogTask.DealDataTask;
+import com.ruoyi.project.tr.specialCheck.scheduleLogTask.SpecialCheckTaskDownload;
 import lombok.extern.slf4j.Slf4j;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.ActiveProfiles;
 import org.springframework.test.context.junit4.SpringRunner;
@@ -11,16 +12,30 @@
 import java.io.UnsupportedEncodingException;
 
 @RunWith(SpringRunner.class)
-@SpringBootTest(classes = SpringBootApplication.class)
-//@ActiveProfiles("dev")
+@SpringBootTest(classes = RuoYiApplication.class)
+@ActiveProfiles("dev")
 @Slf4j
 public class ReportTest {
     @Autowired
-    ExecCJReportDateSchedule execCJReportDateSchedule;
+    SpecialCheckTaskDownload specialCheckTaskDownload;
 
+    @Autowired
+    private DealDataTask dealDataTask;
+
+    //第一步每年拉取数据处理
     @Test
     public void testPush() throws UnsupportedEncodingException {
-        execCJReportDateSchedule.execReportDateSchedule();
+
+        specialCheckTaskDownload.execReportDateSchedule();
+
+    }
+
+    //第二部处理拉取数据
+    @Test
+    public void testPushV2() throws UnsupportedEncodingException {
+
+        dealDataTask.dealData();
+
     }
 
 }

--
Gitblit v1.9.2