From d39e4f7d839167c16425086dfa2f8747bccfdff9 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 05 十一月 2026 17:39:01 +0800
Subject: [PATCH] feat: 打通销售采购财务闭环并完成累计业务优化

---
 yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java |   41 +++++++++++++++++++++++++++++------------
 1 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java
index bd0d5dc..62670f6 100644
--- a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/CrmReceivableService.java
@@ -5,6 +5,7 @@
 import cn.iocoder.yudao.module.crm.controller.admin.receivable.vo.receivable.CrmReceivableSaveReqVO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerDO;
 import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableDO;
+import cn.iocoder.yudao.module.crm.dal.dataobject.receivable.CrmReceivableItemDO;
 import jakarta.validation.Valid;
 
 import java.math.BigDecimal;
@@ -37,12 +38,12 @@
     void updateReceivable(@Valid CrmReceivableSaveReqVO updateReqVO);
 
     /**
-     * 鏇存柊鍥炴娴佺▼瀹℃壒缁撴灉
+     * 鏇存柊鍥炴鐨勭姸鎬侊紙瀹℃牳/鍙嶅鏍革級
      *
-     * @param id        鍥炴缂栧彿
-     * @param bpmResult BPM 瀹℃壒缁撴灉
+     * @param id     缂栧彿
+     * @param status 鐘舵��
      */
-    void updateReceivableAuditStatus(Long id, Integer bpmResult);
+    void updateReceivableStatus(Long id, Integer status);
 
     /**
      * 鍒犻櫎鍥炴
@@ -50,14 +51,6 @@
      * @param id 缂栧彿
      */
     void deleteReceivable(Long id);
-
-    /**
-     * 鍙戣捣鍥炴瀹℃壒娴佺▼
-     *
-     * @param id     鍥炴缂栧彿
-     * @param userId 鐢ㄦ埛缂栧彿
-     */
-    void submitReceivable(Long id, Long userId);
 
     /**
      * 鑾峰緱鍥炴
@@ -74,6 +67,22 @@
      * @return 鍥炴鍒楄〃
      */
     List<CrmReceivableDO> getReceivableList(Collection<Long> ids);
+
+    /**
+     * 鑾峰緱鍥炴鐨勬牳閿�鏄庣粏
+     *
+     * @param receivableId 鍥炴缂栧彿
+     * @return 鏍搁攢鏄庣粏鍒楄〃
+     */
+    List<CrmReceivableItemDO> getReceivableItemList(Long receivableId);
+
+    /**
+     * 鑾峰緱瀹㈡埛涓嬪叏閮ㄥ洖娆剧殑鏍搁攢鏄庣粏
+     *
+     * @param customerId 瀹㈡埛缂栧彿
+     * @return 鏍搁攢鏄庣粏鍒楄〃锛堟寜鍥炴鍊掑簭锛�
+     */
+    List<CrmReceivableItemDO> getReceivableItemListByCustomerId(Long customerId);
 
     /**
      * 鑾峰緱鍥炴 Map
@@ -123,6 +132,14 @@
     Map<Long, BigDecimal> getReceivablePriceMapByContractId(Collection<Long> contractIds);
 
     /**
+     * 鑾峰緱寮�绁ㄥ凡鍥炴閲戦 Map锛堣崏绋� + 瀹℃壒涓� + 瀹℃壒閫氳繃锛�
+     *
+     * @param invoiceIds 寮�绁ㄧ紪鍙�
+     * @return 宸插洖娆鹃噾棰� Map
+     */
+    Map<Long, BigDecimal> getReceivablePriceMapByInvoiceId(Collection<Long> invoiceIds);
+
+    /**
      * 鏍规嵁鍚堝悓缂栧彿鏌ヨ鍥炴鏁伴噺
      *
      * @param contractId 鍚堝悓缂栧彿

--
Gitblit v1.9.3