From 78b6c7de4a1e710b4b20c96f1caf44f5624d37de Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 24 十月 2025 18:13:54 +0800
Subject: [PATCH] bug修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java |   91 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 64 insertions(+), 27 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java
index 9b641d3..2eea89d 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java
@@ -15,6 +15,7 @@
 import com.ruoyi.common.core.domain.entity.TDept;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.WebUtils;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.dto.AddAssetHouseInspection;
@@ -75,6 +76,7 @@
     private TDeptService deptService;
     @Autowired
     private AssetMainService assetMainService;
+
     @Autowired
     private AssetTypeService assetTypeService;
     @Autowired
@@ -120,22 +122,41 @@
         String deptId = tokenService.getLoginUser().getDeptId();
         TDept dept = deptService.getById(tokenService.getLoginUser().getDeptId());
         List<Integer> deptIds = deptService.getAllSubDeptIds(deptId);
-        AssetType assetType = assetTypeService.lambdaQuery().like(AssetType::getTypeName, "不动").
+        AssetType assetType = assetTypeService.lambdaQuery().like(AssetType::getTypeName, "房屋").
                 last("limit 1").one();
-        if (dept.getDeptName().contains("资产管理")){
+        Map<Integer, String> map = assetPropertyExtService.lambdaQuery().isNotNull(AssetPropertyExt::getRoomNumber).list()
+                .stream().collect(Collectors.toMap(AssetPropertyExt::getAssetMainId, AssetPropertyExt::getRoomNumber));
+        Long userId = tokenService.getLoginUser().getUserId();
+        if (!SecurityUtils.isAdmin(userId)) {
+            if (dept.getDeptName().contains("资产管理") || dept.getDeptName().contains("董事长") || dept.getDeptName().contains("总经理")) {
+                List<AssetMain> list = assetMainService.lambdaQuery()
+                        .eq(AssetMain::getAssetTypeId, assetType.getId())
+                        .list();
+                for (AssetMain assetMain : list) {
+                    assetMain.setRoomNumber(map.get(assetMain.getId()));
+                }
+                return R.ok(list);
+            } else {
+                if (deptIds.isEmpty()) {
+                    return R.ok(new ArrayList<>());
+                } else {
+                    List<AssetMain> list = assetMainService.lambdaQuery()
+                            .eq(AssetMain::getAssetTypeId, assetType.getId())
+                            .in(AssetMain::getOwnershipDeptId, deptIds).list();
+                    for (AssetMain assetMain : list) {
+                        assetMain.setRoomNumber(map.get(assetMain.getId()));
+                    }
+                    return R.ok(list);
+                }
+            }
+        }else{
             List<AssetMain> list = assetMainService.lambdaQuery()
                     .eq(AssetMain::getAssetTypeId, assetType.getId())
                     .list();
-            return R.ok(list);
-        }else{
-            if (deptIds.isEmpty()){
-                return R.ok(new ArrayList<>());
-            }else{
-                List<AssetMain> list = assetMainService.lambdaQuery()
-                        .eq(AssetMain::getAssetTypeId, assetType.getId())
-                        .in(AssetMain::getOwnershipDeptId, deptIds).list();
-                return R.ok(list);
-            }
+                    for (AssetMain assetMain : list) {
+                        assetMain.setRoomNumber(map.get(assetMain.getId()));
+                    }
+                    return R.ok(list);
         }
     }
     @ApiOperation(value = "巡检子项树状结构")
@@ -269,6 +290,7 @@
                 e.printStackTrace();
             }
         }
+
     }
 
     @Log(title = "房屋巡检导入", businessType = BusinessType.INSERT)
