From 67d3ab41f4989faf4db5f7f95f56b8595dd8eb3b Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期五, 11 九月 2026 09:39:44 +0800
Subject: [PATCH] feat(crm/erp): 新增采购申请、合同管理 Excel 导入(含菜单权限 SQL)

---
 yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java |   44 ++++++++++++++++++++++++++++++++------------
 1 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
index e1c0781..9d0fe8e 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
@@ -3,6 +3,8 @@
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPageReqVO;
 import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderSaveReqVO;
+import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderImportExcelVO;
+import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderImportRespVO;
 import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderDO;
 import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderItemDO;
 import jakarta.validation.Valid;
@@ -15,7 +17,7 @@
 /**
  * ERP 閿�鍞鍗� Service 鎺ュ彛
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 public interface ErpSaleOrderService {
 
@@ -28,6 +30,14 @@
     Long createSaleOrder(@Valid ErpSaleOrderSaveReqVO createReqVO);
 
     /**
+     * 瀵煎叆閿�鍞鍗曪紙瀵煎叆鍚庝负鈥滄湭鎻愪氦鈥濈姸鎬侊紝鍙户缁紪杈戞垨鎻愪氦瀹℃壒锛�
+     *
+     * @param importList 瀵煎叆鏁版嵁锛堟瘡涓�琛� = 涓�鏉℃槑缁嗭紝鐩稿悓閿�鍞崟缂栧彿鍚堝苟涓轰竴寮犺鍗曪級
+     * @return 瀵煎叆缁撴灉
+     */
+    ErpSaleOrderImportRespVO importSaleOrderList(List<ErpSaleOrderImportExcelVO> importList);
+
+    /**
      * 鏇存柊閿�鍞鍗�
      *
      * @param updateReqVO 鏇存柊淇℃伅
@@ -35,12 +45,30 @@
     void updateSaleOrder(@Valid ErpSaleOrderSaveReqVO updateReqVO);
 
     /**
-     * 鏇存柊閿�鍞鍗曠殑鐘舵��
+     * 鎻愪氦閿�鍞鍗曞鎵癸紙鍗忓悓鍔炲叕 BPM锛�
+     *
+     * 鏈彁浜ゆ垨宸查┏鍥炵殑閿�鍞鍗曞彲鎻愪氦锛屾彁浜ゅ悗杩涘叆鍗忓悓鍔炲叕瀹℃壒娴佺▼
      *
      * @param id 缂栧彿
-     * @param status 鐘舵��
+     * @param processDefinitionKey 娴佺▼瀹氫箟鐨勬爣璇�
+     * @param userId 鎻愪氦浜虹紪鍙�
      */
-    void updateSaleOrderStatus(Long id, Integer status);
+    void submitSaleOrder(Long id, String processDefinitionKey, Long userId);
+
+    /**
+     * 鏇存柊閿�鍞鍗曠殑瀹℃壒鐘舵�侊紙鍗忓悓鍔炲叕瀹℃壒缁撴灉鍥炶皟锛�
+     *
+     * @param id 缂栧彿
+     * @param bpmResult BPM 瀹℃壒缁撴灉锛堥�氳繃/椹冲洖/鍙栨秷锛�
+     */
+    void updateSaleOrderAuditStatus(Long id, Integer bpmResult);
+
+    /**
+     * 鑾峰緱閿�鍞鍗曞鎵规祦绋嬪畾涔夊垪琛�
+     *
+     * @return 娴佺▼瀹氫箟鍒楄〃锛坕d/key/name锛�
+     */
+    List<Map<String, Object>> getSaleOrderApproveProcessDefinitionList();
 
     /**
      * 浣滃簾閿�鍞鍗�
@@ -63,14 +91,6 @@
      * @param outCountMap 鍑哄簱鏁伴噺 Map锛歬ey 閿�鍞鍗曢」缂栧彿锛泇alue 鍑哄簱鏁伴噺
      */
     void updateSaleOrderOutCount(Long id, Map<Long, BigDecimal> outCountMap);
-
-    /**
-     * 鏇存柊閿�鍞鍗曠殑閫�璐ф暟閲�
-     *
-     * @param orderId 缂栧彿
-     * @param returnCountMap 閫�璐ф暟閲� Map锛歬ey 閿�鍞鍗曢」缂栧彿锛泇alue 閫�璐ф暟閲�
-     */
-    void updateSaleOrderReturnCount(Long orderId, Map<Long, BigDecimal> returnCountMap);
 
     /**
      * 鍒犻櫎閿�鍞鍗�

--
Gitblit v1.9.3