From 1e89b00b0919a19504f32b56fb1ef80298799ec4 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期五, 20 三月 2026 14:30:29 +0800
Subject: [PATCH] 新增定时任务

---
 service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 59 insertions(+), 0 deletions(-)

diff --git a/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java
index fc897ff..b01c72e 100644
--- a/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java
+++ b/service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java
@@ -1,6 +1,9 @@
 package com.ruoyi.cwgl.controller;
 
 import java.util.List;
+
+import com.ruoyi.cwgl.domain.ReceivableBillCustomerSummary;
+import com.ruoyi.cwgl.domain.vo.ReceivableBillAgingAnalysisVo;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -16,10 +19,15 @@
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.enums.BusinessType;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Objects;
 import com.ruoyi.cwgl.domain.InvoiceManage;
 import com.ruoyi.cwgl.domain.ReceivableBillManagement;
+import com.ruoyi.cwgl.domain.ReceivableInvoiceBusiness;
 import com.ruoyi.cwgl.service.IInvoiceManageService;
 import com.ruoyi.cwgl.service.IReceivableBillManagementService;
+import com.ruoyi.cwgl.service.IReceivableInvoiceBusinessService;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
 
@@ -38,6 +46,9 @@
 
     @Autowired
     private IInvoiceManageService invoiceManageService;
+
+    @Autowired
+    private IReceivableInvoiceBusinessService receivableInvoiceBusinessService;
 
 
 
@@ -135,4 +146,52 @@
     {
         return invoiceManageService.applyReceivableInvoice(invoiceManage, id);
     }
+
+    /**
+     * 鏌ヨ搴旀敹璐﹀崟宸插紑绁ㄩ噾棰�
+     * @param id 搴旀敹璐﹀崟ID
+     * @return 宸插紑绁ㄩ噾棰�
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:query')")
+    @GetMapping("/invoice/amount/{id}")
+    public AjaxResult getReceivableInvoicedAmount(@PathVariable("id") Integer id)
+    {
+        // 鏌ヨreceivable_invoice_business琛ㄤ腑status涓�1鐨勮褰�
+        ReceivableInvoiceBusiness query = new ReceivableInvoiceBusiness();
+        query.setHeadId(id);
+        query.setStatus(1);
+        List<ReceivableInvoiceBusiness> invoices = receivableInvoiceBusinessService.selectReceivableInvoiceBusinessList(query);
+        
+        // 璁$畻宸插紑绁ㄩ噾棰�
+        BigDecimal invoicedAmount = invoices.stream()
+                .map(ReceivableInvoiceBusiness::getInvoicingAmount)
+                .filter(Objects::nonNull)
+                .reduce(BigDecimal.ZERO, BigDecimal::add);
+        
+        return AjaxResult.success(invoicedAmount);
+    }
+
+    /**
+     * 鏌ヨ搴旀敹璐﹀崟瀹㈡埛姹囨�诲垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:list')")
+    @GetMapping("/customerSummary")
+    public TableDataInfo customerSummary(ReceivableBillManagement receivableBillManagement)
+    {
+        List<ReceivableBillCustomerSummary> list = receivableBillManagementService.selectReceivableBillCustomerSummaryList(receivableBillManagement);
+        return getDataTable(list);
+    }
+
+    /**
+     * 鏌ヨ搴旀敹璐﹀崟璐﹂緞鍒嗘瀽鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:list')")
+    @GetMapping("/agingAnalysis")
+    public TableDataInfo agingAnalysis(ReceivableBillManagement receivableBillManagement)
+    {
+        startPage();
+        List<ReceivableBillAgingAnalysisVo> list = receivableBillManagementService.selectReceivableBillAgingAnalysisList(receivableBillManagement);
+        return getDataTable(list);
+    }
+    
 }

--
Gitblit v1.8.0