From b9b1c54aacf1d97e3a80104659696d1f6dbf61a5 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 01 四月 2026 17:44:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DashboardStatisticsController.java |   87 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 79 insertions(+), 8 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DashboardStatisticsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DashboardStatisticsController.java
index bf4ca17..3b19da2 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DashboardStatisticsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DashboardStatisticsController.java
@@ -23,6 +23,7 @@
 
 import java.util.HashMap;
 import java.util.List;
+import java.util.Optional;
 
 /**
  * 数据统计面板 前端控制器
@@ -32,12 +33,10 @@
  */
 @RestController
 @RequestMapping("/dashboard-statistics")
-@Api(tags = "数据统计面板")
+@Api(tags = "首页")
 @RequiredArgsConstructor(onConstructor_ = @Lazy)
 public class DashboardStatisticsController {
 
-    @Autowired
-    private ScreenAccountService screenAccountService;
 
     @Autowired
     private TokenService tokenService;
@@ -54,6 +53,8 @@
     @Autowired
     private AccidentBriefService accidentBriefService;
 
+    @Autowired
+    private AccidentClassificationService accidentClassificationService;
 
 
     @ApiOperation("获取当前登录信息")
@@ -61,6 +62,7 @@
     public R<ScreenUserVo> getLoginInfo(Integer type, Integer id) {
         ScreenUserVo screenUserVo = new ScreenUserVo();
         screenUserVo.setType(type);
+
         if(type!=null && id !=null){
 
             if(type==1){
@@ -68,6 +70,7 @@
                 if(client==null){
                     return R.fail("委托方不存在");
                 }
+                screenUserVo.setClientId(id);
                 ClientParam param = clientParamService.getOne(new LambdaQueryWrapper<ClientParam>().eq(ClientParam::getClientId, client.getId()));
                 if(param!=null){
                     screenUserVo.setLogo(param.getLogo());
@@ -75,6 +78,15 @@
                     screenUserVo.setPermissionClient(param.getPermissionClient());
                     screenUserVo.setPermissionProject(param.getPermissionProject());
                     screenUserVo.setCommentType(param.getCommentType());
+                    screenUserVo.setSafetyId(param.getSafetyId());
+                    String name = clientParamService.getTemplateName(param.getSafetyId());
+                    screenUserVo.setSafetyName(name);
+
+                    screenUserVo.setDeviceTemplateId(param.getDeviceTemplateId());
+                    screenUserVo.setDeviceTemplateName(clientParamService.getTemplateName(param.getDeviceTemplateId()));
+
+                    screenUserVo.setBigHiddenDanger(param.getBigHiddenDanger());
+                    screenUserVo.setGeneralHiddenDanger(param.getGeneralHiddenDanger());
                 }
             }else if(type==2){
                 Project project = projectService.getById(id);
@@ -82,11 +94,22 @@
                     return R.fail("项目不存在");
                 }
                 Client client = clientService.getById(project.getClientId());
+                screenUserVo.setClientId(client.getId());
                 ClientParam param = clientParamService.getOne(new LambdaQueryWrapper<ClientParam>().eq(ClientParam::getClientId, client.getId()));
                 if(param!=null){
+                    screenUserVo.setLogo(param.getLogo());
+                    screenUserVo.setName(param.getName());
                     screenUserVo.setCommentType(param.getCommentType());
+                    screenUserVo.setSafetyId(param.getSafetyId());
+                    String name = clientParamService.getTemplateName(param.getSafetyId());
+                    screenUserVo.setSafetyName(name);
+                    screenUserVo.setDeviceTemplateId(param.getDeviceTemplateId());
+                    String name1 = clientParamService.getTemplateName(param.getDeviceTemplateId());
+                    screenUserVo.setDeviceTemplateName(name1);
+                    screenUserVo.setBigHiddenDanger(param.getBigHiddenDanger());
+                    screenUserVo.setGeneralHiddenDanger(param.getGeneralHiddenDanger());
                 }
-                screenUserVo.setName(project.getName());
+                screenUserVo.setProjectName(project.getName());
                 screenUserVo.setPermissionProject(project.getPermission());
             }
 
@@ -99,10 +122,48 @@
 
 
     @ApiOperation(value = "获取故事简讯列表",response = AccidentBrief.class)
-    @PostMapping("/getStoryList")
-    public R<Page<AccidentBrief>> getStoryList(@RequestBody StoryListQuery query) {
+    @PostMapping("/getStoryPage")
+    public R<Page<AccidentBrief>> getStoryPage(@RequestBody StoryListQuery query) {
         Page<AccidentBrief> page = new Page<>(query.getPageNum(), query.getPageSize());
+        List<AccidentClassification> list = accidentClassificationService.list(new LambdaQueryWrapper<AccidentClassification>().eq(AccidentClassification::getDeleted, false));
+        LambdaQueryWrapper<AccidentBrief> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(AccidentBrief::getState,1);
+        wrapper.eq(AccidentBrief::getDeleted,false);
+        if(query.getCity()!=null && !query.getCity().isEmpty()){
+            wrapper.eq(AccidentBrief::getCity, query.getCity());
+        }
+        if(query.getProvince()!=null && !query.getProvince().isEmpty()){
+            wrapper.eq(AccidentBrief::getProvince, query.getProvince());
+        }
+        if(query.getArea()!=null && !query.getArea().isEmpty()){
+            wrapper.eq(AccidentBrief::getArea, query.getArea());
+        }
 
+        if(query.getClassifyId()!=null){
+            wrapper.eq(AccidentBrief::getClassifyId, query.getClassifyId());
+        }
+        if(query.getTime()!=null && !query.getTime().isEmpty()){
+            String sTime = query.getTime().split(" - ")[0]+" 00:00:00";
+            String eTime = query.getTime().split(" - ")[1]+" 23:59:59";
+            wrapper.between(AccidentBrief::getTime,sTime,eTime);
+        }
+        if(query.getContent()!=null && !query.getContent().isEmpty()){
+            wrapper.like(AccidentBrief::getContent, query.getContent());
+        }
+        wrapper.orderByDesc(AccidentBrief::getTime);
+        Page<AccidentBrief> accidentBriefPage = accidentBriefService.page(page, wrapper);
+        accidentBriefPage.getRecords().forEach(item->{
+            item.setClassifyName(list.stream().filter(classify->classify.getId().equals(item.getClassifyId())).findFirst().get().getName());
+        });
+        return R.ok(accidentBriefPage);
+    }
+
+
+
+    @ApiOperation(value = "获取故事简讯列表-不分页",response = AccidentBrief.class)
+    @PostMapping("/getStoryList")
+    public R<List<AccidentBrief>> getStoryList(@RequestBody StoryListQuery query) {
+        List<AccidentClassification> list = accidentClassificationService.list(new LambdaQueryWrapper<AccidentClassification>().eq(AccidentClassification::getDeleted, false));
         LambdaQueryWrapper<AccidentBrief> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(AccidentBrief::getState,1);
         if(query.getCity()!=null && !query.getCity().isEmpty()){
@@ -120,7 +181,10 @@
             wrapper.like(AccidentBrief::getContent, query.getContent());
         }
         wrapper.orderByDesc(AccidentBrief::getTime);
-        Page<AccidentBrief> accidentBriefPage = accidentBriefService.page(page, wrapper);
+        List<AccidentBrief> accidentBriefPage = accidentBriefService.list( wrapper);
+        accidentBriefPage.forEach(item->{
+            item.setClassifyName(list.stream().filter(classify -> classify.getId().equals(item.getClassifyId())).findFirst().orElse(new AccidentClassification()).getName());
+        });
         return R.ok(accidentBriefPage);
     }
 
@@ -132,6 +196,13 @@
         return R.ok(accidentBrief);
     }
 
+    @ApiOperation(value = "获取故事简讯详情分类",response = AccidentClassification.class)
+    @GetMapping("/getStoryClassify")
+    public R<List<AccidentClassification>> getStoryClassify() {
+        List<AccidentClassification> list = accidentClassificationService.list(new LambdaQueryWrapper<AccidentClassification>().eq(AccidentClassification::getDeleted, false));
+        return R.ok(list);
+    }
+
     /**
      * 获取委托方大屏首页统计数据
      *
@@ -139,7 +210,7 @@
      * @return 统计数据
      */
     @PostMapping("/index")
-    @ApiOperation("获取委托方大屏首页统计数据")
+    @ApiOperation(value = "获取委托方大屏首页统计数据",tags = {"委托方端"})
     public R<ClientDashboardVO> index(@RequestBody ClientDashboardQuery query) {
         ClientDashboardVO dashboard = clientService.getClientDashboard(query);
         return R.ok(dashboard);

--
Gitblit v1.7.1