feat: 增加按类型查询监测设备

haikang
huangfeng 1 year ago
parent 6cfa65c2ed
commit 3f0a92bed4

@ -63,11 +63,12 @@ public class NSensorController extends BasicController {
@GetMapping("list") @GetMapping("list")
@ApiOperation("查询列表") @ApiOperation("查询列表")
public Response<Page<NSensor>> list(@ApiParam("页码") @RequestParam(value = "pageNum", required = false) Integer pageNum, public Response<Page<NSensor>> 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 { @ApiParam("每页数量") @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception {
pageNum = this.initPageNum(pageNum); pageNum = this.initPageNum(pageNum);
pageSize = this.initPageSize(pageSize); pageSize = this.initPageSize(pageSize);
Page<NSensor> result = service.list(pageNum, pageSize); Page<NSensor> result = service.list(typeId, pageNum, pageSize);
return Response.success(result); return Response.success(result);
} }

@ -67,6 +67,10 @@ public class NSensor {
@Transient @Transient
private String zsbName; private String zsbName;
@ApiModelProperty("区域名称")
@Transient
private String jgName;
@ApiModelProperty("类型名称") @ApiModelProperty("类型名称")
@Transient @Transient
private String typeName; private String typeName;

@ -12,7 +12,7 @@ import java.util.Map;
public interface NSensorService { public interface NSensorService {
List<NSensor> listAll(Integer zsbid) throws Exception; List<NSensor> listAll(Integer zsbid) throws Exception;
Page<NSensor> list(int pageNum, int pageSize) throws Exception; Page<NSensor> list(Integer typeId, int pageNum, int pageSize) throws Exception;
NSensor add(NSensor item) throws Exception; NSensor add(NSensor item) throws Exception;

@ -14,11 +14,13 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.persistence.criteria.Predicate;
import java.util.*; import java.util.*;
@ -59,6 +61,7 @@ public class NSensorServiceImpl implements NSensorService {
for (Zsb zsb : zsbList) { for (Zsb zsb : zsbList) {
if (zsb.getId().equals(sensor.getZsbId())) { if (zsb.getId().equals(sensor.getZsbId())) {
sensor.setZsbName(zsb.getMc()); sensor.setZsbName(zsb.getMc());
sensor.setJgName(zsb.getJgName());
break; break;
} }
} }
@ -78,13 +81,21 @@ public class NSensorServiceImpl implements NSensorService {
sensor.setTypeName(modevType.getMc()); sensor.setTypeName(modevType.getMc());
Zsb zsb = zsbService.detail(sensor.getZsbId()); Zsb zsb = zsbService.detail(sensor.getZsbId());
sensor.setZsbName(zsb.getMc()); sensor.setZsbName(zsb.getMc());
sensor.setJgName(zsb.getJgName());
} }
@Override @Override
public Page<NSensor> list(int pageNum, int pageSize) throws Exception { public Page<NSensor> list(Integer typeId, int pageNum, int pageSize) throws Exception {
PageRequest request = PageRequest.of(pageNum, pageSize); PageRequest request = PageRequest.of(pageNum, pageSize);
Page<NSensor> result = repository.findAll(request); Specification<NSensor> specification = (root, query, builder) -> {
Predicate predicate = builder.conjunction();
if (typeId != null) {
predicate.getExpressions().add(builder.equal(root.get("typeId"), typeId));
}
return predicate;
};
Page<NSensor> result = repository.findAll(specification, request);
this.fillOtherNames(result.getContent()); this.fillOtherNames(result.getContent());
return result; return result;
} }

Loading…
Cancel
Save