From 274a61f398e1d7b4ae63208897b70b3a73b30805 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期三, 18 六月 2025 09:14:24 +0800
Subject: [PATCH] 非空校验

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

diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
index 5ac4159..b5296d9 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;
 
 /**
@@ -180,9 +182,11 @@
         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()) {
                     noInvoiceAmountTotal = salesLedger.getContractAmount().subtract(invoiceLedgerDto.getInvoiceTotal());
+                    invoiceTotal = invoiceLedgerDto.getInvoiceTotal();
                     existFlag = true;
                     break;
                 }
@@ -192,6 +196,12 @@
             }else {
                 salesLedger.setNoInvoiceAmountTotal(salesLedger.getContractAmount());
             }
+            salesLedger.setInvoiceTotal(invoiceTotal);
+        }
+        if (ObjectUtils.isNotEmpty(salesLedgerDto.getStatus())) {
+            if (salesLedgerDto.getStatus()==1) {
+                iPage.getRecords().removeIf(salesLedger -> !Objects.equals(salesLedger.getNoInvoiceAmountTotal(), new BigDecimal("0.00")));
+            }
         }
         return iPage;
     }

--
Gitblit v1.9.3