From 2bfc4ed9012c5cae2a01bc67bdce68eeb59dc0b8 Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Tue, 03 Sep 2019 13:38:19 +0800 Subject: [PATCH] 完善排名 --- src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java | 72 +++++++++++++++++++++++++++++++++-- 1 files changed, 67 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java index 10078a1..0f8c004 100644 --- a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java +++ b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java @@ -2,6 +2,7 @@ import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -72,10 +73,10 @@ List<Integer> orgIds = orgMapper.selectLowerOrgIds(orgId); params.put("orgIds",orgIds); monitorPointList = monitorPointMapper.selectByMap(params); - for(MonitorPoint monitorPoint:monitorPointList){ - Integer state = getStateFromRedis(monitorPoint.getId()); - monitorPoint.setState(state); - } +// for(MonitorPoint monitorPoint:monitorPointList){ +// Integer state = getStateFromRedis(monitorPoint.getId()); +// monitorPoint.setState(state); +// } } return monitorPointList == null ? new ArrayList<>() : monitorPointList; } @@ -243,7 +244,10 @@ criteria.andEqualTo("isDelete", Constants.IS_DELETE_FALSE); if (Constants.isNotSpecialOrgId(orgId)) { - criteria.andEqualTo("organizationId", orgId); + //criteria.andEqualTo("organizationId", orgId); + Set<Integer> organizationIds = organizationService.getChildOrganizationIds(orgId); + criteria.andIn("organizationId", organizationIds); + } example.orderBy("name").asc(); return monitorPointMapper.selectByExample(example); @@ -302,4 +306,62 @@ } return monitorPoints; } + + @SuppressWarnings("unchecked") + @Override + public Collection<Object> getDevicesStateByRegion(Map<String, Object> parameters) { + //������������ + Object organizationId = parameters.remove("organizationId"); + ValidateUtil.notNull(organizationId, "param.is.null"); + ValidateUtil.notNull(parameters.get("regionCode"), "param.is.null"); + + //������������������ + ParameterUtils.getRegionType4RegionCode(parameters); + + if (Constants.isNotSpecialOrgId(Integer.valueOf(organizationId.toString()))) { + Set<Integer> organizationIds = organizationService.getChildOrganizationIds(Integer.valueOf(organizationId.toString())); + parameters.put("orgIds", organizationIds); + } + List<Map<String, Object>> monitorPoints = deviceMapper.getDevicesStateByRegion(parameters); + Map<String, Object> result = new HashMap<String, Object>(); + Map<String,Object> device; + List<Map<String, Object>> devices; + for (Map<String, Object> map : monitorPoints) { + String id = map.get("id").toString(); + + device = new HashMap<String,Object>(); + device.put("id", map.remove("deviceId")); + device.put("name", map.remove("deviceName")); + device.put("state", map.remove("state")); + device.put("mac", map.remove("mac")); + + if (result.containsKey(id)) { + Map<String, Object> monitorPoint = (Map<String, Object>) result.get(id); + devices = (List<Map<String, Object>>) monitorPoint.get("devices"); + } else { + devices = new ArrayList<Map<String, Object>>(); + result.put(id, map); + } + devices.add(device); + map.put("devices", devices); + result.put(id, map); + } + + return result.values(); + } + + @Override + public void isCompensateCalculation(Map<String, Object> parameters) { + MonitorPoint monitorPoint = monitorPointMapper.selectByPrimaryKey(Integer.valueOf(parameters.get("monitorPointId").toString())); + if (Integer.valueOf(320581).equals(monitorPoint.getAreaCode())) { + parameters.put("compensate", true); + } + + } + @Override + public Map<String, Object> selectAllById(String id) { + int id2 = Integer.parseInt(id); + Map<String, Object> map = monitorPointMapper.selectAllById(id2); + return map; + } } -- Gitblit v1.8.0