From ea6d7a1c57974f9c6209e5b8ad291985c315e9c1 Mon Sep 17 00:00:00 2001
From: 16639036659 <577530412@qq.com>
Date: 星期四, 13 十月 2022 10:07:47 +0800
Subject: [PATCH] 调度存在BUG,但是已经跑通

---
 src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/controller/HiddenDangerCheckJobController.java |    2 +
 src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/util/AbstractQuartzJob.java                    |   48 +++++++++++++++++++-----
 src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java                             |   19 +++++----
 src/main/java/com/ruoyi/doublePrevention/service/RiskService.java                                      |    2 
 4 files changed, 52 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/ruoyi/doublePrevention/service/RiskService.java b/src/main/java/com/ruoyi/doublePrevention/service/RiskService.java
index affcaf7..54df987 100644
--- a/src/main/java/com/ruoyi/doublePrevention/service/RiskService.java
+++ b/src/main/java/com/ruoyi/doublePrevention/service/RiskService.java
@@ -122,7 +122,7 @@
      * 定时生成排查任务记录时,
      * 插入检查点附属表
      */
-    void insertCheckAndMeasure(Long id, HiddenDangerCheckPoint hdcp);
+    int insertCheckAndMeasure(Long id, HiddenDangerCheckPoint hdcp);
     /**
      * 删除定时核查任务
      * */
diff --git a/src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java b/src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java
index 60d35d7..7d9aa9d 100644
--- a/src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java
+++ b/src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java
@@ -974,8 +974,8 @@
      * 插入检查点附属表
      */
     @Override
