From e7c3ade238e7771ea12640cc5f15bfa6086096a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Tue, 18 Mar 2025 11:07:25 +0800 Subject: [PATCH 1/2] =?UTF-8?q?tplink=E6=91=84=E5=83=8F=E5=A4=B4=E7=89=A9?= =?UTF-8?q?=E8=81=94=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tplink/camera/entity/CameraInfo.java | 2 +- .../camera/mapper/xml/CameraInfoMapper.xml | 20 ++-- .../service/impl/CameraInfoServiceImpl.java | 104 +++++------------- .../com/nu/modules/tplink/utils/TumsApi.java | 6 +- 4 files changed, 44 insertions(+), 88 deletions(-) diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java index b622c6b..6de957f 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/entity/CameraInfo.java @@ -133,7 +133,7 @@ public class CameraInfo implements Serializable { private String topTime; /**护理单元*/ @ApiModelProperty(value = "护理单元ID") - @Dict(dictTable ="nu_base_info",dicText = "name",dicCode = "id") + @Dict(dictTable ="nu_base_info",dicText = "nu_name",dicCode = "nu_id") private String nuId; /**护理单元*/ @ApiModelProperty(value = "护理单元") diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/mapper/xml/CameraInfoMapper.xml b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/mapper/xml/CameraInfoMapper.xml index 1f51577..3161f69 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/mapper/xml/CameraInfoMapper.xml +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/mapper/xml/CameraInfoMapper.xml @@ -26,9 +26,9 @@ system_type as systemType, protocol as protocol, a.nu_id as nuId, - b.name as nuName, + b.nu_name as nuName, ifnull(c.multitrans,0) as multitrans - from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.id + from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.nu_id left join nu_iot_tplink_camera_capability c on a.device_index = c.device_index @@ -47,7 +47,7 @@ AND a.region_name LIKE concat('%',#{params.regionName},'%') - AND b.name LIKE concat('%',#{params.nuName},'%') + AND b.nu_name LIKE concat('%',#{params.nuName},'%') AND a.project_id = #{params.projectId} @@ -87,15 +87,15 @@ @@ -123,9 +123,9 @@ location_name as locationName, system_type as systemType, protocol as protocol, - nu_id as nuId, - b.id as nuName - from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.id + a.nu_id as nuId, + b.nu_name as nuName + from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.nu_id where device_index = #{deviceIndex} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/service/impl/CameraInfoServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/service/impl/CameraInfoServiceImpl.java index 094d2f4..a16df9e 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/service/impl/CameraInfoServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/camera/service/impl/CameraInfoServiceImpl.java @@ -1694,8 +1694,7 @@ public class CameraInfoServiceImpl extends ServiceImpl map = new HashMap<>(); String errorMsgs = ""; List dataList = Lists.newArrayList(); - Map storageMap = getStoragesById(cameraInfo); - String error = storageMap.get("error").toString(); - if(error.equals("0")){ - List storageList = (List)storageMap.get("data"); - if(storageList!=null&&storageList.size()>0){ - for(int i=0;i chnMap = addPlaybackChn(storage); - String chnError = chnMap.get("error").toString(); - if(chnError.equals("0")){ - List chnList = (List)chnMap.get("data"); - if(chnList!=null&&chnList.size()>0){ - for(int j=0;j playbackMap = getPlaybackUrl(chn,1); - String pbError = playbackMap.get("error").toString(); - if(pbError.equals("0")){ - List pbList = (List)playbackMap.get("data"); - if(pbList!=null&&pbList.size()>0){ - for(int k=0;k获取回放通道时:"+errMsg+""; - } + Map chnMap = addPlaybackChn(cameraInfo); + String chnError = chnMap.get("error").toString(); + if(chnError.equals("0")){ + List chnList = (List)chnMap.get("data"); + if(chnList!=null&&chnList.size()>0){ + for(int j=0;j playbackMap = getPlaybackUrl(chn,1); + String pbError = playbackMap.get("error").toString(); + if(pbError.equals("0")){ + List pbList = (List)playbackMap.get("data"); + if(pbList!=null&&pbList.size()>0){ + for(int k=0;k添加回放通道时:"+errMsg+""; + errorMsgs = errorMsgs+ "
获取回放通道时:"+errMsg+"
"; } } } }else{ - ErrorCode errVo = errorCodeService.getByCode(error); + ErrorCode errVo = errorCodeService.getByCode(chnError); String errMsg = errVo.getErrorMsg(); - errorMsgs = errorMsgs+ "
获取指定监控点的存储设备列表时:"+errMsg+"
"; + errorMsgs = errorMsgs+ "
添加回放通道时:"+errMsg+"
"; } map.put("error",errorMsgs); map.put("data",dataList); @@ -2000,12 +1982,6 @@ public class CameraInfoServiceImpl extends ServiceImpl map = new HashMap<>(); String errorMsgs = ""; - List dataList = Lists.newArrayList(); - Map storageMap = getStoragesById(cameraInfo); - String error = storageMap.get("error").toString(); - if(error.equals("0")){ - List storageList = (List)storageMap.get("data"); - if(storageList!=null&&storageList.size()>0){ - for(int i=0;i multitransMap = getMultitransUrl(storage,1); - String multitransError = multitransMap.get("error").toString(); - if(multitransError.equals("0")){ - CameraInfo entity = (CameraInfo)multitransMap.get("data"); - entity.setQueryAddress(tumsConfig.getUrl()); - dataList.add(entity); - }else{ - ErrorCode errVo = errorCodeService.getByCode(multitransError); - String errMsg = errVo.getErrorMsg(); - errorMsgs = errorMsgs+ "
获取nvmp设备双向通信URL:"+errMsg+"
"; - } - } - } + Map multitransMap = getMultitransUrl(cameraInfo,1); + String multitransError = multitransMap.get("error").toString(); + if(multitransError.equals("0")){ + CameraInfo entity = (CameraInfo)multitransMap.get("data"); + entity.setQueryAddress(tumsConfig.getUrl()); + return Result.OK(entity); }else{ - ErrorCode errVo = errorCodeService.getByCode(error); + ErrorCode errVo = errorCodeService.getByCode(multitransError); String errMsg = errVo.getErrorMsg(); - errorMsgs = errorMsgs+ "
获取指定监控点的存储设备列表时:"+errMsg+"
"; - } -// map.put("error",errorMsgs); -// map.put("data",dataList); - if(errorMsgs.equals("")){ - return Result.OK(dataList); - }else { + errorMsgs = errorMsgs+ "
获取nvmp设备双向通信URL:"+errMsg+"
"; return Result.error(errorMsgs); } } 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 9e01a15..e75373c 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 @@ -262,8 +262,9 @@ public class TumsApi { */ public String getPlaybackUrl(String jsonRequest){ this.createTumsClient(); + log.info("getPlaybackUrl:request:{}",jsonRequest); String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_PLAYBACK_URL.getValue()); - log.info("getPlaybackUrl:{}",jsonResponse); + log.info("getPlaybackUrl:response:{}",jsonResponse); return jsonResponse; } @@ -286,8 +287,9 @@ public class TumsApi { */ public String getMultitransUrl(String jsonRequest){ this.createTumsClient(); + log.info("getMultitransUrl:request:{}",jsonRequest); String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_MULTITRANS_URL.getValue()); - log.info("getMultitransUrl:{}",jsonResponse); + log.info("getMultitransUrl:response:{}",jsonResponse); return jsonResponse; } From 5718b856fc46f835bd93a80bbe79a0782a6a0672 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Tue, 18 Mar 2025 18:07:21 +0800 Subject: [PATCH 2/2] =?UTF-8?q?tplink=E6=91=84=E5=83=8F=E5=A4=B4=E8=AF=AD?= =?UTF-8?q?=E9=9F=B3=E5=AF=B9=E8=AE=B2=EF=BC=8C=E6=9C=BA=E6=9E=84=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nu/modules/tplink/enums/ApiEnum.java | 3 + .../controller/ProjectInfoController.java | 61 +++++++++++++++++ .../project/mapper/ProjectInfoMapper.java | 1 + .../project/mapper/xml/ProjectInfoMapper.xml | 4 ++ .../project/service/IProjectInfoService.java | 5 ++ .../service/impl/ProjectInfoServiceImpl.java | 65 +++++++++++++++++++ .../com/nu/modules/tplink/utils/TumsApi.java | 39 +++++++++++ 7 files changed, 178 insertions(+) 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 329397b..148f149 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 @@ -23,6 +23,9 @@ public enum ApiEnum { LOGOUT("/tums/account/v1/logout","注销"), SET_CURRENT_PROJECT("/tums/resource/v2/setCurrentProject","设置当前项目"), GET_ALL_PROJECT_INFO("/tums/resource/v2/getAllProjectInfo","获取所有项目信息"), + ADD_PROJECT("/tums/resource/v2/addProject","添加项目信息"), + EDIT_PROJECT("/tums/resource/v2/editProject","修改项目信息"), + DELETE_PROJECT("/tums/resource/v2/deleteProject","删除项目信息"), GET_ROOT_REGIONS("/tums/resource/v2/getRootRegions","获取区域列表"), GET_DEVICE_LIST("/tums/deviceManager/v2/getDeviceList","获取设备列表"), MODIFY_DEVICE_DETAILS("/tums/deviceManager/v1/modifyDeviceDetails","修改设备信息"), diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/controller/ProjectInfoController.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/controller/ProjectInfoController.java index c759cc3..3ec6f14 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/controller/ProjectInfoController.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/controller/ProjectInfoController.java @@ -7,6 +7,9 @@ package com.nu.modules.tplink.project.controller; import javax.servlet.http.HttpServletRequest; + +import com.nu.modules.tplink.alarm.entity.AlarmLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.jeecg.common.api.vo.Result; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -14,6 +17,7 @@ import lombok.extern.slf4j.Slf4j; import com.nu.modules.tplink.project.entity.ProjectInfo; import com.nu.modules.tplink.project.model.ProjectTreeModel; import com.nu.modules.tplink.project.service.IProjectInfoService; +import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -85,4 +89,61 @@ public class ProjectInfoController extends JeecgController add(@RequestBody ProjectInfo projectInfo) { + return service.addProject(projectInfo); + } + + /** + * 编辑 + * + * @param projectInfo + * @return + */ +// @AutoLog(value = "护理单元-物联管理-TPLINK项目信息-编辑") + @ApiOperation(value="护理单元-物联管理-TPLINK项目信息-编辑", notes="护理单元-物联管理-TPLINK项目信息-编辑") + @PostMapping(value = "/edit") + public Result edit(@RequestBody ProjectInfo projectInfo) { + return service.editProject(projectInfo); + } + + /** + * 通过id删除 + * + * @param projectInfo + * @return + */ +// @AutoLog(value = "护理单元-物联管理-TPLINK项目信息-编辑") + @ApiOperation(value="护理单元-物联管理-TPLINK项目信息-通过id删除", notes="护理单元-物联管理-TPLINK项目信息-通过id删除") + @PostMapping(value = "/delete") + public Result delete(@RequestBody ProjectInfo projectInfo) { + return service.deleteProject(projectInfo); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "护理单元-物联管理-TPLINK项目信息-通过id查询") + @ApiOperation(value="护理单元-物联管理-TPLINK项目信息-通过id查询", notes="护理单元-物联管理-TPLINK项目信息-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + ProjectInfo projectInfo = service.getById(id); + if(projectInfo==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(projectInfo); + } + } diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/ProjectInfoMapper.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/ProjectInfoMapper.java index f154cbb..11c2be5 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/ProjectInfoMapper.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/mapper/ProjectInfoMapper.java @@ -21,6 +21,7 @@ public interface ProjectInfoMapper extends BaseMapper { IPage findPage(Page page, @Param("params") ProjectInfo projectInfo); int add(Map map); int updateById(Map map); + int deleteByProjectId(String projectId); int updateLeafByPId(Map map); List queryTreeList(); } 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 0160700..4062573 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 @@ -141,6 +141,10 @@ where id = #{id} + + delete from nu_iot_tplink_project where project_id = #{projectId} + + update nu_iot_tplink_project set iz_leaf = #{izLeaf} diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/IProjectInfoService.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/IProjectInfoService.java index e7845c0..c9d8003 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/IProjectInfoService.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/IProjectInfoService.java @@ -21,4 +21,9 @@ public interface IProjectInfoService extends IService { List findList(ProjectInfo projectInfo); IPage findPage(Page page, ProjectInfo projectInfo); List queryTreeList(); + + Result addProject(ProjectInfo projectInfo); + Result editProject(ProjectInfo projectInfo); + Result deleteProject(ProjectInfo projectInfo); + } diff --git a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/impl/ProjectInfoServiceImpl.java b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/impl/ProjectInfoServiceImpl.java index 1431682..05e4d8a 100644 --- a/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/impl/ProjectInfoServiceImpl.java +++ b/nursing-unit-iot/nu-iot-biz/src/main/java/com/nu/modules/tplink/project/service/impl/ProjectInfoServiceImpl.java @@ -128,4 +128,69 @@ public class ProjectInfoServiceImpl extends ServiceImpl addProject(ProjectInfo projectInfo){ + StringBuffer sb = new StringBuffer(); + sb.append("{"); + sb.append("\"enterpriseId\"").append(":").append("\"0\"").append(","); + sb.append("\"projectName\"").append(":").append("\"").append(projectInfo.getProjectName()).append("\""); + sb.append("}"); + String jsonResponse = tumsApi.addProject(sb.toString()); + JSONObject jsonObject = new JSONObject(jsonResponse); + String errorCode = jsonObject.getStr("error_code"); + if(errorCode.equals("0")){ + sync(); + return Result.OK("项目添加成功!"); + }else{ + return Result.error(jsonObject.getStr("msg")); + } + } + + /** + * 编辑 + * + */ + @Override + public Result editProject(ProjectInfo projectInfo){ + StringBuffer sb = new StringBuffer(); + sb.append("{"); + sb.append("\"projectId\"").append(":").append("\"").append(projectInfo.getProjectId()).append("\","); + sb.append("\"projectName\"").append(":").append("\"").append(projectInfo.getProjectName()).append("\""); + sb.append("}"); + String jsonResponse = tumsApi.editProject(sb.toString()); + JSONObject jsonObject = new JSONObject(jsonResponse); + String errorCode = jsonObject.getStr("error_code"); + if(errorCode.equals("0")){ + sync(); + return Result.OK("项目编辑成功!"); + }else{ + return Result.error(jsonObject.getStr("msg")); + } + } + + /** + * 通过id删除 + * + */ + @Override + public Result deleteProject(ProjectInfo projectInfo){ + StringBuffer sb = new StringBuffer(); + sb.append("{"); + sb.append("\"projectId\"").append(":").append("\"").append(projectInfo.getProjectId()).append("\""); + sb.append("}"); + String jsonResponse = tumsApi.deleteProject(sb.toString()); + JSONObject jsonObject = new JSONObject(jsonResponse); + String errorCode = jsonObject.getStr("error_code"); + if(errorCode.equals("0")||errorCode.equals("-82401")){ + baseMapper.deleteByProjectId(projectInfo.getProjectId()); + return Result.OK("项目删除成功!"); + }else{ + return Result.error(jsonObject.getStr("msg")); + } + } + } 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 e75373c..a36e708 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 @@ -96,6 +96,45 @@ public class TumsApi { return jsonResponse; } + /** + * 添加项目信息 + * @param jsonRequest + * @return + */ + public String addProject(String jsonRequest){ + this.createTumsClient(); + log.info("addProject:request:{}",jsonRequest); + String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.ADD_PROJECT.getValue()); + log.info("addProject:response:{}",jsonResponse); + return jsonResponse; + } + + /** + * 修改项目信息 + * @param jsonRequest + * @return + */ + public String editProject(String jsonRequest){ + this.createTumsClient(); + log.info("editProject:request:{}",jsonRequest); + String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.EDIT_PROJECT.getValue()); + log.info("editProject:response:{}",jsonResponse); + return jsonResponse; + } + + /** + * 删除项目信息 + * @param jsonRequest + * @return + */ + public String deleteProject(String jsonRequest){ + this.createTumsClient(); + log.info("deleteProject:request:{}",jsonRequest); + String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.DELETE_PROJECT.getValue()); + log.info("deleteProject:response:{}",jsonResponse); + return jsonResponse; + } + /** * 获取区域列表 * @param jsonRequest