From 5fa6e6f8410ef9d057174bcff2a3c5038c54a551 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期日, 27 四月 2025 18:41:20 +0800
Subject: [PATCH] bug修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java |   27 ++++++++++++++++++++-------
 1 files changed, 20 insertions(+), 7 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 6987379..7fa182a 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
@@ -324,6 +324,15 @@
     @PostMapping(value = "/confirmSettlement")
     public R<Boolean> confirmSettlement(String id) {
         TContract contract = contractService.getById(id);
+
+        // 查询验收记录
+        long count = checkAcceptRecordService.count(Wrappers.lambdaQuery(TCheckAcceptRecord.class)
+                .eq(TCheckAcceptRecord::getStatus,1)
+                .eq(TCheckAcceptRecord::getContractId, id));
+        if (count == 0) {
+            return R.fail("请先完成验收");
+        }
+
         contract.setStatus("8");
         contractService.updateById(contract);
         // 将所有未缴费账单设置未已失效
@@ -553,13 +562,17 @@
     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());
+            tContractRentType = contractRentTypeService.lambdaQuery().eq(TContractRentType::getContractId, contract.getId())
+                    .last("limit 1").one();
+            if (tContractRentType==null){
+                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());
+            }
         }
         // 生成第一笔账单
         // 第一次应缴费日期

--
Gitblit v1.7.1