diff --git a/psdc-business/src/main/java/com/psdc/service/impl/PsdcSceneServiceImpl.java b/psdc-business/src/main/java/com/psdc/service/impl/PsdcSceneServiceImpl.java index 3f731f4..153d9ce 100644 --- a/psdc-business/src/main/java/com/psdc/service/impl/PsdcSceneServiceImpl.java +++ b/psdc-business/src/main/java/com/psdc/service/impl/PsdcSceneServiceImpl.java @@ -197,6 +197,7 @@ public class PsdcSceneServiceImpl implements IPsdcSceneService { List ary = new ArrayList<>(); Integer deviceId = listByCode.get(0).getDeviceId(); DeviceVo deviceVo = new DeviceVo(); + Map map = new HashMap<>(); for (int i = 0; i < listByCode.size(); i++) { SceneVo sv = listByCode.get(i); if (deviceId == sv.getDeviceId()) { @@ -214,6 +215,8 @@ public class PsdcSceneServiceImpl implements IPsdcSceneService { deviceVo.setTemp(sv.getSceneValue()); break; } + map.put(sv.getSceneKey(), sv.getSceneValue()); + deviceVo.setTempValue(map); if (1 == listByCode.size() || i == listByCode.size() - 1){ ary.add(deviceVo); } @@ -222,6 +225,7 @@ public class PsdcSceneServiceImpl implements IPsdcSceneService { ary.add(deviceVo); deviceId = sv.getDeviceId(); deviceVo = new DeviceVo(); + map = new HashMap<>(); deviceVo.setDeviceId(sv.getDeviceId()); deviceVo.setDeviceName(sv.getDeviceName()); deviceVo.setDeviceSn(sv.getDeviceSn()); @@ -234,6 +238,8 @@ public class PsdcSceneServiceImpl implements IPsdcSceneService { case "temp": deviceVo.setTemp(sv.getSceneValue()); } + map.put(sv.getSceneKey(), sv.getSceneValue()); + deviceVo.setTempValue(map); ary.add(deviceVo); } else { switch (sv.getSceneKey()) { @@ -247,6 +253,8 @@ public class PsdcSceneServiceImpl implements IPsdcSceneService { deviceVo.setTemp(sv.getSceneValue()); break; } + map.put(sv.getSceneKey(), sv.getSceneValue()); + deviceVo.setTempValue(map); } } } diff --git a/psdc-web/src/main/java/com/psdc/controller/monitor/TotalElectricMeterController.java b/psdc-web/src/main/java/com/psdc/controller/monitor/TotalElectricMeterController.java index 678a4ac..ae958f1 100644 --- a/psdc-web/src/main/java/com/psdc/controller/monitor/TotalElectricMeterController.java +++ b/psdc-web/src/main/java/com/psdc/controller/monitor/TotalElectricMeterController.java @@ -114,6 +114,56 @@ public class TotalElectricMeterController { return AjaxResult.success("用户所属设备列表", maps); } + @PreAuthorize("@ss.hasPermi('emonitor:db')") + @RequestMapping(value = "/selMyControldevices", method = RequestMethod.GET) + public AjaxResult selControlMydevices() { + List maps = new ArrayList<>(); + List list = psdcDeviceService.queryByUserId(0); + for (PsdcDevice dd : list){ + Map map = new HashMap<>(); + map.put("modelName", dd.getDeviceModel()); + if (2 == dd.getIsControl()){ + map.put("isControl", dd.getIsControl()); + List maps2 = new ArrayList<>(); + List list2 = psdcDeviceService.queryByModel(dd.getDeviceModel()); + if (list2.size() > 0){ + for (PsdcDevice dev : list2){ + Map map2 = new HashMap<>(); + map2.put("deviceId", dev.getDeviceId()); + map2.put("deviceName", dev.getDeviceName()); + List modelVoList = psdcModelService.selDevIsControlByModelName(dd.getDeviceModel()); + List ary = new ArrayList<>(); + for (ModelVo scr : modelVoList){ + Map content = new HashMap<>(); + content.put("label", scr.getIoDesc()); + content.put("value", scr.getRelationField()); + ary.add(content); + } + map2.put("controlKey", ary); + if (ary.size() > 0){ + maps2.add(map2); + } + } + } else { + PsdcDevice dev = psdcDeviceService.queryById(dd.getDeviceId()); + Map map2 = new HashMap<>(); + map2.put("deviceId", dev.getDeviceId()); + map2.put("deviceName", dev.getDeviceName()); + maps2.add(map2); + } + + if (maps2.size() > 0){ + map.put("children", maps2); + } + if (map.size() > 2){ + maps.add(map); + } + } + + } + return AjaxResult.success("用户所属设备列表", maps); + } + @PreAuthorize("@ss.hasPermi('emonitor:db')") @RequestMapping(value = "/sel1/{deviceId}", method = RequestMethod.GET) public AjaxResult selzdb1(@PathVariable(value = "deviceId", required = false) Integer deviceId) {