From 5ffeb9891c8f164174d25621bbc8b4bf27ada3da Mon Sep 17 00:00:00 2001 From: wuyw <373811525@qq.com> Date: Mon, 19 Aug 2024 21:14:27 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E8=BF=90=E8=A1=8C=E6=95=B0=E6=8D=AE=EF=BC=8C=E9=98=80=E9=97=A8?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E3=80=82=E5=86=85=E9=97=A8=E9=94=81=E7=8A=B6?= =?UTF-8?q?=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/UploadedPhotosController.java | 1 - .../service/gis/impl/GisDeviceServiceImpl.java | 14 +++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/fastbee-open-api/src/main/java/com/fastbee/data/controller/anfang/controller/UploadedPhotosController.java b/fastbee-open-api/src/main/java/com/fastbee/data/controller/anfang/controller/UploadedPhotosController.java index 429e1d4..8052857 100644 --- a/fastbee-open-api/src/main/java/com/fastbee/data/controller/anfang/controller/UploadedPhotosController.java +++ b/fastbee-open-api/src/main/java/com/fastbee/data/controller/anfang/controller/UploadedPhotosController.java @@ -16,7 +16,6 @@ import com.fastbee.iot.model.anfang.UploadedPhotos; import com.fastbee.iot.service.impl.DeviceServiceImpl; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.mock.web.MockMultipartFile; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; diff --git a/fastbee-open-api/src/main/java/com/fastbee/data/service/gis/impl/GisDeviceServiceImpl.java b/fastbee-open-api/src/main/java/com/fastbee/data/service/gis/impl/GisDeviceServiceImpl.java index fae2028..5b3421f 100644 --- a/fastbee-open-api/src/main/java/com/fastbee/data/service/gis/impl/GisDeviceServiceImpl.java +++ b/fastbee-open-api/src/main/java/com/fastbee/data/service/gis/impl/GisDeviceServiceImpl.java @@ -245,24 +245,24 @@ public class GisDeviceServiceImpl implements IGisDeviceService { put("name", haiWeiPropertyVo.getNameCn()); }}; rMap.put("xiangmen", hashMap1); - } else if (haiWeiPropertyVo.getNameEn().equals("内门上锁")) { + } else if (haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_lock1Con")) { HashMap hashMap1 = new HashMap() {{ put("upType", 0); put("identifier", "三菱FX2N_1_lock1Con"); put("unit", ""); put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f?"正常":"异常"); - put("name", haiWeiPropertyVo.getNameCn()); + put("name", "内门上锁"); }}; - rMap.put("三菱FX2N_1_lock1Con", hashMap1); - } else if (haiWeiPropertyVo.getNameEn().equals("内门下锁")) { + rMap.put("内门上锁", hashMap1); + } else if (haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_lock2Con")) { HashMap hashMap1 = new HashMap() {{ put("upType", 0); put("identifier", "三菱FX2N_1_lock2Con"); put("unit", ""); put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f?"正常":"异常"); - put("name", haiWeiPropertyVo.getNameCn()); + put("name", "内门下锁"); }}; - rMap.put("三菱FX2N_1_lock2Con", hashMap1); + rMap.put("内门下锁", hashMap1); } } } else { @@ -342,7 +342,7 @@ public class GisDeviceServiceImpl implements IGisDeviceService { hashMap1.put("value", "正常"); } } - rMap.put("阀门状态", hashMap1); + rMap.put("水表状态", hashMap1); }else{ HashMap hashMap1 = new HashMap() {{ put("upType", 0); From 25f745c2d34ad00fc90b8c2cf1c8ff86af8fb1d4 Mon Sep 17 00:00:00 2001 From: wuyw <373811525@qq.com> Date: Mon, 19 Aug 2024 23:39:31 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BE=9B=E7=94=B5=E5=92=8C=E4=BE=9B?= =?UTF-8?q?=E6=B0=B4=E5=AE=9E=E6=97=B6=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/DeviceDetailServiceImpl.java | 292 +++++++++++------- 1 file changed, 176 insertions(+), 116 deletions(-) diff --git a/fastbee-open-api/src/main/java/com/fastbee/data/service/devicedetail/impl/DeviceDetailServiceImpl.java b/fastbee-open-api/src/main/java/com/fastbee/data/service/devicedetail/impl/DeviceDetailServiceImpl.java index 51d300a..a9813db 100644 --- a/fastbee-open-api/src/main/java/com/fastbee/data/service/devicedetail/impl/DeviceDetailServiceImpl.java +++ b/fastbee-open-api/src/main/java/com/fastbee/data/service/devicedetail/impl/DeviceDetailServiceImpl.java @@ -248,68 +248,96 @@ public class DeviceDetailServiceImpl implements IDeviceDetailService { List taiyangnengModels = thingsModelService.selectThingsModelList(thingsModel1); taiyangnengModels.sort(Comparator.comparing(ThingsModel::getModelOrder)); List> list = new ArrayList<>(); - if (StringUtils.isNotEmpty(taiyangnengIds)) { - Device taiyangnengDevice = deviceMapper.selectDeviceByDeviceId(Long.parseLong(taiyangnengIds)); - List deviceLogs = logService.selectDeviceLogList(new DeviceLog() {{ - setSerialNumber(taiyangnengDevice.getSerialNumber()); - setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(dateTime, -1)).toString()); - setEndTime(DateUtil.endOfDay(dateTime).toString()); - }}); - Map> taiyangnengCollect = deviceLogs.stream().sorted(Comparator - .comparing(DeviceLog::getCreateTime, Comparator - .nullsFirst(Comparator.naturalOrder())).reversed()).collect(Collectors.groupingBy(t -> t.getIdentity())); - for (ThingsModel thingsModel : taiyangnengModels) { - HashMap hashMap = new HashMap() {{ - put("upType", 0); - put("identifier", thingsModel.getIdentifier()); - put("unit", ""); - put("value", 0); - put("name", thingsModel.getModelName()); - }}; - if (StringUtils.isNotEmpty(thingsModel.getSpecs())) { - String specs = thingsModel.getSpecs(); - JSONObject parse = (JSONObject) JSON.parse(specs); - if (parse.containsKey("unit")) { - hashMap.put("unit", parse.get("unit")); + CommonResult cache = haiWeiService.getCache(Long.parseLong(taiyangnengIds)); + if(cache != null){ + HaiWeiDeviceInfoVo checkedData = cache.getCheckedData(); + if(checkedData != null){ + List propertyList = checkedData.getPropertyList(); + for (HaiWeiPropertyVo haiWeiPropertyVo : propertyList) { + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_kaixian")){ + continue; } + HashMap hashMap = new HashMap() {{ + put("upType", 0); + put("identifier", haiWeiPropertyVo.getNameEn()); + put("unit", haiWeiPropertyVo.getUnit()); + put("value", haiWeiPropertyVo.getValue()); + put("name", haiWeiPropertyVo.getNameCn()); + }}; + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_MpptDown")){ + hashMap.put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f? + "异常":"正常"); + } + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_市电状态")){ + hashMap.put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f? + "市电":"太阳能"); + } + list.add(hashMap); } - - if (hashMap.size() > 1) { - List deviceLogs1 = taiyangnengCollect.get(thingsModel.getIdentifier()); - if (deviceLogs1 != null) { - if (StringUtils.isNotEmpty(deviceLogs1.get(0).getLogValue())) { - if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) == Float.parseFloat(deviceLogs1.get(1).getLogValue())) { - hashMap.put("upType", 1); - } else if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) < Float.parseFloat(deviceLogs1.get(1).getLogValue())) { - hashMap.put("upType", -1); - } - hashMap.put("value", deviceLogs1.get(0).getLogValue()); - } else { - hashMap.put("value", "--"); - hashMap.put("upType", 0); - } - - } - } else if (hashMap.size() > 0) { - List deviceLogs2 = taiyangnengCollect.get(thingsModel.getIdentifier()); - if (deviceLogs2 != null) { - hashMap.put("value", deviceLogs2.get(0).getLogValue()); - } - } - list.add(hashMap); - } - } else { - for (ThingsModel thingsModel : taiyangnengModels) { - HashMap hashMap = new HashMap() {{ - put("upType", 0); - put("identifier", thingsModel.getIdentifier()); - put("unit", ""); - put("value", 0); - put("name", thingsModel.getModelName()); - }}; - list.add(hashMap); } } +// if (StringUtils.isNotEmpty(taiyangnengIds)) { +// Device taiyangnengDevice = deviceMapper.selectDeviceByDeviceId(Long.parseLong(taiyangnengIds)); +// List deviceLogs = logService.selectDeviceLogList(new DeviceLog() {{ +// setSerialNumber(taiyangnengDevice.getSerialNumber()); +// setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(dateTime, -1)).toString()); +// setEndTime(DateUtil.endOfDay(dateTime).toString()); +// }}); +// Map> taiyangnengCollect = deviceLogs.stream().sorted(Comparator +// .comparing(DeviceLog::getCreateTime, Comparator +// .nullsFirst(Comparator.naturalOrder())).reversed()).collect(Collectors.groupingBy(t -> t.getIdentity())); +// for (ThingsModel thingsModel : taiyangnengModels) { +// HashMap hashMap = new HashMap() {{ +// put("upType", 0); +// put("identifier", thingsModel.getIdentifier()); +// put("unit", ""); +// put("value", 0); +// put("name", thingsModel.getModelName()); +// }}; +// if (StringUtils.isNotEmpty(thingsModel.getSpecs())) { +// String specs = thingsModel.getSpecs(); +// JSONObject parse = (JSONObject) JSON.parse(specs); +// if (parse.containsKey("unit")) { +// hashMap.put("unit", parse.get("unit")); +// } +// } +// +// if (hashMap.size() > 1) { +// List deviceLogs1 = taiyangnengCollect.get(thingsModel.getIdentifier()); +// if (deviceLogs1 != null) { +// if (StringUtils.isNotEmpty(deviceLogs1.get(0).getLogValue())) { +// if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) == Float.parseFloat(deviceLogs1.get(1).getLogValue())) { +// hashMap.put("upType", 1); +// } else if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) < Float.parseFloat(deviceLogs1.get(1).getLogValue())) { +// hashMap.put("upType", -1); +// } +// hashMap.put("value", deviceLogs1.get(0).getLogValue()); +// } else { +// hashMap.put("value", "--"); +// hashMap.put("upType", 0); +// } +// +// } +// } else if (hashMap.size() > 0) { +// List deviceLogs2 = taiyangnengCollect.get(thingsModel.getIdentifier()); +// if (deviceLogs2 != null) { +// hashMap.put("value", deviceLogs2.get(0).getLogValue()); +// } +// } +// list.add(hashMap); +// } +// } else { +// for (ThingsModel thingsModel : taiyangnengModels) { +// HashMap hashMap = new HashMap() {{ +// put("upType", 0); +// put("identifier", thingsModel.getIdentifier()); +// put("unit", ""); +// put("value", 0); +// put("name", thingsModel.getModelName()); +// }}; +// list.add(hashMap); +// } +// } return list; } @@ -332,68 +360,100 @@ public class DeviceDetailServiceImpl implements IDeviceDetailService { List liuliangModels = thingsModelService.selectThingsModelList(thingsModel1); liuliangModels.sort(Comparator.comparing(ThingsModel::getModelOrder)); List> list = new ArrayList<>(); - if (StringUtils.isNotEmpty(liuliangIds)) { - Device taiyangnengDevice = deviceMapper.selectDeviceByDeviceId(Long.parseLong(liuliangIds)); - List deviceLogs = logService.selectDeviceLogList(new DeviceLog() {{ - setSerialNumber(taiyangnengDevice.getSerialNumber()); - setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(dateTime, -1)).toString()); - setEndTime(DateUtil.endOfDay(dateTime).toString()); - }}); - Map> taiyangnengCollect = deviceLogs.stream().sorted(Comparator - .comparing(DeviceLog::getCreateTime, Comparator - .nullsFirst(Comparator.naturalOrder())).reversed()).collect(Collectors.groupingBy(t -> t.getIdentity())); - for (ThingsModel thingsModel : liuliangModels) { - HashMap hashMap = new HashMap() {{ - put("upType", 0); - put("identifier", thingsModel.getIdentifier()); - put("unit", ""); - put("value", 0); - put("name", thingsModel.getModelName()); - }}; - if (StringUtils.isNotEmpty(thingsModel.getSpecs())) { - String specs = thingsModel.getSpecs(); - JSONObject parse = (JSONObject) JSON.parse(specs); - if (parse.containsKey("unit")) { - hashMap.put("unit", parse.get("unit")); + CommonResult cache = haiWeiService.getCache(Long.parseLong(liuliangIds)); + if(cache != null){ + HaiWeiDeviceInfoVo checkedData = cache.getCheckedData(); + if(checkedData != null){ + List propertyList = checkedData.getPropertyList(); + for (HaiWeiPropertyVo haiWeiPropertyVo : propertyList) { + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_kaixian")){ + continue; } + HashMap hashMap = new HashMap() {{ + put("upType", 0); + put("identifier", haiWeiPropertyVo.getNameEn()); + put("unit", haiWeiPropertyVo.getUnit()); + put("value", haiWeiPropertyVo.getValue()); + put("name", haiWeiPropertyVo.getNameCn()); + }}; + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_guanxian")){ + hashMap.put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f? + "关闭":"开启"); + } + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_FlowDown")){ + hashMap.put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f? + "异常":"正常"); + } + if(haiWeiPropertyVo.getNameEn().equals("三菱FX2N_1_mCon")){ + hashMap.put("value", Float.parseFloat(haiWeiPropertyVo.getValue().toString()) == 1f? + "异常":"正常"); + } + list.add(hashMap); } - - if (hashMap.size() > 1) { - List deviceLogs1 = taiyangnengCollect.get(thingsModel.getIdentifier()); - if (deviceLogs1 != null) { - if (StringUtils.isNotEmpty(deviceLogs1.get(0).getLogValue())) { - if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) == Float.parseFloat(deviceLogs1.get(1).getLogValue())) { - hashMap.put("upType", 1); - } else if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) < Float.parseFloat(deviceLogs1.get(1).getLogValue())) { - hashMap.put("upType", -1); - } - hashMap.put("value", deviceLogs1.get(0).getLogValue()); - } else { - hashMap.put("value", "--"); - hashMap.put("upType", 0); - } - - } - } else if (hashMap.size() > 0) { - List deviceLogs2 = taiyangnengCollect.get(thingsModel.getIdentifier()); - if (deviceLogs2 != null) { - hashMap.put("value", deviceLogs2.get(0).getLogValue()); - } - } - list.add(hashMap); - } - } else { - for (ThingsModel thingsModel : liuliangModels) { - HashMap hashMap = new HashMap() {{ - put("upType", 0); - put("identifier", thingsModel.getIdentifier()); - put("unit", ""); - put("value", 0); - put("name", thingsModel.getModelName()); - }}; - list.add(hashMap); } } +// if (StringUtils.isNotEmpty(liuliangIds)) { +// Device taiyangnengDevice = deviceMapper.selectDeviceByDeviceId(Long.parseLong(liuliangIds)); +// List deviceLogs = logService.selectDeviceLogList(new DeviceLog() {{ +// setSerialNumber(taiyangnengDevice.getSerialNumber()); +// setBeginTime(DateUtil.beginOfDay(DateUtil.offsetDay(dateTime, -1)).toString()); +// setEndTime(DateUtil.endOfDay(dateTime).toString()); +// }}); +// Map> taiyangnengCollect = deviceLogs.stream().sorted(Comparator +// .comparing(DeviceLog::getCreateTime, Comparator +// .nullsFirst(Comparator.naturalOrder())).reversed()).collect(Collectors.groupingBy(t -> t.getIdentity())); +// for (ThingsModel thingsModel : liuliangModels) { +// HashMap hashMap = new HashMap() {{ +// put("upType", 0); +// put("identifier", thingsModel.getIdentifier()); +// put("unit", ""); +// put("value", 0); +// put("name", thingsModel.getModelName()); +// }}; +// if (StringUtils.isNotEmpty(thingsModel.getSpecs())) { +// String specs = thingsModel.getSpecs(); +// JSONObject parse = (JSONObject) JSON.parse(specs); +// if (parse.containsKey("unit")) { +// hashMap.put("unit", parse.get("unit")); +// } +// } +// +// if (hashMap.size() > 1) { +// List deviceLogs1 = taiyangnengCollect.get(thingsModel.getIdentifier()); +// if (deviceLogs1 != null) { +// if (StringUtils.isNotEmpty(deviceLogs1.get(0).getLogValue())) { +// if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) == Float.parseFloat(deviceLogs1.get(1).getLogValue())) { +// hashMap.put("upType", 1); +// } else if (Float.parseFloat(deviceLogs1.get(0).getLogValue()) < Float.parseFloat(deviceLogs1.get(1).getLogValue())) { +// hashMap.put("upType", -1); +// } +// hashMap.put("value", deviceLogs1.get(0).getLogValue()); +// } else { +// hashMap.put("value", "--"); +// hashMap.put("upType", 0); +// } +// +// } +// } else if (hashMap.size() > 0) { +// List deviceLogs2 = taiyangnengCollect.get(thingsModel.getIdentifier()); +// if (deviceLogs2 != null) { +// hashMap.put("value", deviceLogs2.get(0).getLogValue()); +// } +// } +// list.add(hashMap); +// } +// } else { +// for (ThingsModel thingsModel : liuliangModels) { +// HashMap hashMap = new HashMap() {{ +// put("upType", 0); +// put("identifier", thingsModel.getIdentifier()); +// put("unit", ""); +// put("value", 0); +// put("name", thingsModel.getModelName()); +// }}; +// list.add(hashMap); +// } +// } return list; }