From 11723c61f1ed971e318b9dbb775d7d7a3d739c02 Mon Sep 17 00:00:00 2001 From: huangfeng Date: Tue, 20 Feb 2024 10:54:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E6=96=B0=E4=BC=A0?= =?UTF-8?q?=E6=84=9F=E5=99=A8=E7=9A=84=E5=8A=9F=E8=83=BD=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cac/controller/NSensorController.java | 76 +++++++++++++++++++ .../java/com/xydl/cac/entity/NSensor.java | 12 +++ src/main/java/com/xydl/cac/entity/Zsb.java | 2 +- .../cac/repository/NSensorRepository.java | 2 + .../com/xydl/cac/service/NSensorService.java | 4 +- .../cac/service/impl/NSensorServiceImpl.java | 22 +++++- .../service/impl/ParamBindServiceImpl.java | 7 +- 7 files changed, 119 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/xydl/cac/controller/NSensorController.java diff --git a/src/main/java/com/xydl/cac/controller/NSensorController.java b/src/main/java/com/xydl/cac/controller/NSensorController.java new file mode 100644 index 0000000..c942960 --- /dev/null +++ b/src/main/java/com/xydl/cac/controller/NSensorController.java @@ -0,0 +1,76 @@ +package com.xydl.cac.controller; + +import com.xydl.cac.entity.NSensor; +import com.xydl.cac.exception.BusinessException; +import com.xydl.cac.model.Response; +import com.xydl.cac.service.NSensorService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.repository.query.Param; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.constraints.NotNull; +import java.util.List; + +@RestController +@Api(tags = {"监测设备相关接口"}) +@RequestMapping("nsensor") +@Slf4j +public class NSensorController extends BasicController { + + @Resource + NSensorService service; + + @GetMapping("listAll") + @ApiOperation("查询列表") + public Response> listAll(@NotNull(message = "主设备编号不能缺少") @Param("zsbid") Integer zsbid) { + List result = service.listAll(zsbid); + return Response.success(result); + } + + @PostMapping("add") + @ApiOperation("新增") + public Response add(@Validated @RequestBody NSensor item) throws Exception { + NSensor result = service.add(item); + return Response.success(result); + } + + @PostMapping("update") + @ApiOperation("更新") + public Response update(@Validated @RequestBody NSensor item) throws Exception { + if (item.getId() == null) { + throw new BusinessException("ID不能为空!"); + } + service.update(item); + return Response.success("OK"); + } + + @PostMapping("delete") + @ApiOperation("删除") + public Response delete(@Validated @NotNull(message = "ID不能为空!") @Param("id") Integer id) { + service.delete(id); + return Response.success("OK"); + } + + @PostMapping("detail") + @ApiOperation("详情") + public Response detail(@Validated @NotNull(message = "ID不能为空!") Integer id) throws Exception { + NSensor detail = service.detail(id); + return Response.success(detail); + } + + @PostMapping("bindicd") + @ApiOperation("详情") + public Response bindicd(@Validated @NotNull(message = "ID不能为空!") @Param("id") Integer id, @Validated @NotNull(message = "icdid不能为空!") @Param("icdid") Integer icdid) { + try { + service.bindicd(id, icdid); + return Response.success("OK"); + } catch (Exception ex) { + return Response.fail(ex.getMessage()); + } + } + +} diff --git a/src/main/java/com/xydl/cac/entity/NSensor.java b/src/main/java/com/xydl/cac/entity/NSensor.java index 1f9bb90..e931b0e 100644 --- a/src/main/java/com/xydl/cac/entity/NSensor.java +++ b/src/main/java/com/xydl/cac/entity/NSensor.java @@ -53,6 +53,18 @@ public class NSensor { @Column(name = "status") private Integer status; + @Column(name = "zsb_id") + @ApiModelProperty("主设备编号") + private Integer zsbId; + + @Column(name = "icd_id") + @ApiModelProperty("关联icd表中的id") + private Integer icdId; + + @ApiModelProperty("主设备名称") + @Transient + private String zsbName; + @Transient private List points; diff --git a/src/main/java/com/xydl/cac/entity/Zsb.java b/src/main/java/com/xydl/cac/entity/Zsb.java index e0192c8..8c01f5f 100644 --- a/src/main/java/com/xydl/cac/entity/Zsb.java +++ b/src/main/java/com/xydl/cac/entity/Zsb.java @@ -220,6 +220,6 @@ public class Zsb { private String lxName; @Transient - private List children; + private List children; } \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/repository/NSensorRepository.java b/src/main/java/com/xydl/cac/repository/NSensorRepository.java index 26892a7..ca392fb 100644 --- a/src/main/java/com/xydl/cac/repository/NSensorRepository.java +++ b/src/main/java/com/xydl/cac/repository/NSensorRepository.java @@ -13,4 +13,6 @@ public interface NSensorRepository extends JpaRepository, JpaS List findBySensorCode(String sensorCode); + List findByZsbId(Integer zsbId); + } \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/service/NSensorService.java b/src/main/java/com/xydl/cac/service/NSensorService.java index f5d2d0d..8939b8c 100644 --- a/src/main/java/com/xydl/cac/service/NSensorService.java +++ b/src/main/java/com/xydl/cac/service/NSensorService.java @@ -7,7 +7,7 @@ import java.util.Collection; import java.util.List; public interface NSensorService { - List listAll(); + List listAll(Integer zsbid); Page list(int pageNum, int pageSize); @@ -19,6 +19,8 @@ public interface NSensorService { NSensor detail(Integer id) throws Exception; + void bindicd(Integer id, Integer icdid) throws Exception; + void importFrom(Collection collection); } diff --git a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java index 7d6d36c..6f24ac1 100644 --- a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java @@ -1,7 +1,9 @@ package com.xydl.cac.service.impl; +import com.xydl.cac.entity.Modev; import com.xydl.cac.entity.NPoint; import com.xydl.cac.entity.NSensor; +import com.xydl.cac.exception.BusinessException; import com.xydl.cac.repository.NPointRepository; import com.xydl.cac.repository.NSensorRepository; import com.xydl.cac.service.NSensorService; @@ -27,8 +29,13 @@ public class NSensorServiceImpl implements NSensorService { NPointRepository pointRepository; @Override - public List listAll() { - List list = repository.findAll(); + public List listAll(Integer zsbid) { + List list; + if (zsbid == null) { + list = repository.findAll(); + } else { + list = repository.findByZsbId(zsbid); + } return list; } @@ -64,6 +71,17 @@ public class NSensorServiceImpl implements NSensorService { return optional.get(); } + @Override + public void bindicd(Integer id, Integer icdid) throws Exception { + NSensor entity = repository.findById(id).orElse(null); + if (entity != null) { + entity.setIcdId(icdid); + repository.save(entity); + } else { + throw new BusinessException("未找到该传感器"); + } + } + @Override public void importFrom(Collection collection) { for (NSensor item : collection) { diff --git a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java index da8d110..d8fcc38 100644 --- a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java @@ -8,6 +8,7 @@ import com.xydl.cac.model.ColumnModel; import com.xydl.cac.model.Response; import com.xydl.cac.repository.*; import com.xydl.cac.service.DataService; +import com.xydl.cac.service.NSensorService; import com.xydl.cac.service.ParamBindService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -33,6 +34,8 @@ public class ParamBindServiceImpl implements ParamBindService { @Resource ZsbRepository zsbRepository; @Resource + NSensorRepository sensorRepository; + @Resource ModevRepository modevRepository; @Resource ModevTypeRepository modevTypeRepository; @@ -60,8 +63,8 @@ public class ParamBindServiceImpl implements ParamBindService { for (Zsb zsb : zsbList) { zsb.setBdzName(bdz.getMc()); zsb.setJgName(jg.getMc()); - List modevList = modevRepository.findByZsbid(zsb.getId()); - zsb.setChildren(modevList); + List sensorList = sensorRepository.findByZsbId(zsb.getId()); + zsb.setChildren(sensorList); } } }