From ac8870aae3ec2b5ec5315cc668b482858195cfa4 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期五, 04 七月 2025 15:14:52 +0800
Subject: [PATCH] 优化处理

---
 src/main/java/com/ruoyi/project/mobile/service/ApiDangerScheduleService.java |   67 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/ruoyi/project/mobile/service/ApiDangerScheduleService.java b/src/main/java/com/ruoyi/project/mobile/service/ApiDangerScheduleService.java
index ac26a21..a819682 100644
--- a/src/main/java/com/ruoyi/project/mobile/service/ApiDangerScheduleService.java
+++ b/src/main/java/com/ruoyi/project/mobile/service/ApiDangerScheduleService.java
@@ -9,6 +9,7 @@
 import com.ruoyi.common.utils.security.ShiroUtils;
 import com.ruoyi.doublePrevention.entity.PreventRiskDangerCheckAndMeasure;
 import com.ruoyi.doublePrevention.entity.PreventRiskDangerCheckLog;
+import com.ruoyi.doublePrevention.entity.PreventRiskDangerInfo;
 import com.ruoyi.doublePrevention.service.RiskService;
 import com.ruoyi.doublePrevention.service.baseService.PreventRiskDangerCheckAndMeasureService;
 import com.ruoyi.framework.web.domain.AjaxResult;
@@ -20,12 +21,12 @@
 import com.ruoyi.project.tr.hiddenDangerCheck.service.IHiddenDangerCheckService;
 import com.ruoyi.project.tr.hiddenDangerCheckPoint.domain.HiddenDangerCheckPoint;
 import com.ruoyi.project.tr.hiddenDangerCheckPoint.service.IHiddenDangerCheckPointService;
+import org.apache.commons.lang3.ObjectUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.ObjectUtils;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -49,6 +50,9 @@
 
     @Autowired
     private RiskService riskService;
+
+    @Autowired
+    private PreventRiskDangerCheckAndMeasureService riskDangerCheckAndMeasureService;//隐患检查点Service
 
     @Autowired
     private PreventRiskDangerCheckAndMeasureService preventRiskDangerCheckAndMeasureService;
@@ -103,7 +107,7 @@
 
 
     /**
-     * 定时隐患排查保存  -- todo
+     * 定时隐患排查保存
      */
     public ApiResult editDangerScheduleSave(String str, ApiRequestHeader header) {
         //验证userId,loginName,token,deviceType,deviceId,appType 是否一致
@@ -143,7 +147,6 @@
                 }
             });
 
-
             hiddenDangerCheckService.updateHiddenDangerCheck(hiddenDangerCheck);
 
             hdcpService.getTaskCountTotal(Long.valueOf(header.userId));//查询未执行任务总数量并推送
