PQC任务详情优化修改

This commit is contained in:
funny 2026-05-27 10:01:15 +08:00
parent 0985594f6b
commit 95b8162943
5 changed files with 121 additions and 20 deletions

View File

@ -4,7 +4,6 @@ import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleAddQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleAuditQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleEditQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleSearchQO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionPointItemListVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionPointListVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionRuleDetailVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionRuleVO;
@ -12,6 +11,7 @@ import com.nflg.qms.admin.service.QmsPqcInspectionRuleControllerService;
import com.nflg.wms.common.constant.Constant;
import com.nflg.wms.common.pojo.ApiResult;
import com.nflg.wms.common.pojo.PageData;
import com.nflg.wms.common.pojo.vo.QmsPqcInspectionPointItemsGroupedVO;
import com.nflg.wms.common.util.MultilingualUtil;
import com.nflg.wms.repository.entity.DictionaryItem;
import com.nflg.wms.repository.service.IDictionaryItemService;
@ -62,11 +62,12 @@ public class QmsPqcInspectionRuleController extends BaseController {
}
/**
* 根据检查点ID查询对应的检测项列表
* 根据检查点ID查询对应的检测项列表分组返回
* 返回三类关键物料拍照类工序检查-自检复核类工序检查-QC检测类
*/
@GetMapping("/items")
public ApiResult<List<PqcInspectionPointItemListVO>> listItemsByInspectionPointId(@NotNull Long inspectionPointId) {
return ApiResult.success(ruleControllerService.listItemsByInspectionPointId(inspectionPointId));
public ApiResult<QmsPqcInspectionPointItemsGroupedVO> listItemsByInspectionPointId(@NotNull Long inspectionPointId) {
return ApiResult.success(ruleControllerService.listItemsByInspectionPointIdGrouped(inspectionPointId));
}
/**

View File

@ -5,11 +5,11 @@ import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleAddQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleAuditQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleEditQO;
import com.nflg.qms.admin.pojo.qo.PqcInspectionRuleSearchQO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionPointItemListVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionPointListVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionRuleDetailVO;
import com.nflg.qms.admin.pojo.vo.PqcInspectionRuleVO;
import com.nflg.wms.common.pojo.PageData;
import com.nflg.wms.common.pojo.vo.QmsPqcInspectionPointItemsGroupedVO;
import java.util.List;
@ -60,5 +60,8 @@ public interface QmsPqcInspectionRuleControllerService {
List<PqcInspectionPointListVO> listPointsByModelNo(String modelNo);
List<PqcInspectionPointItemListVO> listItemsByInspectionPointId(Long inspectionPointId);
/**
* 根据检查点ID查询检测项列表分组返回
*/
QmsPqcInspectionPointItemsGroupedVO listItemsByInspectionPointIdGrouped(Long inspectionPointId);
}

View File

