前置机切操作日志推送

This commit is contained in:
hzj
2025-07-23 10:36:46 +08:00
parent 92ecb29b68
commit c2bc212e97

View File

@@ -3680,6 +3680,44 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList = new ArrayList<>(); List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList = new ArrayList<>();
List<String> addAndDelteId = new ArrayList<>(); List<String> addAndDelteId = new ArrayList<>();
if(!CollectionUtils.isEmpty(list)){ if(!CollectionUtils.isEmpty(list)){
//前置层修改
List<PqsTerminalLogs> list1 = list.stream().filter(temp -> temp.getTerminalDescribe().contains("终端所属前置机由")).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(list1)){
for (PqsTerminalLogs temp : list1) {
String temLos = "%s终端所属前置机由 %s 改为> %s;";
List<String> strings = this.parseTemplateValues(temLos, temp.getTerminalDescribe());
String node1 = strings.get(1); // 第一个前置
String node2 = strings.get(2); // 第二个前置
if(deviceProcesseMap.containsKey(temp.getObjIndex())){
Integer processNum = deviceProcesseMap.get(temp.getObjIndex());
PqsTerminalPushLogDTO pqsTerminalPushLogDTO = new PqsTerminalPushLogDTO();
pqsTerminalPushLogDTO.setId(temp.getId());
String deviceId = temp.getObjIndex();
pqsTerminalPushLogDTO.setDevId(deviceId);
pqsTerminalPushLogDTO.setDevName(lineMap.containsKey(deviceId)?lineMap.get(deviceId).getName():"删除设备");
pqsTerminalPushLogDTO.setNodeId(node1);
pqsTerminalPushLogDTO.setNodeName(nodeMap.get(node1).getName());
pqsTerminalPushLogDTO.setProcessUpdateFlag(true);
pqsTerminalPushLogDTO.setProcessNum(processNum);
pqsTerminalPushLogDTOList.add(pqsTerminalPushLogDTO);
PqsTerminalPushLogDTO pqsTerminalPushLogDTO2 = new PqsTerminalPushLogDTO();
pqsTerminalPushLogDTO2.setId(temp.getId());
pqsTerminalPushLogDTO2.setDevId(deviceId);
pqsTerminalPushLogDTO2.setDevName(lineMap.containsKey(deviceId)?lineMap.get(deviceId).getName():"删除设备");
pqsTerminalPushLogDTO2.setNodeId(node2);
pqsTerminalPushLogDTO2.setNodeName(nodeMap.get(node2).getName());
pqsTerminalPushLogDTO2.setProcessUpdateFlag(true);
pqsTerminalPushLogDTO2.setProcessNum(processNum);
pqsTerminalPushLogDTOList.add(pqsTerminalPushLogDTO2);
}
}
}
list.removeAll(list1);
if(!CollectionUtils.isEmpty(list)){
//终端层面和检测点层面修改
list.forEach(temp->{ list.forEach(temp->{
PqsTerminalPushLogDTO pqsTerminalPushLogDTO = new PqsTerminalPushLogDTO(); PqsTerminalPushLogDTO pqsTerminalPushLogDTO = new PqsTerminalPushLogDTO();
if(Objects.equals(temp.getTerminalType(),6)){ if(Objects.equals(temp.getTerminalType(),6)){
@@ -3799,6 +3837,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} }
}); });
}
Map<String, Map<Integer, List<PqsTerminalPushLogDTO>>> collect2 = pqsTerminalPushLogDTOList.stream().filter(temp->!addAndDelteId.contains(temp.getDevId())).collect(Collectors.groupingBy(PqsTerminalPushLogDTO::getNodeId, Collectors.groupingBy(PqsTerminalPushLogDTO::getProcessNum))); Map<String, Map<Integer, List<PqsTerminalPushLogDTO>>> collect2 = pqsTerminalPushLogDTOList.stream().filter(temp->!addAndDelteId.contains(temp.getDevId())).collect(Collectors.groupingBy(PqsTerminalPushLogDTO::getNodeId, Collectors.groupingBy(PqsTerminalPushLogDTO::getProcessNum)));
collect2.forEach((nodeId,pqsTerminalPushLogDTOMap)->{ collect2.forEach((nodeId,pqsTerminalPushLogDTOMap)->{
@@ -3921,11 +3961,21 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}); });
}); });
if(!CollectionUtils.isEmpty(list1)){
list1.forEach(temp->{
temp.setIsPush(1);
pqsTerminalLogsMapper.updateById(temp);
});
}
if(!CollectionUtils.isEmpty(list)){
list.forEach(temp->{ list.forEach(temp->{
temp.setIsPush(1); temp.setIsPush(1);
pqsTerminalLogsMapper.updateById(temp); pqsTerminalLogsMapper.updateById(temp);
}); });
}
}else { }else {
throw new BusinessException("暂无变动的装置测点推送"); throw new BusinessException("暂无变动的装置测点推送");