@@ -158,7 +161,7 @@
 
 
     /**
-     * 设置为记录正常 // todo
+     * 设置为记录正常 todo
      */
     public ApiResult editPointScheduleSetNormal(String str, ApiRequestHeader header) {
         //验证userId,loginName,token,deviceType,deviceId,appType 是否一致
@@ -175,11 +178,16 @@
             hdcpService.updateHiddenDangerCheckPoint(hdcp);
 
             PreventRiskDangerCheckAndMeasure dangerCheckPointInfo = preventRiskDangerCheckAndMeasureService.getByDangerCheckPointId(hdcp.getId());
-            int result = riskService.updateCheckLog(dangerCheckPointInfo.getCheckId(), hdcp);// todo
+            int result = riskService.updateCheckLog(dangerCheckPointInfo.getCheckId(), hdcp);
             if (result < 1){
                 return ApiResult.error("隐患排查记录附属表:写入手机识别码错误");
             }
 
+            //添加检查说明信息
+            int result1 = riskDangerCheckAndMeasureService.updateCheckDesc(hdcp);
+            if (result1 < 1){
+                throw new RuntimeException("登记检查上报结果失败");
+            }
             hdcpService.getTaskCountTotal(Long.valueOf(header.userId));//查询未执行任务总数量并推送
 
             return ApiResult.success("定时隐患排查--设置为正常--成功");
@@ -192,7 +200,6 @@
 
     /**
      * 定时隐患排查---隐患登记
-     * todo-2022 手机端-暂时未改动
      */
     @Transactional
     public ApiResult editPointScheduleDangerRegisterSave(String str, ApiRequestHeader header) {
@@ -203,6 +210,15 @@
         }
         try {
             HiddenDangerCheckPoint hdcp = new ObjectMapper().readValue(str, HiddenDangerCheckPoint.class);
+            if (ObjectUtils.isEmpty(hdcp.getCheckPerson())){
+                throw new RuntimeException("检查人不能为空");
+            }
+            if (ObjectUtils.isEmpty(hdcp.getFindTime())){
+                throw new RuntimeException("发现时间不能为空");
+            }
+            if(ObjectUtils.isEmpty(hdcp.getDangerSrc())){
+                throw new RuntimeException("隐患来源不能为空");
+            }
             hdcp.setUpdateBy(header.loginName);
             hdcp.setUpdateTime(DateUtils.getNowDate());
             hdcp.setRegisterCreateTime(DateUtils.getNowDate());//设置隐患登记上报创建时间
@@ -215,11 +231,12 @@
             hdcp.setStage(TrHiddenDangerCheckConstants.DANGER_STAGE_PLAN_EXAMINE);//隐患核查阶段(数据进入到隐患核查阶段)
             hdcp.setDangerSources(TrHiddenDangerCheckConstants.DANGER_SOURCES_SCHEDULE_PRODUCE); //隐患来源(定时器任务生成)
 
-
             HiddenDangerCheckPoint queryExist = new HiddenDangerCheckPoint();
             queryExist.setWhetherDanger(TrHiddenDangerCheckConstants.WHETHER_DANGER_YES);//是否为隐患(是隐患)
             queryExist.setCheckPointId(hdcp.getCheckPointId());
             queryExist.setCheckId(hdcp.getCheckId());
+
+            hdcp.setReportStatus("0");
 
             /**
              * 本次查询结果 :如果未上报过隐患,必定为空
@@ -238,34 +255,42 @@
                 hdcp.setCompanyId(user.getCompanyId());
                 i = hdcpService.insertHiddenDangerCheckPoint(hdcp);
                 if (i< 1){
-                    throw new RuntimeException("添加隐患附属信息失败");
+                    throw new RuntimeException("添加隐患信息失败");
                 }
 
-                // todo-2022 此处插入附属表
-                //获取Id返回值
+                //获取Id返回值   20250623 放开
                 hdcp.getId();
                 int result = riskService.insertDangerInfo(hdcp.getId(), hdcp);
                 if (result< 1){
                     throw new RuntimeException("添加隐患附属信息失败");
                 }
 
-                PreventRiskDangerCheckAndMeasure dangerCheckPointInfo = preventRiskDangerCheckAndMeasureService.getByDangerCheckPointId(hdcp.getId());
-                riskService.updateCheckLog(dangerCheckPointInfo.getCheckId(), hdcp);
+//                PreventRiskDangerCheckAndMeasure dangerCheckPointInfo = preventRiskDangerCheckAndMeasureService.getByDangerCheckPointId(hdcp.getId());
+//                riskService.updateCheckLog(dangerCheckPointInfo.getCheckId(), hdcp);
 
             }else{
                 hdcp.setUpdateBy(user.getLoginName());
                 hdcp.setUpdateTime(DateUtils.getNowDate());
                 i = hdcpService.updateHiddenDangerCheckPoint(hdcp);
 
-                // todo-2022 此处修改附属表,注释:
-//                int result = riskService.updateDangerInfo(hdcp);
-//                if (result < 1){
-//                    throw new RuntimeException("修改失败");
-//                }
-                int result = riskService.insertDangerInfo(hdcp.getId(), hdcp);
-                if (result< 1){
-                    throw new RuntimeException("添加隐患附属信息失败");
+                PreventRiskDangerInfo dangerInfoByDangerCheckPointId = riskService.getDangerInfoByDangerCheckPointId(hdcp.getId());
+                if (dangerInfoByDangerCheckPointId != null){
+                    // todo-2022 此处修改附属表 20250623 放开
+                    int result = riskService.updateDangerInfo(hdcp);
+                    if (result < 1){
+                        throw new RuntimeException("修改失败");
+                    }
+                }else {
+                    int result = riskService.insertDangerInfo(hdcp.getId(), hdcp);
+                    if (result < 1){
+                        throw new RuntimeException("修改失败");
+                    }
                 }
+
+//                int result = riskService.insertDangerInfo(hdcp.getId(), hdcp);
+//                if (result< 1){
+//                    throw new RuntimeException("添加隐患附属信息失败");
+//                }
 
                 PreventRiskDangerCheckAndMeasure dangerCheckPointInfo = preventRiskDangerCheckAndMeasureService.getByDangerCheckPointId(hdcp.getId());
                 riskService.updateCheckLog(dangerCheckPointInfo.getCheckId(), hdcp);
@@ -274,7 +299,7 @@
 
             return ApiResult.success("定时隐患排查--隐患登记--成功");
         } catch (Exception e) {
-            return ApiResult.error("异常");
+            return ApiResult.error(e.getMessage());
         }
     }
 }

--
Gitblit v1.9.2