From bb7ce2c17f6541c8b21fb63b5aa4221433f2f974 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 22 一月 2026 16:37:18 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/smart_screen

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java |   54 ++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 8 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java
index c39fc80..e05bdaf 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ProjectController.java
@@ -21,10 +21,7 @@
 import javax.validation.Valid;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 import static java.util.stream.Collectors.groupingBy;
@@ -59,9 +56,30 @@
     @Autowired
     private PositionService positionService;
 
-
     @Autowired
     private PlanService planService;
+
+    @Autowired
+    private ScreenAccountService screenAccountService;
+
+
+    @ApiOperation(value = "获取项目/委托方列表",response = LoginNameVo.class)
+    @GetMapping("/getLoginNameVoList")
+    public R<List<LoginNameVo>> getProjectList(@RequestParam Integer userId) {
+        ScreenAccount screenAccount = screenAccountService.getById(userId);
+        String clientProjectIds = screenAccount.getClientProjectIds();
+        if(screenAccount.getType()==1){
+            // 委托方
+            List<LoginNameVo> list = screenAccountService.getLoginClient(clientProjectIds);
+            return R.ok(list);
+        }else {
+            // 项目
+            List<LoginNameVo> list = screenAccountService.getLoginProject(clientProjectIds);
+            return R.ok(list);
+
+        }
+
+    }
 
 
 
@@ -84,6 +102,8 @@
         if(task!=null){
             projectVo.setCheckTime(task.getUpdateTime());
         }
+        List<DeviceCountVo> list = deviceUsageService.getProjectDeviceCount(id);
+        projectVo.setDeviceCountVos(list);
         return R.ok(projectVo);
     }
 
@@ -162,7 +182,7 @@
     }
 
 
-    @ApiOperation(value = "获取设备详情检查列表",response = DeviceDetailCheckListVo.class)
+    @ApiOperation(value = "获取检查计划列表",response = DeviceDetailCheckListVo.class)
     @PostMapping("/getDeviceDetailCheckList")
     public R<Page<DeviceDetailCheckListVo>> getDeviceDetailCheckList(@RequestBody DeviceDetailCheckListQuery query) {
         Page<DeviceDetailCheckListVo> page = new Page<>(query.getPageNum(), query.getPageSize());
@@ -172,14 +192,25 @@
     }
 
 
-    @ApiOperation(value = "获取设备详情检查资料列表")
+    @ApiOperation(value = "获取检查资料列表")
     @GetMapping("/getDeviceDetailCheckPlanList")
     public R<List<Check>> getDeviceDetailCheckPlanList(@RequestParam Integer planId) {
         List<Check> list = checkService.list(new LambdaQueryWrapper<Check>().eq(Check::getPlanId,planId).orderByDesc(Check::getTime));
+        if(!list.isEmpty()){
+            List<Integer> planIds = list.stream().map(Check::getPlanId).toList();
+            List<Plan> plans = planService.listByIds(planIds);
+
+            List<Integer> projectIds = list.stream().map(Check::getProjectId).toList();
+            List<Project> projects = projectService.listByIds(projectIds);
+            list.forEach(check -> {
+                check.setPlanName(Objects.requireNonNull(plans.stream().filter(plan -> plan.getId().equals(check.getPlanId())).findFirst().orElse(null)).getName());
+                check.setProjectName(Objects.requireNonNull(projects.stream().filter(project -> project.getId().equals(check.getProjectId())).findFirst().orElse(null)).getName());
+            });
+        }
         return R.ok(list);
     }
 
-    @ApiOperation(value = "获取设备详情检查资料详情")
+    @ApiOperation(value = "获取检查资料详情")
     @GetMapping("/getDeviceDetailCheckPlanDetail")
     public R<Check> getDeviceDetailCheckPlanDetail(@RequestParam Integer id) {
         Check check = checkService.getDeviceDetailCheckPlanDetail(id);
@@ -272,6 +303,13 @@
         return R.ok(list);
     }
 
+    @ApiOperation(value = "获取项目重大风险源详情")
+    @GetMapping("/getProjectDangerousSourceDetail/{id}")
+    public R<?> getProjectDangerousSourceDetail(@PathVariable Integer id) {
+        ProjectInfo projectInfo = projectInfoService.getById(id);
+        return R.ok(projectInfo);
+    }
+
     @ApiOperation(value = "设备类型")
     @GetMapping("/deviceTypes")
     public R<?> deviceTypeOptions(@RequestParam(value = "title", required = false) String title) {

--
Gitblit v1.7.1