From 8e39f175ef26827d08904a65b10748e736eeca21 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期一, 23 六月 2025 10:20:08 +0800
Subject: [PATCH] 2025-06-23 【销售台账】   增加客户合同号、销售合同号、项目名称模糊查询 增加客户名称、客户合同号、项目名称查询,不显示待回款为0,默认为打钩。 销售管理】-【回款流水】,增加合同号、项目名称列查询,增加客户名称、项目名称、合同号查询条件。 【销售管理】-【回款登记】,增加导出功能

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

diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
index 43db757..6d4861a 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.sales.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
@@ -22,6 +23,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
 import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -178,12 +180,28 @@
             return iPage;
         }
         for (SalesLedger salesLedger : iPage.getRecords()) {
+            boolean existFlag = false;
+            BigDecimal noInvoiceAmountTotal = BigDecimal.ZERO;
+            BigDecimal invoiceTotal = BigDecimal.ZERO;
             for (InvoiceLedgerDto invoiceLedgerDto : invoiceLedgerDtoList) {
                 if (salesLedger.getId().intValue() == invoiceLedgerDto.getSalesLedgerId()) {
-                    BigDecimal noInvoiceAmountTotal = salesLedger.getContractAmount().subtract(invoiceLedgerDto.getInvoiceTotal());
-                    salesLedger.setNoInvoiceAmountTotal(noInvoiceAmountTotal);
+                    noInvoiceAmountTotal = salesLedger.getContractAmount().subtract(invoiceLedgerDto.getInvoiceTotal());
+                    invoiceTotal = invoiceLedgerDto.getInvoiceTotal();
+                    existFlag = true;
+                    break;
                 }
             }
+            if(existFlag){
+                salesLedger.setNoInvoiceAmountTotal(noInvoiceAmountTotal);
+            }else {
+                salesLedger.setNoInvoiceAmountTotal(salesLedger.getContractAmount());
+            }
+            salesLedger.setInvoiceTotal(invoiceTotal);
+        }
+        if (ObjectUtils.isNotEmpty(salesLedgerDto.getStatus())) {
+            if (salesLedgerDto.getStatus()) {
+                iPage.getRecords().removeIf(salesLedger -> Objects.equals(salesLedger.getNoInvoiceAmountTotal(), new BigDecimal("0.00")));
+            }
         }
         return iPage;
     }

--
Gitblit v1.9.3