双重预防项目-国泰新华二开定制版
heheng
2 天以前 8e3dd5851dcedef5b21858dc1cfd5d11f1965ce6
src/main/java/com/ruoyi/doublePrevention/scheduls/SearchReportDateSchedule.java
@@ -1,6 +1,7 @@
package com.ruoyi.doublePrevention.scheduls;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.doublePrevention.entity.*;
import com.ruoyi.doublePrevention.entity.CJReport.*;
@@ -111,8 +112,8 @@
    @Transactional
    @Scheduled(cron = "0 0/2 * * * ? ")    // 分钟
//    @Scheduled(cron = "0/10 * * * * ?")  // 30秒
 //   @Scheduled(cron = "0 0/25 * * * ? ")    // 分钟
    public void searchReportDate(){
    //   @Scheduled(cron = "0 0/25 * * * ? ")    // 分钟
    public void searchReportDate() {
        log.info("【双重预防】定时检索需要上报数据...");
        int step = 1;
@@ -124,7 +125,7 @@
        //读取风险分析单元数据上报主配置信息
        PreventReportConfig unitReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_RISK_ANA_UNIT.getCode());
        //如果主配置开启上报,开始
        if (unitReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
        if (unitReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            log.info("【##】1.检索风险分析单元...");
@@ -133,7 +134,7 @@
            //获取上报数据list
//            List<PreventReportRiskAnaUnit> unitLists = new ArrayList<>();
            List<PreventCJReportRiskAnaUnit> CJUnitLists = new ArrayList<>();
            if (ObjectUtils.isNotEmpty(riskUnitUuidList)){
            if (ObjectUtils.isNotEmpty(riskUnitUuidList)) {
                HandlerReportParam handlerReportParam = new HandlerReportParam();
                //遍历,封装数据
                for (PreventRiskUnitUuid riskUnitUuid : riskUnitUuidList) {
@@ -163,10 +164,10 @@
//                    }
                    CJReportRiskAnaUnit.setCreateBy(createUser.getUserName());
                    CJReportRiskAnaUnit.setCreateDate(infoByRiskId.getCreateTime());
                    if (ObjectUtils.isEmpty(updateUser)){
                    if (ObjectUtils.isEmpty(updateUser)) {
                        CJReportRiskAnaUnit.setUpdateBy(createUser.getUserName());
                        CJReportRiskAnaUnit.setUpdateDate(infoByRiskId.getUpdateTime());
                    }else {
                    } else {
                        CJReportRiskAnaUnit.setUpdateBy(updateUser.getUserName());
                        CJReportRiskAnaUnit.setUpdateDate(infoByRiskId.getCreateTime());
                    }
@@ -184,7 +185,7 @@
                    handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
                    int result = preventRiskUnitUuidService.updateReportStatus(handlerReportParam);
                }
            }else {
            } else {
                log.info("【双重预防】当前无风险分析单元数据需要处理");
            }
            //写入昌吉州转换表
@@ -193,7 +194,7 @@
                log.info("【双重预防】1.风险分析单元CJ:数据处理...");
            }
            step = 2;
        }else {
        } else {
            step = 2;
            log.info("风险分析单元数据上报已关闭");
        }
@@ -205,14 +206,14 @@
        //读取风险分析单元数据上报主配置信息
        PreventReportConfig eventReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_RISK_EVENT.getCode());
        //如果风险事件主配置开启上报
        if (eventReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
        if (eventReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            //logger.info("【##】2.检索安全风险事件...");
            //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime)
            List<PreventRiskEvent> riskEvents = preventRiskEventService.listReportEvent();
            //获取上报数据对象与list
            List<PreventCJReportRiskEvent> CJEventLists = new ArrayList<>();
            if (ObjectUtils.isNotEmpty(riskEvents)){
            if (ObjectUtils.isNotEmpty(riskEvents)) {
                //遍历,封装数据
                for (PreventRiskEvent riskEvent : riskEvents) {
                    //String eventUuid = UUID.randomUUID().toString();
@@ -221,9 +222,9 @@
                    //封装上报昌吉州风险事件数据
                    CJReportRiskEvent.setId(riskEvent.getUuid());
                    CJReportRiskEvent.setCompanyCode(companyCode);
                    if (riskEvent.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){
                    if (riskEvent.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())) {
                        CJReportRiskEvent.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10
                    }else {
                    } else {
                        CJReportRiskEvent.setDeleted("0");
                    }
                    CJReportRiskEvent.setCreateBy(riskEvent.getCreateByUserName());
@@ -247,7 +248,7 @@
                    handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
                    preventRiskEventService.updateEventReportStatus(handlerReportParam);
                }
            }else {
            } else {
                log.info("【双重预防】当前无安全风险事件数据需要处理");
            }
            //写入昌吉州转换表
@@ -256,7 +257,7 @@
                log.info("【双重预防】2.风险分析事件CJ:数据处理...");
            }
            step = 3;
        }else {
        } else {
            step = 3;
            log.info("安全风险事件数据上报已关闭");
        }
@@ -268,7 +269,7 @@
        //读取安全风险管控措施数据上报主配置信息
        PreventReportConfig measureReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_RISK_MEASURE.getCode());
        //如果安全风险管控措施主配置开启上报
        if (measureReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
        if (measureReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            //logger.info("{【##】3.检索安全风险管控措施...");
            //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime)
@@ -277,7 +278,7 @@
            List<PreventCJReportRiskControlMeasure> CJMeasureLists = new ArrayList<>();
            HandlerReportParam handlerReportParam = new HandlerReportParam();
            if (ObjectUtils.isNotEmpty(measures)){
            if (ObjectUtils.isNotEmpty(measures)) {
                //遍历,封装数据
                for (PreventRiskControlMeasure measure : measures) {
                    String measureUuid = UUID.randomUUID().toString();
@@ -290,9 +291,9 @@
                    //封装上报昌吉州管控措施数据
                    CJReportMeasure.setId(measure.getUuid());
                    CJReportMeasure.setCompanyCode(companyCode);
                    if (measure.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){
                    if (measure.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())) {
                        CJReportMeasure.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10
                    }else {
                    } else {
                        CJReportMeasure.setDeleted("0");
                    }
                    CJReportMeasure.setCreateBy(measure.getCreateByUserName());
@@ -322,7 +323,7 @@
                    handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
                    preventRiskControlMeasureService.updateMeasureReportStatus(handlerReportParam);
                }
            }else {
            } else {
                log.info("【双重预防】当前无安全风险管控措施数据需要处理");
            }
@@ -334,7 +335,7 @@
                log.info("【双重预防】3.安全风险管控措施CJ:数据处理...");
            }
        }else {
        } else {
            step = 4;
            log.info("安全风险管控措施数据上报已关闭");
        }
@@ -345,15 +346,15 @@
        //读取任务配置数据上报主配置信息
        PreventReportConfig workReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_TASK_FROM_WORK.getCode());
        //如果任务配置主配置开启上报
        if (workReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
          //  logger.info("【##】4.检索任务配置...");
        if (workReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            //  logger.info("【##】4.检索任务配置...");
            //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime)
            List<PreventRiskJobAndMeasure> works = preventRiskJobAndMeasureService.listReportWork();
            //获取上报数据对象与list
            List<PreventCJReportCheckTaskFromWork> CJTaskFromWorkLists = new ArrayList<>();
            HandlerReportParam handlerReportParam = new HandlerReportParam();
            log.info("检索任务配置开始执行,{}",works.size());
            if (ObjectUtils.isNotEmpty(works)){
            log.info("检索任务配置开始执行,{}", works.size());
            if (ObjectUtils.isNotEmpty(works)) {
                //遍历,封装数据
                for (PreventRiskJobAndMeasure work : works) {
                    //通过work中的信息,查询主表数据
@@ -361,22 +362,22 @@
                    //获取数据对象
                    PreventCJReportCheckTaskFromWork CJTaskFromWork = new PreventCJReportCheckTaskFromWork();
                    //转换时间周期单位 (1小时,2日,3周,4月,5年)
                    if (jobById.getTroubleshootTypeCycleType() == 1){
                    if (jobById.getTroubleshootTypeCycleType() == 1) {
                        CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
                        CJTaskFromWork.setCheckCycleUnit("小时");
                        CJTaskFromWork.setWorkStartTime("00:00:00");
                        CJTaskFromWork.setWorkEndTime("23:59:59");
                    }else if (jobById.getTroubleshootTypeCycleType() == 2){
                    } else if (jobById.getTroubleshootTypeCycleType() == 2) {
                        CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
                        CJTaskFromWork.setCheckCycleUnit("天");
                    }else if (jobById.getTroubleshootTypeCycleType() == 3){
                    } else if (jobById.getTroubleshootTypeCycleType() == 3) {
                        Long num = jobById.getTroubleshootTypeCycleNum() * 7;
                        CJTaskFromWork.setCheckCycle(Math.toIntExact(num));
                        CJTaskFromWork.setCheckCycleUnit("天");
                    }else if (jobById.getTroubleshootTypeCycleType() == 4){
                    } else if (jobById.getTroubleshootTypeCycleType() == 4) {
                        CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
                        CJTaskFromWork.setCheckCycleUnit("月");
                    }else if (jobById.getTroubleshootTypeCycleType() == 5){
                    } else if (jobById.getTroubleshootTypeCycleType() == 5) {
                        CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
                        CJTaskFromWork.setCheckCycleUnit("年");
                    }
@@ -384,29 +385,29 @@
                    User createUser = new User();
                    User updateUser = new User();
                    createUser = trUserService.getUserByLoginName(jobById.getCreateBy());
                    if(ObjectUtils.isEmpty(createUser)){
                    if (ObjectUtils.isEmpty(createUser)) {
                        createUser = trUserService.getUserByName(jobById.getCreateBy());
                    }
                    updateUser = trUserService.getUserByLoginName(jobById.getUpdateBy());
                    if(ObjectUtils.isEmpty(updateUser)){
                    if (ObjectUtils.isEmpty(updateUser)) {
                        updateUser = trUserService.getUserByName(jobById.getUpdateBy());
                    }
                    //封装上报昌吉州任务配置数据
                    CJTaskFromWork.setId(work.getJobUuid());
                    CJTaskFromWork.setCompanyCode(companyCode);
                    if (work.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){
                    if (work.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())) {
                        CJTaskFromWork.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10
                    }else {
                    } else {
                        CJTaskFromWork.setDeleted("0");
                    }
                    CJTaskFromWork.setCreateBy(createUser.getUserName());
                    CJTaskFromWork.setCreateDate(jobById.getCreateTime());
                    if (ObjectUtils.isEmpty(updateUser)){
                    if (ObjectUtils.isEmpty(updateUser)) {
                        CJTaskFromWork.setUpdateBy(createUser.getUserName());
                        CJTaskFromWork.setUpdateDate(jobById.getCreateTime());
                    }else {
                    } else {
                        CJTaskFromWork.setUpdateBy(updateUser.getUserName());
                        CJTaskFromWork.setUpdateDate(jobById.getCreateTime());
                    }
@@ -429,7 +430,7 @@
                    for (PreventTaskType taskType : typeByJobId) {
                        typeTag = taskType.getType();
                    }
                    if (typeTag !=0){
                    if (typeTag != 0) {
                        CJTaskFromWork.setTaskNum("1");
                    }
                    CJTaskFromWork.setWorkType(String.valueOf(typeTag));
@@ -442,16 +443,16 @@
                    handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
                    preventRiskJobAndMeasureService.updateWorkReportStatus(handlerReportParam);
                }
            }else {
            } else {
                log.info("【双重预防】当前无任务配置数据需要处理");
            }
            //写入上报昌吉州数据转换表
            log.info("【双重预防】任务配置CJ数量:{}",CJTaskFromWorkLists.size());
            log.info("【双重预防】任务配置CJ数量:{}", CJTaskFromWorkLists.size());
            for (PreventCJReportCheckTaskFromWork CJTaskFromWorks : CJTaskFromWorkLists) {
                CJTaskFromWorkService.insertTaskFromWorkList(CJTaskFromWorks);
                log.info("【双重预防】任务配置CJ:数据处理...");
            }
        }else {
        } else {
            step = 5;
            log.info("任务配置数据上报已关闭");
        }
@@ -463,10 +464,10 @@
        //读取安全风险管控措施数据上报主配置信息
        PreventReportConfig recordReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG__CHECK_RECORD.getCode());
        //如果安全风险管控措施主配置开启上报
        if (recordReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
        if (recordReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            //logger.info("【##】5.检索排查任务记录数据...");
            System.out.println("【##】5.检索排查任务记录数据...");
            log.info("【##】5.检索排查任务记录数据...");
            //查询所有 选择上报的数据 && (reportTime == null 或者 reportTime < updateReportDataTime)
            List<PreventRiskDangerCheckLog> tasks = preventRiskDangerCheckLogService.listReportTask();
@@ -476,7 +477,7 @@
            int tag = 0;
//            HandlerReportParam handlerReportParam = new HandlerReportParam();
//            List<HandlerReportParam> handlerReportParamList = new ArrayList<>();
            if (ObjectUtils.isNotEmpty(tasks)){
            if (ObjectUtils.isNotEmpty(tasks)) {
                //获取信息
                List<User> allUserList = trUserService.getAllUser();
                List<PreventRiskControlMeasure> allMeasureList = preventRiskControlMeasureService.getAllMeasureList();
@@ -487,19 +488,19 @@
                    HiddenDangerCheck hiddenDangerCheckById = trHiddenDangerCheckService.getHiddenDangerCheckById(task.getCheckId());
                    //转换检查结果
                    //如果已经执行过,进入方法
                    if (Integer.valueOf(hiddenDangerCheckById.getScheduleCheckStatus()) == 1){
                    if (Integer.valueOf(hiddenDangerCheckById.getScheduleCheckStatus()) == 1) {
                        List<HiddenDangerCheckPoint> hiddenDangerCheckPointList = trHiddenDangerCheckPointService.getHiddenDangerCheckPointByCheckId(task.getCheckId());
                        //避免个别任务无检查点的情况
                        if (ObjectUtils.isEmpty(hiddenDangerCheckPointList)) {
                            log.info("【双重预防】排查任务记录CJ:异常,无检查点...");
                        }else {
                        } else {
                            for (HiddenDangerCheckPoint hiddenDangerCheckPoint : hiddenDangerCheckPointList) {
                                //获取上报数据对象
                                PreventCJReportCheckRecordFromTask CJRecordFromTask = new PreventCJReportCheckRecordFromTask();
                                CJRecordFromTask.setCheckStatus("0");// 0-正常;1-存在隐患;2-未处理;3-其他
                                if (Integer.valueOf(hiddenDangerCheckPoint.getWhetherDanger()) == 1){
                                if (Integer.valueOf(hiddenDangerCheckPoint.getWhetherDanger()) == 1) {
                                    CJRecordFromTask.setCheckStatus("1");// 0-正常;1-存在隐患;2-未处理;3-其他
                                }
@@ -514,21 +515,20 @@
                                // todo 取出所有用户信息,再循环在匹配
                                for (User user : allUserList) {
                                    if (hiddenDangerCheckById.getCreateBy().equals(user.getLoginName())){
                                    if (hiddenDangerCheckById.getCreateBy().equals(user.getLoginName())) {
                                        createUser = user;
                                    }
                                    if (hiddenDangerCheckById.getUpdateBy().equals(user.getLoginName())){
                                    if (hiddenDangerCheckById.getUpdateBy().equals(user.getLoginName())) {
                                        updateUser = user;
                                    }
                                }
                                if(ObjectUtils.isEmpty(createUser)){
                                if (ObjectUtils.isEmpty(createUser)) {
                                    for (User user : allUserList) {
                                        if (hiddenDangerCheckById.getCreateBy().equals(user.getUserName())){
                                        if (hiddenDangerCheckById.getCreateBy().equals(user.getUserName())) {
                                            createUser = user;
                                        }
                                    }
                                }
                                //封装上报昌吉州的任务数据
@@ -538,19 +538,19 @@
                                CJRecordFromTask.setCreateBy(createUser.getUserName());
                                CJRecordFromTask.setCreateDate(hiddenDangerCheckById.getCreateTime());
                                CJRecordFromTask.setCreateByMobile(createUser.getPhonenumber());
                                if (ObjectUtils.isEmpty(updateUser)){
                                if (ObjectUtils.isEmpty(updateUser)) {
                                    CJRecordFromTask.setUpdateBy(createUser.getUserName());
                                    CJRecordFromTask.setUpdateDate(hiddenDangerCheckById.getCreateTime());
                                    CJRecordFromTask.setUpdateByMobile(createUser.getPhonenumber());
                                }else {
                                } else {
                                    CJRecordFromTask.setUpdateBy(updateUser.getUserName());
                                    CJRecordFromTask.setUpdateDate(hiddenDangerCheckById.getUpdateTime());
                                    CJRecordFromTask.setUpdateByMobile(updateUser.getPhonenumber());
                                }
                                if (task.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){
                                if (task.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())) {
                                    CJRecordFromTask.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10
                                }else {
                                } else {
                                    CJRecordFromTask.setDeleted("0");
                                }
                                CJRecordFromTask.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
@@ -570,9 +570,9 @@
//                                PreventCJReportCheckTaskFromWork preventCJReportCheckTaskFromWork = CJTaskFromWorkService.geByMeasureUUidAndJobId(preventRiskControlMeasureById.getUuid(), task.getJobId());
//                                CJRecordFromTask.setCheckTaskId(preventCJReportCheckTaskFromWork.getId());
                                // todo 取出所有措施,再循环在匹配
                                boolean checkTaskIdExist=true;
                                boolean checkTaskIdExist = true;
                                for (PreventRiskControlMeasure measure : allMeasureList) {
                                    if (controlMeasureId.equals(measure.getId())){
                                    if (controlMeasureId.equals(measure.getId())) {
                                        //通过管控措施uuid ,jobId(workId),在任务上报表中,找到任务对应的uuid
                                        PreventCJReportCheckTaskFromWork preventCJReportCheckTaskFromWork = CJTaskFromWorkService.geByMeasureUUidAndJobId(measure.getUuid(), task.getJobId());
@@ -580,15 +580,15 @@
                                            //  if(preventCJReportCheckTaskFromWork!=null) {
                                            CJRecordFromTask.setCheckTaskId(preventCJReportCheckTaskFromWork.getId());
                                            //}
                                        }catch (Exception e){
                                            checkTaskIdExist=false;
                                            log.info("chekcPointId={},PreventRiskDangerCheckLogId={},controlMeasureId={},measure uuid={},jobId={}",hiddenDangerCheckPoint.getId(),task.getId(),controlMeasureId,measure.getUuid(),task.getJobId());
                                        } catch (Exception e) {
                                            checkTaskIdExist = false;
                                            log.info("chekcPointId={},PreventRiskDangerCheckLogId={},controlMeasureId={},measure uuid={},jobId={}", hiddenDangerCheckPoint.getId(), task.getId(), controlMeasureId, measure.getUuid(), task.getJobId());
                                            log.error(e.getMessage());
                                        }
                                    }
                                }
                                if(!checkTaskIdExist){
                                if (!checkTaskIdExist) {
                                    continue;
                                }
                                CJRecordFromTask.setCheckTime(hiddenDangerCheckById.getCheckTime());
@@ -606,8 +606,8 @@
                                // todo 取出所有任务信息表,再循环在匹配
                                for (PreventTaskType taskType : allTaskTypeList) {
                                    if (taskType.getJobId().equals(task.getJobId())){
                                        if (taskType.getType()!= 0) {
                                    if (taskType.getJobId().equals(task.getJobId())) {
                                        if (taskType.getType() != 0) {
                                            typeTag = 1;
                                        }
                                    }
@@ -620,37 +620,46 @@
                            }
                        }
                            //设置原始数据上报状态
                        //设置原始数据上报状态
//                            handlerReportParam.setId(task.getId());
//                            handlerReportParam.setReportTime(new Date());
//                            handlerReportParam.setReportStatus(SyncEnum.SYNC_WAIT_EXEC.getCode());
//                            handlerReportParamList.add(handlerReportParam);
//                            preventRiskDangerCheckLogService.updateTaskReportStatus(handlerReportParam);
                            int i = 1;
                        int i = 1;
                        taskIds.add(task.getId());
                        tag ++;
                        tag++;
                    }
                    System.out.println("【##】5.数据封装完成...");
                    log.info("【##】5.数据封装完成...");
                }
            }else {
            } else {
                log.info("【双重预防】当前无排查任务记录需要处理");
            }
            if (CJRecordFromTaskLists.size() > 0){
            if (CJRecordFromTaskLists.size() > 0) {
                log.info("【双重预防】排查任务记录CJ:数据处理...");
                log.info("【双重预防】排查任务记录CJ:数据处理开始taskIds..." + JSONObject.toJSONString(taskIds));
                //设置原始数据状态
                int taskUpdateResult = preventRiskDangerCheckLogService.updateTaskReportStatusByList(taskIds);
                if (taskUpdateResult < taskIds.size()){
                if (taskUpdateResult < taskIds.size()) {
                    log.error("【双重预防】排查任务记录CJ:数据处理开始taskIds...排查任务记录原始数据更新失败, 取消操作");
                    throw new AusinessException(E.ADD_FAIL.getCode(), "排查任务记录原始数据更新失败, 取消操作");
                }
                log.info("【双重预防】排查任务记录CJ:数据处理开始CJRecordFromTaskLists..." + JSONObject.toJSONString(CJRecordFromTaskLists));
                int result = CJTaskRecordService.insertRecordList(CJRecordFromTaskLists);
                if (result < CJRecordFromTaskLists.size()){
                if (result < CJRecordFromTaskLists.size()) {
                    log.error("【双重预防】排查任务记录CJ:数据处理开始taskIds...排查任务记录插入失败, 取消操作");
                    throw new AusinessException(E.ADD_FAIL.getCode(), "排查任务记录插入失败, 取消操作");
                }
            }
            step = 6;
        }else {
        } else {
            step = 6;
            log.info("排查任务记录数据上报已关闭");
        }
@@ -662,7 +671,7 @@
        //读取安全风险管控措施数据上报主配置信息
        PreventReportConfig dangerReportConfig = preventReportConfigService.getReportConfigById(SyncEnum.REPORT_CONFIG_DANGER_INFO.getCode());
        //如果安全风险管控措施主配置开启上报
        if (dangerReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())){
        if (dangerReportConfig.getReportState().equals(SyncEnum.REPORT_ON.getCode())) {
            //logger.info("【##】6.检索隐患数据...");
@@ -671,7 +680,7 @@
            //获取上报数据list
            List<PreventCJReportDangerInfo> CJDangerInfoLists = new ArrayList<>();
            if (ObjectUtils.isNotEmpty(dangerManages)){
            if (ObjectUtils.isNotEmpty(dangerManages)) {
                HandlerReportParam handlerReportParam = new HandlerReportParam();
                //遍历,封装数据
                for (PreventRiskDangerInfo dangerManage : dangerManages) {
@@ -685,12 +694,12 @@
                    User createUser = new User();
                    createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy());
//                    createUser = trUserService.getUserByLoginName("guotai");
                    if(ObjectUtils.isEmpty(createUser)){
                    if (ObjectUtils.isEmpty(createUser)) {
                        createUser = trUserService.getUserByName(hiddenDanger.getCreateBy());
                    }
                    User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy());
//                    User updateUser = trUserService.getUserByLoginName("guotai");
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())){
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())) {
                        User registerUser = trUserService.getUserByLoginName(hiddenDanger.getRegisterUserName());
                        //登记人信息
                        CJDangerInfo.setRegistrant(registerUser.getUserName());//登记人
@@ -698,25 +707,25 @@
                    }
                    CJDangerInfo.setCost(String.valueOf(0));//初始值给0
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getRectifyUserName())){
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getRectifyUserName())) {
                        User rectifyUser = trUserService.getUserByLoginName(hiddenDanger.getRectifyUserName());
                        //整改人信息
                        CJDangerInfo.setLiablePerson(rectifyUser.getUserName());//整改责任人
                        if(!StringUtils.isEmpty(hiddenDanger.getRectifyFund())){
                        if (!StringUtils.isEmpty(hiddenDanger.getRectifyFund())) {
                            String REGEX_CHINESE = "[\u4e00-\u9fa5]";// 中文正则
                            String cost=hiddenDanger.getRectifyFund().replaceAll(REGEX_CHINESE,"").trim();
                            if(StringUtils.isEmpty(cost)){
                            String cost = hiddenDanger.getRectifyFund().replaceAll(REGEX_CHINESE, "").trim();
                            if (StringUtils.isEmpty(cost)) {
                                CJDangerInfo.setCost(null);//资金
                            }else{
                            } else {
                                CJDangerInfo.setCost(cost);//资金
                            }
                        }else{
                        } else {
                            CJDangerInfo.setCost(null);//资金
                        }
                    }
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getAcceptUserName())){
                    if (ObjectUtils.isNotEmpty(hiddenDanger.getAcceptUserName())) {
                        //验收人信息
                        CJDangerInfo.setCheckAcceptPerson(hiddenDanger.getAcceptUserName());//验收人
                        CJDangerInfo.setCheckAcceptComment(hiddenDanger.getAcceptOpinion());//验收情况
@@ -748,16 +757,16 @@
                    CJDangerInfo.setCreateBy(createUser.getUserName());
                    CJDangerInfo.setCreateDate(hiddenDanger.getCreateTime());
                    if (ObjectUtils.isEmpty(updateUser)){
                    if (ObjectUtils.isEmpty(updateUser)) {
                        CJDangerInfo.setUpdateBy(createUser.getUserName());
                        CJDangerInfo.setUpdateDate(hiddenDanger.getCreateTime());
                    }else {
                    } else {
                        CJDangerInfo.setUpdateBy(updateUser.getUserName());
                        CJDangerInfo.setUpdateDate(hiddenDanger.getUpdateTime());
                    }
                    // todo 2024-07-01 需要检查
                    CJDangerInfo.setHazardCategory("0");
                    if (dangerManage.getId() <= 383){
                    if (dangerManage.getId() <= 383) {
                        PreventTaskType taskTypeInfo = taskTypeService.getInfoByTaskId(dangerManage.getId());
                        int i = 1;
                        CJDangerInfo.setHazardCategory(taskTypeInfo.getType().toString());
@@ -770,15 +779,15 @@
                    CJDangerInfo.setDangerName(hiddenDanger.getDangerName());
                    CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());
                    CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());
                    if (hiddenDanger.getRectifyType().equals("1")){
                    if (hiddenDanger.getRectifyType().equals("1")) {
                        CJDangerInfo.setDangerManageType("0");
                    }else {
                    } else {
                        CJDangerInfo.setDangerManageType("1");
                    }
                    CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());
                    CJDangerInfo.setDangerReason(dangerManage.getDangerReason());
                    CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());
                    if (ObjectUtils.isNotEmpty(dangerManage.getDangerState())){
                    if (ObjectUtils.isNotEmpty(dangerManage.getDangerState())) {
                        CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());
                    }
                    CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());
@@ -792,7 +801,7 @@
                    //修改隐患信息附属表状态
                    preventRiskDangerInfoService.updateDangerInfoReportStatus(handlerReportParam);
                }
            }else {
            } else {
                log.info("【双重预防】当前无隐患信息需要处理");
            }
@@ -800,16 +809,14 @@
            for (PreventCJReportDangerInfo CJDanger : CJDangerInfoLists) {
                log.info("【双重预防】隐患信息插入...");
                int result = CJDangerInfoService.insert(CJDanger);
                if (result < 0){
                if (result < 0) {
                    throw new AusinessException(E.ADD_FAIL.getCode(), "隐患信息插入失败");
                }
                log.info("【双重预防】隐患信息:数据处理...");
            }
        }else {
        } else {
            log.info("隐患信息数据上报已关闭");
        }
//        /**
@@ -880,12 +887,6 @@
//            logger.info("检修记录数据上报已关闭");
//        }
//
//         TODO 目前应急厅没有风险点概念,此处暂时不写。目前看,风险点概念,类似管控措施,对用某个具体的风险位置