From 962f78c8383e7c884ddb08c951c15e5ba6eb4cb8 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期五, 23 十月 2026 15:43:33 +0800
Subject: [PATCH] fix: 完善审批流程与业务状态校验

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptService.java |   45 ++++++++++++++++++++++++++++++++++-----------
 1 files changed, 34 insertions(+), 11 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptService.java
index 487d2b6..2def9d7 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptService.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/itemreceipt/MesWmItemReceiptService.java
@@ -1,6 +1,8 @@
 package cn.iocoder.yudao.module.mes.service.wm.itemreceipt;
 
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.itemreceipt.vo.MesWmItemReceiptImportExcelVO;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.itemreceipt.vo.MesWmItemReceiptImportRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.wm.itemreceipt.vo.MesWmItemReceiptPageReqVO;
 import cn.iocoder.yudao.module.mes.controller.admin.wm.itemreceipt.vo.MesWmItemReceiptSaveReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.wm.itemreceipt.MesWmItemReceiptDO;
@@ -8,6 +10,7 @@
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap;
 
@@ -55,14 +58,20 @@
     PageResult<MesWmItemReceiptDO> getItemReceiptPage(MesWmItemReceiptPageReqVO pageReqVO);
 
     /**
-     * 鎻愪氦閲囪喘鍏ュ簱鍗曪紙鑽夌 鈫� 寰呬笂鏋讹級
+     * 鎻愪氦閲囪喘鍏ュ簱鍗曞鎵癸紙鑽夌 鈫� 寰呬笂鏋讹級
+     *
+     * 瀹℃牳浜虹敱銆岀郴缁熺鐞� - 瀹℃壒閰嶇疆銆嶆寜涓氬姟绫诲瀷缁熶竴閰嶇疆锛堜笟鍔$紪鐮� item_receipt_approve锛夛紝
+     * 鎻愪氦鏃舵棤闇�鎸囧畾锛涙湭鍚敤瀹℃壒鎴栨湭閰嶇疆鏈夋晥瀹℃牳浜烘椂鎶涘嚭涓氬姟寮傚父銆�
      *
      * @param id 缂栧彿
      */
     void submitItemReceipt(Long id);
 
     /**
-     * 鎵ц涓婃灦锛堝緟涓婃灦 鈫� 寰呭叆搴擄級
+     * 鎵ц涓婃灦鏍¢獙锛堜粎鏍¢獙宸插鎵瑰崟鎹殑鏄庣粏鏁伴噺涓�鑷存�э紝涓嶄慨鏀瑰崟鎹姸鎬侊級
+     *
+     * 鍗曟嵁鐘舵�佸彧鑳界敱瀹℃牳锛圓PPROVING 鈫� APPROVED锛変笌鍏ュ簱锛圓PPROVED 鈫� FINISHED锛夋帹杩涳紝
+     * 鏈柟娉曚笉寰楁妸鍗曟嵁鐩存帴缃负宸插鎵广��
      *
      * @param id 缂栧彿
      */
@@ -83,7 +92,7 @@
     void cancelItemReceipt(Long id);
 
     /**
-     * 鏍¢獙閲囪喘鍏ュ簱鍗曞瓨鍦ㄤ笖澶勪簬鍙紪杈戠姸鎬侊紙鑽夌鎴栧緟涓婃灦锛�
+     * 鏍¢獙閲囪喘鍏ュ簱鍗曞瓨鍦ㄤ笖澶勪簬鍙紪杈戠姸鎬侊紙浠呰崏绋匡級
      *
      * @param id 缂栧彿
      * @return 閲囪喘鍏ュ簱鍗�
@@ -133,19 +142,33 @@
     Long generateItemReceiptFromArrivalNotice(Long arrivalNoticeId);
 
     /**
-     * 鎻愪氦閲囪喘鍏ュ簱鍗曞鎵�
+     * 鑾峰緱閲囪喘鍏ュ簱鍗曞鎵圭殑瀹℃牳浜虹紪鍙烽泦鍚�
      *
-     * @param id 鍏ュ簱鍗曠紪鍙�
-     * @param processDefinitionKey 娴佺▼瀹氫箟 Key
+     * 渚涘墠绔垽鏂綋鍓嶇櫥褰曠敤鎴锋槸鍚﹀簲灞曠ず銆屽鏍搞�嶆寜閽紱鏈厤缃椂杩斿洖绌洪泦鍚堛��
+     *
+     * @return 瀹℃牳浜虹敤鎴风紪鍙烽泦鍚�
      */
-    void submitItemReceiptApproval(Long id, String processDefinitionKey);
+    Set<Long> getItemReceiptApproverUserIds();
 
     /**
-     * 鏇存柊閲囪喘鍏ュ簱鍗曞鎵圭姸鎬侊紙鐢� BPM Listener 鍥炶皟锛�
+     * 瀹℃牳閲囪喘鍏ュ簱鍗曪紙寰呬笂鏋� 鈫� 寰呮墽琛屽叆搴� / 鑽夌锛�
      *
-     * @param id 鍏ュ簱鍗曠紪鍙�
-     * @param bpmResult BPM 瀹℃壒缁撴灉
+     * 浠呬笟鍔$紪鐮� item_receipt_approve 閰嶇疆鐨勫鏍镐汉鍙搷浣滐紙澶氫汉鏃舵垨绛撅級锛屼笖浠呭湪寰呬笂鏋剁姸鎬佷笅鍏佽銆�
+     * 瀹℃牳閫氳繃缃负寰呮墽琛屽叆搴擄紱瀹℃牳涓嶉�氳繃蹇呴』濉啓鍘熷洜锛岄��鍥炶崏绋垮彲淇敼鍚庨噸鏂版彁浜ゃ��
+     *
+     * @param id           鍏ュ簱鍗曠紪鍙�
+     * @param pass         鏄惁閫氳繃锛宼rue=閫氳繃 / false=涓嶉�氳繃
+     * @param reviewRemark 瀹℃牳鎰忚锛屽鏍镐笉閫氳繃鏃跺繀濉�
      */
-    void updateItemReceiptAuditStatus(Long id, Integer bpmResult);
+    void auditItemReceipt(Long id, Boolean pass, String reviewRemark);
+
+    /**
+     * 瀵煎叆閲囪喘鍏ュ簱鍗�
+     *
+     * @param importList    瀵煎叆鏁版嵁
+     * @param updateSupport 鏄惁鏀寔鏇存柊
+     * @return 瀵煎叆缁撴灉
+     */
+    MesWmItemReceiptImportRespVO importItemReceiptList(List<MesWmItemReceiptImportExcelVO> importList, boolean updateSupport);
 
 }

--
Gitblit v1.9.3