From b630f868ae5cb4bc2e92c48d275341d36d260499 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 22 九月 2026 12:58:07 +0800
Subject: [PATCH] feat(qc): 新增OQC出货检验功能及优化质量流程

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/indicatorresult/MesQcReportServiceImpl.java |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/indicatorresult/MesQcReportServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/indicatorresult/MesQcReportServiceImpl.java
index 9bb028c..5280cde 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/indicatorresult/MesQcReportServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/indicatorresult/MesQcReportServiceImpl.java
@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.mes.service.qc.indicatorresult;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.iocoder.yudao.framework.dict.core.DictFrameworkUtils;
 import cn.iocoder.yudao.module.mes.controller.admin.qc.indicatorresult.vo.MesQcQcReportRespVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.qc.indicator.MesQcIndicatorDO;
@@ -14,6 +15,7 @@
 import cn.iocoder.yudao.module.mes.dal.dataobject.qc.oqc.MesQcOqcLineDO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.qc.rqc.MesQcRqcDO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.qc.rqc.MesQcRqcLineDO;
+import cn.iocoder.yudao.module.mes.enums.DictTypeConstants;
 import cn.iocoder.yudao.module.mes.enums.qc.MesQcIndicatorItemTypeEnum;
 import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum;
 import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService;
@@ -109,6 +111,7 @@
                     .setExecuteStandard(doc.getExecuteStandard())
                     .setInspectorUserId(doc.getInspectorUserId()).setAuditUserId(doc.getAuditUserId())
                     .setApproveUserId(doc.getApproveUserId()).setCheckResult(doc.getCheckResult())
+                    .setInspectDate(doc.getInspectDate()).setDocCreateTime(doc.getCreateTime())
                     .setRemark(doc.getRemark());
             List<MesQcIqcLineDO> lines = iqcLineService.getIqcLineListByIqcId(qcId);
             for (MesQcIqcLineDO line : lines) {
@@ -126,6 +129,7 @@
                     .setExecuteStandard(doc.getExecuteStandard())
                     .setInspectorUserId(doc.getInspectorUserId()).setAuditUserId(doc.getAuditUserId())
                     .setApproveUserId(doc.getApproveUserId()).setCheckResult(doc.getCheckResult())
+                    .setInspectDate(doc.getInspectDate()).setDocCreateTime(doc.getCreateTime())
                     .setRemark(doc.getRemark());
             List<MesQcIpqcLineDO> lines = ipqcLineService.getIpqcLineListByIpqcId(qcId);
             for (MesQcIpqcLineDO line : lines) {
@@ -143,6 +147,7 @@
                     .setExecuteStandard(doc.getExecuteStandard())
                     .setInspectorUserId(doc.getInspectorUserId()).setAuditUserId(doc.getAuditUserId())
                     .setApproveUserId(doc.getApproveUserId()).setCheckResult(doc.getCheckResult())
+                    .setInspectDate(doc.getInspectDate()).setDocCreateTime(doc.getCreateTime())
                     .setRemark(doc.getRemark());
             List<MesQcOqcLineDO> lines = oqcLineService.getOqcLineListByOqcId(qcId);
             for (MesQcOqcLineDO line : lines) {
@@ -160,6 +165,7 @@
                     .setExecuteStandard(doc.getExecuteStandard())
                     .setInspectorUserId(doc.getInspectorUserId()).setAuditUserId(doc.getAuditUserId())
                     .setApproveUserId(doc.getApproveUserId()).setCheckResult(doc.getCheckResult())
+                    .setInspectDate(doc.getInspectDate()).setDocCreateTime(doc.getCreateTime())
                     .setRemark(doc.getRemark());
             List<MesQcRqcLineDO> lines = rqcLineService.getRqcLineListByRqcId(qcId);
             for (MesQcRqcLineDO line : lines) {
@@ -227,10 +233,23 @@
                 report.setApproveName(userMap.get(report.getApproveUserId()).getNickname());
             }
         }
+        report.setCheckResultText(resolveCheckResultText(qcType, report.getCheckResult()));
         return report;
     }
 
     /**
+     * 妫�娴嬬粨鏋滄枃妗堬細OQC 鎸変骇鍝佺瓑绾у垽瀹氾紙mes_oqc_check_result锛夛紝鍏朵綑璧伴�氱敤妫�娴嬬粨鏋滃瓧鍏革紙mes_qc_check_result锛�
+     */
+    private String resolveCheckResultText(Integer qcType, Integer checkResult) {
+        if (checkResult == null) {
+            return null;
+        }
+        String dictType = Objects.equals(qcType, MesQcTypeEnum.OQC.getType())
+                ? DictTypeConstants.MES_OQC_CHECK_RESULT : DictTypeConstants.MES_QC_CHECK_RESULT;
+        return DictFrameworkUtils.parseDictDataLabel(dictType, String.valueOf(checkResult));
+    }
+
+    /**
      * 缁勮鎶ュ憡妫�楠岄」鏍戯紱椤哄甫鏀堕泦鍏ㄥ眬 measureNos 鍒楀ご
      */
     private List<MesQcQcReportRespVO.ReportItem> buildReportItems(

--
Gitblit v1.9.3