|
@@ -3,7 +3,9 @@ package com.bizmatics.service.impl;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.bizmatics.common.core.exception.BusinessException;
|
|
|
import com.bizmatics.common.core.util.BeanMapperUtils;
|
|
|
+import com.bizmatics.model.Device;
|
|
|
import com.bizmatics.model.Site;
|
|
|
+import com.bizmatics.persistence.mapper.AlarmPowerMapper;
|
|
|
import com.bizmatics.persistence.mapper.DeviceMapper;
|
|
|
import com.bizmatics.persistence.mapper.SiteMapper;
|
|
|
import com.bizmatics.service.DeviceService;
|
|
@@ -35,6 +37,9 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
|
|
|
|
|
|
@Autowired
|
|
|
private DeviceMapper deviceMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private AlarmPowerMapper alarmPowerMapper;
|
|
|
@Override
|
|
|
public DeviceCountVO selectCount() {
|
|
|
Integer userId = SessionLocal.getUserId();
|
|
@@ -56,9 +61,13 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
|
|
|
public List<SiteVO> siteAndStatusList(String name) {
|
|
|
List<SiteVO> list = new ArrayList<>();
|
|
|
Integer userId = SessionLocal.getUserId();
|
|
|
+ long l = System.currentTimeMillis();
|
|
|
List<Site> sites = baseMapper.list(SessionLocal.getUserId(), name);
|
|
|
- System.out.println(sites.size());
|
|
|
+ long e = System.currentTimeMillis();
|
|
|
+ System.out.println("结束时间"+ (e-l));
|
|
|
sites.forEach(site -> list.add(enhanceSite(site,userId)));
|
|
|
+ long es = System.currentTimeMillis();
|
|
|
+ System.out.println("结束时间1"+ (es-e));
|
|
|
return list;
|
|
|
}
|
|
|
|
|
@@ -72,28 +81,23 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
|
|
|
public SiteVO enhanceSite(Site site,Integer userId){
|
|
|
long l = System.currentTimeMillis();
|
|
|
SiteVO siteVo = BeanMapperUtils.map(site, SiteVO.class);
|
|
|
- long change = System.currentTimeMillis();
|
|
|
- log.info("转换时间"+(change-l));
|
|
|
- siteVo.setDeviceCount(deviceMapper.selectCount(userId,siteVo.getId(),null,null,null,null));
|
|
|
- long device = System.currentTimeMillis();
|
|
|
- log.info("获取设备数时间"+(device-change));
|
|
|
- int deviceCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.DEVICE.getValue());
|
|
|
- long count = System.currentTimeMillis();
|
|
|
- log.info("获取状态时间"+(count-change));
|
|
|
- int offLineCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.OFFLINE.getValue());
|
|
|
- int faultCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.FAULT.getValue());
|
|
|
- siteVo.setAlarmPowerCount(deviceCount);
|
|
|
+ List<Device> list = deviceMapper.list(userId, siteVo.getId(), null, null, null, null);
|
|
|
+ siteVo.setDeviceCount(list.size());
|
|
|
+ long deviceCount = list.stream().filter(device -> DeviceStatusCode.DEVICE.getValue().equals(device.getDeviceStatus())).count();
|
|
|
+ long faultCount = list.stream().filter(device -> DeviceStatusCode.FAULT.getValue().equals(device.getDeviceStatus())).count();
|
|
|
+ long offCount = list.stream().filter(device -> DeviceStatusCode.OFFLINE.getValue().equals(device.getDeviceStatus())).count();
|
|
|
+// siteVo.setAlarmPowerCount(alarmPowerMapper.selectCount(userId,site.getId(),null,null,null,null,1));
|
|
|
if (deviceCount > 0){
|
|
|
siteVo.setStatus(DeviceStatusCode.FAULT.getDescribe());
|
|
|
- }else if (offLineCount > 0){
|
|
|
+ }else if (offCount > 0){
|
|
|
siteVo.setStatus(DeviceStatusCode.OFFLINE.getDescribe());
|
|
|
}else if (faultCount > 0){
|
|
|
siteVo.setStatus(DeviceStatusCode.FAULT.getDescribe());
|
|
|
}else {
|
|
|
siteVo.setStatus(DeviceStatusCode.NORMAL.getDescribe());
|
|
|
}
|
|
|
- long e = System.currentTimeMillis();
|
|
|
- log.info("结束"+ (e-l));
|
|
|
+ long s = System.currentTimeMillis();
|
|
|
+ System.out.println("循环一次"+(s-l));
|
|
|
return siteVo;
|
|
|
}
|
|
|
}
|