From 100fccb242e35b1c912ceb13fd956f48aa64acbc Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期二, 02 四月 2024 17:37:29 +0800
Subject: [PATCH] 设备列表展示、详情展示、显隐列、统计数

---
 ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java         |   11 +++++
 ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java            |   10 +++++
 ycl-server/src/main/java/com/ycl/platform/controller/TMonitorController.java    |   21 ++++++++++
 ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml                    |   24 ++++++++++++
 ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java |   11 +++++
 5 files changed, 76 insertions(+), 1 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorController.java b/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorController.java
index 7591d6e..f70f35f 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/TMonitorController.java
@@ -11,7 +11,6 @@
 import enumeration.BusinessType;
 import jakarta.servlet.http.HttpServletResponse;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
@@ -96,4 +95,24 @@
     {
         return toAjax(tMonitorService.deleteTMonitorByIds(ids));
     }
+
+    /**
+     * 鑾峰彇瑙嗛璁惧缁熻鏁�
+     */
+    @GetMapping("/getVideoCount/{cameraFunType}")
+    public AjaxResult getVideoCount(@PathVariable String cameraFunType)
+    {
+        return success(tMonitorService.getVideoCount(cameraFunType));
+    }
+
+    /**
+     * 鑾峰彇寮傚父鎭㈠瑙嗛璁惧缁熻鏁�
+     */
+    @GetMapping("/recoveryException")
+    public AjaxResult recoveryException()
+    {
+        return success(tMonitorService.recoveryException());
+    }
+
+
 }
diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java
index 6b1267f..deb0470 100644
--- a/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java
+++ b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java
@@ -4,6 +4,7 @@
 import com.ycl.platform.domain.vo.TMonitorVO;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 璁惧璧勪骇Mapper鎺ュ彛
@@ -60,4 +61,13 @@
      * @return 缁撴灉
      */
     public int deleteTMonitorByIds(Long[] ids);
+
+    /**
+     * 鑾峰彇瑙嗛缁熻
+     * @param cameraFunType 绫诲瀷
+     * @return 缁熻鏁�
+     */
+    Map<String, String> getVideoCount(String cameraFunType);
+
+    Map<String, String> recoveryException();
 }
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java
index b0e9f5b..2c26fd4 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java
@@ -4,6 +4,7 @@
 import com.ycl.platform.domain.vo.TMonitorVO;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 璁惧璧勪骇Service鎺ュ彛
@@ -60,4 +61,14 @@
      * @return 缁撴灉
      */
     public int deleteTMonitorById(Long id);
+
+    /**
+     * 鑾峰彇鎸囧畾鎽勫儚澶村姛鑳界被鍨嬩笅鐨勮棰戞暟閲忋��
+     *
+     * @param cameraFunType 鎽勫儚澶村姛鑳界被鍨嬶紝鐢ㄤ簬绛涢�夎棰戙��
+     * @return 杩斿洖涓�涓寘鍚棰戞暟閲忕殑Map瀵硅薄锛屽叾涓璳ey涓虹粺璁℃寚鏍囷紝value涓哄搴斿姛鑳界被鍨嬩笅鐨勭粺璁℃暟閲忋��
+     */
+    Map<String, String> getVideoCount(String cameraFunType);
+
+    Map<String, String> recoveryException();
 }
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
index b4af1c9..dc31c5d 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
@@ -8,6 +8,7 @@
 import org.springframework.stereotype.Service;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 璁惧璧勪骇Service涓氬姟灞傚鐞�
@@ -92,4 +93,14 @@
     {
         return tMonitorMapper.deleteTMonitorById(id);
     }
+
+    @Override
+    public Map<String, String> getVideoCount(String cameraFunType) {
+        return tMonitorMapper.getVideoCount(cameraFunType);
+    }
+
+    @Override
+    public Map<String, String> recoveryException() {
+        return tMonitorMapper.recoveryException();
+    }
 }
diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
index 5db47cf..e75c2f6 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
@@ -225,4 +225,28 @@
             #{id}
         </foreach>
     </delete>
+
+    <select id="getVideoCount" resultType="java.util.Map">
+        SELECT count(*)                                                          AS totalPosts,
+               IFNULL(SUM(IF(on_state = 1, 1, 0)), 0)                            AS totalMembers,
+               IFNULL(SUM(IF(on_state = 2, 1, 0)), 0)                            AS postsPercentage,
+               IFNULL(SUM(IF(default_order = 1, 1, 0)), 0)                       AS totalViews,
+               -1                                                                as noStore,
+               -1                                                                as partStore,
+               IFNULL(ROUND(SUM(IF(on_state = 1, 1, 0)) / count(*) * 100, 2), 0) as viewsPercentage,
+               -1                                                                as totalFace,
+               -1                                                                as totalCar
+        FROM t_monitor
+        WHERE camera_fun_type like concat('%', #{cameraFunType}, '%')
+    </select>
+
+    <select id="recoveryException" resultType="java.util.Map">
+        SELECT count(*)                                                          AS totalPosts,
+               IFNULL(SUM(IF(on_state = 1, 1, 0)), 0)                            AS totalMembers,
+               IFNULL(SUM(IF(on_state = 2, 1, 0)), 0)                            AS postsPercentage,
+               IFNULL(SUM(IF(default_order = 1, 1, 0)), 0)                       AS totalViews,
+               IFNULL(ROUND(SUM(IF(on_state = 1, 1, 0)) / count(*) * 100, 2), 0) as viewsPercentage
+        FROM t_monitor
+        WHERE recovery = 1
+    </select>
 </mapper>

--
Gitblit v1.8.0