feat: 增加按装置查询谱图文件

dev
huangfeng 4 months ago
parent 1c1a543405
commit 640955b151

@ -66,12 +66,13 @@ public class IedDlController extends BasicController {
@GetMapping("listDownload")
@ApiOperation("查询下载记录列表")
public Response<Page<IedDlRecord>> list(@ApiParam("类型") @RequestParam(value = "configId", required = false) Integer configId,
public Response<Page<IedDlRecord>> list(@ApiParam("配置Id") @RequestParam(value = "configId", required = false) Integer configId,
@ApiParam("devId") @RequestParam(value = "devId", required = false) Integer devId,
@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<IedDlRecord> result = recordService.list(configId, pageNum, pageSize);
Page<IedDlRecord> result = recordService.list(configId, devId, pageNum, pageSize);
return Response.success(result);
}

@ -5,7 +5,7 @@ import org.springframework.data.domain.Page;
public interface IedDlRecordService {
Page<IedDlRecord> list(Integer configId, int pageNum, int pageSize) throws Exception;
Page<IedDlRecord> list(Integer configId, Integer devId, int pageNum, int pageSize) throws Exception;
void add(IedDlRecord item);

@ -31,14 +31,19 @@ public class IedDlRecordServiceImpl implements IedDlRecordService {
SpectrogramHandler spectrogramHandler;
@Override
public Page<IedDlRecord> list(Integer configId, int pageNum, int pageSize) throws Exception {
public Page<IedDlRecord> list(Integer configId, Integer devId, int pageNum, int pageSize) throws Exception {
PageRequest request = PageRequest.of(pageNum - 1, pageSize);
Specification<IedDlRecord> specification = (root, query, builder) -> {
Predicate predicate = builder.conjunction();
if (configId != null) {
predicate.getExpressions().add(builder.equal(root.get("configId"), configId));
query.orderBy(builder.desc(root.get("createTime")));
} else if (devId != null) {
predicate.getExpressions().add(builder.equal(root.get("devId"), devId));
query.orderBy(builder.desc(root.get("createTime")));
} else {
query.orderBy(builder.desc(root.get("id")));
}
query.orderBy(builder.desc(root.get("id")));
return predicate;
};
Page<IedDlRecord> result = repository.findAll(specification, request);

Loading…
Cancel
Save