From 7d2ee3cef2e0d68ba6400bc5957640d2771bbf4c Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期三, 16 九月 2026 18:05:40 +0800
Subject: [PATCH] refactor: 单据审核改为审批配置状态机(新增:audit接口/审核人字段/DB变更脚本)

---
 yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/invoice/CrmInvoiceService.java |   39 +++++++++++++++++++++++++++------------
 1 files changed, 27 insertions(+), 12 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/invoice/CrmInvoiceService.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/invoice/CrmInvoiceService.java
index 0390851..6fb86fd 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/invoice/CrmInvoiceService.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/invoice/CrmInvoiceService.java
@@ -10,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;
 
@@ -36,14 +37,6 @@
     void updateInvoice(@Valid CrmInvoiceSaveReqVO updateReqVO);
 
     /**
-     * 鏇存柊寮�绁ㄦ祦绋嬪鎵圭粨鏋�
-     *
-     * @param id        寮�绁ㄧ紪鍙�
-     * @param bpmResult BPM 瀹℃壒缁撴灉
-     */
-    void updateInvoiceAuditStatus(Long id, Integer bpmResult);
-
-    /**
      * 鍒犻櫎寮�绁�
      *
      * @param id 缂栧彿
@@ -51,12 +44,34 @@
     void deleteInvoice(Long id);
 
     /**
-     * 鍙戣捣寮�绁ㄥ鎵规祦绋�
+     * 鎻愪氦寮�绁ㄥ鎵癸紙鑽夌 / 瀹℃牳涓嶉�氳繃 鈫� 瀹℃壒涓級
      *
-     * @param id     寮�绁ㄧ紪鍙�
-     * @param userId 鐢ㄦ埛缂栧彿
+     * 瀹℃壒浜虹敱銆岀郴缁熺鐞� - 瀹℃壒閰嶇疆銆嶆寜涓氬姟绫诲瀷缁熶竴閰嶇疆锛堜笟鍔$紪鐮� crm_invoice_approve锛夛紝
+     * 鎻愪氦鏃舵棤闇�鎸囧畾锛涙湭鍚敤瀹℃壒鎴栨湭閰嶇疆鏈夋晥瀹℃壒浜烘椂鎶涘嚭涓氬姟寮傚父銆�
+     *
+     * @param id 寮�绁ㄧ紪鍙�
      */
-    void submitInvoice(Long id, Long userId);
+    void submitInvoice(Long id);
+
+    /**
+     * 鑾峰緱寮�绁ㄥ鎵圭殑瀹℃壒浜虹紪鍙烽泦鍚�
+     *
+     * 渚涘墠绔垽鏂綋鍓嶇櫥褰曠敤鎴锋槸鍚﹀簲灞曠ず銆屽鏍搞�嶆寜閽紱鏈厤缃椂杩斿洖绌洪泦鍚堛��
+     *
+     * @return 瀹℃壒浜虹敤鎴风紪鍙烽泦鍚�
+     */
+    Set<Long> getInvoiceApproverUserIds();
+
+    /**
+     * 瀹℃牳寮�绁紙瀹℃壒涓� 鈫� 瀹℃牳閫氳繃 / 瀹℃牳涓嶉�氳繃锛�
+     *
+     * 浠呬笟鍔$紪鐮� crm_invoice_approve 閰嶇疆鐨勫鎵逛汉鍙搷浣滐紙澶氫汉鏃舵垨绛撅級锛涘鏍镐笉閫氳繃鏃跺繀椤诲~鍐欎笉閫氳繃鍘熷洜銆�
+     *
+     * @param id           寮�绁ㄧ紪鍙�
+     * @param pass         鏄惁閫氳繃锛歵rue=瀹℃牳閫氳繃 / false=瀹℃牳涓嶉�氳繃
+     * @param reviewRemark 瀹℃牳鎰忚锛堜笉閫氳繃鏃跺嵆涓嶉�氳繃鍘熷洜锛屽繀濉級
+     */
+    void auditInvoice(Long id, Boolean pass, String reviewRemark);
 
     /**
      * 鑾峰緱寮�绁�

--
Gitblit v1.9.3