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] =?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