|  |  |  | 
|---|
|  |  |  | @Resource | 
|---|
|  |  |  | private SensorService sensorService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Resource | 
|---|
|  |  |  | private DeviceService deviceService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<Map<String, Object>> getAlarmData() { | 
|---|
|  |  |  | LocalDateTime time = LocalDateTime.now(); | 
|---|
|  |  |  | LocalDateTime endTime = time.truncatedTo(ChronoUnit.DAYS); | 
|---|
|  |  |  | LocalDateTime startTime = endTime.minusDays(1); | 
|---|
|  |  |  | List<String> sensorKeys = sensorService.getSensorKeys(); | 
|---|
|  |  |  | List<String> macs = deviceService.getMacs(); | 
|---|
|  |  |  | String year = startTime.getYear() + ""; | 
|---|
|  |  |  | String month = null; | 
|---|
|  |  |  | int monthValue = startTime.getMonthValue(); | 
|---|
|  |  |  | 
|---|
|  |  |  | devices.put("sensorKeys", sensorKeys); | 
|---|
|  |  |  | devices.put("start", startTime); | 
|---|
|  |  |  | devices.put("end", endTime); | 
|---|
|  |  |  | devices.put("macs", macs); | 
|---|
|  |  |  | devices.put("yearAndMonth", yearAndMonth); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<Map<String, Object>> list = alarmMapper.getAlarmData(devices); | 
|---|
|  |  |  | for (Map<String, Object> map : list) { | 
|---|
|  |  |  | ArrayList<String> list1 = new ArrayList<>(); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<Map<String, Object>> resultList = new ArrayList<>(); | 
|---|
|  |  |  | for (Map<String, Object> map : list) { | 
|---|
|  |  |  | for (int i = 0; i < map.keySet().size() - 1; i++) { | 
|---|
|  |  |  | Map<String, Object> hashMap = new HashMap<>(); | 
|---|
|  |  |  | for (String key : map.keySet()) { | 
|---|
|  |  |  | Map<String, Object> jsonMap = new HashMap<>(); | 
|---|
|  |  |  | hashMap.put("mac", map.get("mac").toString()); | 
|---|
|  |  |  | hashMap.put("state", i + 1); | 
|---|
|  |  |  | hashMap.put("time", startTime); | 
|---|
|  |  |  | ArrayList<String> arrayList = (ArrayList<String>) map.get(i + 1 + ""); | 
|---|
|  |  |  | for (String sensorKey : arrayList) { | 
|---|
|  |  |  | jsonMap.put(sensorKey, 1); | 
|---|
|  |  |  | if (!"mac".equals(key)) { | 
|---|
|  |  |  | Map<String, Object> hashMap = new HashMap<>(); | 
|---|
|  |  |  | hashMap.put("mac",map.get("mac")); | 
|---|
|  |  |  | hashMap.put("time",startTime); | 
|---|
|  |  |  | hashMap.put("state",key); | 
|---|
|  |  |  | ArrayList<String> stateList = (ArrayList<String>) map.get(key); | 
|---|
|  |  |  | for (String state : stateList) { | 
|---|
|  |  |  | jsonMap.put(state,1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | hashMap.put("json", JSONUtils.toJSONString(jsonMap)); | 
|---|
|  |  |  | resultList.add(hashMap); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | hashMap.put("json", JSONUtils.toJSONString(jsonMap)); | 
|---|
|  |  |  | resultList.add(hashMap); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return resultList; | 
|---|