|
|
|
@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
|
import com.google.common.collect.Lists; |
|
|
|
|
import com.google.common.util.concurrent.ThreadFactoryBuilder; |
|
|
|
|
import com.hnac.hzims.alarm.entity.AlarmEntity; |
|
|
|
|
import com.hnac.hzims.equipment.entity.WorkshopInfoEntity; |
|
|
|
|
import com.hnac.hzims.equipment.vo.EminfoAndEmParamVo; |
|
|
|
|
import com.hnac.hzims.fdp.vo.FdpFaultStatusVo; |
|
|
|
@ -18,6 +19,7 @@ import com.hnac.hzims.operational.main.vo.RealDeviceVo;
|
|
|
|
|
import com.hnac.hzims.operational.main.vo.RealStationVo; |
|
|
|
|
import com.hnac.hzims.operational.station.entity.StationAttributeEntity; |
|
|
|
|
import com.hnac.hzims.operational.station.entity.StationEntity; |
|
|
|
|
import com.hnac.hzims.scheduled.service.alarm.AlarmQueryService; |
|
|
|
|
import com.hnac.hzims.scheduled.service.equipment.WorkshopInfoService; |
|
|
|
|
import com.hnac.hzims.scheduled.service.operation.alarm.AbnormalAlarmService; |
|
|
|
|
import com.hnac.hzims.scheduled.service.operation.alarm.RecordService; |
|
|
|
@ -57,6 +59,7 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
|
|
|
|
|
private final RecordService alertService; |
|
|
|
|
private final StationService stationService; |
|
|
|
|
private final AlarmQueryService alarmQueryService; |
|
|
|
|
private final StationAttributeService attbtService; |
|
|
|
|
private final WorkshopInfoService workshopInfoService; |
|
|
|
|
private final AbnormalAlarmService abnormalAlarmService; |
|
|
|
@ -278,7 +281,6 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
List<StAlarmRecordEntity> alertList = alertService.list(new LambdaQueryWrapper<StAlarmRecordEntity>() {{ |
|
|
|
|
orderByDesc(StAlarmRecordEntity::getCreateTime); |
|
|
|
|
}}); |
|
|
|
|
List<String> alarmList = abnormalAlarmService.abnormalAlarms(); |
|
|
|
|
// 获取所有故障记录
|
|
|
|
|
List<FdpFaultStatusVo> faultList = this.getFdpFaultAll(); |
|
|
|
|
// 所有设备分类
|
|
|
|
@ -290,6 +292,10 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
// 获取站点列表
|
|
|
|
|
List<StationEntity> stationEntityList = stationService.list(Wrappers.<StationEntity>lambdaQuery() |
|
|
|
|
.in(StationEntity::getCode,new ArrayList<>(stationAttbtMap.keySet()))); |
|
|
|
|
// 铃铛
|
|
|
|
|
List<String> bells = alarmQueryService.bells(stationEntityList.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
|
// 数据中断
|
|
|
|
|
List<String> aborts = alarmQueryService.aborts(stationEntityList.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
|
// 隐藏设备列表
|
|
|
|
|
List<String> hideList = attrConfigService.getHideList(); |
|
|
|
|
// 分割,每个map限制10个长度
|
|
|
|
@ -328,8 +334,10 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
this.getDeviceParam(devices, deviceClassifyMap, deviceList); |
|
|
|
|
// 运行设备状态设置
|
|
|
|
|
this.deviceState(deviceList); |
|
|
|
|
// 设置站点状态
|
|
|
|
|
this.setStationStatus(alarmList,station,key,deviceList); |
|
|
|
|
// 设置站点状态:数据中断
|
|
|
|
|
this.setStationStatus(aborts,station,key,deviceList); |
|
|
|
|
// 铃铛
|
|
|
|
|
this.stationBell(station,bells); |
|
|
|
|
station.setDeviceList(deviceList.stream().sorted(Comparator.comparing((RealDeviceVo::getDeviceName))).collect(Collectors.toList())); |
|
|
|
|
stationList.add(station); |
|
|
|
|
}); |
|
|
|
@ -348,6 +356,21 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 站点铃铛设置 |
|
|
|
|
* @param station |
|
|
|
|
* @param bells |
|
|
|
|
*/ |
|
|
|
|
private void stationBell(RealStationVo station, List<String> bells) { |
|
|
|
|
station.setBell(0); |
|
|
|
|
if(CollectionUtil.isEmpty(bells)){ |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if(bells.contains(station.getStationCode())){ |
|
|
|
|
station.setBell(1); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 设备处理 |
|
|
|
|
* |
|
|
|
|
* @param list |
|
|
|
@ -674,11 +697,10 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 设置站点状态 |
|
|
|
|
* @param alarmList |
|
|
|
|
* @param station |
|
|
|
|
* @param key |
|
|
|
|
*/ |
|
|
|
|
private void setStationStatus(List<String> alarmList, RealStationVo station, String key,List<RealDeviceVo> deviceList) { |
|
|
|
|
private void setStationStatus(List<String> aborts,RealStationVo station, String key,List<RealDeviceVo> deviceList) { |
|
|
|
|
// 站点功率大于0为正常上送数据
|
|
|
|
|
for(RealDeviceVo item : deviceList){ |
|
|
|
|
if(!CollectionUtil.isEmpty(item.getAttbtList())){ |
|
|
|
@ -693,9 +715,9 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if(alarmList.contains(key)){ |
|
|
|
|
if(aborts.contains(key)){ |
|
|
|
|
station.setStatus(1); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|