日志记录调整

This commit is contained in:
2025-06-24 20:54:10 +08:00
parent 95b9bef76e
commit 70f5cde320
2 changed files with 33 additions and 25 deletions

View File

@@ -178,6 +178,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
public List<DetailAbnormalVO> monitorAbnormalTable(MonitorBaseParam monitorBaseParam) {
List<DetailAbnormalVO> result = new ArrayList<>();
//参数校验
Map<String, PqReasonableRangeDto> rangeMap= getStandRange();
if(StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
if (!rangeMap.containsKey(monitorBaseParam.getTargetKey())) {
@@ -185,6 +186,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
}
}
//查询台账
List<LineDevGetDTO> lineDetailList = lineMapper.getMonitorListDetail(monitorBaseParam.getMonitorIds());
Map<String, LineDevGetDTO> lineDetailMap = lineDetailList.stream().collect(Collectors.toMap(LineDevGetDTO::getPointId, Function.identity()));

View File

@@ -498,7 +498,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
if(CollUtil.isNotEmpty(logsList)){
List<PqsTerminalLogs> 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<LineMapper, Line> imple
}
private void deleteProjectAndChildren(Line project,List<Line> ledgerList,List<PqsTerminalLogs> logsList) {
private void deleteProjectAndChildren(Line project,List<Line> ledgerList,List<PqsTerminalLogs> logsList,Map<String,Node> nodeMap) {
// 1. 删除项目本身
this.removeById(project.getId());
@@ -1383,10 +1383,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> 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<Line> ledgerList,List<PqsTerminalLogs> logsList) {
private void deleteProvinceAndChildren(String provinceId,List<Line> ledgerList,List<PqsTerminalLogs> logsList,Map<String,Node> nodeMap) {
this.removeById(provinceId);
// 1. 查询并删除所有供电公司
@@ -1402,10 +1402,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> 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<Line> ledgerList,List<PqsTerminalLogs> logsList) {
private void deletePowerCompanyAndChildren(String companyId,List<Line> ledgerList,List<PqsTerminalLogs> logsList,Map<String,Node> nodeMap) {
this.removeById(companyId);
// 1. 查询并删除所有变电站
List<Line> substations = findChildren(companyId);
@@ -1424,10 +1424,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> 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<Line> ledgerList,List<PqsTerminalLogs> logsList) {
private void deleteSubstationAndChildren(String substationId,List<Line> ledgerList,List<PqsTerminalLogs> logsList,Map<String,Node> nodeMap) {
this.removeById(substationId);
substationMapper.deleteById(substationId);
// 1. 查询并删除所有装置
@@ -1459,13 +1459,19 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
});*/
// 2. 对每个装置删除其下级
deviceIds.forEach(it-> deleteDeviceAndChildren(it,ledgerList,logsList));
deviceIds.forEach(it-> deleteDeviceAndChildren(it,ledgerList,logsList,nodeMap));
}
private void deleteDeviceAndChildren(String deviceId,List<Line> ledgerList,List<PqsTerminalLogs> logsList) {
private void deleteDeviceAndChildren(String deviceId,List<Line> ledgerList,List<PqsTerminalLogs> logsList,Map<String,Node> 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<Line> busbars = findChildren(deviceId);
if (CollectionUtil.isEmpty(busbars)) {
@@ -1541,6 +1547,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
List<Line> logsLedger = new ArrayList<>();
//用于存放最终日志信息
List<PqsTerminalLogs> allLogs = new ArrayList<>();
//用于记录删除终端的前置信息
Map<String,Node> 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<LineMapper, Line> 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<String,DictData> 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<LineMapper, Line> 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<LineMapper, Line> imple
/**
* 终端日志记录(只记录新增删除)
*/
private void terminalLogsCat(List<Line> logsList,String operateType,List<PqsTerminalLogs> pqsTerminalLogsList){
private void terminalLogsCat(List<Line> logsList,String operateType,List<PqsTerminalLogs> pqsTerminalLogsList,Map<String,Node> nodeMap){
String op;
Map<String,Line> subMap = new HashMap<>();
List<Line> 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<LineMapper, Line> 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());