Merge remote-tracking branch '惠信/feature/NoScanning' into feature/NoScanning
This commit is contained in:
commit
dcdc34028b
|
|
@ -119,6 +119,14 @@ public class QmsPdiStatusItemController extends BaseController {
|
||||||
return ApiResult.success(statusItemControllerService.search(request));
|
return ApiResult.success(statusItemControllerService.search(request));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询特殊检测项(扁平返回)
|
||||||
|
*/
|
||||||
|
@PostMapping("/search/special")
|
||||||
|
public ApiResult<PageData<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO>> searchSpecial(@Valid @RequestBody QmsPdiStatusItemSearchQO request) {
|
||||||
|
return ApiResult.success(statusItemControllerService.searchSpecial(request));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量更新排序
|
* 批量更新排序
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -259,6 +259,8 @@ public class QmsPdiDetectionRulesControllerService {
|
||||||
.map(item -> new QmsPdiComponentAnagement()
|
.map(item -> new QmsPdiComponentAnagement()
|
||||||
.setDetectionRulesId(newId)
|
.setDetectionRulesId(newId)
|
||||||
.setComponentName(item.getComponentName())
|
.setComponentName(item.getComponentName())
|
||||||
|
.setSort(item.getSort())
|
||||||
|
.setStatus(item.getStatus())
|
||||||
.setCreateBy(operator)
|
.setCreateBy(operator)
|
||||||
.setCreateTime(now))
|
.setCreateTime(now))
|
||||||
.collect(java.util.stream.Collectors.toList());
|
.collect(java.util.stream.Collectors.toList());
|
||||||
|
|
|
||||||
|
|
@ -408,6 +408,10 @@ public class QmsPdiStatusItemControllerService {
|
||||||
* 查询PDI检测项,按部件分组返回
|
* 查询PDI检测项,按部件分组返回
|
||||||
*/
|
*/
|
||||||
public PageData<QmsPdiStatusItemGroupVO> search(QmsPdiStatusItemSearchQO request) {
|
public PageData<QmsPdiStatusItemGroupVO> search(QmsPdiStatusItemSearchQO request) {
|
||||||
|
if (isSpecialStatus(request.getStatus())) {
|
||||||
|
throw new NflgException(STATE.BusinessError, "特殊检测项请调用特殊检测项查询接口");
|
||||||
|
}
|
||||||
|
|
||||||
// 1. 根据detectionRulesId和status查询检测项
|
// 1. 根据detectionRulesId和status查询检测项
|
||||||
List<QmsPdiDetectionRulesStatusItem> items = statusItemService.lambdaQuery()
|
List<QmsPdiDetectionRulesStatusItem> items = statusItemService.lambdaQuery()
|
||||||
.eq(QmsPdiDetectionRulesStatusItem::getDetectionRulesId, request.getDetectionRulesId())
|
.eq(QmsPdiDetectionRulesStatusItem::getDetectionRulesId, request.getDetectionRulesId())
|
||||||
|
|
@ -475,6 +479,22 @@ public class QmsPdiStatusItemControllerService {
|
||||||
return pageGroups(request, voList);
|
return pageGroups(request, voList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询特殊检测项,扁平返回。
|
||||||
|
*/
|
||||||
|
public PageData<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> searchSpecial(QmsPdiStatusItemSearchQO request) {
|
||||||
|
request.setStatus(SPECIAL_STATUS);
|
||||||
|
List<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> voList = statusItemService.lambdaQuery()
|
||||||
|
.eq(QmsPdiDetectionRulesStatusItem::getDetectionRulesId, request.getDetectionRulesId())
|
||||||
|
.eq(QmsPdiDetectionRulesStatusItem::getStatus, SPECIAL_STATUS)
|
||||||
|
.orderByAsc(QmsPdiDetectionRulesStatusItem::getSort)
|
||||||
|
.list()
|
||||||
|
.stream()
|
||||||
|
.map(this::toItemVO)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
return pageItems(request, voList);
|
||||||
|
}
|
||||||
|
|
||||||
private PageData<QmsPdiStatusItemGroupVO> pageGroups(QmsPdiStatusItemSearchQO request, List<QmsPdiStatusItemGroupVO> voList) {
|
private PageData<QmsPdiStatusItemGroupVO> pageGroups(QmsPdiStatusItemSearchQO request, List<QmsPdiStatusItemGroupVO> voList) {
|
||||||
int total = voList.size();
|
int total = voList.size();
|
||||||
int pageNum = request.getPage();
|
int pageNum = request.getPage();
|
||||||
|
|
@ -500,6 +520,30 @@ public class QmsPdiStatusItemControllerService {
|
||||||
/**
|
/**
|
||||||
* 转换检测项为VO
|
* 转换检测项为VO
|
||||||
*/
|
*/
|
||||||
|
private PageData<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> pageItems(
|
||||||
|
QmsPdiStatusItemSearchQO request,
|
||||||
|
List<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> voList) {
|
||||||
|
int total = voList.size();
|
||||||
|
int pageNum = request.getPage();
|
||||||
|
int pageSize = request.getPageSize();
|
||||||
|
int fromIndex = (pageNum - 1) * pageSize;
|
||||||
|
int toIndex = Math.min(fromIndex + pageSize, total);
|
||||||
|
|
||||||
|
List<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> pagedList;
|
||||||
|
if (fromIndex >= total) {
|
||||||
|
pagedList = List.of();
|
||||||
|
} else {
|
||||||
|
pagedList = voList.subList(fromIndex, toIndex);
|
||||||
|
}
|
||||||
|
|
||||||
|
PageData<QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO> pd = new PageData<>();
|
||||||
|
pd.setPage(pageNum);
|
||||||
|
pd.setPageSize(pageSize);
|
||||||
|
pd.setTotal(total);
|
||||||
|
pd.setItems(pagedList);
|
||||||
|
return pd;
|
||||||
|
}
|
||||||
|
|
||||||
private QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO toItemVO(QmsPdiDetectionRulesStatusItem item) {
|
private QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO toItemVO(QmsPdiDetectionRulesStatusItem item) {
|
||||||
QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO vo = new QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO();
|
QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO vo = new QmsPdiStatusItemGroupVO.QmsPdiStatusItemVO();
|
||||||
vo.setId(item.getId());
|
vo.setId(item.getId());
|
||||||
|
|
|
||||||
|
|
@ -1036,7 +1036,8 @@ public class QmsPqcTaskRecordControllerService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 6. 同步生成工单;仅当任务总体不合格时才额外生成重检任务
|
// 6. 同步生成工单;仅当任务总体不合格时才额外生成重检任务
|
||||||
List<QmsPqcUnqualifiedItemVO> unqualifiedItems = buildUnqualifiedItems(request);
|
Map<Long, Long> detailIdMap = getTaskDetailIdMap(taskRecord.getId());
|
||||||
|
List<QmsPqcUnqualifiedItemVO> unqualifiedItems = buildUnqualifiedItems(request, detailIdMap);
|
||||||
if (!unqualifiedItems.isEmpty()) {
|
if (!unqualifiedItems.isEmpty()) {
|
||||||
handleUnqualifiedTask(taskRecord, currentUserId, currentUserName, now);
|
handleUnqualifiedTask(taskRecord, currentUserId, currentUserName, now);
|
||||||
return SubmitResult.unqualified(unqualifiedItems);
|
return SubmitResult.unqualified(unqualifiedItems);
|
||||||
|
|
@ -1439,27 +1440,41 @@ public class QmsPqcTaskRecordControllerService {
|
||||||
.collect(Collectors.joining(","));
|
.collect(Collectors.joining(","));
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<QmsPqcUnqualifiedItemVO> buildUnqualifiedItems(QmsPqcTaskRecordDraftQO request) {
|
private Map<Long, Long> getTaskDetailIdMap(Long taskId) {
|
||||||
|
return pqcTaskRecordDetailsService.lambdaQuery()
|
||||||
|
.eq(QmsPqcTaskRecordDetails::getTaskId, taskId)
|
||||||
|
.list()
|
||||||
|
.stream()
|
||||||
|
.filter(detail -> detail.getInspectionPointItemId() != null)
|
||||||
|
.collect(Collectors.toMap(
|
||||||
|
QmsPqcTaskRecordDetails::getInspectionPointItemId,
|
||||||
|
QmsPqcTaskRecordDetails::getId,
|
||||||
|
(first, second) -> first
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<QmsPqcUnqualifiedItemVO> buildUnqualifiedItems(QmsPqcTaskRecordDraftQO request, Map<Long, Long> detailIdMap) {
|
||||||
List<QmsPqcUnqualifiedItemVO> items = new ArrayList<>();
|
List<QmsPqcUnqualifiedItemVO> items = new ArrayList<>();
|
||||||
if (request.getProcessInspections() != null) {
|
if (request.getProcessInspections() != null) {
|
||||||
for (QmsPqcTaskRecordDraftQO.ProcessInspectionItem item : request.getProcessInspections()) {
|
for (QmsPqcTaskRecordDraftQO.ProcessInspectionItem item : request.getProcessInspections()) {
|
||||||
if (Boolean.FALSE.equals(item.getEnable())) {
|
if (Boolean.FALSE.equals(item.getEnable())) {
|
||||||
items.add(buildUnqualifiedItem(item));
|
items.add(buildUnqualifiedItem(item, detailIdMap));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (request.getProcessInspectionsLevel3() != null) {
|
if (request.getProcessInspectionsLevel3() != null) {
|
||||||
for (QmsPqcTaskRecordDraftQO.ProcessInspectionLevel3Item item : request.getProcessInspectionsLevel3()) {
|
for (QmsPqcTaskRecordDraftQO.ProcessInspectionLevel3Item item : request.getProcessInspectionsLevel3()) {
|
||||||
if (Boolean.FALSE.equals(item.getEnable())) {
|
if (Boolean.FALSE.equals(item.getEnable())) {
|
||||||
items.add(buildUnqualifiedItem(item));
|
items.add(buildUnqualifiedItem(item, detailIdMap));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
||||||
private QmsPqcUnqualifiedItemVO buildUnqualifiedItem(QmsPqcTaskRecordDraftQO.ProcessInspectionItem item) {
|
private QmsPqcUnqualifiedItemVO buildUnqualifiedItem(QmsPqcTaskRecordDraftQO.ProcessInspectionItem item, Map<Long, Long> detailIdMap) {
|
||||||
QmsPqcUnqualifiedItemVO vo = new QmsPqcUnqualifiedItemVO();
|
QmsPqcUnqualifiedItemVO vo = new QmsPqcUnqualifiedItemVO();
|
||||||
|
vo.setId(detailIdMap.get(item.getInspectionPointItemId()));
|
||||||
vo.setInspectionContent(item.getInspectionContent());
|
vo.setInspectionContent(item.getInspectionContent());
|
||||||
vo.setInspectionMethods(item.getInspectionMethods());
|
vo.setInspectionMethods(item.getInspectionMethods());
|
||||||
vo.setInspectionLevel(item.getInspectionLevel());
|
vo.setInspectionLevel(item.getInspectionLevel());
|
||||||
|
|
@ -1473,8 +1488,9 @@ public class QmsPqcTaskRecordControllerService {
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
private QmsPqcUnqualifiedItemVO buildUnqualifiedItem(QmsPqcTaskRecordDraftQO.ProcessInspectionLevel3Item item) {
|
private QmsPqcUnqualifiedItemVO buildUnqualifiedItem(QmsPqcTaskRecordDraftQO.ProcessInspectionLevel3Item item, Map<Long, Long> detailIdMap) {
|
||||||
QmsPqcUnqualifiedItemVO vo = new QmsPqcUnqualifiedItemVO();
|
QmsPqcUnqualifiedItemVO vo = new QmsPqcUnqualifiedItemVO();
|
||||||
|
vo.setId(detailIdMap.get(item.getInspectionPointItemId()));
|
||||||
vo.setInspectionContent(item.getInspectionContent());
|
vo.setInspectionContent(item.getInspectionContent());
|
||||||
vo.setInspectionMethods(item.getInspectionMethods());
|
vo.setInspectionMethods(item.getInspectionMethods());
|
||||||
vo.setInspectionLevel(item.getInspectionLevel());
|
vo.setInspectionLevel(item.getInspectionLevel());
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,11 @@ import java.util.List;
|
||||||
@Data
|
@Data
|
||||||
public class QmsPqcUnqualifiedItemVO {
|
public class QmsPqcUnqualifiedItemVO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PQC任务明细ID
|
||||||
|
*/
|
||||||
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 检查内容
|
* 检查内容
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue