From ffe7921a138331185186fd100846fe50dcaf841c Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 16 七月 2026 10:08:02 +0800
Subject: [PATCH] 1.采购管理-采购申请恢复
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java | 37 +++++++++++++++++++++++++++++++++++++
1 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java
index b6715ff..2b7ddd6 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java
@@ -10,6 +10,7 @@
import cn.iocoder.yudao.module.mes.dal.dataobject.qc.defectrecord.MesQcDefectRecordDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.qc.iqc.MesQcIqcDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateItemDO;
+import cn.iocoder.yudao.module.mes.dal.dataobject.wm.arrivalnotice.MesWmArrivalNoticeLineDO;
import cn.iocoder.yudao.module.mes.dal.mysql.qc.iqc.MesQcIqcMapper;
import cn.iocoder.yudao.module.mes.enums.MesBizTypeConstants;
import cn.iocoder.yudao.module.mes.enums.qc.MesQcDefectLevelEnum;
@@ -308,4 +309,40 @@
return iqcMapper.selectCountByVendorId(vendorId);
}
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Long createIqcFromArrivalNotice(Long noticeId, MesWmArrivalNoticeLineDO line, String noticeCode, Long vendorId) {
+ // 1. 鏍¢獙鐗╂枡鏄惁閰嶇疆浜� IQC 妫�楠屾ā鏉�
+ MesQcTemplateItemDO templateItem = templateItemService.getRequiredTemplateByItemIdAndType(
+ line.getItemId(), MesQcTypeEnum.IQC.getType());
+ Long templateId = templateItem.getTemplateId();
+
+ // 2. 鐢熸垚妫�楠屽崟缂栫爜
+ String code = "IQC" + System.currentTimeMillis();
+
+ // 3. 鍒涘缓 IQC 涓昏〃锛堝緟妫�楠岀姸鎬侊紝鍒濆鍚堟牸鏁伴噺涓� 0锛�
+ MesQcIqcDO iqc = new MesQcIqcDO();
+ iqc.setCode(code);
+ iqc.setName(noticeCode + "-鐗╂枡妫�楠�");
+ iqc.setTemplateId(templateId);
+ iqc.setSourceDocType(MesBizTypeConstants.WM_ARRIVAL_NOTICE);
+ iqc.setSourceDocId(noticeId);
+ iqc.setSourceLineId(line.getId());
+ iqc.setSourceDocCode(noticeCode);
+ iqc.setVendorId(vendorId);
+ iqc.setItemId(line.getItemId());
+ iqc.setReceivedQuantity(line.getArrivalQuantity());
+ iqc.setCheckQuantity(BigDecimal.ZERO); // 寰呭~鍐�
+ iqc.setQualifiedQuantity(BigDecimal.ZERO); // 寰呭~鍐�
+ iqc.setUnqualifiedQuantity(BigDecimal.ZERO); // 寰呭~鍐�
+ iqc.setReceiveDate(java.time.LocalDateTime.now());
+ iqc.setStatus(MesQcStatusEnum.DRAFT.getStatus());
+ iqcMapper.insert(iqc);
+
+ // 4. 浠庢ā鏉挎寚鏍囪嚜鍔ㄧ敓鎴愭楠岃
+ iqcLineService.createLinesFromTemplate(iqc.getId(), templateId);
+
+ return iqc.getId();
+ }
+
}
--
Gitblit v1.9.3