From 166a00fd377a34282602c02722b5e5271f68a805 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期二, 18 六月 2024 16:18:02 +0800
Subject: [PATCH] 添加
---
src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java | 180 ++++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 114 insertions(+), 66 deletions(-)
diff --git a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
index 9bd9cb2..2c410ea 100644
--- a/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
+++ b/src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
@@ -109,7 +109,7 @@
@Transactional
// @Scheduled(cron = "0 0/1 * * * ? ") // 分钟
// @Scheduled(cron = "0/30 * * * * ?") // 30秒
- @Scheduled(cron = "0 0/30 * * * ? ") // 分钟
+ @Scheduled(cron = "0 0/25 * * * ? ") // 分钟
public void searchReportDate(){
logger.info("【双重预防】定时检索需要上报数据...");
@@ -323,6 +323,7 @@
//写入上报昌吉州转换表
for (PreventCJReportRiskControlMeasure CJMeasure : CJMeasureLists) {
CJMeasureService.insertMeasureList(CJMeasure);
+
logger.info("【双重预防】3.安全风险管控措施CJ:数据处理...");
}
}else {
@@ -449,16 +450,21 @@
//查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime)
List<PreventRiskDangerCheckLog> tasks = preventRiskDangerCheckLogService.listReportTask();
+ List<Long> taskIds = new ArrayList<>();
//获取上报数据对象
List<PreventCJReportCheckRecordFromTask> CJRecordFromTaskLists = new ArrayList<>();
- HandlerReportParam handlerReportParam = new HandlerReportParam();
+ int tag = 0;
+// HandlerReportParam handlerReportParam = new HandlerReportParam();
+// List<HandlerReportParam> handlerReportParamList = new ArrayList<>();
if (ObjectUtils.isNotEmpty(tasks)){
+ //获取信息
+ List<User> allUserList = trUserService.getAllUser();
+ List<PreventRiskControlMeasure> allMeasureList = preventRiskControlMeasureService.getAllMeasureList();
+ List<PreventTaskType> allTaskTypeList = taskTypeService.getAllTaskTypeList();
//遍历,封装数据
for (PreventRiskDangerCheckLog task : tasks) {
//获取任务记录主表信息
HiddenDangerCheck hiddenDangerCheckById = trHiddenDangerCheckService.getHiddenDangerCheckById(task.getCheckId());
- //获取任务附属表信息
- PreventRiskJobAndMeasure jobAndMeasureByJobId = preventRiskJobAndMeasureService.getJobAndMeasureByJobId(task.getJobId());
//转换检查结果
//如果已经执行过,进入方法
if (Integer.valueOf(hiddenDangerCheckById.getScheduleCheckStatus()) == 1){
@@ -476,12 +482,34 @@
if (Integer.valueOf(hiddenDangerCheckPoint.getWhetherDanger()) == 1){
CJRecordFromTask.setCheckStatus("1");// 0-正常;1-存在隐患;2-未处理;3-其他
}
+
User createUser = new User();
- createUser = trUserService.getUserByLoginName(hiddenDangerCheckById.getCreateBy());
- if(ObjectUtils.isEmpty(createUser)){
- createUser = trUserService.getUserByName(hiddenDangerCheckById.getCreateBy());
+ User updateUser = new User();
+// createUser = trUserService.getUserByLoginName(hiddenDangerCheckById.getCreateBy());
+// if(ObjectUtils.isEmpty(createUser)){
+// createUser = trUserService.getUserByName(hiddenDangerCheckById.getCreateBy());
+// }
+// updateUser = trUserService.getUserByLoginName(hiddenDangerCheckById.getUpdateBy());
+
+
+ // todo 取出所有用户信息,再循环在匹配
+ for (User user : allUserList) {
+ if (hiddenDangerCheckById.getCreateBy().equals(user.getLoginName())){
+ createUser = user;
+ }
+ if (hiddenDangerCheckById.getUpdateBy().equals(user.getLoginName())){
+ updateUser = user;
+ }
}
- User updateUser = trUserService.getUserByLoginName(hiddenDangerCheckById.getUpdateBy());
+ if(ObjectUtils.isEmpty(createUser)){
+ for (User user : allUserList) {
+ if (hiddenDangerCheckById.getCreateBy().equals(user.getUserName())){
+ createUser = user;
+ }
+ }
+ }
+
+
//封装上报昌吉州的任务数据
// String taskUuid = UUID.randomUUID().toString();
@@ -514,22 +542,43 @@
for (PreventRiskDangerCheckAndMeasure checkAndMeasure : baseCheckPointAndMeasure) {
controlMeasureId = checkAndMeasure.getControlMeasureId();
}
- //获取该条记录对应的管控措施uuid
- PreventRiskControlMeasure preventRiskControlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(controlMeasureId);
- //通过管控措施uuid ,jobId(workId),在任务上报表中,找到任务对应的uuid
- PreventCJReportCheckTaskFromWork preventCJReportCheckTaskFromWork = CJTaskFromWorkService.geByMeasureUUidAndJobId(preventRiskControlMeasureById.getUuid(), task.getJobId());
- CJRecordFromTask.setCheckTaskId(preventCJReportCheckTaskFromWork.getId());
+// //获取该条记录对应的管控措施uuid
+// PreventRiskControlMeasure preventRiskControlMeasureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(controlMeasureId);
+// //通过管控措施uuid ,jobId(workId),在任务上报表中,找到任务对应的uuid
+// PreventCJReportCheckTaskFromWork preventCJReportCheckTaskFromWork = CJTaskFromWorkService.geByMeasureUUidAndJobId(preventRiskControlMeasureById.getUuid(), task.getJobId());
+// CJRecordFromTask.setCheckTaskId(preventCJReportCheckTaskFromWork.getId());
+ // todo 取出所有措施,再循环在匹配
+ for (PreventRiskControlMeasure measure : allMeasureList) {
+ if (controlMeasureId.equals(measure.getId())){
+ //通过管控措施uuid ,jobId(workId),在任务上报表中,找到任务对应的uuid
+ PreventCJReportCheckTaskFromWork preventCJReportCheckTaskFromWork = CJTaskFromWorkService.geByMeasureUUidAndJobId(measure.getUuid(), task.getJobId());
+ CJRecordFromTask.setCheckTaskId(preventCJReportCheckTaskFromWork.getId());
+ }
+ }
+
+
CJRecordFromTask.setCheckTime(hiddenDangerCheckById.getCheckTime());
CJRecordFromTask.setTaskId(task.getCheckId());
//第二版标准新增
CJRecordFromTask.setMobileCode(task.getMobileCode().toString());
- List<PreventTaskType> typeByJobIds = taskTypeService.getInfoByJobId(task.getJobId());
+
int typeTag = 0;
- for (PreventTaskType typeByJobId : typeByJobIds) {
- if (typeByJobId.getType()!= 0) {
- typeTag = 1;
+// List<PreventTaskType> typeByJobIds = taskTypeService.getInfoByJobId(task.getJobId());
+// for (PreventTaskType typeByJobId : typeByJobIds) {
+// if (typeByJobId.getType()!= 0) {
+// typeTag = 1;
+// }
+// }
+
+ // todo 取出所有任务信息表,再循环在匹配
+ for (PreventTaskType taskType : allTaskTypeList) {
+ if (taskType.getJobId().equals(task.getJobId())){
+ if (taskType.getType()!= 0) {
+ typeTag = 1;
+ }
}
}
+
CJRecordFromTask.setDefend(String.valueOf(typeTag));
//封装数据
@@ -538,37 +587,35 @@
}
//设置原始数据上报状态
- handlerReportParam.setId(task.getId());
- handlerReportParam.setReportTime(new Date());
- handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
- preventRiskDangerCheckLogService.updateTaskReportStatus(handlerReportParam);
+// handlerReportParam.setId(task.getId());
+// handlerReportParam.setReportTime(new Date());
+// handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
+// handlerReportParamList.add(handlerReportParam);
+// preventRiskDangerCheckLogService.updateTaskReportStatus(handlerReportParam);
int i = 1;
-// System.out.println("【##】数据封装" + 1);
+ taskIds.add(task.getId());
+ tag ++;
}
System.out.println("【##】5.数据封装完成...");
-// String checkStatus = null;
-// if (ObjectUtils.isEmpty(task.getResult() )){
-// checkStatus = "2";
-// }else if (task.getResult() == 2){
-// checkStatus = "1";
-// }else if (task.getResult() == 1){
-// checkStatus = "0";
-// }
+
}
}else {
logger.info("【双重预防】当前无排查任务记录需要处理");
}
- //插入上报昌吉州转换表
- for (PreventCJReportCheckRecordFromTask CJRecordFromTasks : CJRecordFromTaskLists) {
- int result = CJTaskRecordService.insert(CJRecordFromTasks);
- if (result < 0){
- throw new AusinessException(E.ADD_FAIL.getCode(), "排查任务记录插入失败");
- }
+ if (CJRecordFromTaskLists.size() > 0){
logger.info("【双重预防】排查任务记录CJ:数据处理...");
+ //设置原始数据状态
+ int taskUpdateResult = preventRiskDangerCheckLogService.updateTaskReportStatusByList(taskIds);
+ if (taskUpdateResult < taskIds.size()){
+ throw new AusinessException(E.ADD_FAIL.getCode(), "排查任务记录原始数据更新失败, 取消操作");
+ }
+ int result = CJTaskRecordService.insertRecordList(CJRecordFromTaskLists);
+ if (result < CJRecordFromTaskLists.size()){
+ throw new AusinessException(E.ADD_FAIL.getCode(), "排查任务记录插入失败, 取消操作");
+ }
}
step = 6;
-
}else {
step = 6;
logger.info("排查任务记录数据上报已关闭");
@@ -602,12 +649,12 @@
//通过用户名,获取涉及到的各位用户的真实姓名
User createUser = new User();
- createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy()); //todo
+ createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy());
// createUser = trUserService.getUserByLoginName("guotai");
if(ObjectUtils.isEmpty(createUser)){
createUser = trUserService.getUserByName(hiddenDanger.getCreateBy());
}
- User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy()); //todo
+ User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy());
// User updateUser = trUserService.getUserByLoginName("guotai");
if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())){
User registerUser = trUserService.getUserByLoginName(hiddenDanger.getRegisterUserName());
@@ -632,26 +679,27 @@
}
//如果排查任务正常存在,封装任务相关数据
- 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 (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);
+// CJDangerInfo.setRiskMeasureId(null);
+// }
+ CJDangerInfo.setCheckRecordId(null);
+ CJDangerInfo.setRiskMeasureId(null);//默认无任务
CJDangerInfo.setDeleted("0");
CJDangerInfo.setId(dangerManage.getUuid());
CJDangerInfo.setCompanyCode(companyCode);
- CJDangerInfo.setHazardCode(dangerManage.getHazardCode());//风险分析对象编码
+ CJDangerInfo.setHazardCode(dangerManage.getHazardCode());
CJDangerInfo.setCreateBy(createUser.getUserName());
CJDangerInfo.setCreateDate(hiddenDanger.getCreateTime());
@@ -672,22 +720,22 @@
CJDangerInfo.setReportTime(null);
CJDangerInfo.setDataSource((byte) 1);
CJDangerInfo.setDangerName(hiddenDanger.getDangerName());
- CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());//隐患等级
- CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());//隐患来源
+ CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());
+ CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());
if (hiddenDanger.getRectifyType().equals("1")){
- CJDangerInfo.setDangerManageType("0");//隐患治理类型
+ CJDangerInfo.setDangerManageType("0");
}else {
- CJDangerInfo.setDangerManageType("1");//隐患治理类型
+ CJDangerInfo.setDangerManageType("1");
}
- CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());//隐患描述
- CJDangerInfo.setDangerReason(dangerManage.getDangerReason());//隐患产生原因
- CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());//治理期限
+ CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());
+ CJDangerInfo.setDangerReason(dangerManage.getDangerReason());
+ CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());
if (ObjectUtils.isNotEmpty(dangerManage.getDangerState())){
- CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());//隐患状态
+ CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());
}
- CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());// todo 隐患类型
+ CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());
CJDangerInfo.setDangerManagerId(dangerManage.getId());
- //封装数据
+
CJDangerInfoLists.add(CJDangerInfo);
//设置原始数据上报状态
handlerReportParam.setId(dangerManage.getId());
--
Gitblit v1.9.2