From da9b471a7844ff23d034a37f2adea8aa13e23fed Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 10 四月 2025 09:15:41 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java |   81 ++++++++++++++++++++--------------------
 1 files changed, 40 insertions(+), 41 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
index 86c69c2..7cf2d9f 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
@@ -366,7 +366,7 @@
         List<TContract> list = contractService.lambdaQuery().in(TContract::getId, dto.getIds()).list();
         List<String> res = new ArrayList<>();
         for (TContract contract : list) {
-            String url = generateContract(contract);
+            String url = generateContract(contract,new TContractDTO());
             res.add(url);
         }
 
@@ -385,7 +385,7 @@
 
     }
 
-    private String generateContract(TContract contract) {
+    private String generateContract(TContract contract,TContractDTO dto) {
         String templateFileName = "1_yzj_租赁合同_个人.docx";
         String contractId = contract.getId();
         TBill firstBill = null;
@@ -427,10 +427,10 @@
             fill(templateParam, "email", tenant.getEmail());
 
             // 企业、政府机构、国有企业
-            if (Objects.nonNull(tenant.getTenantType())
-                    && (tenant.getTenantType().equals("2")
-                    || tenant.getTenantType().equals("5")
-                    || tenant.getTenantType().equals("7"))) {
+            if (Objects.nonNull(tenant.getTenantAttributes())
+                    && (tenant.getTenantAttributes().equals("2")
+                    || tenant.getTenantAttributes().equals("5")
+                    || tenant.getTenantAttributes().equals("7"))) {
                 fill(templateParam, "creditCode", tenant.getCreditCode());
                 fill(templateParam, "legalPerson", tenant.getLegalPerson());
                 templateFileName = "1_yzj_租赁合同_企业.docx";
@@ -485,39 +485,30 @@
                 : contract.getPayType().equals("2") ? "季"
                 : "年";
         fill(templateParam, "payType", payType);
-        BigDecimal extracted = extracted(contract);
-        // 首期租金处理
-        if (firstBill != null) {
-            double firstRent = (contract.getPayType().equals("1")
-                    ? contract.getMonthRent()
-                    : contract.getPayType().equals("2")
-                    ? contract.getMonthRent().multiply(new BigDecimal("3"))
-                    : contract.getMonthRent().multiply(new BigDecimal("12")))
-                    .setScale(2, RoundingMode.DOWN).doubleValue();
-            fill(templateParam, "firstRent", "¥" + extracted + "元");
-            // 其他财务字段
-            fill(templateParam, "firstRentString", "人民币" + NumberToChineseUtils.numberToChinese(extracted.doubleValue()));
-        } else {
-//            fill(templateParam, "firstRent", "");
-        }
-
-        fill(templateParam, "firstRent",
-                "¥"+(contract.getPayType().equals("1")
-                        ? contract.getMonthRent()
-                        :contract.getPayType().equals("2")
-                        ?contract.getMonthRent().multiply(new BigDecimal("3"))
-                        :contract.getMonthRent().multiply(new BigDecimal("12"))
-                        .setScale(2, RoundingMode.DOWN)).doubleValue()+"元");
+        BigDecimal extracted = extracted(contract,dto);
+        System.out.println("金额========================="+extracted);
+        fill(templateParam, "firstRent", "¥" + extracted + "元");
+        // 其他财务字段
+        fill(templateParam, "firstRentString", "人民币" + NumberToChineseUtils.numberToChinese(extracted.doubleValue()));
 
 
-        fill(templateParam, "firstRentString",
-                "人民币"+NumberToChineseUtils.numberToChinese(
-                        (contract.getPayType().equals("1")
-                                ? contract.getMonthRent()
-                                :contract.getPayType().equals("2")
-                                ?contract.getMonthRent().multiply(new BigDecimal("3"))
-                                :contract.getMonthRent().multiply(new BigDecimal("12"))
-                                .setScale(2, RoundingMode.DOWN)).doubleValue()));
+//        fill(templateParam, "firstRent",
+//                "¥"+(contract.getPayType().equals("1")
+//                        ? contract.getMonthRent()
+//                        :contract.getPayType().equals("2")
+//                        ?contract.getMonthRent().multiply(new BigDecimal("3"))
+//                        :contract.getMonthRent().multiply(new BigDecimal("12"))
+//                        .setScale(2, RoundingMode.DOWN)).doubleValue()+"元");
+//
+//
+//        fill(templateParam, "firstRentString",
+//                "人民币"+NumberToChineseUtils.numberToChinese(
+//                        (contract.getPayType().equals("1")
+//                                ? contract.getMonthRent()
+//                                :contract.getPayType().equals("2")
+//                                ?contract.getMonthRent().multiply(new BigDecimal("3"))
+//                                :contract.getMonthRent().multiply(new BigDecimal("12"))
+//                                .setScale(2, RoundingMode.DOWN)).doubleValue()));
 
 
 
@@ -549,9 +540,17 @@
                 "/usr/local/project/file/");
     }
 
-    private BigDecimal extracted(TContract contract) {
-        List<TContractRentType> contractRentTypes = contractRentTypeService.list();
-        TContractRentType tContractRentType = contractRentTypes.stream().filter(e -> e.getContractId().equals(contract.getId())).findFirst().orElse(null);
+    private BigDecimal extracted(TContract contract,TContractDTO dto) {
+        TContractRentType tContractRentType = null;
+        if (contract.getIsIncreasing()){
+            tContractRentType = new TContractRentType();
+            tContractRentType.setContractId(contract.getId());
+            tContractRentType.setIncreasingDecreasing(dto.getIncreasingDecreasing());
+            tContractRentType.setIncreasingDecreasingType(dto.getIncreasingDecreasingType());
+            tContractRentType.setNumericalValue(dto.getNumericalValue());
+            tContractRentType.setChangeTime(dto.getChangeTime());
+            tContractRentType.setCycleTime(dto.getCycleTime());
+        }
         // 生成第一笔账单
         // 第一次应缴费日期
 
@@ -792,7 +791,7 @@
     {
         TContract contract = new TContract();
         BeanUtil.copyProperties(dto,contract);
-        return R.ok(generateContract(contract));
+        return R.ok(generateContract(contract,dto));
     }
 
     /**

--
Gitblit v1.7.1