@@ -328,7 +350,9 @@
                 assetHouseInspectionRecord.setRoomNumber(assetPropertyExt.getRoomNumber());
             }
             if (StringUtils.hasLength(assetHouseInspectionImport.getInspectionDate())){
-                LocalDate parse = LocalDate.parse(assetHouseInspectionImport.getInspectionDate(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));
+                String s = assetHouseInspectionImport.getInspectionDate().replaceAll("\\.", "-");
+                String s1 = assetHouseInspectionImport.getInspectionDate().replaceAll("/", "-");
+                LocalDate parse = LocalDate.parse(s1, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
                 assetHouseInspectionRecord.setInspectionDate(parse);
             }else{
                 result.append("未填写巡检日期:[", "未填写巡检日期"+"]");
@@ -345,6 +369,7 @@
             assetHouseInspectionDetail.setRemark(assetHouseInspectionImport.getHouseCloseStatus());
             if (assetHouseInspectionImport.getHouseCloseStatus().equals("正常")){
                 assetHouseInspectionDetail.setInspectionResult(true);
+                assetHouseInspectionRecord.setHouseCloseStatus("正常");
             }else{
                 assetHouseInspectionDetail.setInspectionResult(false);
             }
@@ -352,14 +377,13 @@
             String waterStatus1 = assetHouseInspectionImport.getWaterStatus1();
             String waterStatus2 = assetHouseInspectionImport.getWaterStatus2();
             String waterStatus3 = assetHouseInspectionImport.getWaterStatus3();
-            assetHouseInspectionRecord.setWaterElectronicGasCloseStatus("正常");
+
             AssetHouseInspectionDetail assetHouseInspectionDetailWatter1 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailWatter1.setInspectionItemId(3);
             assetHouseInspectionDetailWatter1.setItemName("水电气表关闭情况");
             assetHouseInspectionDetailWatter1.setSubItemId(4);
             assetHouseInspectionDetailWatter1.setSubItemName("水表关闭情况");
             assetHouseInspectionDetailWatter1.setRemark(assetHouseInspectionImport.getWaterStatus1());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter1);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailWatter2 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailWatter2.setInspectionItemId(3);
@@ -367,7 +391,6 @@
             assetHouseInspectionDetailWatter2.setSubItemId(5);
             assetHouseInspectionDetailWatter2.setSubItemName("气表关闭情况");
             assetHouseInspectionDetailWatter2.setRemark(assetHouseInspectionImport.getWaterStatus2());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter2);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailWatter3 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailWatter3.setInspectionItemId(3);
@@ -375,10 +398,11 @@
             assetHouseInspectionDetailWatter3.setSubItemId(6);
             assetHouseInspectionDetailWatter3.setSubItemName("电表关闭情况");
             assetHouseInspectionDetailWatter3.setRemark(assetHouseInspectionImport.getWaterStatus3());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter3);
             if (waterStatus1.equals("正常")&&waterStatus2.equals("正常")&&waterStatus3.equals("正常")){
+                assetHouseInspectionDetailWatter1.setInspectionResult(true);
                 assetHouseInspectionDetailWatter2.setInspectionResult(true);
                 assetHouseInspectionDetailWatter3.setInspectionResult(true);
+                assetHouseInspectionRecord.setWaterElectronicGasCloseStatus("正常");
             }else{
                     StringBuilder stringBuilder = new StringBuilder();
                     if (!waterStatus1.equals("正常")){
@@ -404,6 +428,10 @@
                     }
                     assetHouseInspectionRecord.setInnerStatus(stringBuilder.toString());
             }
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter1);
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter2);
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter3);
+
             String innerStatus1 = assetHouseInspectionImport.getInnerStatus1();
             String innerStatus2 = assetHouseInspectionImport.getInnerStatus2();
             String innerStatus3 = assetHouseInspectionImport.getInnerStatus3();
@@ -414,7 +442,6 @@
             assetHouseInspectionDetailInner1.setSubItemId(8);
             assetHouseInspectionDetailInner1.setSubItemName("墙壁漏水情况");
             assetHouseInspectionDetailInner1.setRemark(assetHouseInspectionImport.getWaterStatus1());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner1);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner2 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner2.setInspectionItemId(7);
