处理bug

This commit is contained in:
hzj
2025-05-20 08:57:12 +08:00
parent ab268a4a20
commit 89f075f395

View File

@@ -3882,31 +3882,52 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
}else { }else {
//调用重启设备接口先删除设备,在新增,在修改在重启设备 //调用重启设备接口先删除设备,在新增,在修改在重启设备
List<String> deleteDevIds = new ArrayList<>(); List<String> deleteDevIds = new ArrayList<>();
List<String> addDevIds = new ArrayList<>();
List<String> modifyDevIds = new ArrayList<>();
Map<String, List<PqsTerminalPushLogDTO>> collect = tempPqsTerminalPushLogDTOList.stream().collect(Collectors.groupingBy(PqsTerminalPushLogDTO::getOperateType)); Map<String, List<PqsTerminalPushLogDTO>> collect = tempPqsTerminalPushLogDTOList.stream().collect(Collectors.groupingBy(PqsTerminalPushLogDTO::getOperateType));
if(collect.containsKey(DeviceRebootType.DELETE_TERMINAL)){ if(collect.containsKey(DeviceRebootType.DELETE_TERMINAL)){
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.DELETE_TERMINAL); List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.DELETE_TERMINAL);
deleteDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList()); deleteDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList());
String devNameString = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevName).distinct().collect(Collectors.joining(",")); }
PreCommandDTO preCommandDTO = new PreCommandDTO(); if(collect.containsKey(DeviceRebootType.ADD_TERMINAL)){
String guid = IdUtil.simpleUUID(); List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.ADD_TERMINAL);
addDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList());
}
if(collect.containsKey(DeviceRebootType.LEDGER_MODIFY)){
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.LEDGER_MODIFY);
modifyDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList());
}
if(collect.containsKey(DeviceRebootType.DELETE_TERMINAL)){
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.DELETE_TERMINAL);
List<String> finalAddDevIds = addDevIds;
//过滤本次新增的设备,因为前置那边还没有新增该装备
pqsTerminalPushLogDTOList1 = pqsTerminalPushLogDTOList1.stream().filter(temp-> finalAddDevIds.contains(temp.getDevId())).distinct().collect(Collectors.toList());
if(!CollectionUtils.isEmpty(pqsTerminalPushLogDTOList1)){
String devNameString = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevName).distinct().collect(Collectors.joining(","));
List<String> resultDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList());
PreCommandDTO preCommandDTO = new PreCommandDTO();
String guid = IdUtil.simpleUUID();
String command = "删除前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString; String command = "删除前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString;
preCommandDTO.setGuid(guid); preCommandDTO.setGuid(guid);
preCommandDTO.setCommand(command); preCommandDTO.setCommand(command);
preCommandDTO.setResult("2"); preCommandDTO.setResult("2");
//调用重启设备接口
this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),resultDevIds,DeviceRebootType.DELETE_TERMINAL,processId);
preCommandDTOList.add(preCommandDTO);
}
//调用重启进程接口
this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),deleteDevIds,DeviceRebootType.DELETE_TERMINAL,processId);
preCommandDTOList.add(preCommandDTO);
} }
if(collect.containsKey(DeviceRebootType.ADD_TERMINAL)){ if(collect.containsKey(DeviceRebootType.ADD_TERMINAL)){
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.ADD_TERMINAL); List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.ADD_TERMINAL);
List<String> addDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList()); List<String> finalDeleteDevIds = deleteDevIds;
addDevIds.removeAll(deleteDevIds); pqsTerminalPushLogDTOList1 = pqsTerminalPushLogDTOList1.stream().filter(temp-> finalDeleteDevIds.contains(temp.getDevId())).distinct().collect(Collectors.toList());
if(!CollectionUtils.isEmpty(addDevIds)){
String devNameString = deleteDevIds.stream().map(temp->{return lineMap.get(temp).getName();}).collect(Collectors.joining(",")); if(!CollectionUtils.isEmpty(pqsTerminalPushLogDTOList1)){
PreCommandDTO preCommandDTO = new PreCommandDTO(); String devNameString = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevName).distinct().collect(Collectors.joining(","));
List<String> resultDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList()); PreCommandDTO preCommandDTO = new PreCommandDTO();
String guid = IdUtil.simpleUUID(); String guid = IdUtil.simpleUUID();
String command = "新增前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString; String command = "新增前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString;
preCommandDTO.setGuid(guid); preCommandDTO.setGuid(guid);
@@ -3914,7 +3935,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
preCommandDTO.setResult("2"); preCommandDTO.setResult("2");
//调用重启进程接口 //调用重启进程接口
this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),deleteDevIds,DeviceRebootType.ADD_TERMINAL,processId); this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),resultDevIds,DeviceRebootType.ADD_TERMINAL,processId);
preCommandDTOList.add(preCommandDTO); preCommandDTOList.add(preCommandDTO);
} }
@@ -3922,18 +3943,20 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
} }
if(collect.containsKey(DeviceRebootType.LEDGER_MODIFY)){ if(collect.containsKey(DeviceRebootType.LEDGER_MODIFY)){
List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.LEDGER_MODIFY); List<PqsTerminalPushLogDTO> pqsTerminalPushLogDTOList1 = collect.get(DeviceRebootType.LEDGER_MODIFY);
List<String> modifyDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList()); List<String> finalDeleteDevIds1 = deleteDevIds;
modifyDevIds.removeAll(deleteDevIds); List<String> finalAddDevIds1 = addDevIds;
if(!CollectionUtils.isEmpty(modifyDevIds)){ pqsTerminalPushLogDTOList1 = pqsTerminalPushLogDTOList1.stream().filter(temp-> finalDeleteDevIds1.contains(temp.getDevId())|| finalAddDevIds1.contains(temp.getDevId())).distinct().collect(Collectors.toList());
String devNameString = modifyDevIds.stream().map(temp->{return lineMap.get(temp).getName();}).collect(Collectors.joining(","));
PreCommandDTO preCommandDTO = new PreCommandDTO(); if(!CollectionUtils.isEmpty(pqsTerminalPushLogDTOList1)){
String devNameString = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevName).distinct().collect(Collectors.joining(","));
List<String> resultDevIds = pqsTerminalPushLogDTOList1.stream().map(PqsTerminalPushLogDTO::getDevId).distinct().collect(Collectors.toList()); PreCommandDTO preCommandDTO = new PreCommandDTO();
String guid = IdUtil.simpleUUID(); String guid = IdUtil.simpleUUID();
String command = "修改前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString; String command = "修改前置机:"+pqsTerminalPushLogDTO.getNodeName()+"下进程:"+processId+"下终端"+devNameString;
preCommandDTO.setGuid(guid); preCommandDTO.setGuid(guid);
preCommandDTO.setCommand(command); preCommandDTO.setCommand(command);
preCommandDTO.setResult("2"); preCommandDTO.setResult("2");
//调用重启进程接口 //调用重启进程接口
this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),deleteDevIds,DeviceRebootType.LEDGER_MODIFY,processId); this.askRestartDevice(guid,pqsTerminalPushLogDTO.getNodeId(),resultDevIds,DeviceRebootType.LEDGER_MODIFY,processId);
preCommandDTOList.add(preCommandDTO); preCommandDTOList.add(preCommandDTO);
} }