From 7bd10d34e8a8dc2437ec8551eb511e37634d7306 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 02 十一月 2026 16:51:52 +0800
Subject: [PATCH] feat(mes): 生产计划审批改走协同办公,修复工单领料与产成品入库校验

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java |   50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java
index e1fa3e4..62a083e 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/mps/MesProMpsService.java
@@ -13,7 +13,7 @@
 /**
  * MES 鐢熶骇涓昏鍒掞紙MPS锛塖ervice 鎺ュ彛
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 public interface MesProMpsService {
 
@@ -57,6 +57,43 @@
      * @param id 缂栧彿
      */
     void deleteMps(Long id);
+
+    /**
+     * 鎻愪氦瀹℃牳
+     *
+     * 鑽夌鐘舵�� 鈫� 瀹℃牳涓紝骞跺惎鍔� BPM 娴佺▼锛屽鎵瑰湪鍗忓悓鍔炲叕瀹屾垚
+     *
+     * @param id MPS 缂栧彿
+     */
+    void submitMps(Long id);
+
+    /**
+     * 澶勭悊 BPM 瀹℃壒缁撴灉锛堝崗鍚屽姙鍏鎵瑰畬鎴愬悗鍥炶皟锛�
+     *
+     * 瀹℃牳涓� 鈫� 宸插鏍革紙閫氳繃锛�/ 鑽夌锛堥┏鍥烇級
+     *
+     * @param id          MPS 缂栧彿
+     * @param bpmResult   BPM 瀹℃壒缁撴灉
+     * @param reason      瀹℃壒鎰忚锛堥┏鍥炲師鍥狅級
+     * @param auditUserId 瀹℃牳浜虹紪鍙�
+     */
+    void handleBpmProcessResult(Long id, Integer bpmResult, String reason, Long auditUserId);
+
+    /**
+     * 鑾峰緱璁″垝鐨勮緟鏂欓渶姹傛槑缁嗭紙鍚簱瀛樸�佸湪閫斻�佹槸鍚﹀厖瓒筹級
+     *
+     * @param id MPS 缂栧彿
+     * @return 鐗╂枡闇�姹傚垪琛�
+     */
+    List<cn.iocoder.yudao.module.mes.controller.admin.pro.workorder.vo.MesProWorkOrderItemRespVO> getMpsItemList(Long id);
+
+    /**
+     * 鏍规嵁璁″垝鐨勮緟鏂欑己鍙g敓鎴愰噰璐敵璇峰崟锛堣崏绋匡級
+     *
+     * @param id MPS 缂栧彿
+     * @return 鐢熸垚鐨勯噰璐敵璇峰崟缂栧彿
+     */
+    Long generatePurchaseRequest(Long id);
 
     /**
      * 涓嬪彂鍗曟潯 MPS
@@ -165,4 +202,15 @@
      */
     MesProMpsDO getMpsByWorkOrderId(Long workOrderId);
 
+    /**
+     * 妫�鏌ュ苟鑷姩瀹屾垚 MPS
+     *
+     * 濡傛灉 MPS 婊¤冻瀹屾垚鏉′欢锛堝凡鐢熶骇鏁伴噺 >= 璁″垝鏁伴噺 涓� 鎵�鏈夋姤宸ュ凡瀹屾垚锛夛紝
+     * 鍒欒嚜鍔ㄥ皢 MPS 鐘舵�佹洿鏂颁负宸插畬鎴�
+     *
+     * @param mpsId MPS 缂栧彿
+     * @return true=宸插畬鎴愭垨鏈鑷姩瀹屾垚锛宖alse=鏈畬鎴�
+     */
+    Boolean checkAndFinishMps(Long mpsId);
+
 }
\ No newline at end of file

--
Gitblit v1.9.3