From eee03bbfea8b15d1a56ab63bd09a35c6c861c4cb Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 09 十一月 2026 13:01:08 +0800
Subject: [PATCH] feat(mes): 不合格品处置联动入库与生产订单
---
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java | 21 +++++++++++++++++++--
1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
index 327209c..ee084d0 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
@@ -415,7 +415,24 @@
throw exception(SALE_ORDER_SUBMIT_FAIL_ITEM_EMPTY, saleOrder.getNo());
}
- // 4. 鍒涘缓 BPM 娴佺▼瀹炰緥锛堝鎵瑰湪鍗忓悓鍔炲叕瀹屾垚锛�
+ // 4. 鍚堝悓杞潵鐨勯攢鍞鍗曪紙contractId 闈炵┖锛夋棤闇�鍐嶈蛋瀹℃壒锛�
+ // 鍚堝悓鍦� CRM 宸插鎵归�氳繃锛岃鍗曞唴瀹圭敱鍚堝悓甯﹀叆锛屾彁浜ゅ嵆鐢熸晥銆�
+ // 鐢熸晥鍚庯細闇�瑕佺敓浜х殑鏄庣粏鑷姩鍒涘缓 MPS 娴佽浆鐢熶骇妯″潡锛涙棤闇�鐢熶骇鐨勬槑缁嗗彲鐩存帴鍦ㄤ粨鍌ㄧ敓鎴愬彂璐ч�氱煡鍗曘��
+ // 鍘嗗彶鍚堝悓鐢熸垚鐨勮鍗曟槑缁嗗彲鑳芥湭缁存姢鈥滄槸鍚﹂渶瑕佺敓浜р�濓紝鎸夌郴缁熼粯璁わ紙闇�瑕佺敓浜э級琛ラ綈鍚庡啀鐢熸晥銆�
+ if (saleOrder.getContractId() != null) {
+ items.stream()
+ .filter(item -> item.getNeedProduction() == null)
+ .forEach(item -> saleOrderItemMapper.updateById(
+ new ErpSaleOrderItemDO().setId(item.getId()).setNeedProduction(1)));
+ saleOrderMapper.updateById(new ErpSaleOrderDO()
+ .setId(id)
+ .setStatus(ErpAuditStatus.APPROVING.getStatus())
+ .setProcessInstanceId(""));
+ updateSaleOrderAuditStatus(id, cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceStatusEnum.APPROVE.getStatus());
+ return;
+ }
+
+ // 5. 鍒涘缓 BPM 娴佺▼瀹炰緥锛堝鎵瑰湪鍗忓悓鍔炲叕瀹屾垚锛�
// 鍏ㄥ眬鍏嶅鎵癸細涓氬姟鏍¢獙閫氳繃鍚庣洿鎺ユ墽琛屽鎵归�氳繃閫昏緫锛屾棤闇�娴佺▼妯″瀷銆�
if (processInstanceApi.isGlobalAutoApprove()) {
saleOrderMapper.updateById(new ErpSaleOrderDO()
@@ -431,7 +448,7 @@
.setProcessDefinitionKey(processDefinitionKey)
.setBusinessKey(String.valueOf(id)));
- // 5. 鏇存柊閿�鍞鍗曠姸鎬佷负瀹℃壒涓紝璁板綍娴佺▼瀹炰緥缂栧彿
+ // 6. 鏇存柊閿�鍞鍗曠姸鎬佷负瀹℃壒涓紝璁板綍娴佺▼瀹炰緥缂栧彿
saleOrderMapper.updateById(new ErpSaleOrderDO()
.setId(id)
.setStatus(ErpAuditStatus.APPROVING.getStatus())
--
Gitblit v1.9.3