From 76c3ee5a7431ede06cd7f406a8d791b8ea472e35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Wed, 10 Jun 2026 14:51:59 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix(qms):=20=E4=BF=AE=E5=A4=8DCOA=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在查询条件中添加状态小于3的限制 - 防止已审核完成的记录被重复查询 - 确保审核流程的状态控制正确性 --- .../wms/repository/service/impl/QmsCoaReviewServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java index c9f65490..c68a198e 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java @@ -104,6 +104,7 @@ public class QmsCoaReviewServiceImpl extends ServiceImpl Date: Wed, 10 Jun 2026 14:52:07 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix(export):=20=E4=BF=AE=E5=A4=8D=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E9=A1=B9=E7=9B=AE=E5=AF=BC=E5=87=BA=E6=97=B6=E7=89=A9?= =?UTF-8?q?=E6=96=99=E7=B1=BB=E5=88=AB=E5=AD=97=E6=AE=B5=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将导出DTO中的materialTypeId字段改为materialTypeCode字符串类型 - 更新Excel列标题从"物料类别ID*"为"物料类别*" - 在导出服务中通过关联查询获取物料类别编码并设置到导出对象 - 修复详情流处理中的物料类别赋值逻辑 - 清理VO转换中的多余空行代码格式化 --- .../pojo/dto/QmsInspectionItemExportDTO.java | 6 +++--- .../impl/QmsInspectionItemServiceImpl.java | 16 ++++++++++++---- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/QmsInspectionItemExportDTO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/QmsInspectionItemExportDTO.java index 6bc52ed8..4cfb3b70 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/QmsInspectionItemExportDTO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/QmsInspectionItemExportDTO.java @@ -11,10 +11,10 @@ import org.ttzero.excel.annotation.MediaColumn; public class QmsInspectionItemExportDTO { /** - * 物料类别ID + * 物料类别 */ - @ExcelColumn("物料类别ID*") - private Long materialTypeId; + @ExcelColumn("物料类别*") + private String materialTypeCode; /** * 检测类型:0=定向,1=定量 diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsInspectionItemServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsInspectionItemServiceImpl.java index 3b873ec7..12d5d2b8 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsInspectionItemServiceImpl.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsInspectionItemServiceImpl.java @@ -247,12 +247,20 @@ public class QmsInspectionItemServiceImpl extends ServiceImpl items = query.orderByAsc(QmsInspectionItem::getCreateTime).list(); + List categories= materialCategoryService.lambdaQuery() + .in(QmsQcMaterialCategory::getId, items.stream().map(QmsInspectionItem::getMaterialTypeId).collect(Collectors.toList())) + .list(); + // 按主表记录展开到明细行(一行一条明细,无明细也输出主表行) return items.stream().flatMap(item -> { List details = detailsService.listByItemId(item.getId()); + QmsQcMaterialCategory category=categories.stream() + .filter(c -> c.getId().equals(item.getMaterialTypeId())) + .findFirst() + .get(); if (details.isEmpty()) { QmsInspectionItemExportDTO dto = new QmsInspectionItemExportDTO(); - dto.setMaterialTypeId(item.getMaterialTypeId()); + dto.setMaterialTypeCode(category.getCategoryCode()); dto.setDetectionType(item.getDetectionType()); dto.setInspectionItemName(item.getInspectionItemName()); dto.setInspectionNo(item.getInspectionNo()); @@ -260,7 +268,7 @@ public class QmsInspectionItemServiceImpl extends ServiceImpl { QmsInspectionItemExportDTO dto = new QmsInspectionItemExportDTO(); - dto.setMaterialTypeId(item.getMaterialTypeId()); + dto.setMaterialTypeCode(category.getCategoryCode()); dto.setDetectionType(item.getDetectionType()); dto.setInspectionItemName(item.getInspectionItemName()); dto.setInspectionNo(item.getInspectionNo()); @@ -359,7 +367,7 @@ public class QmsInspectionItemServiceImpl extends ServiceImpl Date: Wed, 10 Jun 2026 15:06:09 +0800 Subject: [PATCH 3/3] =?UTF-8?q?refactor(inspection):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=B4=A8=E6=A3=80=E5=91=98=E8=BD=AC=E5=8A=9E=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 使用 getById 替代复杂查询条件简化代码 - 移除冗余的检查条件提高性能 - 更新数据库关联关系确保数据一致性 - 调整实体类注释描述以匹配实际用途 --- .../IncomingInspectionTaskControllerService.java | 14 ++------------ .../wms/repository/entity/QmsQualityInspector.java | 2 +- .../resources/mapper/QmsQualityInspectorMapper.xml | 3 ++- 3 files changed, 5 insertions(+), 14 deletions(-) diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java index f4f27ec5..c475a730 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java @@ -164,12 +164,7 @@ public class IncomingInspectionTaskControllerService { User inspectorUser; if (Objects.nonNull(inspector.getChangeUserId())) { // 转办人是 user.id,需查询对应的 qms_quality_inspector 记录 - QmsQualityInspector agentInspector = qualityInspectorService.lambdaQuery() - .eq(QmsQualityInspector::getUserId, inspector.getChangeUserId()) - .eq(QmsQualityInspector::getInspectionType, 1) - .eq(QmsQualityInspector::getEnable, true) - .last("LIMIT 1") - .one(); + QmsQualityInspector agentInspector = qualityInspectorService.getById(inspector.getChangeUserId()); if (Objects.nonNull(agentInspector)) { inspectorId = agentInspector.getId(); inspectorUser = userService.getById(agentInspector.getUserId()); @@ -313,12 +308,7 @@ public class IncomingInspectionTaskControllerService { String inspectorName; User inspectorUser; if (Objects.nonNull(inspector.getChangeUserId())) { - QmsQualityInspector agentInspector = qualityInspectorService.lambdaQuery() - .eq(QmsQualityInspector::getUserId, inspector.getChangeUserId()) - .eq(QmsQualityInspector::getInspectionType, 1) - .eq(QmsQualityInspector::getEnable, true) - .last("LIMIT 1") - .one(); + QmsQualityInspector agentInspector = qualityInspectorService.getById(inspector.getChangeUserId()); if (Objects.nonNull(agentInspector)) { inspectorId = agentInspector.getId(); inspectorUser = userService.getById(agentInspector.getUserId()); diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsQualityInspector.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsQualityInspector.java index 7382364a..b59c7753 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsQualityInspector.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsQualityInspector.java @@ -47,7 +47,7 @@ public class QmsQualityInspector implements Serializable { private Integer inspectionType; /** - * 转办人ID (user.id),可为空 + * 转办人ID可为空 */ private Long changeUserId; diff --git a/nflg-wms-repository/src/main/resources/mapper/QmsQualityInspectorMapper.xml b/nflg-wms-repository/src/main/resources/mapper/QmsQualityInspectorMapper.xml index ca087b56..6aad2725 100644 --- a/nflg-wms-repository/src/main/resources/mapper/QmsQualityInspectorMapper.xml +++ b/nflg-wms-repository/src/main/resources/mapper/QmsQualityInspectorMapper.xml @@ -30,7 +30,8 @@ LEFT JOIN "user" u ON u.id = qi.user_id LEFT JOIN user_interior ui ON ui.user_id = qi.user_id LEFT JOIN department d ON d.id = ui.dept_id - LEFT JOIN "user" cu ON cu.id = qi.change_user_id + LEFT JOIN qms_quality_inspector cqi ON cqi.id = qi.change_user_id + LEFT JOIN "user" cu ON cu.id = cqi.user_id AND u.user_code = #{request.userCode}