|
|
@ -13,7 +13,9 @@ import com.hnac.hzims.alarm.show.mapper.AlarmMapper; |
|
|
|
import com.hnac.hzims.alarm.show.service.AlarmHandleService; |
|
|
|
import com.hnac.hzims.alarm.show.service.AlarmHandleService; |
|
|
|
import com.hnac.hzims.alarm.show.service.AlarmService; |
|
|
|
import com.hnac.hzims.alarm.show.service.AlarmService; |
|
|
|
import com.hnac.hzims.alarm.show.vo.AlarmVideoVo; |
|
|
|
import com.hnac.hzims.alarm.show.vo.AlarmVideoVo; |
|
|
|
|
|
|
|
import com.hnac.hzims.alarm.show.vo.ShowQueryVo; |
|
|
|
import com.hnac.hzims.alarm.source.service.MessageService; |
|
|
|
import com.hnac.hzims.alarm.source.service.MessageService; |
|
|
|
|
|
|
|
import com.hnac.hzims.business.ws.alart.vo.AlartParamVo; |
|
|
|
import com.hnac.hzims.equipment.entity.EmInfoEntity; |
|
|
|
import com.hnac.hzims.equipment.entity.EmInfoEntity; |
|
|
|
import com.hnac.hzims.equipment.entity.EmVideoBandingEntity; |
|
|
|
import com.hnac.hzims.equipment.entity.EmVideoBandingEntity; |
|
|
|
import com.hnac.hzims.equipment.feign.IEmInfoClient; |
|
|
|
import com.hnac.hzims.equipment.feign.IEmInfoClient; |
|
|
@ -29,7 +31,6 @@ import com.hnac.hzinfo.sdk.v5.device.client.DeviceClient; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceAttrVO; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceAttrVO; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceEventVO; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceEventVO; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceFuncVO; |
|
|
|
import com.hnac.hzinfo.sdk.v5.device.vo.DeviceInstanceFuncVO; |
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import org.apache.commons.collections4.MapUtils; |
|
|
|
import org.apache.commons.collections4.MapUtils; |
|
|
@ -37,14 +38,12 @@ import org.springblade.core.log.exception.ServiceException; |
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
import org.springblade.core.tool.utils.CollectionUtil; |
|
|
|
import org.springblade.core.tool.utils.CollectionUtil; |
|
|
|
import org.springblade.core.tool.utils.Func; |
|
|
|
|
|
|
|
import org.springblade.core.tool.utils.ObjectUtil; |
|
|
|
import org.springblade.core.tool.utils.ObjectUtil; |
|
|
|
import org.springblade.core.tool.utils.StringUtil; |
|
|
|
import org.springblade.core.tool.utils.StringUtil; |
|
|
|
import org.springblade.system.user.entity.User; |
|
|
|
import org.springblade.system.user.entity.User; |
|
|
|
import org.springblade.system.user.feign.IUserClient; |
|
|
|
import org.springblade.system.user.feign.IUserClient; |
|
|
|
import org.springframework.beans.factory.annotation.Value; |
|
|
|
import org.springframework.beans.factory.annotation.Value; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.util.Assert; |
|
|
|
|
|
|
|
import org.springframework.web.socket.TextMessage; |
|
|
|
import org.springframework.web.socket.TextMessage; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.*; |
|
|
|
import java.util.*; |
|
|
@ -83,13 +82,13 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 查询告警列表 |
|
|
|
* 查询告警列表 |
|
|
|
* @param alarm |
|
|
|
* @param showQuery |
|
|
|
* @param page |
|
|
|
* @param page |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public IPage<AlarmEntity> alarms(AlarmEntity alarm, IPage<AlarmEntity> page) { |
|
|
|
public IPage<AlarmEntity> alarms(ShowQueryVo showQuery, IPage<AlarmEntity> page) { |
|
|
|
List<StationEntity> stations = this.stations(); |
|
|
|
List<StationEntity> stations = this.stations(showQuery.getServeType()); |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
return page; |
|
|
|
return page; |
|
|
|
} |
|
|
|
} |
|
|
@ -100,14 +99,14 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
wrapper.eq("IS_RIGHT_TABULATION",0); |
|
|
|
wrapper.eq("IS_RIGHT_TABULATION",0); |
|
|
|
wrapper.eq("STATUS",0); |
|
|
|
wrapper.eq("STATUS",0); |
|
|
|
wrapper.in("STATION_ID",stations.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
wrapper.in("STATION_ID",stations.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
if(!StringUtil.isEmpty(alarm.getStationId())){ |
|
|
|
if(!StringUtil.isEmpty(showQuery.getStationId())){ |
|
|
|
wrapper.eq("STATION_ID",alarm.getStationId()); |
|
|
|
wrapper.eq("STATION_ID",showQuery.getStationId()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(!StringUtil.isEmpty(alarm.getAlarmSource())){ |
|
|
|
if(!StringUtil.isEmpty(showQuery.getAlarmSource())){ |
|
|
|
wrapper.eq("ALARM_SOURCE",alarm.getAlarmSource()); |
|
|
|
wrapper.eq("ALARM_SOURCE",showQuery.getAlarmSource()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(!StringUtil.isEmpty(alarm.getAlarmType())){ |
|
|
|
if(!StringUtil.isEmpty(showQuery.getAlarmType())){ |
|
|
|
wrapper.eq("ALARM_TYPE",alarm.getAlarmType()); |
|
|
|
wrapper.eq("ALARM_TYPE",showQuery.getAlarmType()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 处理告警过滤 :当天处理告警
|
|
|
|
// 处理告警过滤 :当天处理告警
|
|
|
@ -124,9 +123,11 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
* 获取权限站点 |
|
|
|
* 获取权限站点 |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
private List<StationEntity> stations() { |
|
|
|
private List<StationEntity> stations(Integer serveType) { |
|
|
|
StationEntity station = new StationEntity(); |
|
|
|
StationEntity station = new StationEntity(); |
|
|
|
station.setServeType("2"); |
|
|
|
if(ObjectUtil.isNotEmpty(serveType)){ |
|
|
|
|
|
|
|
station.setServeType(String.valueOf(serveType)); |
|
|
|
|
|
|
|
} |
|
|
|
station.setType(0); |
|
|
|
station.setType(0); |
|
|
|
R<List<StationEntity>> result = stationClient.list(station); |
|
|
|
R<List<StationEntity>> result = stationClient.list(station); |
|
|
|
if(!result.isSuccess() || CollectionUtil.isEmpty(result.getData())){ |
|
|
|
if(!result.isSuccess() || CollectionUtil.isEmpty(result.getData())){ |
|
|
@ -140,9 +141,9 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public List<AlarmCountVo> counts(AlarmEntity alarm) { |
|
|
|
public List<AlarmCountVo> counts(ShowQueryVo showCount) { |
|
|
|
// 站点查询
|
|
|
|
// 站点查询
|
|
|
|
List<StationEntity> stations = this.stations(); |
|
|
|
List<StationEntity> stations = this.stations(showCount.getServeType()); |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
return AlarmConstants.ALARAM_SOURCE.stream().map(source->{ |
|
|
|
return AlarmConstants.ALARAM_SOURCE.stream().map(source->{ |
|
|
|
AlarmCountVo count = new AlarmCountVo(); |
|
|
|
AlarmCountVo count = new AlarmCountVo(); |
|
|
@ -157,14 +158,14 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
wrapper.eq("IS_RIGHT_TABULATION",0); |
|
|
|
wrapper.eq("IS_RIGHT_TABULATION",0); |
|
|
|
wrapper.eq("STATUS",0); |
|
|
|
wrapper.eq("STATUS",0); |
|
|
|
wrapper.in("STATION_ID",stations.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
wrapper.in("STATION_ID",stations.stream().map(StationEntity::getCode).collect(Collectors.toList())); |
|
|
|
if(!StringUtil.isEmpty(alarm.getStationId())){ |
|
|
|
if(!StringUtil.isEmpty(showCount.getStationId())){ |
|
|
|
wrapper.eq("STATION_ID",alarm.getStationId()); |
|
|
|
wrapper.eq("STATION_ID",showCount.getStationId()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(!StringUtil.isEmpty(alarm.getAlarmSource())){ |
|
|
|
if(!StringUtil.isEmpty(showCount.getAlarmSource())){ |
|
|
|
wrapper.eq("ALARM_SOURCE",alarm.getAlarmSource()); |
|
|
|
wrapper.eq("ALARM_SOURCE",showCount.getAlarmSource()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(!StringUtil.isEmpty(alarm.getAlarmType())){ |
|
|
|
if(!StringUtil.isEmpty(showCount.getAlarmType())){ |
|
|
|
wrapper.eq("ALARM_TYPE",alarm.getAlarmType()); |
|
|
|
wrapper.eq("ALARM_TYPE",showCount.getAlarmType()); |
|
|
|
} |
|
|
|
} |
|
|
|
// 处理告警过滤 :当天处理告警
|
|
|
|
// 处理告警过滤 :当天处理告警
|
|
|
|
List<String> handles = alarmHandleService.handles(); |
|
|
|
List<String> handles = alarmHandleService.handles(); |
|
|
@ -194,9 +195,9 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public List<AlarmEntity> broadcast(String startTime, String endTime) { |
|
|
|
public List<AlarmEntity> broadcast(String startTime, String endTime,Integer serveType) { |
|
|
|
// 站点查询
|
|
|
|
// 站点查询
|
|
|
|
List<StationEntity> stations = this.stations(); |
|
|
|
List<StationEntity> stations = this.stations(serveType); |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
} |
|
|
@ -214,17 +215,17 @@ public class AlarmServiceImpl extends BaseServiceImpl<AlarmMapper, AlarmEntity> |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 弹框告警 |
|
|
|
* 弹框告警 |
|
|
|
* @param depts |
|
|
|
* @param param |
|
|
|
* @return |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public TextMessage majorAlarm(List<Long> depts) { |
|
|
|
public TextMessage majorAlarm(AlartParamVo param) { |
|
|
|
// 站点查询
|
|
|
|
// 站点查询
|
|
|
|
List<StationEntity> stations = this.stations(); |
|
|
|
List<StationEntity> stations = this.stations(param.getServeType()); |
|
|
|
if(CollectionUtil.isEmpty(stations)){ |
|
|
|
if(CollectionUtil.isEmpty(stations) || CollectionUtil.isEmpty(param.getDepts())){ |
|
|
|
return new TextMessage(new ArrayList().toString()); |
|
|
|
return new TextMessage(new ArrayList().toString()); |
|
|
|
} |
|
|
|
} |
|
|
|
List<String> effectives = stations.stream().filter(station->depts.contains(station.getRefDept())).map(StationEntity::getCode).collect(Collectors.toList()); |
|
|
|
List<String> effectives = stations.stream().filter(station->param.getDepts().contains(station.getRefDept())).map(StationEntity::getCode).collect(Collectors.toList()); |
|
|
|
if(CollectionUtil.isEmpty(effectives)){ |
|
|
|
if(CollectionUtil.isEmpty(effectives)){ |
|
|
|
return new TextMessage(new ArrayList().toString()); |
|
|
|
return new TextMessage(new ArrayList().toString()); |
|
|
|
} |
|
|
|
} |
|
|
|