From 78191f568edd0cf7c4cb65f7e2385f565eb233be Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 01 八月 2025 13:46:27 +0800
Subject: [PATCH] yys  新增中强恒心配置文件

---
 src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
index 4c85afb..7e76aa9 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java
@@ -264,8 +264,14 @@
 
         // 淇敼浜у搧淇℃伅
         for (ProductRecord productRecord : productRecords) {
-            ticketRegistrations.get(0).setInvoiceAmount(ticketRegistrations.get(0).getInvoiceAmount().subtract(productRecords.get(0).getTicketsAmount()));
-            ticketRegistrationMapper.updateById(ticketRegistrations.get(0));
+            BigDecimal subtract = ticketRegistrations.get(0).getInvoiceAmount().subtract(productRecords.get(0).getTicketsAmount());
+            // 灏忎簬绛変簬0鍒犻櫎 锛屽ぇ浜�0淇敼
+            if(subtract.compareTo(BigDecimal.ZERO) <= 0){
+                ticketRegistrationMapper.deleteById(ticketRegistrations.get(0));
+            }else if(subtract.compareTo(BigDecimal.ZERO) > 0){
+                ticketRegistrations.get(0).setInvoiceAmount(subtract);
+                ticketRegistrationMapper.updateById(ticketRegistrations.get(0));
+            }
             LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductLambdaQueryWrapper = new LambdaQueryWrapper<>();
             salesLedgerProductLambdaQueryWrapper.eq(SalesLedgerProduct::getId, productRecord.getSaleLedgerProjectId())
                     .eq(SalesLedgerProduct::getType, 2);
@@ -353,6 +359,7 @@
 
             if (ticketRegistration.getStatus()) {
                 ticketRegistrationIPage.getRecords().removeIf(receiptPaymentDto1 -> new BigDecimal("0.00").equals(receiptPaymentDto1.getUnPaymentAmountTotal()));
+                ticketRegistrationIPage.setTotal(ticketRegistrationIPage.getRecords().size());
             }
         }
         return ticketRegistrationIPage;

--
Gitblit v1.9.3