From 90c11c1c0c95075ba802889f0436394067af0748 Mon Sep 17 00:00:00 2001 From: 16639036659 <577530412@qq.com> Date: 星期四, 15 六月 2023 17:02:31 +0800 Subject: [PATCH] 临时提交-检修记录数据采集 --- src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java | 333 ++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 207 insertions(+), 126 deletions(-) diff --git a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java index 5d1c8bf..04bab21 100644 --- a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java +++ b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java @@ -24,7 +24,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -95,11 +94,19 @@ @Autowired private PreventRiskDangerCheckAndMeasureService riskDangerCheckAndMeasureService;//管控措施,任务清单对应关系。基础排查点附属表 + @Autowired + private PreventTaskTypeService taskTypeService;//管控措施,任务清单对应关系。基础排查点附属表 + + @Autowired + private PreventOverhaulLogService overhaulLogService;//隐患信息附属表 + @Autowired + private PreventCJReportOverhaulLogService reportOverhaulLogService;//隐患信息附属表 + @Transactional // @Scheduled(cron = "0 0/1 * * * ? ") // 分钟 // @Scheduled(cron = "0/30 * * * * ?") // 30秒 - @Scheduled(cron = "0 0 0/2 * * ?") // 小时 +// @Scheduled(cron = "0 0 0/2 * * ?") // 小时 public void searchReportDate(){ @@ -553,137 +560,211 @@ } -// /** -// * 6、隐患信息数据 -// * */ -// //读取安全风险管控措施数据上报主配置信息 -// PreventReportConfig dangerReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_DANGER_INFO.getCode()); -// //如果安全风险管控措施主配置开启上报 -// if (dangerReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){ -// -// //logger.info("【##】4.检索隐患信息数据..."); -// -// //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime) -// List<PreventRiskDangerInfo> dangerManages = preventRiskDangerInfoService.listReportDanger(); -// //获取上报数据list -// List<PreventCJReportDangerInfo> CJDangerInfoLists = new ArrayList<>(); -// -// if (ObjectUtils.isNotEmpty(dangerManages)){ -// HandlerReportParam handlerReportParam = new HandlerReportParam(); -// //遍历,封装数据 -// for (PreventRiskDangerInfo dangerManage : dangerManages) { -// -// //获取隐患信息主表信息 -// HiddenDangerCheckPoint hiddenDanger = trHiddenDangerCheckPointService.getHiddenDangerCheckPointById(dangerManage.getDangerCheckPointId()); -// //获取上报数据对象 -// PreventCJReportDangerInfo CJDangerInfo = new PreventCJReportDangerInfo(); -// -// //通过用户名,获取涉及到的各位用户的真实姓名 -// User createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy()); -// User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy()); -// if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())){ -// User registerUser = trUserService.getUserByLoginName(hiddenDanger.getRegisterUserName()); -// //登记人信息 -// CJDangerInfo.setRegistrant(registerUser.getUserName());//登记人 -// CJDangerInfo.setRegistTime(hiddenDanger.getRegisterCreateTime());//登记时间 -// } -// -// if (ObjectUtils.isNotEmpty(hiddenDanger.getRectifyUserName())){ -// User rectifyUser = trUserService.getUserByLoginName(hiddenDanger.getRectifyUserName()); -// //整改人信息 -// CJDangerInfo.setLiablePerson(rectifyUser.getUserName());//整改责任人 -// } -// -// if (ObjectUtils.isNotEmpty(hiddenDanger.getAcceptUserName())){ -// User acceptUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy()); -// //验收人信息 -// CJDangerInfo.setCheckAcceptPerson(acceptUser.getUserName());//验收人 -// CJDangerInfo.setCheckAcceptComment(hiddenDanger.getAcceptOpinion());//验收情况 -// CJDangerInfo.setCheckAcceptTime(hiddenDanger.getAcceptCreateTime());//验收时间 -// } -// //如果排查任务正常存在,封装任务相关数据 -// HiddenDangerCheck dangerCheckById = trHiddenDangerCheckService.getHiddenDangerCheckById(hiddenDanger.getCheckId()); -// if (ObjectUtils.isNotEmpty(dangerCheckById)){ -// -// PreventRiskDangerCheckLog dangerCheckLogByCheckId = preventRiskDangerCheckLogService.getByDangerCheckByCheckId(hiddenDanger.getCheckId()); -// CJDangerInfo.setCheckRecordId(dangerCheckLogByCheckId.getUuid());//隐患排查任务记录uuid -// //找排查点,然后查措施 -// PreventRiskCheckUnit unit = preventRiskCheckUnitService.getUnitByBaseCheckPointId(hiddenDanger.getCheckPointId()); -// //查管控措施 -// PreventRiskControlMeasure controlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(unit.getControlMeasureId()); -// CJDangerInfo.setRiskMeasureId(controlMeasureById.getUuid());//管控措施uuid -// CJDangerInfo.setControlMeasures(controlMeasureById.getCheckContent());//控制措施 ,整改措施 -// }else { -// CJDangerInfo.setCheckRecordId(null);//隐患排查任务记录uuid -// CJDangerInfo.setRiskMeasureId(null);//管控措施uuid -// } -// -// if (dangerManage.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){ -// CJDangerInfo.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10 -// }else { -// CJDangerInfo.setDeleted("0"); -// } -// CJDangerInfo.setId(dangerManage.getUuid()); -// CJDangerInfo.setCompanyCode(companyCode); -// CJDangerInfo.setHazardCode(dangerManage.getHazardCode());//风险分析对象编码 -// CJDangerInfo.setCreateBy(createUser.getUserName()); -// CJDangerInfo.setCreateDate(hiddenDanger.getCreateTime()); -// -// if (ObjectUtils.isEmpty(updateUser)){ -// CJDangerInfo.setUpdateBy(createUser.getUserName()); -// CJDangerInfo.setUpdateDate(hiddenDanger.getCreateTime()); -// }else { -// CJDangerInfo.setUpdateBy(updateUser.getUserName()); -// CJDangerInfo.setUpdateDate(hiddenDanger.getUpdateTime()); -// } -// -// CJDangerInfo.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); -// CJDangerInfo.setReportTime(null); -// CJDangerInfo.setDataSource((byte) 1); -// CJDangerInfo.setDangerName(hiddenDanger.getDangerName()); -// CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());//隐患等级 -// CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());//隐患来源 -// CJDangerInfo.setDangerManageType(hiddenDanger.getRectifyType());//隐患治理类型 -// CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());//隐患描述 -// CJDangerInfo.setDangerReason(dangerManage.getDangerReason());//隐患产生原因 -// CJDangerInfo.setCost(hiddenDanger.getRectifyFund());//资金 -// CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());//治理期限 -// CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());//隐患状态 -// CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());//隐患类型 -// CJDangerInfo.setDangerManagerId(dangerManage.getId()); -// //封装数据 -// CJDangerInfoLists.add(CJDangerInfo); -// //设置原始数据上报状态 -// handlerReportParam.setId(dangerManage.getId()); -// handlerReportParam.setReportTime(new Date()); -// handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); -// //修改隐患信息附属表状态 -// preventRiskDangerInfoService.updateDangerInfoReportStatus(handlerReportParam); -// } -// }else { -// logger.info("【双重预防】当前无隐患信息需要处理"); -// } -// -// //插入上报昌吉州转换表 -// for (PreventCJReportDangerInfo CJDanger : CJDangerInfoLists) { -// logger.info("【双重预防】隐患信息插入..."); -// int result = CJDangerInfoService.insert(CJDanger); -// if (result < 0){ -// throw new AusinessException(E.ADD_FAIL.getCode(), "隐患信息插入失败"); -// } -// logger.info("【双重预防】隐患信息:数据处理..."); -// } -// }else { -// logger.info("隐患信息数据上报已关闭"); -// } + /** + * 6、隐患信息数据 + * */ + //读取安全风险管控措施数据上报主配置信息 + PreventReportConfig dangerReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_DANGER_INFO.getCode()); + //如果安全风险管控措施主配置开启上报 + if (dangerReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){ + + //logger.info("【##】6.检索隐患数据..."); + + //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime) + List<PreventRiskDangerInfo> dangerManages = preventRiskDangerInfoService.listReportDanger(); + //获取上报数据list + List<PreventCJReportDangerInfo> CJDangerInfoLists = new ArrayList<>(); + + if (ObjectUtils.isNotEmpty(dangerManages)){ + HandlerReportParam handlerReportParam = new HandlerReportParam(); + //遍历,封装数据 + for (PreventRiskDangerInfo dangerManage : dangerManages) { + + //获取隐患信息主表信息 + HiddenDangerCheckPoint hiddenDanger = trHiddenDangerCheckPointService.getHiddenDangerCheckPointById(dangerManage.getDangerCheckPointId()); + //获取上报数据对象 + PreventCJReportDangerInfo CJDangerInfo = new PreventCJReportDangerInfo(); + + //通过用户名,获取涉及到的各位用户的真实姓名 + User createUser = new User(); + createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy()); + if(ObjectUtils.isEmpty(createUser)){ + createUser = trUserService.getUserByName(hiddenDanger.getCreateBy()); + } + User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy()); + if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())){ + User registerUser = trUserService.getUserByLoginName(hiddenDanger.getRegisterUserName()); + //登记人信息 + CJDangerInfo.setRegistrant(registerUser.getUserName());//登记人 + CJDangerInfo.setRegistTime(hiddenDanger.getRegisterCreateTime());//登记时间 + } + + if (ObjectUtils.isNotEmpty(hiddenDanger.getRectifyUserName())){ + User rectifyUser = trUserService.getUserByLoginName(hiddenDanger.getRectifyUserName()); + //整改人信息 + CJDangerInfo.setLiablePerson(rectifyUser.getUserName());//整改责任人 + } + + if (ObjectUtils.isNotEmpty(hiddenDanger.getAcceptUserName())){ + //验收人信息 + CJDangerInfo.setCheckAcceptPerson(hiddenDanger.getAcceptUserName());//验收人 + CJDangerInfo.setCheckAcceptComment(hiddenDanger.getAcceptOpinion());//验收情况 + CJDangerInfo.setCheckAcceptTime(hiddenDanger.getAcceptCreateTime());//验收时间 + } + //如果排查任务正常存在,封装任务相关数据 + if (Integer.parseInt(hiddenDanger.getDangerSources()) != 2){ + HiddenDangerCheck dangerCheckById = trHiddenDangerCheckService.getHiddenDangerCheckById(hiddenDanger.getCheckId()); + + PreventRiskDangerCheckLog dangerCheckLogByCheckId = preventRiskDangerCheckLogService.getByDangerCheckByCheckId(hiddenDanger.getCheckId()); + CJDangerInfo.setCheckRecordId(dangerCheckLogByCheckId.getUuid());//隐患排查任务记录uuid + //找排查点,然后查措施 + PreventRiskCheckUnit unit = preventRiskCheckUnitService.getUnitByBaseCheckPointId(hiddenDanger.getCheckPointId()); + //查管控措施 + PreventRiskControlMeasure controlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(unit.getControlMeasureId()); + CJDangerInfo.setRiskMeasureId(controlMeasureById.getUuid());//管控措施uuid + CJDangerInfo.setControlMeasures(controlMeasureById.getCheckContent());//控制措施 ,整改措施 + }else { + CJDangerInfo.setCheckRecordId(null);//隐患排查任务记录uuid + CJDangerInfo.setRiskMeasureId(null);//管控措施uuid + } + + if (dangerManage.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){ + CJDangerInfo.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10 + }else { + CJDangerInfo.setDeleted("0"); + } + CJDangerInfo.setId(dangerManage.getUuid()); + CJDangerInfo.setCompanyCode(companyCode); + CJDangerInfo.setHazardCode(dangerManage.getHazardCode());//风险分析对象编码 + CJDangerInfo.setCreateBy(createUser.getUserName()); + CJDangerInfo.setCreateDate(hiddenDanger.getCreateTime()); + + if (ObjectUtils.isEmpty(updateUser)){ + CJDangerInfo.setUpdateBy(createUser.getUserName()); + CJDangerInfo.setUpdateDate(hiddenDanger.getCreateTime()); + }else { + CJDangerInfo.setUpdateBy(updateUser.getUserName()); + CJDangerInfo.setUpdateDate(hiddenDanger.getUpdateTime()); + } + CJDangerInfo.setHazardCategory("0"); + if (dangerManage.getId() <= 383){ + PreventTaskType taskTypeInfo = taskTypeService.getInfoByTaskId(dangerManage.getId()); + int i = 1; + CJDangerInfo.setHazardCategory(taskTypeInfo.getType().toString()); + } + + CJDangerInfo.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); + CJDangerInfo.setReportTime(null); + CJDangerInfo.setDataSource((byte) 1); + CJDangerInfo.setDangerName(hiddenDanger.getDangerName()); + CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());//隐患等级 + CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());//隐患来源 + CJDangerInfo.setDangerManageType(hiddenDanger.getRectifyType());//隐患治理类型 + CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());//隐患描述 + CJDangerInfo.setDangerReason(dangerManage.getDangerReason());//隐患产生原因 + CJDangerInfo.setCost(hiddenDanger.getRectifyFund());//资金 + CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());//治理期限 + CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());//隐患状态 + CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());//隐患类型 + CJDangerInfo.setDangerManagerId(dangerManage.getId()); + //封装数据 + CJDangerInfoLists.add(CJDangerInfo); + //设置原始数据上报状态 + handlerReportParam.setId(dangerManage.getId()); + handlerReportParam.setReportTime(new Date()); + handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); + //修改隐患信息附属表状态 + preventRiskDangerInfoService.updateDangerInfoReportStatus(handlerReportParam); + + } + + }else { + logger.info("【双重预防】当前无隐患信息需要处理"); + } + + //插入上报昌吉州转换表 + for (PreventCJReportDangerInfo CJDanger : CJDangerInfoLists) { + logger.info("【双重预防】隐患信息插入..."); + int result = CJDangerInfoService.insert(CJDanger); + if (result < 0){ + throw new AusinessException(E.ADD_FAIL.getCode(), "隐患信息插入失败"); + } + logger.info("【双重预防】隐患信息:数据处理..."); + } + }else { + logger.info("隐患信息数据上报已关闭"); + } + /** + * 7、检索检修记录数据 + * */ + //读取风险分析单元数据上报主配置信息 + PreventReportConfig overhaulReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.OVERHAUL_LOG_DANGER_INFO.getCode()); + //如果风险事件主配置开启上报 + if (overhaulReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){ + //logger.info("【##】2.检索检修记录..."); + //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime) + List<PreventOverhaulLog> preventOverhaulLogList = overhaulLogService.listReportOverhaulLog(); + //获取上报数据对象与list + List<PreventCJReportOverhaulLog> CJOverhaulLogLists = new ArrayList<>(); + if (ObjectUtils.isNotEmpty(preventOverhaulLogList)){ + //遍历,封装数据 + for (PreventOverhaulLog preventOverhaulLog : preventOverhaulLogList) { + HandlerReportParam handlerReportParam = new HandlerReportParam(); + PreventCJReportOverhaulLog CJOverhaulLog = new PreventCJReportOverhaulLog(); + //封装上报昌吉州检修记录数据 + CJOverhaulLog.setId(preventOverhaulLog.getUuid()); + if (preventOverhaulLog.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){ + CJOverhaulLog.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10 + }else { + CJOverhaulLog.setDeleted("0"); + } + CJOverhaulLog.setCompanyCode(companyCode); + CJOverhaulLog.setHazardCode(preventOverhaulLog.getHazardCode()); + CJOverhaulLog.setRiskUnitId(preventOverhaulLog.getRiskUnitUuid()); + CJOverhaulLog.setStopStartTime(preventOverhaulLog.getStopStartTime()); + CJOverhaulLog.setStopEndTime(preventOverhaulLog.getStopEndTime()); + CJOverhaulLog.setStopReason(preventOverhaulLog.getStopReason()); + CJOverhaulLog.setCreateBy(preventOverhaulLog.getCreateByUserName()); + CJOverhaulLog.setCreateDate(preventOverhaulLog.getGmtCreate()); + CJOverhaulLog.setUpdateBy(preventOverhaulLog.getCreateByUserName()); + CJOverhaulLog.setUpdateDate(preventOverhaulLog.getGmtModitify()); + CJOverhaulLog.setReportTime(null); + CJOverhaulLog.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); + CJOverhaulLog.setDataSource((byte) 1); - + //封装数据 + CJOverhaulLogLists.add(CJOverhaulLog); + //设置原始数据上报状态 + handlerReportParam.setId(preventOverhaulLog.getId()); + handlerReportParam.setReportTime(new Date()); + handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode()); + int result = overhaulLogService.updateOverhaulReportStatus(handlerReportParam); + if (result < 1){ + throw new AusinessException(E.ADD_FAIL.getCode(), "检修记录数据状态修改失败"); + } + } + }else { + logger.info("【检修记录】当前无检修记录数据需要处理"); + } + //写入昌吉州转换表 + for (PreventCJReportOverhaulLog cjOverhaulLog : CJOverhaulLogLists) { + int result = reportOverhaulLogService.insertCJOverhaulLists(cjOverhaulLog); + if (result < 1){ + throw new AusinessException(E.ADD_FAIL.getCode(), "检修记录数据状态修改失败"); + } + logger.info("【检修记录】2.检修记录CJ:数据处理..."); + } + step = 3; + }else { + step = 3; + logger.info("检修记录数据上报已关闭"); + } -- Gitblit v1.9.2