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

haikang
huangfeng 1 year ago
parent 6cfa65c2ed
commit 3f0a92bed4

@ -63,11 +63,12 @@ public class NSensorController extends BasicController {
@GetMapping("list")
@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 {
pageNum = this.initPageNum(pageNum);
pageSize = this.initPageSize(pageSize);
Page<NSensor> result = service.list(pageNum, pageSize);
Page<NSensor> result = service.list(typeId, pageNum, pageSize);
return Response.success(result);
}

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

@ -12,7 +12,7 @@ import java.util.Map;
public interface NSensorService {
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;

@ -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<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);
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());
return result;
}

Loading…
Cancel
Save