diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java index 2bc4309fe..2c538e79f 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java @@ -178,6 +178,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl monitorAbnormalTable(MonitorBaseParam monitorBaseParam) { List result = new ArrayList<>(); + //参数校验 Map rangeMap= getStandRange(); if(StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) { if (!rangeMap.containsKey(monitorBaseParam.getTargetKey())) { @@ -185,6 +186,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl lineDetailList = lineMapper.getMonitorListDetail(monitorBaseParam.getMonitorIds()); Map lineDetailMap = lineDetailList.stream().collect(Collectors.toMap(LineDevGetDTO::getPointId, Function.identity())); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java index ced89a366..bfd684ab3 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java @@ -498,7 +498,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple if(CollUtil.isNotEmpty(logsList)){ List pqsTerminalLogsList = new ArrayList<>(); - terminalLogsCat(logsList,Param.ADD,pqsTerminalLogsList); + terminalLogsCat(logsList,Param.ADD,pqsTerminalLogsList,new HashMap<>()); for(PqsTerminalLogs pqsTerminalLogs : pqsTerminalLogsList){ pqsTerminalLogsMapper.insert(pqsTerminalLogs); } @@ -1366,7 +1366,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } - private void deleteProjectAndChildren(Line project,List ledgerList,List logsList) { + private void deleteProjectAndChildren(Line project,List ledgerList,List logsList,Map nodeMap) { // 1. 删除项目本身 this.removeById(project.getId()); @@ -1383,10 +1383,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple this.removeByIds(provinceIds); // 3. 对每个省份删除其下级 - provinceIds.forEach(it-> deleteProvinceAndChildren(it,ledgerList,logsList)); + provinceIds.forEach(it-> deleteProvinceAndChildren(it,ledgerList,logsList,nodeMap)); } - private void deleteProvinceAndChildren(String provinceId,List ledgerList,List logsList) { + private void deleteProvinceAndChildren(String provinceId,List ledgerList,List logsList,Map nodeMap) { this.removeById(provinceId); // 1. 查询并删除所有供电公司 @@ -1402,10 +1402,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple this.removeByIds(companyIds); // 2. 对每个供电公司删除其下级 - companyIds.forEach(it-> deletePowerCompanyAndChildren(it,ledgerList,logsList)); + companyIds.forEach(it-> deletePowerCompanyAndChildren(it,ledgerList,logsList,nodeMap)); } - private void deletePowerCompanyAndChildren(String companyId,List ledgerList,List logsList) { + private void deletePowerCompanyAndChildren(String companyId,List ledgerList,List logsList,Map nodeMap) { this.removeById(companyId); // 1. 查询并删除所有变电站 List substations = findChildren(companyId); @@ -1424,10 +1424,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple substationMapper.deleteBatchIds(substationIds); // 2. 对每个变电站删除其下级 - substationIds.forEach(it-> deleteSubstationAndChildren(it,ledgerList,logsList)); + substationIds.forEach(it-> deleteSubstationAndChildren(it,ledgerList,logsList,nodeMap)); } - private void deleteSubstationAndChildren(String substationId,List ledgerList,List logsList) { + private void deleteSubstationAndChildren(String substationId,List ledgerList,List logsList,Map nodeMap) { this.removeById(substationId); substationMapper.deleteById(substationId); // 1. 查询并删除所有装置 @@ -1459,13 +1459,19 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple });*/ // 2. 对每个装置删除其下级 - deviceIds.forEach(it-> deleteDeviceAndChildren(it,ledgerList,logsList)); + deviceIds.forEach(it-> deleteDeviceAndChildren(it,ledgerList,logsList,nodeMap)); } - private void deleteDeviceAndChildren(String deviceId,List ledgerList,List logsList) { + private void deleteDeviceAndChildren(String deviceId,List ledgerList,List logsList,Map nodeMap) { + Device device = deviceMapper.selectById(deviceId); + Node node = nodeService.getNodeById(device.getNodeId()); + nodeMap.put(device.getId(),node); + this.removeById(deviceId); deviceMapper.deleteById(deviceId); + + // 1. 查询并删除所有母线 List busbars = findChildren(deviceId); if (CollectionUtil.isEmpty(busbars)) { @@ -1541,6 +1547,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple List logsLedger = new ArrayList<>(); //用于存放最终日志信息 List allLogs = new ArrayList<>(); + //用于记录删除终端的前置信息 + Map nodeMap = new HashMap<>(); Line obj = this.getById(id); if (Objects.isNull(obj)) { throw new BusinessException(CommonResponseEnum.FAIL); @@ -1550,27 +1558,21 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple // 根据层级选择删除策略 switch (lineBaseEnum) { case PROJECT_LEVEL: - deleteProjectAndChildren(obj,logsLedger,allLogs); + deleteProjectAndChildren(obj,logsLedger,allLogs,nodeMap); break; case PROVINCE_LEVEL: - deleteProvinceAndChildren(obj.getId(),logsLedger,allLogs); + deleteProvinceAndChildren(obj.getId(),logsLedger,allLogs,nodeMap); break; case GD_LEVEL: - deletePowerCompanyAndChildren(obj.getId(),logsLedger,allLogs); + deletePowerCompanyAndChildren(obj.getId(),logsLedger,allLogs,nodeMap); break; case SUB_LEVEL: - deleteSubstationAndChildren(obj.getId(),logsLedger,allLogs); + deleteSubstationAndChildren(obj.getId(),logsLedger,allLogs,nodeMap); break; case DEVICE_LEVEL: Line sub = this.getById(obj.getPid()); - Device dev = deviceMapper.selectById(obj.getId()); - String userName= RequestUtil.getUserNickname(); - Map dictDataMap = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_TYPE.getCode()).getData().stream().collect(Collectors.toMap(DictData::getId, Function.identity())); - DictData dicDataByCode = dicDataFeignClient.getDicDataByCode(DicDataEnum.DEV_PARAMETER.getCode()).getData(); - - // devLogsCat(Param.DEL_ZN,null,obj,sub,dev,pqsTerminalLogsList,dictDataMap,dicDataByCode,userName); - - deleteDeviceAndChildren(obj.getId(),logsLedger,allLogs); + logsLedger.add(sub); + deleteDeviceAndChildren(obj.getId(),logsLedger,allLogs,nodeMap); break; case SUB_V_LEVEL: deleteBusbarAndChildren(obj.getId(),logsLedger,allLogs); @@ -1583,7 +1585,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } if(CollUtil.isNotEmpty(logsLedger)){ - terminalLogsCat(logsLedger,Param.DEL,allLogs); + terminalLogsCat(logsLedger,Param.DEL,allLogs,nodeMap); for(PqsTerminalLogs pqsTerminalLogs: allLogs){ pqsTerminalLogsMapper.insert(pqsTerminalLogs); } @@ -4015,7 +4017,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple /** * 终端日志记录(只记录新增删除) */ - private void terminalLogsCat(List logsList,String operateType,List pqsTerminalLogsList){ + private void terminalLogsCat(List logsList,String operateType,List pqsTerminalLogsList,Map nodeMap){ String op; Map subMap = new HashMap<>(); List temList = logsList.stream().filter(it-> it.getLevel().equals(LINE_LEVEL.getCode()) ||it.getLevel().equals(DEVICE_LEVEL.getCode())).collect(Collectors.toList()); @@ -4057,9 +4059,13 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple levelOperate = LINE_LEVEL.getMessage(); }else{ levelOperate = DEVICE_LEVEL.getMessage(); + if(nodeMap.containsKey(line.getId())){ + nodeName = ";前置信息:"+nodeMap.get(line.getName()).getId(); + } + } subName = subMap.get(line.getPids().split(StrUtil.COMMA)[SUB_LEVEL.getCode()]).getName(); - String temLos = "%s进行%s%s操作; %s名称: %s"; + String temLos = "%s进行%s%s操作;详细信息: %s名称: %s"; String tem = String.format(temLos,name,op,levelOperate,levelOperate,subName+"_"+line.getName()+nodeName); pqsTerminalLogs.setTerminalDescribe(tem); pqsTerminalLogs.setState(DataStateEnum.ENABLE.getCode());