@ -18,6 +18,8 @@ import com.nflg.qms.admin.service.QmsPqcInspectionRuleControllerService;
import com.nflg.wms.common.constant.STATE;
import com.nflg.wms.common.exception.NflgException;
import com.nflg.wms.common.pojo.PageData;
import com.nflg.wms.common.pojo.vo.QmsPqcInspectionPointItemListVO;
import com.nflg.wms.common.pojo.vo.QmsPqcInspectionPointItemsGroupedVO;
import com.nflg.wms.common.util.PageUtil;
import com.nflg.wms.common.util.UserUtil;
import com.nflg.wms.repository.entity.QmsPqcInspectionPoint;
@ -365,22 +367,59 @@ public class QmsPqcInspectionRuleControllerServiceImpl implements QmsPqcInspecti
}
@Override
public List<PqcInspectionPointItemListVO> listItemsByInspectionPointId(Long inspectionPointId) {
return itemsService.lambdaQuery()
public QmsPqcInspectionPointItemsGroupedVO listItemsByInspectionPointIdGrouped(Long inspectionPointId) {
// 查询所有检测项
List<QmsPqcInspectionPointItems> allItems = itemsService.lambdaQuery()
.eq(QmsPqcInspectionPointItems::getInspectionCodeId, inspectionPointId)
.orderByAsc(QmsPqcInspectionPointItems::getSort)
.list()
.stream()
.map(item -> new PqcInspectionPointItemListVO()
.setId(item.getId())
.setInspectionCodeId(item.getInspectionCodeId())
.setSort(item.getSort())
.setInspectionContent(item.getInspectionContent())
.setInspectionType(item.getInspectionType())
.setInspectionMethods(item.getInspectionMethods())
.setInspectionImgUrl(item.getInspectionImgUrl())
.setInspectionLevel(item.getInspectionLevel()))
.collect(Collectors.toList());
.list();
// 初始化三个分类列表
List<QmsPqcInspectionPointItemListVO> materialItems = new ArrayList<>(); // 第1类关键物料拍照
List<QmsPqcInspectionPointItemListVO> selfReviewItems = new ArrayList<>(); // 第2类工序检查-自检复核
List<QmsPqcInspectionPointItemListVO> qcItems = new ArrayList<>(); // 第3类工序检查-QC检测
// 分类逻辑
for (QmsPqcInspectionPointItems item : allItems) {
QmsPqcInspectionPointItemListVO vo = new QmsPqcInspectionPointItemListVO()
.setId(item.getId())
.setInspectionCodeId(item.getInspectionCodeId())
.setSort(item.getSort())
.setInspectionContent(item.getInspectionContent())
.setInspectionType(item.getInspectionType())
.setInspectionMethods(item.getInspectionMethods())
.setInspectionImgUrl(item.getInspectionImgUrl())
.setInspectionLevel(item.getInspectionLevel());
Integer type = item.getInspectionType();
Integer level = item.getInspectionLevel();
// 第1类关键物料拍照类
// 包含inspectionType = 0所有+ inspectionType = 2所有
if (type == 0 || type == 2) {
materialItems.add(vo);
}
// 第2类和第3类工序检查按类型和星级分
// 包含inspectionType = 1 2
if (type == 1 || type == 2) {
if (level == 1 || level == 2) {
// 星级1或2 自检复核类
selfReviewItems.add(vo);
} else if (level == 3) {
// 星级3 QC检测类
qcItems.add(vo);
}
}
}
// 组装返回结果
QmsPqcInspectionPointItemsGroupedVO groupedVO = new QmsPqcInspectionPointItemsGroupedVO();
groupedVO.setMaterialItems(materialItems);
groupedVO.setSelfReviewItems(selfReviewItems);
groupedVO.setQcItems(qcItems);
return groupedVO;
}
private void savePointsAndItems(Long ruleId, List<PqcInspectionRuleAddQO.PqcInspectionPointAddQO> points,

View File

@ -0,0 +1,28 @@
package com.nflg.wms.common.pojo.vo;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* PQC检测项列表返回对象
*/
@Data
@Accessors(chain = true)
public class QmsPqcInspectionPointItemListVO {
private Long id;
private Long inspectionCodeId;
private Integer sort;
private String inspectionContent;
private Integer inspectionType;
private Integer inspectionMethods;
private String inspectionImgUrl;
private Integer inspectionLevel;
}

View File

@ -0,0 +1,30 @@
package com.nflg.wms.common.pojo.vo;
import lombok.Data;
import java.util.List;
/**
* PQC检测点检测项分组VO
*/
@Data
public class QmsPqcInspectionPointItemsGroupedVO {
/**
* 第1类关键物料拍照类
* 包含inspectionType = 0所有+ inspectionType = 2所有
*/
private List<QmsPqcInspectionPointItemListVO> materialItems;
/**
* 第2类工序检查-自检复核类
* 包含inspectionType = 1且星级=1或2 + inspectionType = 2且星级=1或2
*/
private List<QmsPqcInspectionPointItemListVO> selfReviewItems;
/**
* 第3类工序检查-QC检测类
* 包含inspectionType = 1且星级=3 + inspectionType = 2且星级=3
*/
private List<QmsPqcInspectionPointItemListVO> qcItems;
}