From 64efb660b2c119c00432434c0f651f8996483f18 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 21 二月 2025 15:51:13 +0800
Subject: [PATCH] OSD大华数据格式+数据中心重点标签统计数

---
 ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java |   95 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 85 insertions(+), 10 deletions(-)

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 24745d8..15fbd8b 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
@@ -1,20 +1,34 @@
 package com.ycl.platform.service;
 
-import com.ycl.platform.entity.TMonitor;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.platform.domain.entity.TMonitor;
+import com.ycl.platform.domain.form.VideoExportForm;
+import com.ycl.platform.domain.query.DashboardQuery;
+import com.ycl.platform.domain.query.DataCenterQuery;
+import com.ycl.platform.domain.query.HomeQuery;
+import com.ycl.platform.domain.vo.TMonitorVO;
+import com.ycl.platform.domain.vo.screen.MonitorRateVO;
+import com.ycl.platform.domain.vo.screen.MonitorTotalVO;
+import com.ycl.system.Result;
+import jakarta.servlet.http.HttpServletResponse;
 
+import java.io.IOException;
+import java.lang.reflect.InvocationTargetException;
+import java.text.ParseException;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 璁惧璧勪骇Service鎺ュ彛
- * 
+ *
  * @author ruoyi
  * @date 2024-03-04
  */
-public interface ITMonitorService 
+public interface ITMonitorService extends IService<TMonitor>
 {
     /**
      * 鏌ヨ璁惧璧勪骇
-     * 
+     *
      * @param id 璁惧璧勪骇涓婚敭
      * @return 璁惧璧勪骇
      */
@@ -22,15 +36,15 @@
 
     /**
      * 鏌ヨ璁惧璧勪骇鍒楄〃
-     * 
+     *
      * @param tMonitor 璁惧璧勪骇
      * @return 璁惧璧勪骇闆嗗悎
      */
-    public List<TMonitor> selectTMonitorList(TMonitor tMonitor);
+    public List<TMonitorVO> selectTMonitorList(TMonitorVO tMonitor);
 
     /**
      * 鏂板璁惧璧勪骇
-     * 
+     *
      * @param tMonitor 璁惧璧勪骇
      * @return 缁撴灉
      */
@@ -38,7 +52,7 @@
 
     /**
      * 淇敼璁惧璧勪骇
-     * 
+     *
      * @param tMonitor 璁惧璧勪骇
      * @return 缁撴灉
      */
@@ -46,7 +60,7 @@
 
     /**
      * 鎵归噺鍒犻櫎璁惧璧勪骇
-     * 
+     *
      * @param ids 闇�瑕佸垹闄ょ殑璁惧璧勪骇涓婚敭闆嗗悎
      * @return 缁撴灉
      */
@@ -54,9 +68,70 @@
 
     /**
      * 鍒犻櫎璁惧璧勪骇淇℃伅
-     * 
+     *
      * @param id 璁惧璧勪骇涓婚敭
      * @return 缁撴灉
      */
     public int deleteTMonitorById(Long id);
+
+    /**
+     * 鑾峰彇鎸囧畾鎽勫儚澶村姛鑳界被鍨嬩笅鐨勮棰戞暟閲忋��
+     *
+     * @param tMonitor 鏉′欢
+     * @return 杩斿洖涓�涓寘鍚棰戞暟閲忕殑Map瀵硅薄锛屽叾涓璳ey涓虹粺璁℃寚鏍囷紝value涓哄搴斿姛鑳界被鍨嬩笅鐨勭粺璁℃暟閲忋��
+     */
+    Map<String, String> getVideoCount(TMonitorVO tMonitor);
+
+    /**
+     * 鑾峰彇寮傚父鎭㈠瑙嗛璁惧缁熻鏁�
+     * @return 鏁版嵁
+     */
+    Map<String, String> recoveryException(TMonitorVO monitor);
+
+    /**
+     * 鑾峰彇棣栭〉璁惧鎶樼嚎鍥�
+     * @param monitorQuery 鏌ヨ鏉′欢
+     * @return 鏁版嵁
+     */
+    Map<String, Object> home(HomeQuery monitorQuery);
+
+    /**
+     * 澶у睆璁惧鏁版嵁
+     * @param dashboardQuery 鏌ヨ鏉′欢
+     * @return 鏁版嵁
+     */
+    Map<String, List<Map<String, Object>>> monitorTotal(DashboardQuery dashboardQuery);
+
+    /**
+     * 澶у睆璁惧姝e父鐜�
+     * @return 鏁版嵁
+     */
+    List<MonitorRateVO> monitorRate(DashboardQuery dashboardQuery);
+
+    /**
+     * 璧勪骇绠$悊
+     * @param query
+     * @return
+     */
+    Result assetManagement(DataCenterQuery query);
+
+    void exportVideoTotal(HttpServletResponse response, VideoExportForm exportForm) throws IOException;
+
+    void exportVideoOnline(HttpServletResponse response, VideoExportForm exportForm) throws IOException, NoSuchFieldException, IllegalAccessException;
+
+    void exportVideoRecord(HttpServletResponse response, VideoExportForm exportForm) throws IOException, NoSuchFieldException, IllegalAccessException;
+
+    void exportVideoLoseTime(HttpServletResponse response, VideoExportForm exportForm) throws NoSuchFieldException, IllegalAccessException, IOException;
+
+    Map<String, Object> faceHome(HomeQuery monitorQuery) throws ParseException, InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException;
+
+    Map<String, Object> carHome(HomeQuery monitorQuery) throws ParseException, InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException;
+
+    Map<String, Object> videoHome(HomeQuery monitorQuery) throws ParseException, InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException;
+
+    void export(HttpServletResponse response, TMonitorVO tMonitor);
+
+    Result clearMonitor();
+
+    Result assetManagementCount(DataCenterQuery query);
 }

--
Gitblit v1.8.0