From fa89f5c4b746a41efee0362bd3a42ea2c97e2cff Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Mon, 22 Apr 2024 18:13:46 +0800
Subject: [PATCH] 在加水印前对文件进行音视频处理,分别执行不同方法。增加图片压缩、视频压缩方法。

---
 src/main/java/com/dji/sample/media/dao/IFileMapper.xml |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 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 0b6ed2e..3d6ff33 100644
--- a/src/main/java/com/dji/sample/media/dao/IFileMapper.xml
+++ b/src/main/java/com/dji/sample/media/dao/IFileMapper.xml
@@ -36,11 +36,15 @@
         SELECT
             j.collect_status,
             m.job_id,
+            t.url,
             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
+--         LEFT JOIN (SELECT CONCAT("https://dev.jxpskj.com:8026/cloud-bucket",object_key) as url,job_id from media_file WHERE file_name LIKE '%.jpeg' GROUP BY job_id) t ON t.job_id = m.job_id
+        LEFT JOIN (SELECT CONCAT(#{param.fileAddress},object_key) as url,job_id from media_file WHERE file_name LIKE '%.jpeg' GROUP BY job_id) t ON t.job_id = m.job_id
+        LEFT JOIN wayline_file w ON w.wayline_id = j.file_id
         where 1=1
         <if test="workspaceId != null and workspaceId != ''">
             and j.workspace_id = #{workspaceId}
@@ -55,20 +59,21 @@
         <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 test="param.waylineFileId != null and param.waylineFileId != ''">
+            and w.wayline_id = #{param.waylineFileId}
         </if>
         GROUP BY m.job_id
+        ORDER BY
+        <if test="param.sort eq 2">j.collect_status = 1 desc,</if>
+        <if test="param.sort eq 3">m.collect_status = 1 desc,</if>
+        j.create_time desc
     </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,
+            CONCAT(#{fileAddress},m.object_key) 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
@@ -78,5 +83,6 @@
         <if test="jobId != null and jobId != ''">
             and m.job_id = #{jobId}
         </if>
+        ORDER BY type = '视频' DESC
     </select>
 </mapper>

--
Gitblit v1.9.3