pqc任务查询修改

This commit is contained in:
yf001217 2026-06-24 18:38:10 +08:00
parent ead7236990
commit 1fd0ed44a2
4 changed files with 97 additions and 11 deletions

View File

@ -48,7 +48,7 @@ public class QmsPqcTaskRecordController {
* 查询PQC任务列表分页平板使用
*/
@PostMapping("/search/tablet")
public ApiResult<PageData<QmsPqcTaskRecordTabletPageVO>> searchTablet(@Valid @RequestBody QmsPqcTaskRecordTabletSearchQO request) {
public ApiResult<QmsPqcTaskRecordTabletPageDataVO> searchTablet(@Valid @RequestBody QmsPqcTaskRecordTabletSearchQO request) {
return ApiResult.success(pqcTaskRecordService.searchPqcTaskTabletList(request));
}

View File

@ -341,31 +341,49 @@ public class QmsPqcTaskRecordControllerService {
.collect(Collectors.toSet());
}
public PageData<QmsPqcTaskRecordTabletPageVO> searchPqcTaskTabletList(QmsPqcTaskRecordTabletSearchQO request) {
public QmsPqcTaskRecordTabletPageDataVO searchPqcTaskTabletList(QmsPqcTaskRecordTabletSearchQO request) {
Long currentUserId = UserUtil.getUserId();
QmsPqcTaskRecordTabletPageDataVO pageData = new QmsPqcTaskRecordTabletPageDataVO();
pageData.setPage(request.getPage());
pageData.setPageSize(request.getPageSize());
pageData.setPendingReviewCount(countPqcTabletReviewTasks(request, currentUserId, (short) 1));
pageData.setReviewingCount(countPqcTabletReviewTasks(request, currentUserId, (short) 2));
pageData.setOverdueCount(0);
if (Objects.equals(request.getTaskStatus(), 4)) {
pageData.setTotal(0);
pageData.setItems(List.of());
return pageData;
}
LambdaQueryWrapper<QmsPqcTaskRecord> queryWrapper = new LambdaQueryWrapper<>();
if (Boolean.TRUE.equals(request.getIsReview())) {
queryWrapper.eq(QmsPqcTaskRecord::getStatus, (short) 3)
.eq(QmsPqcTaskRecord::getReviewerId, UserUtil.getUserId())
.eq(QmsPqcTaskRecord::getReviewerId, currentUserId)
.orderByDesc(QmsPqcTaskRecord::getCreateTime);
} else if (Objects.equals(request.getType(), 1)) {
queryWrapper.eq(QmsPqcTaskRecord::getStatus, (short) 0)
.isNotNull(QmsPqcTaskRecord::getRelatedTaskId)
.orderByDesc(QmsPqcTaskRecord::getCreateTime);
} else if (Objects.equals(request.getType(), 0)) {
queryWrapper.in(QmsPqcTaskRecord::getStatus, (short) 1, (short) 2)
.eq(QmsPqcTaskRecord::getReviewerId, UserUtil.getUserId())
if (Objects.equals(request.getTaskStatus(), 1)) {
queryWrapper.eq(QmsPqcTaskRecord::getStatus, (short) 1);
} else if (Objects.equals(request.getTaskStatus(), 2)) {
queryWrapper.eq(QmsPqcTaskRecord::getStatus, (short) 2);
} else if (Objects.isNull(request.getTaskStatus())) {
queryWrapper.in(QmsPqcTaskRecord::getStatus, (short) 1, (short) 2);
} else {
VUtil.trueThrowBusinessError(true).throwMessage("任务状态不正确");
}
queryWrapper.eq(QmsPqcTaskRecord::getReviewerId, currentUserId)
.orderByAsc(QmsPqcTaskRecord::getStatus)
.orderByDesc(QmsPqcTaskRecord::getCreateTime);
} else {
VUtil.trueThrowBusinessError(true).throwMessage("查询类型不正确");
}
if (StrUtil.isNotBlank(request.getKey())) {
queryWrapper.and(wrapper -> wrapper.like(QmsPqcTaskRecord::getTaskNo, request.getKey())
.or()
.like(QmsPqcTaskRecord::getModelNo, request.getKey()));
}
applyPqcTabletKeyword(queryWrapper, request.getKey());
Page<QmsPqcTaskRecord> page = pqcTaskRecordService.page(
new Page<>(request.getPage(), request.getPageSize()),
@ -421,7 +439,6 @@ public class QmsPqcTaskRecordControllerService {
}
}
PageData<QmsPqcTaskRecordTabletPageVO> pageData = new PageData<>();
pageData.setPage((int) page.getCurrent());
pageData.setPageSize((int) page.getSize());
pageData.setTotal((int) page.getTotal());
@ -429,6 +446,22 @@ public class QmsPqcTaskRecordControllerService {
return pageData;
}
private int countPqcTabletReviewTasks(QmsPqcTaskRecordTabletSearchQO request, Long reviewerId, Short status) {
LambdaQueryWrapper<QmsPqcTaskRecord> countWrapper = new LambdaQueryWrapper<>();
countWrapper.eq(QmsPqcTaskRecord::getReviewerId, reviewerId)
.eq(QmsPqcTaskRecord::getStatus, status);
applyPqcTabletKeyword(countWrapper, request.getKey());
return (int) pqcTaskRecordService.count(countWrapper);
}
private void applyPqcTabletKeyword(LambdaQueryWrapper<QmsPqcTaskRecord> queryWrapper, String key) {
if (StrUtil.isNotBlank(key)) {
queryWrapper.and(wrapper -> wrapper.like(QmsPqcTaskRecord::getTaskNo, key)
.or()
.like(QmsPqcTaskRecord::getModelNo, key));
}
}
// 其他5个功能将在后续实现...
/**

View File

@ -26,6 +26,11 @@ public class QmsPqcTaskRecordTabletSearchQO {
*/
private String key;
/**
* 任务状态筛选1=待复核2=复核中4=已超时
*/
private Integer taskStatus;
/**
* 页码
*/

View File

@ -0,0 +1,48 @@
package com.nflg.wms.common.pojo.vo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* PQC任务列表返回对象平板端含状态统计
*/
@Data
public class QmsPqcTaskRecordTabletPageDataVO {
/**
* 当前页码
*/
private Integer page;
/**
* 每页条数
*/
private Integer pageSize;
/**
* 总条数
*/
private Integer total;
/**
* 分页数据
*/
private List<QmsPqcTaskRecordTabletPageVO> items = new ArrayList<>();
/**
* 待复核数量
*/
private Integer pendingReviewCount;
/**
* 复核中数量
*/
private Integer reviewingCount;
/**
* 已超时数量
*/
private Integer overdueCount;
}