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-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseInvoiceService.java | 36 +++++++++++++++++++-----------------
1 files changed, 19 insertions(+), 17 deletions(-)
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseInvoiceService.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseInvoiceService.java
index 9e0650a..1b4a115 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseInvoiceService.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/purchase/ErpPurchaseInvoiceService.java
@@ -1,11 +1,13 @@
package cn.iocoder.yudao.module.erp.service.purchase;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.invoice.ErpPurchaseInvoiceItemReceiptRespVO;
import cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.invoice.ErpPurchaseInvoicePageReqVO;
import cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.invoice.ErpPurchaseInvoiceSaveReqVO;
import cn.iocoder.yudao.module.erp.dal.dataobject.purchase.ErpPurchaseInvoiceDO;
import jakarta.validation.Valid;
+import java.math.BigDecimal;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -42,14 +44,6 @@
void deletePurchaseInvoice(Long id);
/**
- * 鏇存柊鏉ョエ鐨勭姸鎬侊紙瀹℃牳/鍙嶅鏍革級
- *
- * @param id 缂栧彿
- * @param status 鐘舵��
- */
- void updatePurchaseInvoiceStatus(Long id, Integer status);
-
- /**
* 鑾峰緱鏉ョエ
*
* @param id 缂栧彿
@@ -84,28 +78,36 @@
PageResult<ErpPurchaseInvoiceDO> getPurchaseInvoicePage(ErpPurchaseInvoicePageReqVO pageReqVO);
/**
- * 鏍规嵁閲囪喘璁㈠崟缂栧彿鍜屽鎵圭姸鎬佽幏寰楁潵绁ㄥ垪琛�
+ * 鏍规嵁閲囪喘璁㈠崟缂栧彿鑾峰緱鏉ョエ鍒楄〃
*
* @param orderId 閲囪喘璁㈠崟缂栧彿
- * @param auditStatuses 瀹℃壒鐘舵�侀泦鍚�
* @return 鏉ョエ鍒楄〃
*/
- List<ErpPurchaseInvoiceDO> getPurchaseInvoiceListByOrderIdAndStatus(Long orderId, Collection<Integer> auditStatuses);
+ List<ErpPurchaseInvoiceDO> getPurchaseInvoiceListByOrderId(Long orderId);
/**
- * 鏍规嵁渚涘簲鍟嗙紪鍙峰拰瀹℃壒鐘舵�佽幏寰楁潵绁ㄥ垪琛�
+ * 鏍规嵁渚涘簲鍟嗙紪鍙疯幏寰楁潵绁ㄥ垪琛�
*
* @param supplierId 渚涘簲鍟嗙紪鍙�
- * @param auditStatuses 瀹℃壒鐘舵�侀泦鍚�
* @return 鏉ョエ鍒楄〃
*/
- List<ErpPurchaseInvoiceDO> getPurchaseInvoiceListBySupplierIdAndStatus(Long supplierId, Collection<Integer> auditStatuses);
+ List<ErpPurchaseInvoiceDO> getPurchaseInvoiceListBySupplierId(Long supplierId);
/**
- * 鑾峰緱寰呭鏍告潵绁ㄦ暟閲�
+ * 鏍规嵁閲囪喘璁㈠崟缂栧彿鍒楄〃锛岀粺璁℃瘡涓鍗曠殑鏉ョエ閲戦鍚堣锛堢敤浜庤绠楀墿浣欏彲寮�绁ㄩ噾棰濓級
*
- * @return 鏁伴噺
+ * @param orderIds 閲囪喘璁㈠崟缂栧彿鍒楄〃
+ * @return Map<閲囪喘璁㈠崟缂栧彿, 鏉ョエ閲戦鍚堣>
*/
- Long getAuditInvoiceCount();
+ Map<Long, BigDecimal> getPurchaseInvoicePriceSumMapByOrderIds(Collection<Long> orderIds);
+
+ /**
+ * 鑾峰緱鏉ョエ鍙�夌殑鍏ュ簱鍗曞垪琛紙鎸夐噰璐鍗曡繃婊わ紝鍚叆搴撻噾棰濄�佸凡鏉ョエ閲戦銆佸彲鏉ョエ閲戦锛�
+ *
+ * @param purchaseOrderId 閲囪喘璁㈠崟缂栧彿
+ * @param excludeInvoiceId 闇�鎺掗櫎鐨勬潵绁ㄧ紪鍙凤紙缂栬緫鏃舵帓闄よ嚜韬級锛屽彲涓虹┖
+ * @return 鍏ュ簱鍗曞垪琛�
+ */
+ List<ErpPurchaseInvoiceItemReceiptRespVO> getItemReceiptListForInvoice(Long purchaseOrderId, Long excludeInvoiceId);
}
--
Gitblit v1.9.3