Commit 01088527 authored by 赵啸非's avatar 赵啸非

修正redis 最大连接数

parent dd6f316b
...@@ -54,6 +54,10 @@ public class DeviceTotalStatTaskImpl implements ITaskExcuteService { ...@@ -54,6 +54,10 @@ public class DeviceTotalStatTaskImpl implements ITaskExcuteService {
} else if (platFormType.equalsIgnoreCase(PlatformTypeEnum.STANDALONE.getValue())) { } else if (platFormType.equalsIgnoreCase(PlatformTypeEnum.STANDALONE.getValue())) {
List<SiteEntity> siteEntities = siteService.find(new SiteQuery()); List<SiteEntity> siteEntities = siteService.find(new SiteQuery());
for (SiteEntity siteEntity : siteEntities) { for (SiteEntity siteEntity : siteEntities) {
//判断如果当前节点无设备 则不统计
deviceStatService.deviceStat(siteEntity.getId(), null); deviceStatService.deviceStat(siteEntity.getId(), null);
} }
} }
......
...@@ -162,6 +162,7 @@ public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao ...@@ -162,6 +162,7 @@ public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao
deviceStatEntity.setDay(calendar.get(Calendar.DAY_OF_MONTH)); deviceStatEntity.setDay(calendar.get(Calendar.DAY_OF_MONTH));
} }
//获取昨天统计数据 //获取昨天统计数据
DeviceStatEntity yesterdayDeviceStat = this.selectOne(new DeviceStatQuery() DeviceStatEntity yesterdayDeviceStat = this.selectOne(new DeviceStatQuery()
.siteId(siteId) .siteId(siteId)
...@@ -179,100 +180,100 @@ public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao ...@@ -179,100 +180,100 @@ public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao
//获取设备总数 //获取设备总数
List<DeviceEntity> deviceList = deviceService.find(new DeviceQuery().siteId(siteId)); List<DeviceEntity> deviceList = deviceService.find(new DeviceQuery().siteId(siteId));
Integer deviceTotalCount = deviceList.size(); Integer deviceTotalCount = deviceList.size();
if (deviceTotalCount > 0) {
//未激活数量
Long deviceUnActiveCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() == DeviceStatusEnum.未激活.getValue())
.count();
//激活设备
Integer deviceActiveCount = deviceList.size() - deviceUnActiveCount.intValue();
//未激活数量 deviceStatEntity.setDeviceTotalCount(deviceTotalCount);
Long deviceUnActiveCount = deviceList.parallelStream() deviceStatEntity.setDeviceAddCount(deviceTotalCount - yesterdayDeviceStat.getDeviceTotalCount());
.filter(f -> f.getDeviceStatus() == DeviceStatusEnum.未激活.getValue())
.count();
//激活设备
Integer deviceActiveCount = deviceList.size() - deviceUnActiveCount.intValue();
deviceStatEntity.setDeviceTotalCount(deviceTotalCount);
deviceStatEntity.setDeviceAddCount(deviceTotalCount - yesterdayDeviceStat.getDeviceTotalCount());
///统计按当前站点归集 // TODO: 2022/8/22 ///统计按当前站点归集 // TODO: 2022/8/22
if (platFormType.equalsIgnoreCase(PlatformTypeEnum.STANDALONE.getValue())) { if (platFormType.equalsIgnoreCase(PlatformTypeEnum.STANDALONE.getValue())) {
List<SiteEntity> list = siteService.getFlatSitesBySiteId(siteId, context); List<SiteEntity> list = siteService.getFlatSitesBySiteId(siteId, context);
deviceStatEntity.setSiteTotalCount(list.size()); deviceStatEntity.setSiteTotalCount(list.size());
deviceStatEntity.setSiteAddCount(list.size() - yesterdayDeviceStat.getSiteTotalCount()); deviceStatEntity.setSiteAddCount(list.size() - yesterdayDeviceStat.getSiteTotalCount());
} else { } else {
Rest<List<SitePdu>> resp = siteFeign.getFlatSitesBySiteId(new SitePdu().id(siteId)); Rest<List<SitePdu>> resp = siteFeign.getFlatSitesBySiteId(new SitePdu().id(siteId));
if (resp.getCode() == 1) { if (resp.getCode() == 1) {
List<SitePdu> sitePduList = resp.getData(); List<SitePdu> sitePduList = resp.getData();
deviceStatEntity.setSiteTotalCount(sitePduList.size()); deviceStatEntity.setSiteTotalCount(sitePduList.size());
deviceStatEntity.setSiteAddCount(sitePduList.size() - yesterdayDeviceStat.getSiteTotalCount()); deviceStatEntity.setSiteAddCount(sitePduList.size() - yesterdayDeviceStat.getSiteTotalCount());
}
} }
}
//在线数量 //在线数量
Long deviceOnlineCount = deviceList.parallelStream() Long deviceOnlineCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue()) .filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue())
.filter(f -> f.getEnabled() == EnabledEnum.启用.getValue()) .filter(f -> f.getEnabled() == EnabledEnum.启用.getValue())
.filter(f -> f.getDeviceStatus() == DeviceStatusEnum.在线.getValue()) .filter(f -> f.getDeviceStatus() == DeviceStatusEnum.在线.getValue())
.count(); .count();
deviceStatEntity.setDeviceOnlineCount(deviceOnlineCount.intValue()); deviceStatEntity.setDeviceOnlineCount(deviceOnlineCount.intValue());
//在线率=在线设备/所有激活设备 //在线率=在线设备/所有激活设备
if (deviceActiveCount > 0) { if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceOnlineRatio(new BigDecimal(deviceOnlineCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN)); deviceStatEntity.setDeviceOnlineRatio(new BigDecimal(deviceOnlineCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
} }
//离线数量
Long deviceOfflineCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue())
.filter(f -> f.getEnabled() == EnabledEnum.启用.getValue())
.filter(f -> f.getDeviceStatus() == DeviceStatusEnum.离线.getValue())
.count();
deviceStatEntity.setDeviceOfflineCount(deviceOfflineCount.intValue());
if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceOfflineRatio(new BigDecimal(deviceOfflineCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
}
//停用数量
Long deviceStopCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue())
.filter(f -> f.getEnabled() == YesNoEnum.NO.getValue())
.count();
deviceStatEntity.setDeviceStopCount(deviceStopCount.intValue());
if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceStopRatio(new BigDecimal(deviceStopCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
}
//离线数量
Long deviceOfflineCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue())
.filter(f -> f.getEnabled() == EnabledEnum.启用.getValue())
.filter(f -> f.getDeviceStatus() == DeviceStatusEnum.离线.getValue())
.count();
deviceStatEntity.setDeviceOfflineCount(deviceOfflineCount.intValue());
if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceOfflineRatio(new BigDecimal(deviceOfflineCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
}
//停用数量
Long deviceStopCount = deviceList.parallelStream()
.filter(f -> f.getDeviceStatus() > DeviceStatusEnum.未激活.getValue())
.filter(f -> f.getEnabled() == YesNoEnum.NO.getValue())
.count();
deviceStatEntity.setDeviceStopCount(deviceStopCount.intValue());
if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceStopRatio(new BigDecimal(deviceStopCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
}
deviceStatEntity.setDeviceUnActiveCount(deviceUnActiveCount.intValue());
if (deviceActiveCount > 0) {
deviceStatEntity.setDeviceUnActiveRatio(new BigDecimal(deviceUnActiveCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
}
//今日告警数量 deviceStatEntity.setDeviceUnActiveCount(deviceUnActiveCount.intValue());
DeviceAlarmInfoQuery deviceAlarmInfoQuery = new DeviceAlarmInfoQuery(); if (deviceActiveCount > 0) {
deviceAlarmInfoQuery.setCreateTimeStart(DateUtils.getCurrStrDate()); deviceStatEntity.setDeviceUnActiveRatio(new BigDecimal(deviceUnActiveCount).divide(new BigDecimal(deviceActiveCount), 4, ROUND_HALF_DOWN));
deviceAlarmInfoQuery.setCreateTimeEnd(DateUtils.getCurrStrDate()); }
int alarmTotalCount = deviceAlarmInfoService.count(deviceAlarmInfoQuery, null); //今日告警数量
deviceStatEntity.setAlarmTotalCount(alarmTotalCount); DeviceAlarmInfoQuery deviceAlarmInfoQuery = new DeviceAlarmInfoQuery();
deviceStatEntity.setAlarmAddCount(alarmTotalCount - yesterdayDeviceStat.getAlarmTotalCount()); deviceAlarmInfoQuery.setCreateTimeStart(DateUtils.getCurrStrDate());
deviceAlarmInfoQuery.setCreateTimeEnd(DateUtils.getCurrStrDate());
//推送数量 int alarmTotalCount = deviceAlarmInfoService.count(deviceAlarmInfoQuery, null);
AlarmSmsSendQuery alarmSmsSendQuery = new AlarmSmsSendQuery(); deviceStatEntity.setAlarmTotalCount(alarmTotalCount);
alarmSmsSendQuery.setSendTimeStart(DateUtils.getCurrStrDate()); deviceStatEntity.setAlarmAddCount(alarmTotalCount - yesterdayDeviceStat.getAlarmTotalCount());
alarmSmsSendQuery.setSendTimeEnd(DateUtils.getCurrStrDate());
alarmSmsSendQuery.setSendStatus(SendStatusEnum.发送成功.getValue());
int pushTotalCount = alarmSmsSendService.count(alarmSmsSendQuery,null); //推送数量
deviceStatEntity.setPushTotalCount(pushTotalCount); AlarmSmsSendQuery alarmSmsSendQuery = new AlarmSmsSendQuery();
deviceStatEntity.setPushAddCount(pushTotalCount - yesterdayDeviceStat.getPushTotalCount()); alarmSmsSendQuery.setSendTimeStart(DateUtils.getCurrStrDate());
alarmSmsSendQuery.setSendTimeEnd(DateUtils.getCurrStrDate());
alarmSmsSendQuery.setSendStatus(SendStatusEnum.发送成功.getValue());
//上行下行数量 int pushTotalCount = alarmSmsSendService.count(alarmSmsSendQuery, null);
DeviceLogQuery deviceLogQuery = new DeviceLogQuery(); deviceStatEntity.setPushTotalCount(pushTotalCount);
deviceLogQuery.setCreateTimeStart(DateUtils.getCurrStrDate()); deviceStatEntity.setPushAddCount(pushTotalCount - yesterdayDeviceStat.getPushTotalCount());
deviceLogQuery.setCreateTimeEnd(DateUtils.getCurrStrDate());
deviceLogQuery.setLogType(LogTypeEnum.上报事件.getValue());
int uploadMessageTotalCount = deviceLogService.count(deviceLogQuery, null);
deviceLogQuery.setLogType(LogTypeEnum.下发服务.getValue());
int downloadMessageTotalCount = deviceLogService.count(deviceLogQuery, null);
deviceStatEntity.setUploadMessageTotalCount(uploadMessageTotalCount);
deviceStatEntity.setDownloadMessageTotalCount(downloadMessageTotalCount);
deviceStatEntity.setSiteId(siteId);
//上行下行数量
DeviceLogQuery deviceLogQuery = new DeviceLogQuery();
deviceLogQuery.setCreateTimeStart(DateUtils.getCurrStrDate());
deviceLogQuery.setCreateTimeEnd(DateUtils.getCurrStrDate());
deviceLogQuery.setLogType(LogTypeEnum.上报事件.getValue());
int uploadMessageTotalCount = deviceLogService.count(deviceLogQuery, null);
deviceLogQuery.setLogType(LogTypeEnum.下发服务.getValue());
int downloadMessageTotalCount = deviceLogService.count(deviceLogQuery, null);
deviceStatEntity.setUploadMessageTotalCount(uploadMessageTotalCount);
deviceStatEntity.setDownloadMessageTotalCount(downloadMessageTotalCount);
deviceStatEntity.setSiteId(siteId);
}
if (deviceStatEntity.newEntity()) { if (deviceStatEntity.newEntity()) {
deviceStatEntity.setCreateTime(new Date()); deviceStatEntity.setCreateTime(new Date());
deviceStatService.save(deviceStatEntity); deviceStatService.save(deviceStatEntity);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment