From c3a11538b96aeac198fbaa467210ef8754773ad1 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 24 十月 2025 18:14:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetHouseInspectionItemController.java |  123 ++++++++++++++++++++++++++++------------
 1 files changed, 86 insertions(+), 37 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..35f9633 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
@@ -6,7 +6,6 @@
 import cn.afterturn.easypoi.excel.entity.ExportParams;
 import cn.afterturn.easypoi.excel.entity.ImportParams;
 import cn.hutool.json.JSONObject;
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.basic.PageInfo;
@@ -15,30 +14,44 @@
 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;
-import com.ruoyi.system.dto.AddAssetRepairRequestDTO;
 import com.ruoyi.system.export.AssetHouseInspectionImport;
-import com.ruoyi.system.model.*;
+import com.ruoyi.system.model.AssetHouseInspectionDetail;
+import com.ruoyi.system.model.AssetHouseInspectionItem;
+import com.ruoyi.system.model.AssetHouseInspectionRecord;
+import com.ruoyi.system.model.AssetMain;
+import com.ruoyi.system.model.AssetPropertyExt;
+import com.ruoyi.system.model.AssetType;
 import com.ruoyi.system.query.AssetHouseInspectionRecordListQuery;
-import com.ruoyi.system.query.AssetRepairRequestListQuery;
-import com.ruoyi.system.service.*;
+import com.ruoyi.system.service.AssetHouseInspectionDetailService;
+import com.ruoyi.system.service.AssetHouseInspectionItemService;
+import com.ruoyi.system.service.AssetHouseInspectionRecordService;
+import com.ruoyi.system.service.AssetMainService;
+import com.ruoyi.system.service.AssetPropertyExtService;
+import com.ruoyi.system.service.AssetTypeService;
+import com.ruoyi.system.service.ISysUserService;
+import com.ruoyi.system.service.TDeptService;
 import com.ruoyi.system.vo.AssetHouseInspectionVO;
-import com.ruoyi.system.vo.AssetRepairRequestVO;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
-import io.swagger.models.auth.In;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.ss.usermodel.Workbook;
-import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RequestPart;
+import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.ServletOutputStream;
@@ -75,6 +88,7 @@
     private TDeptService deptService;
     @Autowired
     private AssetMainService assetMainService;
+
     @Autowired
     private AssetTypeService assetTypeService;
     @Autowired
@@ -120,22 +134,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 +302,7 @@
                 e.printStackTrace();
             }
         }
+
     }
 
     @Log(title = "房屋巡检导入", businessType = BusinessType.INSERT)
@@ -328,7 +362,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 +381,7 @@
             assetHouseInspectionDetail.setRemark(assetHouseInspectionImport.getHouseCloseStatus());
             if (assetHouseInspectionImport.getHouseCloseStatus().equals("正常")){
                 assetHouseInspectionDetail.setInspectionResult(true);
+                assetHouseInspectionRecord.setHouseCloseStatus("正常");
             }else{
                 assetHouseInspectionDetail.setInspectionResult(false);
             }
@@ -352,14 +389,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 +403,6 @@
             assetHouseInspectionDetailWatter2.setSubItemId(5);
             assetHouseInspectionDetailWatter2.setSubItemName("气表关闭情况");
             assetHouseInspectionDetailWatter2.setRemark(assetHouseInspectionImport.getWaterStatus2());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailWatter2);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailWatter3 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailWatter3.setInspectionItemId(3);
@@ -375,10 +410,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 +440,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 +454,6 @@
             assetHouseInspectionDetailInner1.setSubItemId(8);
             assetHouseInspectionDetailInner1.setSubItemName("墙壁漏水情况");
             assetHouseInspectionDetailInner1.setRemark(assetHouseInspectionImport.getWaterStatus1());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner1);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner2 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner2.setInspectionItemId(7);
@@ -422,7 +461,6 @@
             assetHouseInspectionDetailInner2.setSubItemId(9);
             assetHouseInspectionDetailInner2.setSubItemName("设备损坏情况");
             assetHouseInspectionDetailInner2.setRemark(assetHouseInspectionImport.getWaterStatus2());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner2);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner3 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner3.setInspectionItemId(7);
@@ -430,7 +468,6 @@
             assetHouseInspectionDetailInner3.setSubItemId(10);
             assetHouseInspectionDetailInner3.setSubItemName("墙壁掉灰情况");
             assetHouseInspectionDetailInner3.setRemark(assetHouseInspectionImport.getWaterStatus3());
-            assetHouseInspectionDetails.add(assetHouseInspectionDetailInner3);
 
             AssetHouseInspectionDetail assetHouseInspectionDetailInner4 = new AssetHouseInspectionDetail();
             assetHouseInspectionDetailInner4.setInspectionItemId(7);
@@ -438,9 +475,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 +492,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 +527,9 @@
             assetHouseInspectionDetailService.saveBatch(assetHouseInspectionDetails);
 
         }
+        if(!result.isEmpty()){
+            return R.fail(result.toString());
+        }
         return R.ok();
     }
 

--
Gitblit v1.7.1