From 64fe243e5a223a09bb07c90958ecfd436ed018ea Mon Sep 17 00:00:00 2001
From: shenyijian <1178253012@qq.com>
Date: Thu, 09 Nov 2023 16:50:07 +0800
Subject: [PATCH] 无人机 - 新增统计飞行记录、收藏媒体任务接口

---
 src/main/java/com/dji/sample/media/dao/IFileMapper.xml |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/dji/sample/media/dao/IFileMapper.xml b/src/main/java/com/dji/sample/media/dao/IFileMapper.xml
index cd40598..0b6ed2e 100644
--- a/src/main/java/com/dji/sample/media/dao/IFileMapper.xml
+++ b/src/main/java/com/dji/sample/media/dao/IFileMapper.xml
@@ -32,4 +32,51 @@
         ORDER BY create_time DESC
 
     </select>
+    <select id="mediaPage" resultType="com.dji.sample.media.model.MediaJobDTO">
+        SELECT
+            j.collect_status,
+            m.job_id,
+            COUNT( CASE WHEN m.file_name LIKE '%.mp4' THEN 1 END) AS videoCount,
+            COUNT( CASE WHEN m.file_name LIKE '%.jpeg' THEN 1 END ) AS picCount,
+            DATE_FORMAT(FROM_UNIXTIME(j.create_time/1000,'%Y-%m-%d'),'%Y-%m-%d') as create_time
+        FROM
+            media_file m LEFT JOIN wayline_job j ON m.job_id = j.job_id
+        where 1=1
+        <if test="workspaceId != null and workspaceId != ''">
+            and j.workspace_id = #{workspaceId}
+        </if>
+        <if test="param.dockSn !=null and param.dockSn != ''">
+            and j.dock_sn = #{param.dockSn}
+        </if>
+        <if test="param.startTime !=null and param.endTime !=null">
+            AND DATE_FORMAT(FROM_UNIXTIME(j.create_time/1000,'%Y-%m-%d'),'%Y-%m-%d')  &gt;=  DATE_FORMAT(#{param.startTime},'%Y-%m-%d')
+        </if>
+
+        <if test="param.endTime !=null and param.endTime !=null">
+            AND DATE_FORMAT(FROM_UNIXTIME(j.create_time/1000,'%Y-%m-%d'),'%Y-%m-%d')   &lt;= DATE_FORMAT(#{param.endTime},'%Y-%m-%d')
+        </if>
+        <if test="param.sort != null and param.sort = 2">
+            and j.collect_status = 1
+        </if>
+        <if test="param.sort != null and param.sort = 3">
+            and m.collect_status = 1
+        </if>
+        GROUP BY m.job_id
+    </select>
+    <select id="mediaDetail" resultType="com.dji.sample.media.model.MediaJobDTO">
+        SELECT
+            m.collect_status,
+            m.job_id,
+            m.file_id,
+            m.file_path as url,
+            CASE WHEN m.file_name LIKE '%.mp4' THEN "视频" ELSE "图片" END  AS type,
+            DATE_FORMAT( FROM_UNIXTIME( m.create_time / 1000, '%Y-%m-%d' ), '%Y-%m-%d' ) AS create_time
+        FROM
+            media_file m
+        WHERE
+            1 = 1
+        <if test="jobId != null and jobId != ''">
+            and m.job_id = #{jobId}
+        </if>
+    </select>
 </mapper>

--
Gitblit v1.9.3