From 8775f67d35eb48e9a63c5a7d2286436d6d39271c Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 28 二月 2025 17:18:46 +0800
Subject: [PATCH] 权限

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java |   14 ++++++--------
 1 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
index b427e64..528af73 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
@@ -271,7 +271,7 @@
                 rentBill.setEndTime(firstPayTime1.with(TemporalAdjusters.lastDayOfMonth()));
             }
             // 不走递增递减
-            long allDays = ChronoUnit.DAYS.between(contract.getFirstPayTime(), rentBill.getEndTime());
+            long allDays = ChronoUnit.DAYS.between(contract.getStartPayTime(), rentBill.getEndTime());
             rentBill.setPayableFeesMoney(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(allDays)));
             rentBill.setOutstandingMoney(rentBill.getPayableFeesMoney());
 
@@ -304,7 +304,6 @@
 
 
             while(beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12).isBefore(contract.getEndTime())){
-                    beforeBill.setEndTime(beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12));
                     TBill tBill = new TBill();
                     tBill.setContractId(contract.getId());
                     tBill.setContractNumber(contract.getContractNumber());
@@ -459,10 +458,8 @@
 
                             }
                         }else{
-                            long allDays = ChronoUnit.DAYS.between(beforeBill.getEndTime(), (contract.getPayType().equals("1")?
-                                    beforeBill.getEndTime().plusMonths(1):contract.getPayType().equals("2")?
-                                    beforeBill.getEndTime().plusMonths(3):beforeBill.getEndTime().plusMonths(12)).with(TemporalAdjusters.lastDayOfMonth()));
-                            tBill.setPayableFeesMoney(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(allDays)));
+
+                            tBill.setPayableFeesMoney(contract.getMonthRent());
                             tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
 
                         }
@@ -478,9 +475,10 @@
                         tBill.setBillType("1");
                         tBill.setStartTime(beforeBill.getEndTime().plusDays(1));
                         tBill.setEndTime(beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12));
+                        billMapper.insert(tBill);
                     }
-                    billMapper.insert(tBill);
-                }
+                beforeBill.setEndTime(beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12));
+            }
             }
 
         } catch (Exception e) {

--
Gitblit v1.7.1