From 862028f5d3433aecec6bf0cfd8bd015dc722b9df Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期五, 06 六月 2025 14:09:50 +0800
Subject: [PATCH] 销售合同号/部门新增编号

---
 src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java |   28 +++++++++++++++++++++++++++-
 1 files changed, 27 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
index a85c360..4b3aaf6 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -1,21 +1,27 @@
 package com.ruoyi.sales.controller;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.controller.BaseController;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.framework.web.page.TableDataInfo;
+import com.ruoyi.sales.dto.InvoiceLedgerDto;
 import com.ruoyi.sales.dto.SalesLedgerDto;
+import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
 import com.ruoyi.sales.pojo.SalesLedger;
 import com.ruoyi.sales.service.ICommonFileService;
 import com.ruoyi.sales.service.ISalesLedgerService;
 import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 閿�鍞彴璐ontroller
@@ -32,13 +38,33 @@
 
     private ICommonFileService commonFileService;
 
+    @Autowired
+    private InvoiceLedgerMapper invoiceLedgerMapper;
+
     /**
      * 鏌ヨ閿�鍞彴璐﹀垪琛�
      */
     @GetMapping("/list")
-    public TableDataInfo list(SalesLedgerDto salesLedgerDto) {
+    public TableDataInfo list(Page page, SalesLedgerDto salesLedgerDto) {
         startPage();
         List<SalesLedger> list = salesLedgerService.selectSalesLedgerList(salesLedgerDto);
+        // 璁$畻宸插紑绁ㄩ噾棰�/鏈紑绁ㄩ噾棰�(宸插~鍐欏彂绁ㄩ噾棰濅负鍑�)
+        if(CollectionUtils.isEmpty(list)){
+            return getDataTable(list);
+        }
+        List<Long> salesLedgerIds = list.stream().map(SalesLedger::getId).collect(Collectors.toList());
+        List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoicedTotal(salesLedgerIds);
+        if(CollectionUtils.isEmpty(invoiceLedgerDtoList)){
+            return getDataTable(list);
+        }
+        for (SalesLedger salesLedger : list) {
+            for (InvoiceLedgerDto invoiceLedgerDto : invoiceLedgerDtoList) {
+                if (salesLedger.getId().intValue() == invoiceLedgerDto.getSalesLedgerId()) {
+                    BigDecimal noInvoiceAmountTotal = salesLedger.getContractAmount().subtract(invoiceLedgerDto.getInvoiceTotal());
+                    salesLedger.setNoInvoiceAmountTotal(noInvoiceAmountTotal);
+                }
+            }
+        }
         return getDataTable(list);
     }
 

--
Gitblit v1.9.3