diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java index 43c5f1e..d51119a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractAuthService; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.base.service.IBaseExportService; import com.casic.missiles.core.model.auth.AuthUser; @@ -22,6 +23,7 @@ import com.casic.missiles.modular.device.dto.*; import com.casic.missiles.modular.device.entity.*; import com.casic.missiles.modular.device.service.*; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import com.casic.missiles.util.CommonUtil; import lombok.RequiredArgsConstructor; @@ -31,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -60,6 +59,7 @@ private final AbstractAuthService authService; private final IBaseExportService iBaseExportService; private final IBusLedgerPipeService iBusLedgerPipeService; + private final AbstractDeptService abstractDeptService; @Transactional @Override @@ -84,7 +84,7 @@ @Override public Page listPage(Page page, BusDeviceDTO request) { - if(DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); + if (DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); page.setOptimizeCountSql(false); Page busDevicePage = this.baseMapper.pageList(page, request, commonServer.getDeptScopeIds(request.getDeptId())); List busDeviceList = busDevicePage.getRecords(); @@ -336,6 +336,9 @@ //获取管线编号 List pipeCodeList = iBusLedgerService.getPipeCodeList(); List pipeList = new ArrayList<>(); + //获取单位信息 + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); final Integer[] index = {1}; results.forEach(deviceImportDTO -> { @@ -389,6 +392,37 @@ list.add("第" + index[0] + "行,关联管线在系统中不存在!"); return; } + //校验单位 + if (ObjectUtil.isNotEmpty(deviceImportDTO.getDeptName())) { + if (deviceImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = deviceImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(deviceImportDTO.getDeptName())) { + deviceImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(deviceImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(deviceImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, deviceImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deviceImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + deviceImportDTO.setDeptid(first.get().getId()); + } + } + } + } + //新增点位 if ("3".equals(deviceImportDTO.getWatchObject()) || "1".equals(deviceImportDTO.getWatchObject())) { //toDo:安装位号一致,入一次即可 @@ -396,7 +430,8 @@ Long pipeLedgerId = IdUtil.getSnowflake(1, 2).nextId(); BusLedgerPipe busLedgerPipe = new BusLedgerPipe(pipeLedgerId, deviceImportDTO.getPipeCode(), deviceImportDTO.getTagNumber(), deviceImportDTO.getTagNumber(), deviceImportDTO.getLng(), deviceImportDTO.getLat(), - deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), deviceImportDTO.getWatchObject(), ""); + deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), + deviceImportDTO.getWatchObject(), deviceImportDTO.getLocationCategory(), CommonUtil.getAreaCode(deviceImportDTO.getPosition())); // busLedgerPipe = iBusLedgerPipeService.saveBusLedgerPipe(busLedgerPipe); pipeList.add(busLedgerPipe); deviceImportDTO.setLedgerIds(Arrays.asList(pipeLedgerId)); @@ -584,4 +619,13 @@ updateWrapper.set("ONLINE_STATE", status); return this.update(updateWrapper); } + + @Override + public boolean updateBusDeviceAlarmState(String devcode, String alarmMsg) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("DEVCODE", devcode); + updateWrapper.set("MONITOR_CONTENT", alarmMsg); + updateWrapper.set("LOGTIME", new Date()); + return this.update(updateWrapper); + } } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java index 43c5f1e..d51119a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractAuthService; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.base.service.IBaseExportService; import com.casic.missiles.core.model.auth.AuthUser; @@ -22,6 +23,7 @@ import com.casic.missiles.modular.device.dto.*; import com.casic.missiles.modular.device.entity.*; import com.casic.missiles.modular.device.service.*; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import com.casic.missiles.util.CommonUtil; import lombok.RequiredArgsConstructor; @@ -31,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -60,6 +59,7 @@ private final AbstractAuthService authService; private final IBaseExportService iBaseExportService; private final IBusLedgerPipeService iBusLedgerPipeService; + private final AbstractDeptService abstractDeptService; @Transactional @Override @@ -84,7 +84,7 @@ @Override public Page listPage(Page page, BusDeviceDTO request) { - if(DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); + if (DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); page.setOptimizeCountSql(false); Page busDevicePage = this.baseMapper.pageList(page, request, commonServer.getDeptScopeIds(request.getDeptId())); List busDeviceList = busDevicePage.getRecords(); @@ -336,6 +336,9 @@ //获取管线编号 List pipeCodeList = iBusLedgerService.getPipeCodeList(); List pipeList = new ArrayList<>(); + //获取单位信息 + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); final Integer[] index = {1}; results.forEach(deviceImportDTO -> { @@ -389,6 +392,37 @@ list.add("第" + index[0] + "行,关联管线在系统中不存在!"); return; } + //校验单位 + if (ObjectUtil.isNotEmpty(deviceImportDTO.getDeptName())) { + if (deviceImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = deviceImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(deviceImportDTO.getDeptName())) { + deviceImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(deviceImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(deviceImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, deviceImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deviceImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + deviceImportDTO.setDeptid(first.get().getId()); + } + } + } + } + //新增点位 if ("3".equals(deviceImportDTO.getWatchObject()) || "1".equals(deviceImportDTO.getWatchObject())) { //toDo:安装位号一致,入一次即可 @@ -396,7 +430,8 @@ Long pipeLedgerId = IdUtil.getSnowflake(1, 2).nextId(); BusLedgerPipe busLedgerPipe = new BusLedgerPipe(pipeLedgerId, deviceImportDTO.getPipeCode(), deviceImportDTO.getTagNumber(), deviceImportDTO.getTagNumber(), deviceImportDTO.getLng(), deviceImportDTO.getLat(), - deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), deviceImportDTO.getWatchObject(), ""); + deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), + deviceImportDTO.getWatchObject(), deviceImportDTO.getLocationCategory(), CommonUtil.getAreaCode(deviceImportDTO.getPosition())); // busLedgerPipe = iBusLedgerPipeService.saveBusLedgerPipe(busLedgerPipe); pipeList.add(busLedgerPipe); deviceImportDTO.setLedgerIds(Arrays.asList(pipeLedgerId)); @@ -584,4 +619,13 @@ updateWrapper.set("ONLINE_STATE", status); return this.update(updateWrapper); } + + @Override + public boolean updateBusDeviceAlarmState(String devcode, String alarmMsg) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("DEVCODE", devcode); + updateWrapper.set("MONITOR_CONTENT", alarmMsg); + updateWrapper.set("LOGTIME", new Date()); + return this.update(updateWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java index 4eabcbc..d9a9566 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; @@ -17,6 +18,7 @@ import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusDeviceService; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; @@ -24,10 +26,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -46,6 +45,7 @@ private final AbstractDictService abstractDictService; private final BusDeviceMapper busDeviceMapper; private final CommonServer commonServer; + private final AbstractDeptService abstractDeptService; @Lazy @Autowired private IBusDeviceService iBusDeviceService; @@ -65,7 +65,7 @@ queryWrapper.in(ObjectUtil.isNotEmpty(deptIds), "DEPTID", deptIds); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getType()), "TYPE", request.getType()); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getLocationCategory()), "LOCATION_CATEGORY", request.getLocationCategory()); - queryWrapper.eq( "VALID", "1"); + queryWrapper.eq("VALID", "1"); queryWrapper.orderByDesc("TS"); Page pipePage = this.page(page, queryWrapper); List pipeList = pipePage.getRecords(); @@ -99,7 +99,7 @@ busLedger.setOnState("1".equals(busLedger.getOnState()) ? "在用" : "备用"); // 在用状态字典值 busLedger.setDeptName(ObjectUtil.isNotEmpty(busLedger.getDeptid()) ? commonServer.getDeptNamesByDeptId(busLedger.getDeptid()) : ""); // 管理单位名称 busLedger.setPressType(abstractDictService.getDictNameByCode("wellType", busLedger.getPressType())); // 位置状态字典值 - busLedger.setMonitorState(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + busLedger.setMonitorState(abstractDictService.getDictNameByCode("onlineState", busLedger.getOnlineState())); // 监控状态替换为设备状态字典值 }); return pageList; } @@ -200,6 +200,9 @@ if (!CollectionUtil.isEmpty(results)) { List busLedgerPipeList = this.getList(); List tagCodes = busLedgerPipeList.stream().map(BusLedgerPipe::getTagNumber).collect(Collectors.toList()); + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); + final Integer[] index = {1}; results.forEach(busPositionImportDTO -> { index[0]++; @@ -208,7 +211,36 @@ list.add("第" + index[0] + "行,安装位号已存在!"); return; } - + //验证单位 + if (ObjectUtil.isNotEmpty(busPositionImportDTO.getDeptName())) { + if (busPositionImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = busPositionImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(busPositionImportDTO.getDeptName())) { + busPositionImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(busPositionImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(busPositionImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, busPositionImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), busPositionImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + busPositionImportDTO.setDeptid(first.get().getId()); + } + } + } + } }); if (CollectionUtil.isNotEmpty(list)) { return list; diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java index 43c5f1e..d51119a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractAuthService; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.base.service.IBaseExportService; import com.casic.missiles.core.model.auth.AuthUser; @@ -22,6 +23,7 @@ import com.casic.missiles.modular.device.dto.*; import com.casic.missiles.modular.device.entity.*; import com.casic.missiles.modular.device.service.*; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import com.casic.missiles.util.CommonUtil; import lombok.RequiredArgsConstructor; @@ -31,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -60,6 +59,7 @@ private final AbstractAuthService authService; private final IBaseExportService iBaseExportService; private final IBusLedgerPipeService iBusLedgerPipeService; + private final AbstractDeptService abstractDeptService; @Transactional @Override @@ -84,7 +84,7 @@ @Override public Page listPage(Page page, BusDeviceDTO request) { - if(DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); + if (DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); page.setOptimizeCountSql(false); Page busDevicePage = this.baseMapper.pageList(page, request, commonServer.getDeptScopeIds(request.getDeptId())); List busDeviceList = busDevicePage.getRecords(); @@ -336,6 +336,9 @@ //获取管线编号 List pipeCodeList = iBusLedgerService.getPipeCodeList(); List pipeList = new ArrayList<>(); + //获取单位信息 + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); final Integer[] index = {1}; results.forEach(deviceImportDTO -> { @@ -389,6 +392,37 @@ list.add("第" + index[0] + "行,关联管线在系统中不存在!"); return; } + //校验单位 + if (ObjectUtil.isNotEmpty(deviceImportDTO.getDeptName())) { + if (deviceImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = deviceImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(deviceImportDTO.getDeptName())) { + deviceImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(deviceImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(deviceImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, deviceImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deviceImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + deviceImportDTO.setDeptid(first.get().getId()); + } + } + } + } + //新增点位 if ("3".equals(deviceImportDTO.getWatchObject()) || "1".equals(deviceImportDTO.getWatchObject())) { //toDo:安装位号一致,入一次即可 @@ -396,7 +430,8 @@ Long pipeLedgerId = IdUtil.getSnowflake(1, 2).nextId(); BusLedgerPipe busLedgerPipe = new BusLedgerPipe(pipeLedgerId, deviceImportDTO.getPipeCode(), deviceImportDTO.getTagNumber(), deviceImportDTO.getTagNumber(), deviceImportDTO.getLng(), deviceImportDTO.getLat(), - deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), deviceImportDTO.getWatchObject(), ""); + deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), + deviceImportDTO.getWatchObject(), deviceImportDTO.getLocationCategory(), CommonUtil.getAreaCode(deviceImportDTO.getPosition())); // busLedgerPipe = iBusLedgerPipeService.saveBusLedgerPipe(busLedgerPipe); pipeList.add(busLedgerPipe); deviceImportDTO.setLedgerIds(Arrays.asList(pipeLedgerId)); @@ -584,4 +619,13 @@ updateWrapper.set("ONLINE_STATE", status); return this.update(updateWrapper); } + + @Override + public boolean updateBusDeviceAlarmState(String devcode, String alarmMsg) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("DEVCODE", devcode); + updateWrapper.set("MONITOR_CONTENT", alarmMsg); + updateWrapper.set("LOGTIME", new Date()); + return this.update(updateWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java index 4eabcbc..d9a9566 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; @@ -17,6 +18,7 @@ import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusDeviceService; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; @@ -24,10 +26,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -46,6 +45,7 @@ private final AbstractDictService abstractDictService; private final BusDeviceMapper busDeviceMapper; private final CommonServer commonServer; + private final AbstractDeptService abstractDeptService; @Lazy @Autowired private IBusDeviceService iBusDeviceService; @@ -65,7 +65,7 @@ queryWrapper.in(ObjectUtil.isNotEmpty(deptIds), "DEPTID", deptIds); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getType()), "TYPE", request.getType()); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getLocationCategory()), "LOCATION_CATEGORY", request.getLocationCategory()); - queryWrapper.eq( "VALID", "1"); + queryWrapper.eq("VALID", "1"); queryWrapper.orderByDesc("TS"); Page pipePage = this.page(page, queryWrapper); List pipeList = pipePage.getRecords(); @@ -99,7 +99,7 @@ busLedger.setOnState("1".equals(busLedger.getOnState()) ? "在用" : "备用"); // 在用状态字典值 busLedger.setDeptName(ObjectUtil.isNotEmpty(busLedger.getDeptid()) ? commonServer.getDeptNamesByDeptId(busLedger.getDeptid()) : ""); // 管理单位名称 busLedger.setPressType(abstractDictService.getDictNameByCode("wellType", busLedger.getPressType())); // 位置状态字典值 - busLedger.setMonitorState(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + busLedger.setMonitorState(abstractDictService.getDictNameByCode("onlineState", busLedger.getOnlineState())); // 监控状态替换为设备状态字典值 }); return pageList; } @@ -200,6 +200,9 @@ if (!CollectionUtil.isEmpty(results)) { List busLedgerPipeList = this.getList(); List tagCodes = busLedgerPipeList.stream().map(BusLedgerPipe::getTagNumber).collect(Collectors.toList()); + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); + final Integer[] index = {1}; results.forEach(busPositionImportDTO -> { index[0]++; @@ -208,7 +211,36 @@ list.add("第" + index[0] + "行,安装位号已存在!"); return; } - + //验证单位 + if (ObjectUtil.isNotEmpty(busPositionImportDTO.getDeptName())) { + if (busPositionImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = busPositionImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(busPositionImportDTO.getDeptName())) { + busPositionImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(busPositionImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(busPositionImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, busPositionImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), busPositionImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + busPositionImportDTO.setDeptid(first.get().getId()); + } + } + } + } }); if (CollectionUtil.isNotEmpty(list)) { return list; diff --git a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java index 438fca3..4a89a33 100644 --- a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java +++ b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java @@ -10,7 +10,7 @@ import java.util.function.Predicate; public class CommonUtil { - public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH,mm,ss"); public static boolean isNumber(String str) { if (StrUtil.isNotEmpty(str)) { @@ -24,7 +24,7 @@ String strymd = dataString.substring(0, 8); String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; String strhms = dataString.substring(8); - String str2 = strhms.substring(0, 2) + ":" + strhms.substring(2, 4) + ":" + strhms.substring(4, 6); + String str2 = strhms.substring(0, 2) + "," + strhms.substring(2, 4) + "," + strhms.substring(4, 6); dataString = str1 + str2; return dataString; } @@ -64,4 +64,44 @@ return ""; } + + public static final String[] areaArr = { + "01", "东城", + "02", "西城", + "03", "朝阳", + "04", "丰台", + "05", "石景山", + "06", "海淀", + "07", "门头沟", + "08", "房山", + "09", "通州", + "10", "顺义", + "11", "昌平", + "12", "大兴", + "13", "怀柔", + "14", "平谷", + "16", "延庆", + "17", "亦庄", + "18", "新疆", + "15", "密云", + "19", "海南"}; + + + public static String getAreaCode(String areaName) { + if (ObjectUtil.isNotEmpty(areaName)) { + for (int i = 0; i < areaArr.length; i += 2) { + if (areaName.contains(areaArr[i + 1])) { + return areaArr[i]; + } + } + } + return ""; + } + + public static void main(String[] args) { + String ss = getAreaCode("东城"); + System.out.println(ss); + } + + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java index 43c5f1e..d51119a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractAuthService; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.base.service.IBaseExportService; import com.casic.missiles.core.model.auth.AuthUser; @@ -22,6 +23,7 @@ import com.casic.missiles.modular.device.dto.*; import com.casic.missiles.modular.device.entity.*; import com.casic.missiles.modular.device.service.*; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import com.casic.missiles.util.CommonUtil; import lombok.RequiredArgsConstructor; @@ -31,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -60,6 +59,7 @@ private final AbstractAuthService authService; private final IBaseExportService iBaseExportService; private final IBusLedgerPipeService iBusLedgerPipeService; + private final AbstractDeptService abstractDeptService; @Transactional @Override @@ -84,7 +84,7 @@ @Override public Page listPage(Page page, BusDeviceDTO request) { - if(DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); + if (DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); page.setOptimizeCountSql(false); Page busDevicePage = this.baseMapper.pageList(page, request, commonServer.getDeptScopeIds(request.getDeptId())); List busDeviceList = busDevicePage.getRecords(); @@ -336,6 +336,9 @@ //获取管线编号 List pipeCodeList = iBusLedgerService.getPipeCodeList(); List pipeList = new ArrayList<>(); + //获取单位信息 + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); final Integer[] index = {1}; results.forEach(deviceImportDTO -> { @@ -389,6 +392,37 @@ list.add("第" + index[0] + "行,关联管线在系统中不存在!"); return; } + //校验单位 + if (ObjectUtil.isNotEmpty(deviceImportDTO.getDeptName())) { + if (deviceImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = deviceImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(deviceImportDTO.getDeptName())) { + deviceImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(deviceImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(deviceImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, deviceImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deviceImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + deviceImportDTO.setDeptid(first.get().getId()); + } + } + } + } + //新增点位 if ("3".equals(deviceImportDTO.getWatchObject()) || "1".equals(deviceImportDTO.getWatchObject())) { //toDo:安装位号一致,入一次即可 @@ -396,7 +430,8 @@ Long pipeLedgerId = IdUtil.getSnowflake(1, 2).nextId(); BusLedgerPipe busLedgerPipe = new BusLedgerPipe(pipeLedgerId, deviceImportDTO.getPipeCode(), deviceImportDTO.getTagNumber(), deviceImportDTO.getTagNumber(), deviceImportDTO.getLng(), deviceImportDTO.getLat(), - deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), deviceImportDTO.getWatchObject(), ""); + deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), + deviceImportDTO.getWatchObject(), deviceImportDTO.getLocationCategory(), CommonUtil.getAreaCode(deviceImportDTO.getPosition())); // busLedgerPipe = iBusLedgerPipeService.saveBusLedgerPipe(busLedgerPipe); pipeList.add(busLedgerPipe); deviceImportDTO.setLedgerIds(Arrays.asList(pipeLedgerId)); @@ -584,4 +619,13 @@ updateWrapper.set("ONLINE_STATE", status); return this.update(updateWrapper); } + + @Override + public boolean updateBusDeviceAlarmState(String devcode, String alarmMsg) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("DEVCODE", devcode); + updateWrapper.set("MONITOR_CONTENT", alarmMsg); + updateWrapper.set("LOGTIME", new Date()); + return this.update(updateWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java index 4eabcbc..d9a9566 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; @@ -17,6 +18,7 @@ import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusDeviceService; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; @@ -24,10 +26,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -46,6 +45,7 @@ private final AbstractDictService abstractDictService; private final BusDeviceMapper busDeviceMapper; private final CommonServer commonServer; + private final AbstractDeptService abstractDeptService; @Lazy @Autowired private IBusDeviceService iBusDeviceService; @@ -65,7 +65,7 @@ queryWrapper.in(ObjectUtil.isNotEmpty(deptIds), "DEPTID", deptIds); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getType()), "TYPE", request.getType()); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getLocationCategory()), "LOCATION_CATEGORY", request.getLocationCategory()); - queryWrapper.eq( "VALID", "1"); + queryWrapper.eq("VALID", "1"); queryWrapper.orderByDesc("TS"); Page pipePage = this.page(page, queryWrapper); List pipeList = pipePage.getRecords(); @@ -99,7 +99,7 @@ busLedger.setOnState("1".equals(busLedger.getOnState()) ? "在用" : "备用"); // 在用状态字典值 busLedger.setDeptName(ObjectUtil.isNotEmpty(busLedger.getDeptid()) ? commonServer.getDeptNamesByDeptId(busLedger.getDeptid()) : ""); // 管理单位名称 busLedger.setPressType(abstractDictService.getDictNameByCode("wellType", busLedger.getPressType())); // 位置状态字典值 - busLedger.setMonitorState(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + busLedger.setMonitorState(abstractDictService.getDictNameByCode("onlineState", busLedger.getOnlineState())); // 监控状态替换为设备状态字典值 }); return pageList; } @@ -200,6 +200,9 @@ if (!CollectionUtil.isEmpty(results)) { List busLedgerPipeList = this.getList(); List tagCodes = busLedgerPipeList.stream().map(BusLedgerPipe::getTagNumber).collect(Collectors.toList()); + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); + final Integer[] index = {1}; results.forEach(busPositionImportDTO -> { index[0]++; @@ -208,7 +211,36 @@ list.add("第" + index[0] + "行,安装位号已存在!"); return; } - + //验证单位 + if (ObjectUtil.isNotEmpty(busPositionImportDTO.getDeptName())) { + if (busPositionImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = busPositionImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(busPositionImportDTO.getDeptName())) { + busPositionImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(busPositionImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(busPositionImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, busPositionImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), busPositionImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + busPositionImportDTO.setDeptid(first.get().getId()); + } + } + } + } }); if (CollectionUtil.isNotEmpty(list)) { return list; diff --git a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java index 438fca3..4a89a33 100644 --- a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java +++ b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java @@ -10,7 +10,7 @@ import java.util.function.Predicate; public class CommonUtil { - public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH,mm,ss"); public static boolean isNumber(String str) { if (StrUtil.isNotEmpty(str)) { @@ -24,7 +24,7 @@ String strymd = dataString.substring(0, 8); String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; String strhms = dataString.substring(8); - String str2 = strhms.substring(0, 2) + ":" + strhms.substring(2, 4) + ":" + strhms.substring(4, 6); + String str2 = strhms.substring(0, 2) + "," + strhms.substring(2, 4) + "," + strhms.substring(4, 6); dataString = str1 + str2; return dataString; } @@ -64,4 +64,44 @@ return ""; } + + public static final String[] areaArr = { + "01", "东城", + "02", "西城", + "03", "朝阳", + "04", "丰台", + "05", "石景山", + "06", "海淀", + "07", "门头沟", + "08", "房山", + "09", "通州", + "10", "顺义", + "11", "昌平", + "12", "大兴", + "13", "怀柔", + "14", "平谷", + "16", "延庆", + "17", "亦庄", + "18", "新疆", + "15", "密云", + "19", "海南"}; + + + public static String getAreaCode(String areaName) { + if (ObjectUtil.isNotEmpty(areaName)) { + for (int i = 0; i < areaArr.length; i += 2) { + if (areaName.contains(areaArr[i + 1])) { + return areaArr[i]; + } + } + } + return ""; + } + + public static void main(String[] args) { + String ss = getAreaCode("东城"); + System.out.println(ss); + } + + } diff --git a/casic-web/src/main/resources/config/temp/device_template.xlsx b/casic-web/src/main/resources/config/temp/device_template.xlsx index 5e28020..06e46e4 100644 --- a/casic-web/src/main/resources/config/temp/device_template.xlsx +++ b/casic-web/src/main/resources/config/temp/device_template.xlsx Binary files differ diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml index a232c6d..3ba5a38 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmRecordsMapper.xml @@ -703,10 +703,10 @@ FROM device_temp dt JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.type = dt.WATCH_OBJECT - AND bl.valid = 1 + AND bl.valid = '1' JOIN bus_ledger_all_view bv ON bv.id = bl.LEDGER_ID AND bv.type = bl.type - AND bv.valid = 1 + AND bv.valid = '1' JOIN base_device_type bdt ON bdt.id = dt.DEVICE_TYPE JOIN alarm_rule au on au.PRODUCT_ID = dt.PRODUCT_ID and au.STATE = '1' and au.ALARM_THRESHOLD = 'OffLine' @@ -727,7 +727,7 @@ from device_off t where not EXISTS(SELECT 1 from alarm_records ar - where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = 1 and ar.STATUS = 1 and ar.ALARM_MSG='OffLine') + where ar.DEVCODE = t.DEVCODE and ar.EXCEPTION_TYPE = '1' and ar.STATUS = '1' and ar.ALARM_MSG='OffLine') diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml index 0bf9535..8792f78 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/AlarmStaticsMapper.xml @@ -263,7 +263,7 @@ ar.LEDGER_CODE , ar.ALARM_TYPE_ID , ar.REAL_ALARM , - DATE_FORMAT( ar.ALARM_TIME, '%Y-%m-%d' ) as alarmTime , + DATE_FORMAT( ar.TS, '%Y-%m-%d' ) as alarmTime , bl.DEPTID FROM alarm_records ar @@ -271,13 +271,13 @@ WHERE ar.`STATUS` = '1' AND bl.VALID='1' - AND ar.ALARM_TIME NOW()- INTERVAL 2 DAY - and ar.PROCESS_STATUS in('1','2','3','4','5','6') + AND ar.TS NOW()- INTERVAL 2 DAY + and ar.PROCESS_STATUS in('1','2','4','6') - and ar.ALARM_TIME >= #{request.begTime} + and ar.TS >= #{request.begTime} - and ar.ALARM_TIME #{request.endTime} + and ar.TS #{request.endTime} diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml index 6d63010..f3eaa3b 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/dao/mapping/OverViewMapper.xml @@ -171,8 +171,7 @@ @@ -238,9 +239,9 @@ bp.LOCATION_CATEGORY FROM bus_device bd - LEFT JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID + JOIN bus_device_ledger bl ON bd.id = bl.DEVICE_ID AND bl.VALID = '1' - LEFT JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID AND bp.TYPE = bl.TYPE AND bp.VALID = '1' WHERE @@ -330,7 +331,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID ='1' + AND bd.VALID >'0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java index cfa8ae6..c76f892 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/alarm/service/impl/AlarmRecordsServiceImpl.java @@ -934,22 +934,19 @@ @Transactional @Override public boolean process(List approvalLogs) { + boolean flowState = false; if (approvalLogs != null && approvalLogs.size() > 0) { - String confirmStatus = ""; + //过滤无需处置:状态无需改变 + approvalLogs.removeIf(approvalLog -> ApprovalStatusEnum.NONEEDPROCESS.getCode().equals(approvalLog.getFlowStatus())); for (ApprovalLog approvalLog : approvalLogs) { if (ApprovalStatusEnum.CONFIRMED.getCode().equals(approvalLog.getFlowStatus())) { //是否已确认,确认后不允许更改 ApprovalLog approvalLogConfirm = approvalLogMapper.getApprovalLog(approvalLog.getAlarmId(), ApprovalStatusEnum.CONFIRMED.getCode()); if (null == approvalLogConfirm) { + flowState = true; approvalLogMapper.insert(new ApprovalLog(approvalLog.getAlarmId(), approvalLog.getApprovalStatus(), approvalLog.getApprovalPerson(), ApprovalStatusEnum.CONFIRMED.getCode(), null, approvalLog.getDescn(), approvalLog.getConfirmValue())); - if (DictEnum.LEAK.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "0"; - } else if (DictEnum.MIS_REPORT1.equals(approvalLog.getApprovalStatus()) || - DictEnum.MIS_REPORT2.equals(approvalLog.getApprovalStatus())) { - confirmStatus = "1"; - } } } else { //toDo:查询该状态所有节点 删除 @@ -961,19 +958,19 @@ approvalLogStatus1.setId(approvalLogStatus.getId()); approvalLogMapper.updateById(approvalLogStatus1); } else { + flowState = true; approvalLogMapper.insert(approvalLogStatus1); } } } - //1、更新报警表流程状态 - ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); - AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); - alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); - alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); - if (ObjectUtil.isNotEmpty(confirmStatus)) { - alarmRecords.setRealAlarm(confirmStatus); + //1、只有新增时更新报警表流程状态 + if (flowState) { + ApprovalLog approvalLog = approvalLogs.get(approvalLogs.size() - 1); + AlarmRecords alarmRecords = getById(approvalLog.getAlarmId()); + alarmRecords.setPreProcessStatus(alarmRecords.getProcessStatus()); + alarmRecords.setProcessStatus(approvalLog.getFlowStatus()); + this.baseMapper.updateById(alarmRecords); } - this.baseMapper.updateById(alarmRecords); } return true; } diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java index 8a77315..92b5803 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataMonitorPipeOtherServiceImpl.java @@ -156,6 +156,8 @@ if (alarmRecordsService.isDeviceAlarmByCode(devCode, alarmEventCode)) continue; //2.写入新的报警 alarmRecordsService.saveDeviceAlarms(devCode, logTime, busWellDTOList, alarmDeviceRuleResponseDTO); + //3.更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmEventCode)); } catch (Exception e) { e.printStackTrace(); diff --git a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java index c5714ea..62cd5a5 100644 --- a/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java +++ b/casic-data/src/main/java/com/casic/missiles/modular/data/service/impl/DataTubeOtherServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.enums.AlarmEnum; import com.casic.missiles.enums.DeviceTypeEnum; import com.casic.missiles.enums.DictEnum; import com.casic.missiles.modular.alarm.dto.AlarmDeviceRuleResponseDTO; @@ -141,6 +142,8 @@ if (!alarmRecordsService.isWatchAlarms(devCode, alarmType)) { alarmRecordsService.saveWatchAlarms(devCode, alarmType, logTime, busWellDTOList, alarmDeviceRuleResponseDTO.get().getAlarmTypeId(), alarmDeviceRuleResponseDTO.get().getAlarmLevelId(), alarmDeviceRuleResponseDTO.get().getAlarmTypeName(), DeviceTypeEnum.TubeOther.getName()); + //更新设备报警状态 + busDeviceService.updateBusDeviceStatus(devCode, AlarmEnum.getValue(alarmType)); } } catch (Exception e) { e.printStackTrace(); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java index cd667a0..e1c2678 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusDamageMonitorController.java @@ -8,9 +8,10 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; -import com.casic.missiles.modular.device.dto.*; +import com.casic.missiles.modular.device.dto.DamageMonitorDTO; +import com.casic.missiles.modular.device.dto.DamageMonitorRequestDTO; +import com.casic.missiles.modular.device.dto.DeviceMonitorRequestDTO; import com.casic.missiles.modular.device.service.IBusDamageMonitorService; -import com.casic.missiles.modular.device.service.IBusLeakMonitorService; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java index 7fa0488..32ca924 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLeakMonitorController.java @@ -69,12 +69,13 @@ // return ReturnUtil.success(leakMonitorService.lifecycleRecord(requestDTO)); // } // -// @ApiOperation("全生命周期记录导出") -// @RequestMapping(value = "/lifecycleRecordExp", method = RequestMethod.GET) -// public void lifecycleRecordExp(DeviceMonitorRequestDTO requestDTO, HttpServletResponse response) { -// Assert.isFalse(Objects.isNull(requestDTO.getWellId()), () -> { -// throw new BusinessException(BusinessExceptionEnum.ID_NULL); -// }); +// @ApiOperation("列表导出") +// @RequestMapping(value = "/batchExport", method = RequestMethod.GET) +// public void lifecycleRecordExp(LeakMonitorRequestDTO request, HttpServletResponse response) { +// Page page = PageFactory.defaultPage(); +// page.setCurrent(1); +// page.setSize(Integer.MAX_VALUE); +// page=leakMonitorService.pageList(page, request); // try { // iBaseExportService.exportExcel(response, LifeCycleRecordDTO.class, leakMonitorService.lifecycleRecord(requestDTO), ExportEnum.LIFE_CYCLE_RECORD_EXPORT.getSheetName()); // } catch (Exception e) { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java index 3a34f30..31de56e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/controller/BusLedgerPipeController.java @@ -23,6 +23,7 @@ import com.casic.missiles.modular.device.entity.BusDevice; import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.util.CommonUtil; import com.casic.missiles.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,6 +66,7 @@ Long id =IdUtil.getSnowflake(1,2).nextId(); busLedgerPipe.setId(id); busLedgerPipe.setLedgerCode(busLedgerPipe.getTagNumber()); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); iBusLedgerPipeService.save(busLedgerPipe); return ReturnUtil.success(id); } @@ -105,6 +107,7 @@ Assert.isFalse(Objects.isNull(busLedgerPipe.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); + busLedgerPipe.setArea(CommonUtil.getAreaCode(busLedgerPipe.getPosition())); return ReturnUtil.success(iBusLedgerPipeService.updateById(busLedgerPipe)); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml index 6046742..13ee2ec 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDamageMonitorMapper.xml @@ -45,12 +45,13 @@ bv.MONITOR_STATE AS monitorState, bv.DEPTID, bd.ONLINE_STATE AS onlineState, - bd.DEVCODE, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, bd.cell, bd.LOGTIME, bd.MONITOR_CONTENT, - bv.place + bv.place, + bm.`NAME` AS manufacturerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id @@ -62,7 +63,9 @@ JOIN base_device_type bt ON bt.ID = bd.DEVICE_TYPE AND bt.IS_USED = '1' AND FIND_IN_SET( '2', bt.WATCH_TYPE ) - and bd.MONITOR_TYPE = '1' + AND bd.MONITOR_TYPE = '1' + JOIN base_product bp on bp.id=bd.PRODUCT_ID + JOIN bus_manufacturer bm on bm.ID=bp.MANUFACTURER_ID and bv.tagNumber like concat('%', #{request.tagNumber}, '%') @@ -78,6 +81,9 @@ and bv.place like concat('%', #{request.tagNumber}, '%') + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.DEPTID in (${deptIds}) @@ -96,8 +102,11 @@ bv.lngGaode, bv.MONITOR_STATE AS monitorState, bd.ONLINE_STATE AS onlineState, + bd.DEVCODE as deviceCode, bt.TYPE_NAME AS deviceTypeName, - bt.ID AS deviceTypeId + bt.ID AS deviceTypeId, + bv.place, + bv.deptid FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml index 00d331d..1e8ae63 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusDeviceMapper.xml @@ -36,7 +36,8 @@ bl.place as "position", bl.DEPTID, bl.lngGaode as lng, - bl.latGaode as lat + bl.latGaode as lat, + bl.ledgerName FROM bus_device bd LEFT JOIN base_device_type bt ON bd.DEVICE_TYPE = bt.ID diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml index 403f816..0690e1e 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLeakMonitorMapper.xml @@ -47,6 +47,7 @@ bv.place, bv.type, bv.MONITOR_STATE, + bd.ONLINE_STATE, bd.LOGTIME, bd.CELL, bd.MONITOR_VALUE @@ -54,7 +55,7 @@ bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id AND bl.VALID = '1' - AND bd.VALID = '1' + AND bd.VALID > '0' JOIN bus_ledger_all_view bv ON bl.LEDGER_ID = bv.id AND bv.type = bl.TYPE AND bv.VALID = '1' @@ -83,6 +84,9 @@ and bv.MONITOR_STATE = #{request.monitorState} + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + and bv.type = #{request.type} @@ -104,7 +108,13 @@ bv.latGaode, bv.lngGaode, bv.MONITOR_STATE as monitorState, - bd.ONLINE_STATE as onlineState + bd.ONLINE_STATE as onlineState, + bv.deptid, + bv.propertyOwner, + bv.manageType, + bt.TYPE_NAME as deviceTypeName, + bd.DEVCODE as deviceCode, + bv.ledgerName FROM bus_device_ledger bl JOIN bus_device bd ON bl.DEVICE_ID = bd.id diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml index 6006216..62f3dcd 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dao/mapping/BusLedgerPipeMapper.xml @@ -95,6 +95,7 @@ SELECT blp.*, bd.DEVCODE, + bd.ONLINE_STATE, bt.TYPE_NAME, bp.CONSTRUCT_ERA, bp.MATERIAL, @@ -111,7 +112,7 @@ LEFT JOIN base_product bpt ON bpt.ID = bd.PRODUCT_ID LEFT JOIN bus_manufacturer bm ON bm.ID = bpt.MANUFACTURER_ID LEFT JOIN bus_pipeline bp ON blp.PIPE_CODE = bp.PIPE_CODE - WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' + WHERE bd.VALID >0 and bd.MONITOR_TYPE= '0' and blp.LOCATION_CATEGORY in('2','3','1') and bd.DEVCODE like concat('%', #{request.devCode}, '%') @@ -125,6 +126,10 @@ and blp.DEPTID in (${deptStrs}) + + and FIND_IN_SET(bd.ONLINE_STATE,#{request.onlineState}) + + and blp.PIPE_CODE like concat('%', #{request.pipeCode}, '%') @@ -163,6 +168,7 @@ bp.MANAGE_TYPE, bd.VALID as onState, bd.ONLINE_STATE as status, + bd.ONLINE_STATE, bd.LEFT_LENGTH, bd.RIGHT_LENGTH, bpt.DEVICE_MODEL as modelName, @@ -242,7 +248,7 @@ device_temp dt LEFT JOIN base_device_type bt ON bt.id = dt.DEVICE_TYPE JOIN bus_device_ledger bl ON bl.DEVICE_ID = dt.id AND bl.VALID = 1 - JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type + JOIN bus_ledger_pipe bp ON bp.id = bl.LEDGER_ID and bl.type=bp.type and bp.LOCATION_CATEGORY in('2','3','1') where 1=1 and bp.DEPTID in (${deptids}) diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java index 28b30fa..1cc8430 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusDeviceImportDTO.java @@ -32,6 +32,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("安装位置") private String position; @@ -47,6 +50,9 @@ @ExcelProperty("监测类型") private String monitorType; + @ExcelProperty("位置类别") + private String locationCategory; + private String watchObject; private Long deviceType; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java index f653aba..f3954c9 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeMonitorRequestDTO.java @@ -45,7 +45,7 @@ @ApiModelProperty("位置类别(1:管线监测点,2:交叉穿越点)") private String locationCategory; - @ApiModelProperty("1:在线,0:离线,2:报警") + @ApiModelProperty("1:在线,0:离线,2:报警,3故障") private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java index f919d1b..1580ed7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeRequestDTO.java @@ -27,7 +27,7 @@ @ApiModelProperty("1:其他,3:管线") private String type; - @ApiModelProperty("位置类别") + @ApiModelProperty("位置类别0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测") private String locationCategory; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java index 35518b6..685cf80 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusLedgerPipeResponseDTO.java @@ -69,6 +69,9 @@ @ApiModelProperty("设备运行状态") private String status; + @ApiModelProperty("设备运行状态") + private String onlineState; + @ApiModelProperty("左侧指示带长度") private String leftLength; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java index 0f953b1..eae9ed5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/BusPositionImportDTO.java @@ -31,6 +31,9 @@ @ExcelProperty("管理单位") private Long deptid; + @ExcelProperty("单位名称") + private String deptName; + @ExcelProperty("位置类别") private String locationCategory; @ExcelProperty("监测类型") diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java index 7a9cd10..45b0f7c 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorDTO.java @@ -24,6 +24,8 @@ @ApiModelProperty("地址") private String place; + @ApiModelProperty("设备编号") + private String deviceCode; @ApiModelProperty("单位名称") private String deptName; @@ -53,4 +55,7 @@ @ApiModelProperty("电量") private String cell; + @ApiModelProperty("厂商名称") + private String manufacturerName; + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java index 8cb428f..0414b23 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/DamageMonitorRequestDTO.java @@ -27,5 +27,6 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; - + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java index 6f20fc9..a2db3c5 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorDTO.java @@ -46,6 +46,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + @ApiModelProperty("最新时间") private String logTime; diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java index 9980a63..5fb4b57 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/dto/LeakMonitorRequestDTO.java @@ -40,5 +40,9 @@ @ApiModelProperty("监控状态(0:未监控,1:正常,2:异常,3:离线)") private String monitorState; + @ApiModelProperty("设备状态(1:在线,0:离线,2:报警,3:故障)") + private String onlineState; + + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java index 3546de5..9f95ade 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusDevice.java @@ -44,6 +44,7 @@ @TableField("DEVCODE") private String devcode; + @ExcelProperty(value = "设备名称", order = 16) @ApiModelProperty("设备名称") @TableField("DEVICE_NAME") private String deviceName; @@ -84,6 +85,10 @@ @ApiModelProperty("deviceId,电信平台记录") @TableField("NB_DEVICE_ID") private String nbDeviceId; + + @ApiModelProperty("设备监测报警内容") + @TableField("MONITOR_CONTENT") + private String monitorContent; // // @ApiModelProperty("productId电信平台记录") // @TableField("NB_PRODUCT_ID") @@ -197,6 +202,11 @@ @TableField(exist = false) private String deviceCategory; + + @ExcelProperty(value = "位号名称", order = 17) + @TableField(exist = false) + private String ledgerName; + public BusDevice() { } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java index 726b258..4bab5eb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/entity/BusLedgerPipe.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.casic.missiles.modular.device.dto.BusPositionImportDTO; +import com.casic.missiles.util.CommonUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -81,7 +82,7 @@ private String type; @ExcelProperty(value = "位置类别", order = 2) - @ApiModelProperty("位置类别(1:管线监测点;2:交叉穿越点;3:占压隐患点;4:应急监测点)") + @ApiModelProperty("位置类别(0:管线监测点;1:交叉穿越点;2:占压隐患点;3:应急监测点)") @TableField("LOCATION_CATEGORY") private String locationCategory; @@ -106,6 +107,10 @@ @TableField("SFQ") private String sfq; + @ApiModelProperty("所属区域") + @TableField("AREA") + private String area; + @ApiModelProperty("监控状态(1:正常,2:异常,3:离线,0:未监测)") @TableField("MONITOR_STATE") private String monitorState; @@ -147,7 +152,8 @@ public BusLedgerPipe(Long id,String pipeCode, String ledgerName, String tagNumber, String lngGaode, String latGaode, String position, - Long deptid, String devcode, String type, String locationCategory) { + Long deptid, String devcode, String type, + String locationCategory,String area) { this.id=id; this.pipeCode = pipeCode; this.ledgerName = ledgerName; @@ -160,6 +166,7 @@ this.devcode = devcode; this.type = type; this.locationCategory = locationCategory; + this.area = area; } public static List convertDeviceList(List dtoList) { @@ -177,7 +184,8 @@ positionImportDTO.getDeptid(), "", positionImportDTO.getType(), - positionImportDTO.getLocationCategory())); + positionImportDTO.getLocationCategory(), + CommonUtil.getAreaCode(positionImportDTO.getPosition()))); }); return busDeviceList; } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java index 5eac6d8..2fe5cc2 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/IBusDeviceService.java @@ -60,4 +60,6 @@ boolean updateBusDeviceStatus(String devcode,String status); + boolean updateBusDeviceAlarmState(String devcode,String alarmMsg); + } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java index 43c5f1e..d51119a 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusDeviceServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractAuthService; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.base.service.IBaseExportService; import com.casic.missiles.core.model.auth.AuthUser; @@ -22,6 +23,7 @@ import com.casic.missiles.modular.device.dto.*; import com.casic.missiles.modular.device.entity.*; import com.casic.missiles.modular.device.service.*; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import com.casic.missiles.util.CommonUtil; import lombok.RequiredArgsConstructor; @@ -31,10 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -60,6 +59,7 @@ private final AbstractAuthService authService; private final IBaseExportService iBaseExportService; private final IBusLedgerPipeService iBusLedgerPipeService; + private final AbstractDeptService abstractDeptService; @Transactional @Override @@ -84,7 +84,7 @@ @Override public Page listPage(Page page, BusDeviceDTO request) { - if(DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); + if (DictEnum.DEVICE_ONLINE.equals(request.getOnlineState())) request.setOnlineState("1,2,3"); page.setOptimizeCountSql(false); Page busDevicePage = this.baseMapper.pageList(page, request, commonServer.getDeptScopeIds(request.getDeptId())); List busDeviceList = busDevicePage.getRecords(); @@ -336,6 +336,9 @@ //获取管线编号 List pipeCodeList = iBusLedgerService.getPipeCodeList(); List pipeList = new ArrayList<>(); + //获取单位信息 + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); final Integer[] index = {1}; results.forEach(deviceImportDTO -> { @@ -389,6 +392,37 @@ list.add("第" + index[0] + "行,关联管线在系统中不存在!"); return; } + //校验单位 + if (ObjectUtil.isNotEmpty(deviceImportDTO.getDeptName())) { + if (deviceImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = deviceImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(deviceImportDTO.getDeptName())) { + deviceImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(deviceImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(deviceImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, deviceImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deviceImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + deviceImportDTO.setDeptid(first.get().getId()); + } + } + } + } + //新增点位 if ("3".equals(deviceImportDTO.getWatchObject()) || "1".equals(deviceImportDTO.getWatchObject())) { //toDo:安装位号一致,入一次即可 @@ -396,7 +430,8 @@ Long pipeLedgerId = IdUtil.getSnowflake(1, 2).nextId(); BusLedgerPipe busLedgerPipe = new BusLedgerPipe(pipeLedgerId, deviceImportDTO.getPipeCode(), deviceImportDTO.getTagNumber(), deviceImportDTO.getTagNumber(), deviceImportDTO.getLng(), deviceImportDTO.getLat(), - deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), deviceImportDTO.getWatchObject(), ""); + deviceImportDTO.getPosition(), deviceImportDTO.getDeptid(), deviceImportDTO.getDevCode(), + deviceImportDTO.getWatchObject(), deviceImportDTO.getLocationCategory(), CommonUtil.getAreaCode(deviceImportDTO.getPosition())); // busLedgerPipe = iBusLedgerPipeService.saveBusLedgerPipe(busLedgerPipe); pipeList.add(busLedgerPipe); deviceImportDTO.setLedgerIds(Arrays.asList(pipeLedgerId)); @@ -584,4 +619,13 @@ updateWrapper.set("ONLINE_STATE", status); return this.update(updateWrapper); } + + @Override + public boolean updateBusDeviceAlarmState(String devcode, String alarmMsg) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("DEVCODE", devcode); + updateWrapper.set("MONITOR_CONTENT", alarmMsg); + updateWrapper.set("LOGTIME", new Date()); + return this.update(updateWrapper); + } } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java index 4eabcbc..d9a9566 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/device/service/impl/BusLedgerPipeServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.context.AbstractPermissionContext; +import com.casic.missiles.core.application.service.AbstractDeptService; import com.casic.missiles.core.application.service.AbstractDictService; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; @@ -17,6 +18,7 @@ import com.casic.missiles.modular.device.entity.BusLedgerPipe; import com.casic.missiles.modular.device.service.IBusDeviceService; import com.casic.missiles.modular.device.service.IBusLedgerPipeService; +import com.casic.missiles.modular.system.model.Dept; import com.casic.missiles.server.CommonServer; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; @@ -24,10 +26,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -46,6 +45,7 @@ private final AbstractDictService abstractDictService; private final BusDeviceMapper busDeviceMapper; private final CommonServer commonServer; + private final AbstractDeptService abstractDeptService; @Lazy @Autowired private IBusDeviceService iBusDeviceService; @@ -65,7 +65,7 @@ queryWrapper.in(ObjectUtil.isNotEmpty(deptIds), "DEPTID", deptIds); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getType()), "TYPE", request.getType()); queryWrapper.eq(ObjectUtil.isNotEmpty(request.getLocationCategory()), "LOCATION_CATEGORY", request.getLocationCategory()); - queryWrapper.eq( "VALID", "1"); + queryWrapper.eq("VALID", "1"); queryWrapper.orderByDesc("TS"); Page pipePage = this.page(page, queryWrapper); List pipeList = pipePage.getRecords(); @@ -99,7 +99,7 @@ busLedger.setOnState("1".equals(busLedger.getOnState()) ? "在用" : "备用"); // 在用状态字典值 busLedger.setDeptName(ObjectUtil.isNotEmpty(busLedger.getDeptid()) ? commonServer.getDeptNamesByDeptId(busLedger.getDeptid()) : ""); // 管理单位名称 busLedger.setPressType(abstractDictService.getDictNameByCode("wellType", busLedger.getPressType())); // 位置状态字典值 - busLedger.setMonitorState(abstractDictService.getDictNameByCode("monitorState", busLedger.getMonitorState())); // 监控状态字典值 + busLedger.setMonitorState(abstractDictService.getDictNameByCode("onlineState", busLedger.getOnlineState())); // 监控状态替换为设备状态字典值 }); return pageList; } @@ -200,6 +200,9 @@ if (!CollectionUtil.isEmpty(results)) { List busLedgerPipeList = this.getList(); List tagCodes = busLedgerPipeList.stream().map(BusLedgerPipe::getTagNumber).collect(Collectors.toList()); + List deptList = abstractDeptService.getListByTips(""); + List deptNames = deptList.stream().map(Dept::getFullName).collect(Collectors.toList()); + final Integer[] index = {1}; results.forEach(busPositionImportDTO -> { index[0]++; @@ -208,7 +211,36 @@ list.add("第" + index[0] + "行,安装位号已存在!"); return; } - + //验证单位 + if (ObjectUtil.isNotEmpty(busPositionImportDTO.getDeptName())) { + if (busPositionImportDTO.getDeptName().contains("/")) { + String[] deptNameArr = busPositionImportDTO.getDeptName().split("/"); + List deptStream = deptList.stream().filter(e -> Objects.equals(e.getFullName(), deptNameArr[deptNameArr.length - 1])).collect(Collectors.toList()); + for (Dept dept : deptStream) { + if (commonServer.getDeptNamesByDeptId(dept.getId()).contains(busPositionImportDTO.getDeptName())) { + busPositionImportDTO.setDeptid(dept.getId()); + } + } + if (ObjectUtil.isEmpty(busPositionImportDTO.getDeptid())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } + } else { + if (!deptNames.contains(busPositionImportDTO.getDeptName())) { + list.add("第" + index[0] + "行,单位名称不存在!"); + return; + } else { + if (Collections.frequency(deptNames, busPositionImportDTO.getDeptName()) > 1) { + list.add("第" + index[0] + "行,单位名称在系统中不唯一!"); + return; + } + Optional first = deptList.stream().filter(e -> Objects.equals(e.getFullName(), busPositionImportDTO.getDeptName())).findFirst(); + if (first.isPresent()) { + busPositionImportDTO.setDeptid(first.get().getId()); + } + } + } + } }); if (CollectionUtil.isNotEmpty(list)) { return list; diff --git a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java index 438fca3..4a89a33 100644 --- a/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java +++ b/casic-public/src/main/java/com/casic/missiles/util/CommonUtil.java @@ -10,7 +10,7 @@ import java.util.function.Predicate; public class CommonUtil { - public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static final SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH,mm,ss"); public static boolean isNumber(String str) { if (StrUtil.isNotEmpty(str)) { @@ -24,7 +24,7 @@ String strymd = dataString.substring(0, 8); String str1 = strymd.substring(0, 4) + "-" + strymd.substring(4, 6) + "-" + strymd.substring(6, 8) + " "; String strhms = dataString.substring(8); - String str2 = strhms.substring(0, 2) + ":" + strhms.substring(2, 4) + ":" + strhms.substring(4, 6); + String str2 = strhms.substring(0, 2) + "," + strhms.substring(2, 4) + "," + strhms.substring(4, 6); dataString = str1 + str2; return dataString; } @@ -64,4 +64,44 @@ return ""; } + + public static final String[] areaArr = { + "01", "东城", + "02", "西城", + "03", "朝阳", + "04", "丰台", + "05", "石景山", + "06", "海淀", + "07", "门头沟", + "08", "房山", + "09", "通州", + "10", "顺义", + "11", "昌平", + "12", "大兴", + "13", "怀柔", + "14", "平谷", + "16", "延庆", + "17", "亦庄", + "18", "新疆", + "15", "密云", + "19", "海南"}; + + + public static String getAreaCode(String areaName) { + if (ObjectUtil.isNotEmpty(areaName)) { + for (int i = 0; i < areaArr.length; i += 2) { + if (areaName.contains(areaArr[i + 1])) { + return areaArr[i]; + } + } + } + return ""; + } + + public static void main(String[] args) { + String ss = getAreaCode("东城"); + System.out.println(ss); + } + + } diff --git a/casic-web/src/main/resources/config/temp/device_template.xlsx b/casic-web/src/main/resources/config/temp/device_template.xlsx index 5e28020..06e46e4 100644 --- a/casic-web/src/main/resources/config/temp/device_template.xlsx +++ b/casic-web/src/main/resources/config/temp/device_template.xlsx Binary files differ diff --git a/casic-web/src/main/resources/config/temp/wellInfo_template.xlsx b/casic-web/src/main/resources/config/temp/wellInfo_template.xlsx index c7ade00..021b365 100644 --- a/casic-web/src/main/resources/config/temp/wellInfo_template.xlsx +++ b/casic-web/src/main/resources/config/temp/wellInfo_template.xlsx Binary files differ