From 7d570190a1746c409d6f43a61503e9fa10d39748 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 13 二月 2025 10:30:37 +0800
Subject: [PATCH] 生成合同导出

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java |   31 ++++++++++++++++++++++++-------
 1 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
index 05076e9..e68b651 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
@@ -59,6 +59,8 @@
                     // 预期x天后的违约金
                     BigDecimal money = everyDayMoney.multiply(proportion).multiply(new BigDecimal(l));
                     tBill.setPayableFeesPenalty(money);
+                    tBill.setOutstandingMoney(money);
+
                 }
             }
             billService.updateBatchById(list);
@@ -148,6 +150,7 @@
                     originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                             .multiply(new BigDecimal(originalDays));
                     rentBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                    rentBill.setOutstandingMoney(rentBill.getPayableFeesMoney());
                     if (contract.getFirstPayTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12).isAfter(contract.getEndTime())){
                         rentBill.setEndTime(contract.getFirstPayTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12));
                     }else{
@@ -162,6 +165,8 @@
                     // 不走递增递减
                     long allDays = ChronoUnit.DAYS.between(contract.getFirstPayTime(), rentBill.getEndTime());
                     rentBill.setPayableFeesMoney(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(allDays)));
+                    rentBill.setOutstandingMoney(rentBill.getPayableFeesMoney());
+
                 }
                 // 租金账单
                 bills.add(rentBill);
@@ -170,6 +175,8 @@
                 depositBill.setContractId(contract.getId());
                 depositBill.setContractNumber(contract.getContractNumber());
                 depositBill.setPayableFeesMoney(contract.getDeposit());
+                depositBill.setOutstandingMoney(depositBill.getPayableFeesMoney());
+
                 depositBill.setPayableFeesTime(firstPayTime);
                 depositBill.setPayFeesStatus("1");
                 depositBill.setBillType("2");
@@ -255,6 +262,8 @@
                                 originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                         .multiply(new BigDecimal(originalDays));
                                 tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                             }else{
                                 // 之前已经涨、跌过租金了 需要判断周期是否还需要再涨、跌
                                 if ((LocalDateTime.now().getYear() - contract.getChangeTime().getYear())%tContractRentType.getCycleTime()==0){
@@ -298,6 +307,8 @@
                                     originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                             .multiply(new BigDecimal(originalDays));
                                     tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                    tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                                 }else{
                                     // 不涨租金 用上次的
                                     // 租金递增递减的时长 天
@@ -334,6 +345,8 @@
                                     originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                             .multiply(new BigDecimal(originalDays));
                                     tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                    tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                                 }
                             }
 
@@ -341,6 +354,8 @@
                     }else{
                         long allDays = ChronoUnit.DAYS.between(beforeBill.getEndTime(), contract.getEndTime());
                         tBill.setPayableFeesMoney(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(allDays)));
+                        tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                     }
                     tBill.setContractNumber(contract.getContractNumber());
                     if (beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12).getDayOfMonth()<=15){
@@ -443,6 +458,8 @@
                                     originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                             .multiply(new BigDecimal(originalDays));
                                     tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                    tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                                 }else{
                                     // 之前已经涨、跌过租金了 需要判断周期是否还需要再涨、跌
                                     if ((LocalDateTime.now().getYear() - contract.getChangeTime().getYear())%tContractRentType.getCycleTime()==0){
@@ -486,6 +503,8 @@
                                         originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                                 .multiply(new BigDecimal(originalDays));
                                         tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                        tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                                     }else{
                                         // 不涨租金 用上次的
                                         // 租金递增递减的时长 天
@@ -522,6 +541,8 @@
                                         originalMoney=originalMoney.add(contract.getMonthRent().divide(new BigDecimal(30), 2, BigDecimal.ROUND_DOWN))
                                                 .multiply(new BigDecimal(originalDays));
                                         tBill.setPayableFeesMoney(contractRentTypeMoney.add(originalMoney));
+                                        tBill.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                                     }
                                 }
 
@@ -531,6 +552,8 @@
                                     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.setOutstandingMoney(tBill.getPayableFeesMoney());
+
                         }
                         tBill.setContractNumber(contract.getContractNumber());
                         if (beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12).getDayOfMonth()<=15){
@@ -546,13 +569,7 @@
                         tBill.setEndTime(contract.getEndTime());
                         bills.add(tBill);
                     }
-                    tBill.setPayableFeesMoney(contract.getMonthRent().multiply(new BigDecimal("3")));
-                    tBill.setPayableFeesTime(LocalDateTime.now().withHour(0).withMinute(0).withSecond(0));
-                    tBill.setPayFeesStatus("1");
-                    tBill.setBillType("1");
-                    tBill.setStartTime(beforeBill.getEndTime().plusMonths(1).with(TemporalAdjusters.firstDayOfMonth()));
-                    tBill.setEndTime(beforeBill.getEndTime().plusMonths(1).with(TemporalAdjusters.lastDayOfMonth()));
-                    bills.add(tBill);
+
                 }
             }
             billService.saveBatch(bills);

--
Gitblit v1.7.1