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/ApiHiddenDangerCheckService.java | 97 +++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 86 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/ruoyi/project/mobile/service/ApiHiddenDangerCheckService.java b/src/main/java/com/ruoyi/project/mobile/service/ApiHiddenDangerCheckService.java index 194137c..9dfc64f 100644 --- a/src/main/java/com/ruoyi/project/mobile/service/ApiHiddenDangerCheckService.java +++ b/src/main/java/com/ruoyi/project/mobile/service/ApiHiddenDangerCheckService.java @@ -7,7 +7,9 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.security.ShiroUtils; +import com.ruoyi.doublePrevention.entity.PreventRiskDangerInfo; import com.ruoyi.doublePrevention.service.RiskService; +import com.ruoyi.doublePrevention.service.baseService.PreventRiskDangerCheckAndMeasureService; import com.ruoyi.doublePrevention.service.baseService.PreventRiskDangerConfirmLogService; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.project.mobile.domain.ApiRequestHeader; @@ -47,6 +49,9 @@ @Autowired IHiddenDangerCheckPointService hdcpService;//隐患检查点Service + + @Autowired + private PreventRiskDangerCheckAndMeasureService riskDangerCheckAndMeasureService;//隐患检查点Service @Autowired IUserService userService;//用户Service @@ -119,6 +124,17 @@ return ApiResult.success("传输hiddenDangerCheckType有误", new ArrayList<HiddenDangerCheck>()); } List<HiddenDangerCheckPoint> resultList = hdcpService.selectHiddenDangerCheckPointList(hdcp); + for (HiddenDangerCheckPoint dangerCheckPoint : resultList) { + PreventRiskDangerInfo dangerInfo = riskService.getDangerInfoByDangerCheckPointId(dangerCheckPoint.getId()); + if (ObjectUtils.isNotEmpty(dangerInfo)){ + if (ObjectUtils.isNotEmpty(dangerInfo.getDangerSrc())){ + dangerCheckPoint.setDangerSrc(dangerInfo.getDangerSrc()); + } + if (ObjectUtils.isNotEmpty(dangerInfo.getReportTime())){ + dangerCheckPoint.setReportTime(dangerInfo.getReportTime()); + } + } + } return ApiResult.success("请求数据成功", resultList); } } catch (Exception e) { @@ -165,12 +181,13 @@ } return ApiResult.success("隐患核查保存成功"); } catch (Exception e) { - return ApiResult.error("异常"); + return ApiResult.error(e.getMessage()); } } /** * 隐患核查--保存 */ + @Transactional public ApiResult editDangerExamineSave(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 ApiRequestHeader requestHeader = getHeader(header); @@ -180,7 +197,7 @@ try { Map<String, String> map = new ObjectMapper().readValue(str, HashMap.class); HiddenDangerCheckPoint hdcp = new ObjectMapper().readValue(str, HiddenDangerCheckPoint.class); - // todo-2023 此处最终核查 + // todo-2023 hdcp.setUpdateBy(header.loginName); hdcp.setUpdateTime(DateUtils.getNowDate()); hdcp.setExamineCreateTime(DateUtils.getNowDate());//设置核查时间 @@ -196,12 +213,27 @@ } hdcpService.updateHiddenDangerCheckPoint(hdcp); - - //此处插入隐患附属表 - int result = riskService.insertDangerInfo(hdcp.getId(), hdcp); - if (result< 1){ - throw new RuntimeException("添加隐患附属信息失败"); + //20250623 修改此处 + PreventRiskDangerInfo dangerInfoByDangerCheckPointId = riskService.getDangerInfoByDangerCheckPointId(hdcp.getId()); + if (ObjectUtils.isNotEmpty(dangerInfoByDangerCheckPointId)){ + //此处插入隐患附属表 + 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.updateCheckLog(hdcp.getId(), hdcp); +// if (result< 1){ +// throw new RuntimeException("添加隐患附属信息失败"); +// } + HiddenDangerCheckPoint hiddenDangerCheckPoint = hiddenDangerCheckPointService.getHiddenDangerCheckPointById(hdcp.getId()); int confirmResult = confirmLogService.saveConfirmLog(hiddenDangerCheckPoint); @@ -213,13 +245,14 @@ return ApiResult.success("隐患核查保存成功"); } catch (Exception e) { - return ApiResult.error("异常"); + return ApiResult.error(e.getMessage()); } } /** * 隐患整改--保存 */ + @Transactional public ApiResult editDangerRectifySave(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 ApiRequestHeader requestHeader = getHeader(header); @@ -252,6 +285,7 @@ /** * 整改延期--保存 */ + @Transactional public ApiResult rectifyTimeOutSave(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 ApiRequestHeader requestHeader = getHeader(header); @@ -278,6 +312,7 @@ /** * 隐患验收--保存 */ + @Transactional public ApiResult editDangerAcceptSave(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 ApiRequestHeader requestHeader = getHeader(header); @@ -374,7 +409,7 @@ /** - * 隐患计划执行中---设置为记录正常 // todo + * 隐患计划执行中---设置为记录正常 */ public ApiResult editPointSetNormal(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 @@ -402,6 +437,7 @@ /** * 隐患计划执行中---隐患登记 */ + @Transactional public ApiResult editPointDangerRegisterSave(String str, ApiRequestHeader header) { //验证userId,loginName,token,deviceType,deviceId,appType 是否一致 ApiRequestHeader requestHeader = getHeader(header); @@ -410,6 +446,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.setRegisterCreateTime(DateUtils.getNowDate());//设置隐患登记上报创建时间 hdcp.setRegisterUserId(Long.valueOf(header.userId));//设置隐患登记上报创建人ID User user = userService.selectUserById(Long.valueOf(header.userId)); @@ -437,17 +482,36 @@ hdcp.setCompanyId(user.getCompanyId()); i = hdcpService.insertHiddenDangerCheckPoint(hdcp); + //20250623增加此逻辑 + int result = riskService.insertDangerInfo(hdcp.getId(), hdcp); + if (result< 1){ + throw new RuntimeException("添加隐患附属信息失败"); + } }else{ hdcp.setUpdateBy(user.getLoginName()); hdcp.setUpdateTime(DateUtils.getNowDate()); i = hdcpService.updateHiddenDangerCheckPoint(hdcp); + //20250623增加此逻辑 + 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("修改失败"); + } + } } hdcpService.getTaskCountTotal(Long.valueOf(header.userId));//查询未执行任务总数量并推送 return ApiResult.success("隐患排查计划执行--隐患登记--成功"); } catch (Exception e) { - return ApiResult.error("异常"); + return ApiResult.error(e.getMessage()); } } @@ -463,6 +527,10 @@ try { HiddenDangerCheckPoint hdcp = new ObjectMapper().readValue(str, HiddenDangerCheckPoint.class); HiddenDangerCheckPoint hiddenDangerCheckPoint = hdcpService.selectHiddenDangerCheckPointById(hdcp.getId()); + PreventRiskDangerInfo dangerInfo = riskService.getDangerInfoByDangerCheckPointId(hiddenDangerCheckPoint.getId()); + if (ObjectUtils.isNotEmpty(dangerInfo.getReportTime())){ + hiddenDangerCheckPoint.setReportTime(dangerInfo.getReportTime()); + } return ApiResult.success("隐患查看--成功",hiddenDangerCheckPoint); } catch (Exception e) { return ApiResult.error("异常"); @@ -557,7 +625,14 @@ } } } - + for (HiddenDangerCheckPoint dangerCheckPoint : resultList) { + PreventRiskDangerInfo dangerInfo = riskService.getDangerInfoByDangerCheckPointId(dangerCheckPoint.getId()); + if (ObjectUtils.isNotEmpty(dangerInfo)){ + if (ObjectUtils.isNotEmpty(dangerInfo.getReportTime())){ + dangerCheckPoint.setReportTime(dangerInfo.getReportTime()); + } + } + } resultMap.put("resultList", resultList); //companyId下总的数据统计 -- Gitblit v1.9.2