From 231d42c48120c6a1a78e38f4da128ac5fe5eb366 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Thu, 20 Mar 2025 16:45:56 +0800 Subject: [PATCH 1/2] =?UTF-8?q?tplink=E6=91=84=E5=83=8F=E5=A4=B4=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nu/modules/tplink/enums/ApiEnum.java | 1 + .../controller/RegionInfoController.java | 2 +- .../region/mapper/xml/RegionInfoMapper.xml | 13 +++-- .../service/impl/RegionInfoServiceImpl.java | 53 +++++++++++++++++++ .../com/nu/modules/tplink/utils/TumsApi.java | 16 +++++- 5 files changed, 79 insertions(+), 6 deletions(-) diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/enums/ApiEnum.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/enums/ApiEnum.java index 8427f1d..7e99f87 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/enums/ApiEnum.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/enums/ApiEnum.java @@ -31,6 +31,7 @@ public enum ApiEnum { SWITCH_REGION_ORDER("/tums/resource/v2/switchRegionOrder","移动区域信息"), DELETE_REGION("/tums/resource/v2/deleteRegion","删除区域信息"), GET_ROOT_REGIONS("/tums/resource/v2/getRootRegions","获取区域列表"), + GET_ROOT_REGION_CHILDREN("/tums/resource/v2/getRegionChildren","获取子区域列表"), GET_DEVICE_LIST("/tums/deviceManager/v2/getDeviceList","获取设备列表"), MODIFY_DEVICE_DETAILS("/tums/deviceManager/v1/modifyDeviceDetails","修改设备信息"), REBOOT_DEVICE_LIST("/tums/deviceManager/v2/rebootDeviceList","重启设备"), diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java index ee15185..c48ca92 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java @@ -62,7 +62,7 @@ public class RegionInfoController extends JeecgController @@ -131,7 +133,8 @@ update_time = #{updateTime}, media_server_id = #{mediaServerId}, backup_media_server_id = #{backupMediaServerId}, - bind_type = #{bindType} + bind_type = #{bindType}, + iz_leaf = #{izLeaf} where id = #{id} @@ -146,8 +149,9 @@ a.region_level as regionLevel, a.sort, a.parent_id as parentId, - b.project_name as projectName, a.project_id as projectId, + ifnull(p.region_name,'无') as parentName, + b.project_name as projectName, a.sys_type as sysType, a.stream_way as streamWay, a.has_children as hasChildren, @@ -159,6 +163,7 @@ a.iz_leaf as izLeaf from nu_iot_tplink_region a left join nu_iot_tplink_project b on a.project_id = b.project_id + left join nu_iot_tplink_region p on a.parent_id = p.region_id where a.parent_id = #{parentId} and a.project_id = #{projectId} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java index 9b155a9..c9451af 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java @@ -83,12 +83,15 @@ public class RegionInfoServiceImpl extends ServiceImpl projectMap = new HashMap<>(); @@ -96,6 +99,56 @@ public class RegionInfoServiceImpl extends ServiceImpl map = new HashMap<>(); + for (String key : voObject.keySet()) { + map.put(key, voObject.getStr(key)); + } + map.put("sort", map.get("order")); + String hasChildren = map.get("hasChildren"); + if(hasChildren.equals("0")){ + map.put("izLeaf", "1"); + }else{ + map.put("izLeaf", "0"); + } + RegionInfo entity = baseMapper.getByRegionId(map); + if(entity==null){ + //新增 + entity = new RegionInfo(); + entity.setRegionId(map.get("regionId")); + baseMapper.add(map); + }else{ + //修改 + map.put("id",String.valueOf(entity.getId())); + baseMapper.updateById(map); + } + if(hasChildren.equals("1")){ + //同步子级 + syncChildren(entity); + } } } } diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/utils/TumsApi.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/utils/TumsApi.java index 4d6d657..e072b0c 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/utils/TumsApi.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/utils/TumsApi.java @@ -194,8 +194,22 @@ public class TumsApi { */ public String getRootRegions(String jsonRequest){ this.createTumsClient(); + log.info("getRootRegions:request:{}",jsonRequest); String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.GET_ROOT_REGIONS.getValue()); - log.info("getAllProjectInfo:{}",jsonResponse); + log.info("getRootRegions:response:{}",jsonResponse); + return jsonResponse; + } + + /** + * 获取子区域列表 + * @param jsonRequest + * @return + */ + public String getRegionChildren(String jsonRequest){ + this.createTumsClient(); + log.info("getRegionChildren:request:{}",jsonRequest); + String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.GET_ROOT_REGION_CHILDREN.getValue()); + log.info("getRegionChildren:response:{}",jsonResponse); return jsonResponse; } From 22e8d7e92babc348da9c3f129a276a3d93555b72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Thu, 20 Mar 2025 17:38:53 +0800 Subject: [PATCH 2/2] =?UTF-8?q?tplink=E6=91=84=E5=83=8F=E5=A4=B4=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E4=BC=98=E5=8C=962?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/mapper/xml/ProjectInfoMapper.xml | 2 + .../project/model/ProjectTreeModel.java | 86 ++++++++++++++++++- .../controller/RegionInfoController.java | 10 +++ .../region/service/IRegionInfoService.java | 1 + .../service/impl/RegionInfoServiceImpl.java | 7 +- .../com/nu/modules/tplink/utils/TumsApi.java | 3 +- 6 files changed, 105 insertions(+), 4 deletions(-) diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/xml/ProjectInfoMapper.xml b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/xml/ProjectInfoMapper.xml index 904fc66..0c229f2 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/xml/ProjectInfoMapper.xml +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/xml/ProjectInfoMapper.xml @@ -164,6 +164,7 @@ project_name as projectName, institutional_id as institutionalId, create_time as createTime, + DATE_FORMAT(FROM_UNIXTIME(create_time),'%Y-%m-%d %H:%i:%s') as createTimeStr, device_num as deviceNum, message_num as messageNum, sort as sort, @@ -177,6 +178,7 @@ offline_vms_dev_num as offlineVmsDevNum, offline_nbs_dev_num as offlineNbsDevNum, running_time as runningTime, + running_time DIV 86400 AS runningTimeStr, status, iz_leaf as izLeaf from nu_iot_tplink_project diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/model/ProjectTreeModel.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/model/ProjectTreeModel.java index 0b11464..e64fb56 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/model/ProjectTreeModel.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/model/ProjectTreeModel.java @@ -39,6 +39,20 @@ public class ProjectTreeModel implements Serializable{ private String projectName; + private String institutionalId; + + private String createTimeStr; + + private Integer deviceNum; + + private Integer offlineNum; + + private Integer abnormalNum; + + private String runningTimeStr; + + private Integer status; + private String order; private Integer sort; @@ -58,6 +72,13 @@ public class ProjectTreeModel implements Serializable{ this.id = "0"; this.projectId = projectInfo.getProjectId(); this.projectName = projectInfo.getProjectName(); + this.institutionalId = projectInfo.getInstitutionalId(); + this.createTimeStr = projectInfo.getCreateTimeStr(); + this.deviceNum = projectInfo.getDeviceNum(); + this.offlineNum = projectInfo.getOfflineNum(); + this.abnormalNum = projectInfo.getAbnormalNum(); + this.runningTimeStr = projectInfo.getRunningTimeStr(); + this.status = projectInfo.getStatus(); this.order = projectInfo.getOrder(); this.sort = projectInfo.getSort(); if(0 == projectInfo.getIzLeaf()){ @@ -146,6 +167,62 @@ public class ProjectTreeModel implements Serializable{ this.projectName = projectName; } + public String getInstitutionalId() { + return institutionalId; + } + + public void setInstitutionalId(String institutionalId) { + this.institutionalId = institutionalId; + } + + public String getCreateTimeStr() { + return createTimeStr; + } + + public void setCreateTimeStr(String createTimeStr) { + this.createTimeStr = createTimeStr; + } + + public Integer getDeviceNum() { + return deviceNum; + } + + public void setDeviceNum(Integer deviceNum) { + this.deviceNum = deviceNum; + } + + public Integer getOfflineNum() { + return offlineNum; + } + + public void setOfflineNum(Integer offlineNum) { + this.offlineNum = offlineNum; + } + + public Integer getAbnormalNum() { + return abnormalNum; + } + + public void setAbnormalNum(Integer abnormalNum) { + this.abnormalNum = abnormalNum; + } + + public String getRunningTimeStr() { + return runningTimeStr; + } + + public void setRunningTimeStr(String runningTimeStr) { + this.runningTimeStr = runningTimeStr; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + public String getOrder() { return order; } @@ -177,6 +254,13 @@ public class ProjectTreeModel implements Serializable{ return Objects.equals(id, model.id) && Objects.equals(projectId, model.projectId) && Objects.equals(projectName, model.projectName) && + Objects.equals(institutionalId, model.institutionalId) && + Objects.equals(createTimeStr, model.createTimeStr) && + Objects.equals(deviceNum, model.deviceNum) && + Objects.equals(offlineNum, model.offlineNum) && + Objects.equals(abnormalNum, model.abnormalNum) && + Objects.equals(runningTimeStr, model.runningTimeStr) && + Objects.equals(status, model.status) && Objects.equals(order, model.order) && Objects.equals(sort, model.sort) && Objects.equals(children, model.children); @@ -187,7 +271,7 @@ public class ProjectTreeModel implements Serializable{ */ @Override public int hashCode() { - return Objects.hash(id, projectId, projectName, order, sort, children); + return Objects.hash(id, projectId, projectName, institutionalId, createTimeStr, deviceNum ,offlineNum ,abnormalNum ,runningTimeStr ,status ,order, sort, children); } } diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java index c48ca92..0b46415 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/controller/RegionInfoController.java @@ -66,6 +66,16 @@ public class RegionInfoController extends JeecgController { Result sync(RegionInfo regionInfo); + Result syncChildren(RegionInfo regionInfo); void sync(String jsonResponse); List findList(RegionInfo regionInfo); IPage findPage(Page page, RegionInfo regionInfo); diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java index c9451af..2d3c5d2 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/region/service/impl/RegionInfoServiceImpl.java @@ -111,8 +111,8 @@ public class RegionInfoServiceImpl extends ServiceImpl