-    public void insertCheckAndMeasure(Long id, HiddenDangerCheckPoint hdcp) {
-
+    public int insertCheckAndMeasure(Long id, HiddenDangerCheckPoint hdcp) {
+        System.out.println("进入核查点保存方法");
         PreventRiskDangerCheckAndMeasure checkAndMeasure = new PreventRiskDangerCheckAndMeasure();
 
         //根据检查点信息,查询对应管控措施
@@ -983,23 +983,26 @@
         if (checkUnit == null){
             throw new RuntimeException("基础检查点不存在");
         }
-
+        System.out.println("通过一次检验");
         PreventRiskControlMeasure controlMeasure = riskControlMeasureService.getPreventRiskControlMeasureById(checkUnit.getControlMeasureId());
         if (controlMeasure == null){
             throw new RuntimeException("管控措施已经被删除");
         }
-
+        System.out.println("通过二次检验");
         //封装数据
         checkAndMeasure.setCheckId(hdcp.getCheckId());
         checkAndMeasure.setDangerCheckPointId(id);
         checkAndMeasure.setBaseCheckPointId(hdcp.getCheckPointId());
         checkAndMeasure.setControlMeasureId(controlMeasure.getId());
         checkAndMeasure.setCheckContent(controlMeasure.getCheckContent());
-        checkAndMeasure.setCheckResult(null);
-
+        checkAndMeasure.setCheckResult((byte) 4);
+        System.out.println("数据封装完成");
         //写入核查任务检查点与管控措施信息
-        preventRiskDangerCheckAndMeasureService.insertCheckAndMeasure(checkAndMeasure);
-
+        int result = preventRiskDangerCheckAndMeasureService.insertCheckAndMeasure(checkAndMeasure);
+        if (result <1){
+            return StatusEnum.EXEC_FAIL.getCode();
+        }
+        return StatusEnum.EXEC_SUCCESS.getCode();
     }
     /**
      * todo-2022 填报时的操作
diff --git a/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/controller/HiddenDangerCheckJobController.java b/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/controller/HiddenDangerCheckJobController.java
index 1bec942..22d5747 100644
--- a/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/controller/HiddenDangerCheckJobController.java
+++ b/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/controller/HiddenDangerCheckJobController.java
@@ -285,6 +285,8 @@
             cronExpression = secondStr + " " + minuteStr + " " + hourStr + " " + dayStr + " " + initMonth + "/" + typeCycleNum + " ? *";
         } else if (hiddenDangerCheckJob.getTroubleshootTypeCycleType() == 5) {//年
             cronExpression = secondStr + " " + minuteStr + " " + hourStr + " " + dayStr + " " + monthStr + " ? " + yearStr + "/" + "" + typeCycleNum;
+        } else if (hiddenDangerCheckJob.getTroubleshootTypeCycleType() == 6) {// todo - 2022 测试 ,分钟
+            cronExpression = "* 0/5 * * * ?";
         }
         return cronExpression;
     }
diff --git a/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/util/AbstractQuartzJob.java b/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/util/AbstractQuartzJob.java
index 29c0527..08d8cb5 100644
--- a/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/util/AbstractQuartzJob.java
+++ b/src/main/java/com/ruoyi/project/tr/HiddenDangerCheckJob/util/AbstractQuartzJob.java
@@ -54,10 +54,9 @@
 
     JpushService jpushService;
 
-    @Autowired
-    private RiskService riskService;
-    @Autowired
-    private IRiskListService iRiskListService;
+    RiskService riskService;
+
+    IRiskListService iRiskListService;
 
 
     /**
@@ -109,7 +108,11 @@
         jobLog.setInvokeTarget(job.getInvokeTarget());
         jobLog.setStartTime(startTime);
         jobLog.setEndTime(new Date());
-        long runMs = jobLog.getEndTime().getTime() - jobLog.getStartTime().getTime();
+
+        System.out.println(startTime);
+        System.out.println(jobLog.getEndTime());
+
+        long runMs = jobLog.getEndTime().getTime() - jobLog.getStartTime().getTime(); // todo -2022 检查此处异常来源
         jobLog.setJobMessage(jobLog.getJobName() + " 总共耗时:" + runMs + "毫秒");
         if (e != null) {
             jobLog.setStatus(Constants.FAIL);
@@ -163,9 +166,9 @@
                 if ("1".equals(job.getCheckType())) {
                     hdc.setRiskId(job.getRiskId() != null ? Long.valueOf(job.getRiskId()) : -1);//风险单元ID
 
-                    // todo-2022 ,基础排除清单名称-》改用基础清单表中信息
-                    RiskList infoByRiskId = iRiskListService.getInfoByRiskId(job.getRiskId());
-                    hdc.setRiskName(infoByRiskId.getRiskListName());//风险单元名称
+                    // todo-2022 , 基础排除清单名称-》改用基础清单表中信息    “需要改动”(现在的情况是,清单调整后,依然使用第一次新建时读取的job的名字)
+//                    RiskList infoByRiskId = iRiskListService.getInfoByRiskId(job.getRiskId());
+                    hdc.setRiskName(job.getRiskName());//风险单元名称
 
                     hdc.setDangerPlaceId(job.getRiskPlaceId());//风险单元地点ID
                     hdc.setDangerPlaceName(job.getRiskPlaceName());//风险单元地点名称
@@ -185,12 +188,15 @@
                     hdc.setCompanyId(job.getCompanyId());
                     insertHiddenDangerCheckPoint(hdc);
 
+                    System.out.println("【-】开始调用方法,处理任务附属表");
                     // todo-2022 插入 任务附属表  写到此处
                      hdc.getCheckId();
-                    int result = riskService.insertDangerCheckLog(hdc.getCheckId(), hdc);
+                    int result = SpringUtils.getBean(RiskService.class).insertDangerCheckLog(hdc.getCheckId(), hdc);
+//                    int result = riskService.insertDangerCheckLog(hdc.getCheckId(), hdc);
                     if (result < 1){
                         throw new RuntimeException("定时任务生产失败");
                     }
+                    System.out.println("【-】开始调用方法,任务附属表处理完成");
 
                 } else if ("2".equals(job.getCheckType())) {
                     String[] riskIdArray = job.getRiskId().split(",");
@@ -220,6 +226,15 @@
                         hdc.setCompanyId(job.getCompanyId());
                         insertHiddenDangerCheckPoint(hdc);
 
+                        System.out.println("【-】开始调用方法,处理任务附属表");
+                        // todo-2022 插入 任务附属表  写到此处
+                        hdc.getCheckId();
+                        int result = SpringUtils.getBean(RiskService.class).insertDangerCheckLog(hdc.getCheckId(), hdc);
+//                    int result = riskService.insertDangerCheckLog(hdc.getCheckId(), hdc);
+                        if (result < 1){
+                            throw new RuntimeException("定时任务生产失败");
+                        }
+                        System.out.println("【-】开始调用方法,任务附属表处理完成");
                     }
                 }
                 scheduleJPush(hdc);//定时任务 推送
@@ -258,7 +273,12 @@
                         hdcp.getId();
 
                         // todo-2022 现场核查清单对应的核查点信息
-                        riskService.insertCheckAndMeasure(hdcp.getId(), hdcp);
+                        System.out.println("【***】开始调用方法,处理核查点附属表");
+                        int result = SpringUtils.getBean(RiskService.class).insertCheckAndMeasure(hdcp.getId(), hdcp);
+//                        int result = riskService.insertCheckAndMeasure(hdcp.getId(), hdcp);
+                        if (result < 1){
+                            throw new RuntimeException("【***】保存核查点关联信息失败");
+                        }
                     }
                 });
 
@@ -285,6 +305,14 @@
 //                hdcp.setDangerSources(TrHiddenDangerCheckConstants.DANGER_SOURCES_SCHEDULE_PRODUCE);//隐患来源(定时器任务生成)
                         // 写入数据库当中
                         SpringUtils.getBean(IHiddenDangerCheckPointService.class).insertHiddenDangerCheckPoint(hdcp);
+
+                        // todo-2022 现场核查清单对应的核查点信息
+                        System.out.println("【***】开始调用方法,处理核查点附属表");
+                        int result = SpringUtils.getBean(RiskService.class).insertCheckAndMeasure(hdcp.getId(), hdcp);
+//                        int result = riskService.insertCheckAndMeasure(hdcp.getId(), hdcp);
+                        if (result < 1){
+                            throw new RuntimeException("【***】保存核查点关联信息失败");
+                        }
                     }
                 });
             }

--
Gitblit v1.9.2