From 7bd7ad452e6a7a3fc60acfd1d6898c70e933773e Mon Sep 17 00:00:00 2001
From: yanghb <yangbhwork@163.com>
Date: 星期六, 05 七月 2025 21:44:14 +0800
Subject: [PATCH] feat: 修复安置库信息

---
 cz-bussiness/src/main/java/com/ruoyi/bussiness/service/impl/PlacementBatchServiceImpl.java |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/cz-bussiness/src/main/java/com/ruoyi/bussiness/service/impl/PlacementBatchServiceImpl.java b/cz-bussiness/src/main/java/com/ruoyi/bussiness/service/impl/PlacementBatchServiceImpl.java
index becbeab..67e7c1d 100644
--- a/cz-bussiness/src/main/java/com/ruoyi/bussiness/service/impl/PlacementBatchServiceImpl.java
+++ b/cz-bussiness/src/main/java/com/ruoyi/bussiness/service/impl/PlacementBatchServiceImpl.java
@@ -821,6 +821,50 @@
         }
     }
 
+    @Override
+    public void fixSettle() {
+        //修改安置状态为0
+        LambdaUpdateWrapper<Placement> updateWrapper = new LambdaUpdateWrapper<>();
+        updateWrapper.set(Placement::getStatus, 0);
+        placementService.update(updateWrapper);
+
+        LambdaQueryWrapper<PlacementBatch> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(PlacementBatch::getStatus, 1);
+        List<PlacementBatch> list = this.baseMapper.selectList(queryWrapper);
+        List<Long> batchIds = list.stream().map(PlacementBatch::getId).collect(Collectors.toList());
+        //查询房产表
+        LambdaQueryWrapper<PlacementBatchHousehold> householdWrapper = new LambdaQueryWrapper<>();
+        householdWrapper.in(PlacementBatchHousehold::getPlacementBatchId, batchIds);
+        List<PlacementBatchHousehold> households = this.placementBatchHouseholdService.list(householdWrapper);
+
+        if (ObjectUtil.isEmpty(households)) {
+            return;
+        }
+        //修改户主安置状态
+        List<String> houseHead = households.stream().map(PlacementBatchHousehold::getHouseholdHead).collect(Collectors.toList());
+        if (ObjUtil.isNotEmpty(houseHead)) {
+            LambdaUpdateWrapper<Placement> placementHouseHeadUpdateWrapper = new LambdaUpdateWrapper<>();
+            placementHouseHeadUpdateWrapper.set(Placement::getStatus, 1);
+            placementHouseHeadUpdateWrapper.and(query -> query.in(Placement::getHouseholdHead, houseHead));
+            placementService.update(placementHouseHeadUpdateWrapper);
+        }
+        //修改家庭成员安置状态
+        for (PlacementBatchHousehold household : households) {
+            if (ObjUtil.isEmpty(household.getWaitFamilyNames())) {
+                continue;
+            }
+            //购房表家庭成员姓名
+            List<String> names = Arrays.asList(household.getWaitFamilyNames().split("、"));
+            //购房表户主身份证
+            String headIdCard = household.getIdCard();
+            LambdaUpdateWrapper<Placement> placementLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
+            placementLambdaUpdateWrapper.set(Placement::getStatus, 1);
+            placementLambdaUpdateWrapper.eq(Placement::getIdCard, headIdCard);
+            placementLambdaUpdateWrapper.and(query -> query.in(Placement::getFamilyName, names));
+            placementService.update(placementLambdaUpdateWrapper);
+        }
+    }
+
     /**
      * 获取最近批次号
      *

--
Gitblit v1.7.1