From eeb3b5c9c794a35d7b7f3c8e56f9eef8eb8d3451 Mon Sep 17 00:00:00 2001
From: xiebin <vip_xiaobin810@163.com>
Date: Wed, 01 Apr 2026 17:20:19 +0800
Subject: [PATCH] opt:兼容人大金仓

---
 drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml |   66 ++++++++++++++++----------------
 1 files changed, 33 insertions(+), 33 deletions(-)

diff --git a/drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml b/drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml
index 6ec336d..3e3e978 100644
--- a/drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml
+++ b/drone-task/drone-odm/src/main/java/org/sxkj/odm/mapper/OdmTaskInfoMapper.xml
@@ -12,10 +12,10 @@
         wfe.gsd
         FROM
         odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id
-        left join manage_device md on md.device_sn = wj.dock_sn
-        left join blade_dept bd on bd.id = md.dept_id and bd.is_deleted = 0
-        left join wayline_file_extension wfe on wj.file_id = wfe.wayline_id
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR
+        left join manage_device md on md.device_sn = wj.dock_sn::VARCHAR
+        left join blade_dept bd on bd.id = md.dept_id::VARCHAR and bd.is_deleted = 0
+        left join wayline_file_extension wfe on wj.file_id = wfe.wayline_id::VARCHAR
         <where>
             and oti.is_deleted = 0
             <if test="odmTaskInfo.waylineJobId!=null and odmTaskInfo.waylineJobId!=''">
@@ -92,7 +92,7 @@
         select oti.*,wj.job_type as waylineType,wj.dkbh,wj.workspace_id as workspaceId,wj.dock_sn as deviceSn,wj.name as waylineJobName,
                date_format(FROM_UNIXTIME( wj.completed_time/ 1000),'%Y-%m-%d %H:%i:%s') as completedTime
         from odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id and wj.is_deleted = 0
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR and wj.is_deleted = 0
         where
         oti.running_progress &lt; 1.0 and oti.is_update = 0 and oti.is_deleted = 0
     </select>
@@ -126,11 +126,11 @@
         wj.dkbh,
         IFNULL( ST_AsText ( oti.geom ), ifnull( tli.sdfw, tli.dkfw )) AS geom
         FROM odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id
-        left join tb_lot_info tli on tli.dkbh = wj.dkbh
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR
+        left join tb_lot_info tli on tli.dkbh = wj.dkbh::VARCHAR
         where oti.is_deleted = 0
         <if test="runningProgress!=null">
-            and oti.running_progress = 1.00
+            and oti.running_progress = 1.00::VARCHAR
         </if>
         <if test="otrTaskTypes != null and otrTaskTypes.size()>0">
             AND wj.job_type IN
@@ -177,12 +177,12 @@
         IFNULL( ST_AsText ( oti.geom ), ifnull( tli.sdfw, tli.dkfw )) AS geom
         FROM
         odm_task_info oti
-        LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id AND wj.is_deleted = 0
-        LEFT JOIN tb_lot_info tli ON tli.id = wj.lot_info_id AND tli.is_deleted = 0
+        LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id::VARCHAR AND wj.is_deleted = 0
+        LEFT JOIN tb_lot_info tli ON tli.id = wj.lot_info_id::VARCHAR AND tli.is_deleted = 0
         WHERE
         oti.is_deleted = 0
         <if test="runningProgress != null">
-            AND oti.running_progress = 1.00
+            AND oti.running_progress = 1.00::VARCHAR
         </if>
         <if test="otrTaskTypes != null and otrTaskTypes.size()>0">
             AND wj.job_type IN
@@ -205,8 +205,8 @@
     <!--查询所有未在 webodm 创建任务的任务信息,一次暂时只处理1个-->
     <select id="getNotByWebOdmCreateTaskList" resultType="org.sxkj.odm.vo.OdmTaskInfoVO">
         SELECT oti.*,wfe.gsd FROM odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id
-        left join wayline_file_extension wfe on wj.file_id = wfe.wayline_id
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR
+        left join wayline_file_extension wfe on wj.file_id = wfe.wayline_id::VARCHAR
         where (oti.task_id is null or  oti.task_id = '')
         and oti.is_deleted = 0
         order by oti.id desc
@@ -229,7 +229,7 @@
     <!--查询没有生成的odm任务航线任务-->
     <select id="getNoCreateTaskJob" resultType="java.lang.String">
         SELECT wj.job_id FROM wayline_job wj
-        LEFT JOIN odm_task_info oti ON wj.job_id = oti.wayline_job_id and oti.is_deleted = 0
+        LEFT JOIN odm_task_info oti ON wj.job_id = oti.wayline_job_id::VARCHAR and oti.is_deleted = 0
         WHERE wj.STATUS = 3
           AND wj.is_deleted = 0
           AND wj.job_type IN
@@ -243,7 +243,7 @@
     <!--根据航线任务id获取对应的机构id-->
     <select id="getCreateDeptId" resultType="java.lang.Long">
         select md.dept_id from wayline_job wj
-        left join manage_device md on md.device_sn = wj.dock_sn
+        left join manage_device md on md.device_sn = wj.dock_sn::VARCHAR
         where wj.job_id = #{jobId}
     </select>
 
@@ -256,7 +256,7 @@
         FROM
             odm_task_info oti
             LEFT JOIN blade_attach ba ON CONCAT( oti.base_path, oti.orthoimage_path )= ba.NAME and ba.is_deleted = 0
-            left join wayline_job wj on wj.job_id = oti.wayline_job_id and wj.is_deleted = 0
+            left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR and wj.is_deleted = 0
         WHERE
             ba.id IS NULL
           AND oti.is_deleted = 0