@@ -422,7 +449,6 @@
             assetHouseInspectionDetailInner2.setSubItemId(9);
             assetHouseInspectionDetailInner2.setSubItemName("设备损坏情况");
             assetHouseInspectionDetailInner2.setRemark(assetHouseInspectionImport.getWaterStatus2());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner2);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner3 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner3.setInspectionItemId(7);
@@ -430,7 +456,6 @@
             assetHouseInspectionDetailInner3.setSubItemId(10);
             assetHouseInspectionDetailInner3.setSubItemName("墙壁掉灰情况");
             assetHouseInspectionDetailInner3.setRemark(assetHouseInspectionImport.getWaterStatus3());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner3);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner4 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner4.setInspectionItemId(7);
@@ -438,9 +463,13 @@
             assetHouseInspectionDetailInner4.setSubItemId(11);
             assetHouseInspectionDetailInner4.setSubItemName("地瓷砖开裂情况");
             assetHouseInspectionDetailInner4.setRemark(assetHouseInspectionImport.getWaterStatus3());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner4);
             if (innerStatus1.equals("正常")&&innerStatus2.equals("正常")&&innerStatus3.equals("正常")&&innerStatus4.equals("正常")){
                 assetHouseInspectionRecord.setInnerStatus("正常");
+                assetHouseInspectionDetailInner4.setInspectionResult(true);
+                assetHouseInspectionDetailInner3.setInspectionResult(true);
+                assetHouseInspectionDetailInner2.setInspectionResult(true);
+                assetHouseInspectionDetailInner1.setInspectionResult(true);
+
             }else{
                 StringBuilder stringBuilder = new StringBuilder();
                 if (!innerStatus1.equals("正常")){
@@ -451,27 +480,32 @@
                 }
                 if (!innerStatus2.equals("正常")){
                     stringBuilder.append(innerStatus2).append("|");
-                    assetHouseInspectionDetailInner1.setInspectionResult(false);
+                    assetHouseInspectionDetailInner2.setInspectionResult(false);
                 }else{
-                    assetHouseInspectionDetailInner1.setInspectionResult(true);
+                    assetHouseInspectionDetailInner2.setInspectionResult(true);
                 }
                 if (!innerStatus3.equals("正常")){
                     stringBuilder.append(innerStatus3).append("|");
-                    assetHouseInspectionDetailInner1.setInspectionResult(false);
+                    assetHouseInspectionDetailInner3.setInspectionResult(false);
                 }else{
-                    assetHouseInspectionDetailInner1.setInspectionResult(true);
+                    assetHouseInspectionDetailInner3.setInspectionResult(true);
                 }
                 if (!innerStatus4.equals("正常")){
                     stringBuilder.append(innerStatus4).append("|");
-                    assetHouseInspectionDetailInner1.setInspectionResult(false);
+                    assetHouseInspectionDetailInner4.setInspectionResult(false);
                 }else{
-                    assetHouseInspectionDetailInner1.setInspectionResult(true);
+                    assetHouseInspectionDetailInner4.setInspectionResult(true);
                 }
                 if (stringBuilder.length()>0){
                     stringBuilder.deleteCharAt(stringBuilder.length()-1);
                 }
                 assetHouseInspectionRecord.setInnerStatus(stringBuilder.toString());
             }
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner4);
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner3);
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner2);
+            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner1);
+
             assetHouseInspectionRecord.setRemarks(assetHouseInspectionImport.getRemark());
             assetHouseInspectionRecordService.save(assetHouseInspectionRecord);
             assetHouseInspectionDetails.add(assetHouseInspectionDetail);
@@ -481,6 +515,9 @@
             assetHouseInspectionDetailService.saveBatch(assetHouseInspectionDetails);
 
         }
+        if(!result.isEmpty()){
+            return R.fail(result.toString());
+        }
         return R.ok();
     }
 

--
Gitblit v1.7.1