| | |
| | | import org.springframework.transaction.annotation.Transactional;
|
| | |
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.time.LocalDateTime;
|
| | | import java.util.*;
|
| | |
|
| | | @Component
|
| | |
| | | @Transactional
|
| | | // @Scheduled(cron = "0 0/1 * * * ? ") // 分钟
|
| | | // @Scheduled(cron = "0/30 * * * * ?") // 30秒
|
| | | @Scheduled(cron = "0 0 0/2 * * ?") // 小时
|
| | |
|
| | | // @Scheduled(cron = "0 0/30 * * * ? ") // 分钟
|
| | | public void searchReportDate(){
|
| | |
|
| | | logger.info("【双重预防】定时检索需要上报数据...");
|
| | |
| | | CJReportMeasure.setRiskMeasureId(measure.getId());
|
| | | CJReportMeasure.setTroubleshootContent(measure.getCheckContent());
|
| | |
|
| | |
|
| | | //封装数据
|
| | | CJMeasureLists.add(CJReportMeasure);
|
| | | //设置原始数据上报状态
|
| | |
| | | if (jobById.getTroubleshootTypeCycleType() == 1){
|
| | | CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
|
| | | CJTaskFromWork.setCheckCycleUnit("小时");
|
| | | CJTaskFromWork.setWorkStartTime(jobById.getCreateTime());
|
| | | Calendar calendar = Calendar.getInstance();
|
| | | calendar.setTime(jobById.getCreateTime());
|
| | | calendar.add(Calendar.HOUR, Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
|
| | | CJTaskFromWork.setWorkEndTime(calendar.getTime());
|
| | | CJTaskFromWork.setWorkStartTime("00:00:00");
|
| | | CJTaskFromWork.setWorkEndTime("23:59:59");
|
| | | }else if (jobById.getTroubleshootTypeCycleType() == 2){
|
| | | CJTaskFromWork.setCheckCycle(Math.toIntExact(jobById.getTroubleshootTypeCycleNum()));
|
| | | CJTaskFromWork.setCheckCycleUnit("天");
|
| | |
| | | PreventRiskControlMeasure measureById = preventRiskControlMeasureService.getPreventRiskControlMeasureById(work.getMeasureId());
|
| | | CJTaskFromWork.setTroubleshootContent(measureById.getCheckContent());
|
| | | CJTaskFromWork.setTaskStartTime(jobById.getStartTime());
|
| | | if (jobById.getTroubleshootTypeCycleType() == 1){
|
| | | Date date = new Date();
|
| | | CJTaskFromWork.setWorkStartTime(new Date(startFormat.format(date)));//todo 这个时间如何确定?
|
| | | CJTaskFromWork.setWorkEndTime(new Date(endFormat.format(date)));
|
| | | }
|
| | |
|
| | | CJTaskFromWork.setWorkDayType("0");
|
| | | List<PreventTaskType> typeByJobId = taskTypeService.getInfoByJobId(work.getJobId());
|
| | | int typeTag = 0;
|
| | | for (PreventTaskType taskType : typeByJobId) {
|
| | | typeTag = taskType.getType();
|
| | | }
|
| | | if (typeTag !=0){
|
| | | CJTaskFromWork.setTaskNum("1");
|
| | | }
|
| | | CJTaskFromWork.setWorkType(String.valueOf(typeTag));
|
| | | CJTaskFromWork.setTaskNum("1");
|
| | |
|
| | | //封装数据
|
| | | CJTaskFromWorkLists.add(CJTaskFromWork);
|
| | |
| | | CJRecordFromTask.setTaskId(task.getCheckId());
|
| | | //第二版标准新增
|
| | | CJRecordFromTask.setMobileCode(task.getMobileCode().toString());
|
| | | List<PreventTaskType> typeByJobIds = taskTypeService.getInfoByJobId(jobAndMeasureByJobId.getJobId());
|
| | | List<PreventTaskType> typeByJobIds = taskTypeService.getInfoByJobId(task.getJobId());
|
| | | int typeTag = 0;
|
| | | for (PreventTaskType typeByJobId : typeByJobIds) {
|
| | | if (typeByJobId.getType()!= 0) {
|
| | |
| | |
|
| | | //通过用户名,获取涉及到的各位用户的真实姓名
|
| | | User createUser = new User();
|
| | | createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy());
|
| | | createUser = trUserService.getUserByLoginName(hiddenDanger.getCreateBy()); //todo
|
| | | // createUser = trUserService.getUserByLoginName("guotai");
|
| | | if(ObjectUtils.isEmpty(createUser)){
|
| | | createUser = trUserService.getUserByName(hiddenDanger.getCreateBy());
|
| | | }
|
| | | User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy());
|
| | | User updateUser = trUserService.getUserByLoginName(hiddenDanger.getUpdateBy()); //todo
|
| | | // User updateUser = trUserService.getUserByLoginName("guotai");
|
| | | if (ObjectUtils.isNotEmpty(hiddenDanger.getRegisterUserName())){
|
| | | User registerUser = trUserService.getUserByLoginName(hiddenDanger.getRegisterUserName());
|
| | | //登记人信息
|
| | |
| | | CJDangerInfo.setRegistTime(hiddenDanger.getRegisterCreateTime());//登记时间
|
| | | }
|
| | |
|
| | | CJDangerInfo.setCost(String.valueOf(0));//初始值给0
|
| | | if (ObjectUtils.isNotEmpty(hiddenDanger.getRectifyUserName())){
|
| | | User rectifyUser = trUserService.getUserByLoginName(hiddenDanger.getRectifyUserName());
|
| | | //整改人信息
|
| | | CJDangerInfo.setLiablePerson(rectifyUser.getUserName());//整改责任人
|
| | | CJDangerInfo.setCost(hiddenDanger.getRectifyFund());//资金
|
| | | }
|
| | |
|
| | | if (ObjectUtils.isNotEmpty(hiddenDanger.getAcceptUserName())){
|
| | |
| | | CJDangerInfo.setRiskMeasureId(null);//管控措施uuid
|
| | | }
|
| | |
|
| | | if (dangerManage.getReportStatus().equals(SyncEnum.SYNC_EXEC_SUCCESS.getCode())){
|
| | | CJDangerInfo.setDeleted("2");//数据更新状态标识,目前仅昌吉州需要 2022-08-10
|
| | | }else {
|
| | | CJDangerInfo.setDeleted("0");
|
| | | }
|
| | | CJDangerInfo.setDeleted("0");
|
| | | CJDangerInfo.setId(dangerManage.getUuid());
|
| | | CJDangerInfo.setCompanyCode(companyCode);
|
| | | CJDangerInfo.setHazardCode(dangerManage.getHazardCode());//风险分析对象编码
|
| | |
| | | CJDangerInfo.setDangerName(hiddenDanger.getDangerName());
|
| | | CJDangerInfo.setDangerLevel(hiddenDanger.getDangerLevel());//隐患等级
|
| | | CJDangerInfo.setDangerSrc(dangerManage.getDangerSrc().toString());//隐患来源
|
| | | CJDangerInfo.setDangerManageType(hiddenDanger.getRectifyType());//隐患治理类型
|
| | | if (hiddenDanger.getRectifyType().equals("1")){
|
| | | CJDangerInfo.setDangerManageType("0");//隐患治理类型
|
| | | }else {
|
| | | CJDangerInfo.setDangerManageType("1");//隐患治理类型
|
| | | }
|
| | | CJDangerInfo.setDangerDesc(hiddenDanger.getDangerDescription());//隐患描述
|
| | | CJDangerInfo.setDangerReason(dangerManage.getDangerReason());//隐患产生原因
|
| | | CJDangerInfo.setCost(hiddenDanger.getRectifyFund());//资金
|
| | | CJDangerInfo.setDangerManageDeadline(hiddenDanger.getRectifyDeadlineTime());//治理期限
|
| | | if (ObjectUtils.isNotEmpty(dangerManage.getDangerState())){
|
| | | CJDangerInfo.setDangerState(dangerManage.getDangerState().toString());//隐患状态
|
| | | }
|
| | | if (ObjectUtils.isNotEmpty(dangerManage.getHazardDangerType())){
|
| | | CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());//隐患类型
|
| | | }
|
| | | CJDangerInfo.setHazardDangerType(dangerManage.getHazardDangerType().toString());// todo 隐患类型
|
| | | CJDangerInfo.setDangerManagerId(dangerManage.getId());
|
| | | //封装数据
|
| | | CJDangerInfoLists.add(CJDangerInfo);
|
| | |
| | |
|
| | |
|
| | |
|
| | | /**
|
| | | * 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("检修记录数据上报已关闭");
|
| | | }
|
| | |
|
| | | // /**
|
| | | // * 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("检修记录数据上报已关闭");
|
| | | // }
|
| | | //
|
| | |
|
| | |
|
| | |
|