diff --git a/src/main/java/com/xydl/cac/controller/NSensorController.java b/src/main/java/com/xydl/cac/controller/NSensorController.java index 175de29..0d278c9 100644 --- a/src/main/java/com/xydl/cac/controller/NSensorController.java +++ b/src/main/java/com/xydl/cac/controller/NSensorController.java @@ -63,11 +63,12 @@ public class NSensorController extends BasicController { @GetMapping("list") @ApiOperation("查询列表") - public Response> list(@ApiParam("页码") @RequestParam(value = "pageNum", required = false) Integer pageNum, + public Response> list(@ApiParam("类型") @RequestParam(value = "typeId", required = false) Integer typeId, + @ApiParam("页码") @RequestParam(value = "pageNum", required = false) Integer pageNum, @ApiParam("每页数量") @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception { pageNum = this.initPageNum(pageNum); pageSize = this.initPageSize(pageSize); - Page result = service.list(pageNum, pageSize); + Page result = service.list(typeId, pageNum, pageSize); return Response.success(result); } diff --git a/src/main/java/com/xydl/cac/entity/NSensor.java b/src/main/java/com/xydl/cac/entity/NSensor.java index 95402e3..5710cbd 100644 --- a/src/main/java/com/xydl/cac/entity/NSensor.java +++ b/src/main/java/com/xydl/cac/entity/NSensor.java @@ -67,6 +67,10 @@ public class NSensor { @Transient private String zsbName; + @ApiModelProperty("区域名称") + @Transient + private String jgName; + @ApiModelProperty("类型名称") @Transient private String typeName; diff --git a/src/main/java/com/xydl/cac/service/NSensorService.java b/src/main/java/com/xydl/cac/service/NSensorService.java index f0a99d5..b9e0b72 100644 --- a/src/main/java/com/xydl/cac/service/NSensorService.java +++ b/src/main/java/com/xydl/cac/service/NSensorService.java @@ -12,7 +12,7 @@ import java.util.Map; public interface NSensorService { List listAll(Integer zsbid) throws Exception; - Page list(int pageNum, int pageSize) throws Exception; + Page list(Integer typeId, int pageNum, int pageSize) throws Exception; NSensor add(NSensor item) throws Exception; 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 f40b5e4..b4c66a7 100644 --- a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java @@ -14,11 +14,13 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; +import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; +import javax.persistence.criteria.Predicate; import java.util.*; @@ -59,6 +61,7 @@ public class NSensorServiceImpl implements NSensorService { for (Zsb zsb : zsbList) { if (zsb.getId().equals(sensor.getZsbId())) { sensor.setZsbName(zsb.getMc()); + sensor.setJgName(zsb.getJgName()); break; } } @@ -78,13 +81,21 @@ public class NSensorServiceImpl implements NSensorService { sensor.setTypeName(modevType.getMc()); Zsb zsb = zsbService.detail(sensor.getZsbId()); sensor.setZsbName(zsb.getMc()); + sensor.setJgName(zsb.getJgName()); } @Override - public Page list(int pageNum, int pageSize) throws Exception { + public Page list(Integer typeId, int pageNum, int pageSize) throws Exception { PageRequest request = PageRequest.of(pageNum, pageSize); - Page result = repository.findAll(request); + Specification specification = (root, query, builder) -> { + Predicate predicate = builder.conjunction(); + if (typeId != null) { + predicate.getExpressions().add(builder.equal(root.get("typeId"), typeId)); + } + return predicate; + }; + Page result = repository.findAll(specification, request); this.fillOtherNames(result.getContent()); return result; }