问题单修复
This commit is contained in:
@@ -17,10 +17,6 @@ import lombok.NoArgsConstructor;
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class TerminalOnlineRateDataParam extends DeviceInfoParam.BusinessParam{
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 调用模块分类
|
||||
*/
|
||||
|
||||
@@ -95,12 +95,16 @@ public class TerminalOnlineRateDataServiceImpl implements TerminalOnlineRateData
|
||||
// 创建集合返回数据
|
||||
List<TerminalOnlineRateDataVO> pro = new ArrayList<>();
|
||||
|
||||
// 获取告警策略列表
|
||||
List<AlarmStrategyVO> alarmStrategyVos = alarmClient.getAlarmStrategyData().getData();
|
||||
// 判断告警策略数据状态
|
||||
if (CollectionUtil.isEmpty(alarmStrategyVos)) {
|
||||
throw new BusinessException(DeviceResponseEnum.QUERY_ALARMSTRATEGY_DATA_EMPTY);
|
||||
List<AlarmStrategyVO> alarmStrategyVos = new ArrayList<>();
|
||||
if (terminalOnlineRateDataParam.getServerName().equals("deviceBoot")) {
|
||||
// 获取告警策略列表
|
||||
alarmStrategyVos = alarmClient.getAlarmStrategyData().getData();
|
||||
// 判断告警策略数据状态
|
||||
if (CollectionUtil.isEmpty(alarmStrategyVos)) {
|
||||
throw new BusinessException(DeviceResponseEnum.QUERY_ALARMSTRATEGY_DATA_EMPTY);
|
||||
}
|
||||
}
|
||||
|
||||
// 遍历集合
|
||||
for (GeneralDeviceDTO generalDeviceDTO : generalDeviceDTOList) {
|
||||
// 判断监测点索引集合状态
|
||||
@@ -154,7 +158,7 @@ public class TerminalOnlineRateDataServiceImpl implements TerminalOnlineRateData
|
||||
pro.add(terminalOnlineRateDataVO);
|
||||
|
||||
}
|
||||
getAreaOnlineRateData(pro, alarmStrategyVos, terminalOnlineRateDataParam.getLineGrade());
|
||||
getAreaOnlineRateData(pro, alarmStrategyVos, terminalOnlineRateDataParam.getLineGrade(),terminalOnlineRateDataParam.getServerName());
|
||||
return pro;
|
||||
} else {
|
||||
return new ArrayList<>();
|
||||
@@ -254,32 +258,39 @@ public class TerminalOnlineRateDataServiceImpl implements TerminalOnlineRateData
|
||||
* 获取区域终端在线率
|
||||
*
|
||||
* @param terminalOnlineRateData
|
||||
* @param serverName
|
||||
*/
|
||||
public void getAreaOnlineRateData(List<TerminalOnlineRateDataVO> terminalOnlineRateData, List<AlarmStrategyVO> alarmStrategyVos, String lineGrade) {
|
||||
public void getAreaOnlineRateData(List<TerminalOnlineRateDataVO> terminalOnlineRateData, List<AlarmStrategyVO> alarmStrategyVos, String lineGrade, String serverName) {
|
||||
|
||||
Map<Integer, Integer> mapAlarm = new HashMap<>();
|
||||
Map<String, AlarmStrategyVO> map = alarmStrategyVos.stream().collect(Collectors.toMap(AlarmStrategyVO::getId, Function.identity()));
|
||||
|
||||
if (StrUtil.isNotBlank(lineGrade)) {
|
||||
// 根据入参终端等级查字典表
|
||||
DictData dictData = dicDataFeignClient.getDicDataById(lineGrade).getData();
|
||||
if (map.containsKey(dictData.getId())) {
|
||||
// key:监测点等级AlgoDescribe value:监测点对应在线率告警阈值
|
||||
mapAlarm.put(dictData.getAlgoDescribe(), map.get(dictData.getId()).getOnlineValue());
|
||||
} else {
|
||||
throw new BusinessException(DeviceResponseEnum.QUERY_ALARMSTRATEGY_DATA_EMPTY);
|
||||
}
|
||||
} else {
|
||||
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_LEVEL.getCode()).getData();
|
||||
dictDataList.forEach(it -> {
|
||||
if (map.containsKey(it.getId())) {
|
||||
mapAlarm.put(it.getAlgoDescribe(), map.get(it.getId()).getOnlineValue());
|
||||
if (serverName.equals("deviceBoot")) {
|
||||
if (StrUtil.isNotBlank(lineGrade)) {
|
||||
// 根据入参终端等级查字典表
|
||||
DictData dictData = dicDataFeignClient.getDicDataById(lineGrade).getData();
|
||||
if (map.containsKey(dictData.getId())) {
|
||||
// key:监测点等级AlgoDescribe value:监测点对应在线率告警阈值
|
||||
mapAlarm.put(dictData.getAlgoDescribe(), map.get(dictData.getId()).getOnlineValue());
|
||||
} else {
|
||||
throw new BusinessException(DeviceResponseEnum.QUERY_ALARMSTRATEGY_DATA_EMPTY);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_LEVEL.getCode()).getData();
|
||||
dictDataList.forEach(it -> {
|
||||
if (map.containsKey(it.getId())) {
|
||||
mapAlarm.put(it.getAlgoDescribe(), map.get(it.getId()).getOnlineValue());
|
||||
} else {
|
||||
throw new BusinessException(DeviceResponseEnum.QUERY_ALARMSTRATEGY_DATA_EMPTY);
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
mapAlarm.put(0,0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
for (TerminalOnlineRateDataVO proItem : terminalOnlineRateData) {
|
||||
List<TerminalOnlineRateDataVO> gds = proItem.getChildren();
|
||||
if (CollectionUtil.isNotEmpty(gds)) {
|
||||
|
||||
Reference in New Issue
Block a user