@@ -278,9 +278,9 @@
                     count(*) AS c
                 FROM
                     odm_task_info oti
-                    LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id
+                    LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id::VARCHAR
                 WHERE
-                    oti.running_progress = 1.00
+                    oti.running_progress = 1.00::VARCHAR
                     AND oti.is_deleted = 0
                     AND wj.dkbh IS NOT NULL
                 GROUP BY
@@ -296,7 +296,7 @@
             oti.*
         FROM
             odm_task_info oti
-            left join wayline_job wj on wj.job_id = oti.wayline_job_id
+            left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR
         WHERE
             wj.id IS NULL
             AND oti.is_deleted = 0
@@ -314,12 +314,12 @@
             date_format(FROM_UNIXTIME( wj.completed_time/ 1000),'%Y-%m-%d %H:%i:%s') as completedTime
         FROM
             odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id and wj.is_deleted = 0
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR and wj.is_deleted = 0
         WHERE
         oti.ort_tb_path IS NULL
         and oti.is_deleted = 0
         and oti.status = 40
-        and oti.running_progress = 1.0
+        and oti.running_progress = 1.0::VARCHAR
         and wj.dkbh is not null
         <if test="otrTaskTypes != null and otrTaskTypes.size()>0">
             AND wj.job_type IN
@@ -335,7 +335,7 @@
             oti.*
         FROM
             odm_task_info oti
-            left join wayline_job wj on wj.job_id = oti.wayline_job_id
+            left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR
         WHERE oti.file_del_flag = 0 and oti.is_deleted = 0
         and wj.completed_time &lt; UNIX_TIMESTAMP(NOW() - INTERVAL {day} DAY)*1000
     </select>
@@ -344,10 +344,10 @@
     <select id="getHistoryOdmTaskByTifComp" resultType="org.sxkj.odm.vo.OdmTaskInfoVO">
         select oti.*,wj.job_type as waylineType,wj.dkbh,wj.workspace_id as workspaceId,wj.dock_sn as deviceSn
         from odm_task_info oti
-        left join wayline_job wj on wj.job_id = oti.wayline_job_id and wj.is_deleted = 0
-        left join blade_attach ba on ba.wayline_job_id = oti.wayline_job_id and ba.is_deleted = 0 and ba.result_type = 4
+        left join wayline_job wj on wj.job_id = oti.wayline_job_id::VARCHAR and wj.is_deleted = 0
+        left join blade_attach ba on ba.wayline_job_id = oti.wayline_job_id::VARCHAR and ba.is_deleted = 0 and ba.result_type = 4
         where
-        oti.running_progress = 1.0
+        oti.running_progress = 1.0::VARCHAR
         and oti.is_update = 1
         and  oti.file_del_flag = 0
         and  oti.status = 40
@@ -439,9 +439,9 @@
         ROUND( sum( wj3d.area ) / 1000000, 2 ) AS area
         FROM
         blade_attach ba
-        LEFT JOIN manage_device md ON ba.device_sn = md.device_sn
-        left join wayline_job wj on ba.wayline_job_id = wj.job_id AND md.is_deleted = 0
-        left join wayline_job_3d_record wj3d on wj3d.job_id = ba.wayline_job_id
+        LEFT JOIN manage_device md ON ba.device_sn = md.device_sn::VARCHAR
+        left join wayline_job wj on ba.wayline_job_id = wj.job_id::VARCHAR AND md.is_deleted = 0
+        left join wayline_job_3d_record wj3d on wj3d.job_id = ba.wayline_job_id::VARCHAR
         <where>
             AND ba.is_deleted = 0
             AND wj.job_info_id is not null
@@ -477,8 +477,8 @@
         select md.area_code,
                ba.link as tilesPath
         from blade_attach ba
-        left join manage_device md on ba.device_sn = md.device_sn AND md.is_deleted = 0
-        left join wayline_job wj on ba.wayline_job_id = wj.job_id
+        left join manage_device md on ba.device_sn = md.device_sn::VARCHAR AND md.is_deleted = 0
+        left join wayline_job wj on ba.wayline_job_id = wj.job_id::VARCHAR
         <where>
             AND ba.is_deleted = 0
             AND wj.job_info_id is not null
@@ -511,7 +511,7 @@
             ba.original_name
         FROM
             wayline_job wj
-        LEFT JOIN blade_attach ba ON wj.job_id = ba.wayline_job_id
+        LEFT JOIN blade_attach ba ON wj.job_id = ba.wayline_job_id::VARCHAR
         WHERE wj.job_id = #{jobId}
           AND job_type = 6
           AND result_type = 1
@@ -534,7 +534,7 @@
         FROM
             odm_task_info oti
         LEFT JOIN blade_attach ba ON CONCAT( oti.base_path, oti.vox_grid_tiles_path )= ba.NAME and ba.is_deleted = 0
-        LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id and wj.is_deleted = 0
+        LEFT JOIN wayline_job wj ON wj.job_id = oti.wayline_job_id::VARCHAR and wj.is_deleted = 0
         WHERE
           ba.id IS NULL
           AND oti.is_deleted = 0
@@ -601,7 +601,7 @@
         wj.area_code,wj.create_user,wj.update_user,wj.create_dept,
         date_format(FROM_UNIXTIME( wj.completed_time/ 1000),'%Y-%m-%d %H:%i:%s') as completedTime
         FROM odm_task_info oti
-        left join wayline_job wj on oti.wayline_job_id = wj.job_id and wj.is_deleted = 0
+        left join wayline_job wj on oti.wayline_job_id = wj.job_id::VARCHAR and wj.is_deleted = 0
         <where>
             AND oti.is_deleted = 0
             AND oti.STATUS = 40

--
Gitblit v1.9.3