From 52303c8868a7d63238e5ac579c85721306e51a40 Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Wed, 07 Mar 2018 08:52:27 +0800 Subject: [PATCH] 报表 优化 --- src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java index 509b9d3..22c16d9 100644 --- a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java +++ b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java @@ -12,6 +12,9 @@ import com.moral.common.bean.Constants; import com.moral.common.bean.PageBean; import com.moral.common.util.*; +import com.moral.entity.Device; +import com.moral.mapper.DeviceMapper; +import org.apache.commons.collections.CollectionUtils; import org.springframework.stereotype.Service; import com.moral.entity.MonitorPoint; @@ -24,6 +27,8 @@ public class MonitorPointServiceImpl implements MonitorPointService { @Resource private MonitorPointMapper monitorPointMapper; + @Resource + private DeviceMapper deviceMapper; @Resource RedisUtils redisUtils; private static Class ENTITY_CLASS = MonitorPoint.class; @@ -85,13 +90,42 @@ monitorPointMapper.insertSelective(monitorPoint); }else{ monitorPointMapper.updateByPrimaryKeySelective(monitorPoint); + // ������������������������������ ���redis��������������� + refreshDevicesInRedis(monitorPoint.getId()); } } catch (Exception ex){ throw ex; } } + /* + ������������������������������ ���redis��������������� + */ + private void refreshDevicesInRedis(int monitorPointId){ + Device device = new Device(); + device.setMonitorPointId(monitorPointId); + List<Device> deviceList = deviceMapper.select(device); + if (!CollectionUtils.isEmpty(deviceList)){ + List<Integer> orgIds = monitorPointMapper.selectOrganizationIds(monitorPointId); + if (!CollectionUtils.isEmpty(orgIds)){ + deviceList.stream().forEach(dev ->{ + if(!StringUtils.isNullOrEmpty(dev.getMac())){ + String key = "device_"+dev.getMac(); + // ��������������������� ������������redis + Device simpleDevice = new Device(); + simpleDevice.setId(dev.getId()); + simpleDevice.setDeviceVersion(dev.getDeviceVersion()); + simpleDevice.setMac(dev.getMac()); + simpleDevice.setMonitorPointId(dev.getMonitorPointId()); + // ������������������������������������������������������������������ + simpleDevice.setOrganizationIds(orgIds); + redisUtils.set(key,simpleDevice); + } + }); + } + } + } @Override public void deleteByIds(Integer... ids) { MonitorPoint monitorPoint = new MonitorPoint(); @@ -137,4 +171,14 @@ }).collect(Collectors.toList()); return list; } + + @Override + public List<MonitorPoint> getMonitorPointsByOrganizationId(Integer orgId) { + MonitorPoint monitorPoint = new MonitorPoint(); + monitorPoint.setIsDelete(Constants.IS_DELETE_FALSE); + if (Constants.isNotSpecialOrgId(orgId)) { + monitorPoint.setOrganizationId(orgId); + } + return monitorPointMapper.select(monitorPoint); + } } -- Gitblit v1.8.0