添加设备进程号字段
This commit is contained in:
@@ -290,37 +290,37 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
coderM3d(deviceDetail, false);
|
||||
deviceMapper.insert(deviceDetail);
|
||||
//添加装置进程号
|
||||
Node nodeById = nodeService.getNodeById(deviceDetail.getNodeId());
|
||||
List<Device> devices = deviceMapper.selectList(new QueryWrapper<Device>().lambda().eq(Device::getNodeId, deviceDetail.getNodeId()));
|
||||
Integer maxNodeDevNum = nodeById.getNodeDevNum();
|
||||
Integer maxProcessNum = nodeById.getMaxProcessNum();
|
||||
if (devices.size() >= maxNodeDevNum) {
|
||||
throw new BusinessException(PvDeviceResponseEnum.OVER_LIMIT);
|
||||
}
|
||||
List<String> deviceIdList = devices.stream().map(Device::getId).collect(Collectors.toList());
|
||||
List<DeviceProcess> deviceProcessList = deviceProcessService.lambdaQuery().in(DeviceProcess::getId, deviceIdList).list();
|
||||
Map<Integer, Integer> processCountMap = null;
|
||||
if (Objects.nonNull(maxProcessNum)) {
|
||||
processCountMap = new HashMap<>();
|
||||
for (int i = 0; i < maxProcessNum; i++) {
|
||||
Integer processNum = i + 1;
|
||||
long count = deviceProcessList.stream().filter(temp -> Objects.equals(temp.getProcessNo(), processNum)).count();
|
||||
Integer processCount = Math.toIntExact(count);
|
||||
processCountMap.put(processNum, processCount);
|
||||
}
|
||||
|
||||
}else{
|
||||
processCountMap = new HashMap<>();
|
||||
}
|
||||
|
||||
//获取数量最少的线程号
|
||||
Optional<Integer> minKey = processCountMap.entrySet()
|
||||
.stream()
|
||||
.min(Comparator.comparingInt(e -> e.getValue()))
|
||||
.map(Map.Entry::getKey);
|
||||
// Node nodeById = nodeService.getNodeById(deviceDetail.getNodeId());
|
||||
// List<Device> devices = deviceMapper.selectList(new QueryWrapper<Device>().lambda().eq(Device::getNodeId, deviceDetail.getNodeId()));
|
||||
// Integer maxNodeDevNum = nodeById.getNodeDevNum();
|
||||
// Integer maxProcessNum = nodeById.getMaxProcessNum();
|
||||
// if (devices.size() >= maxNodeDevNum) {
|
||||
// throw new BusinessException(PvDeviceResponseEnum.OVER_LIMIT);
|
||||
// }
|
||||
// List<String> deviceIdList = devices.stream().map(Device::getId).collect(Collectors.toList());
|
||||
// List<DeviceProcess> deviceProcessList = deviceProcessService.lambdaQuery().in(DeviceProcess::getId, deviceIdList).list();
|
||||
// Map<Integer, Integer> processCountMap = null;
|
||||
// if (Objects.nonNull(maxProcessNum)) {
|
||||
// processCountMap = new HashMap<>();
|
||||
// for (int i = 0; i < maxProcessNum; i++) {
|
||||
// Integer processNum = i + 1;
|
||||
// long count = deviceProcessList.stream().filter(temp -> Objects.equals(temp.getProcessNo(), processNum)).count();
|
||||
// Integer processCount = Math.toIntExact(count);
|
||||
// processCountMap.put(processNum, processCount);
|
||||
// }
|
||||
//
|
||||
// }else{
|
||||
// processCountMap = new HashMap<>();
|
||||
// }
|
||||
//
|
||||
// //获取数量最少的线程号
|
||||
// Optional<Integer> minKey = processCountMap.entrySet()
|
||||
// .stream()
|
||||
// .min(Comparator.comparingInt(e -> e.getValue()))
|
||||
// .map(Map.Entry::getKey);
|
||||
DeviceProcess deviceProcess = new DeviceProcess();
|
||||
deviceProcess.setId(device.getId());
|
||||
deviceProcess.setProcessNo(minKey.orElse(1));
|
||||
deviceProcess.setProcessNo(deviceParam.getProcessNum());
|
||||
deviceProcessService.saveOrUpdate(deviceProcess);
|
||||
//装置功能
|
||||
List<DictData> funList = dicDataFeignClient.getDicDataByTypeName(DicDataTypeEnum.DEV_FUN.getName()).getData();
|
||||
@@ -469,8 +469,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
LineDetail lineDetail = new LineDetail();
|
||||
BeanUtils.copyProperties(lineParam, lineDetail);
|
||||
lineDetail.setId(line.getId());
|
||||
|
||||
//判断国网监测点id
|
||||
//判断国网监测点id
|
||||
if (StrUtil.isNotBlank(lineDetail.getMonitorId())) {
|
||||
lineDetail.setMonitorFlag(1);
|
||||
} else {
|
||||
@@ -1224,6 +1223,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
//decoderM3d(deviceDetail);
|
||||
BeanUtils.copyProperties(deviceDetail, deviceVO);
|
||||
deviceVO.setDevIndex(obj.getId());
|
||||
DeviceProcess deviceProcess = deviceProcessService.lambdaQuery().eq(DeviceProcess::getId, obj.getId()).one();
|
||||
if(Objects.nonNull(deviceProcess)){
|
||||
deviceVO.setProcessNum(deviceProcess.getProcessNo());
|
||||
}
|
||||
|
||||
lineLambdaQueryWrapper.clear();
|
||||
lineLambdaQueryWrapper.eq(Line::getPid, obj.getId())
|
||||
@@ -1320,6 +1323,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
//decoderM3d(deviceDetail);
|
||||
BeanUtils.copyProperties(deviceDetail, deviceVO);
|
||||
deviceVO.setDevIndex(device.getId());
|
||||
DeviceProcess deviceProcess = deviceProcessService.lambdaQuery().eq(DeviceProcess::getId, device.getId()).one();
|
||||
if(Objects.nonNull(deviceProcess)){
|
||||
deviceVO.setProcessNum(deviceProcess.getProcessNo());
|
||||
}
|
||||
|
||||
|
||||
deviceVO.setSubVoltageVOList(subvList);
|
||||
deviceVOList.add(deviceVO);
|
||||
@@ -1371,6 +1379,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
//decoderM3d(deviceDetail);
|
||||
BeanUtils.copyProperties(deviceDetail, deviceVO);
|
||||
deviceVO.setDevIndex(device.getId());
|
||||
DeviceProcess deviceProcess = deviceProcessService.lambdaQuery().eq(DeviceProcess::getId, device.getId()).one();
|
||||
if(Objects.nonNull(deviceProcess)){
|
||||
deviceVO.setProcessNum(deviceProcess.getProcessNo());
|
||||
}
|
||||
|
||||
|
||||
deviceVO.setSubVoltageVOList(subVoltageVOS);
|
||||
deviceVOList.add(deviceVO);
|
||||
@@ -1508,10 +1521,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|
||||
deleteMonitoringPoints(pointIds,logsList);
|
||||
|
||||
// 2. 通知设备重启
|
||||
/* String[] pids = getById(busbarId).getPids().split(",");
|
||||
if (pids.length > 4) {
|
||||
askRestartDevice(pids[4], DeviceRebootType.LEDGER_MODIFY);
|
||||
}*/
|
||||
}
|
||||
|
||||
private void deleteMonitoringPoints(List<String> pointIds,List<Line> logsList) {
|
||||
|
||||
Reference in New Issue
Block a user