From 08d4bb2bf4bfadc9ab5fcf6b0a2bfb543d22b2a0 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 05 Feb 2026 10:13:10 +0800
Subject: [PATCH] 工单优化

---
 drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml |  116 ++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 64 insertions(+), 52 deletions(-)

diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml
index adbcf10..2c1f565 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdManageDeviceMapper.xml
@@ -3,77 +3,89 @@
 <mapper namespace="org.sxkj.gd.workorder.mapper.GdManageDeviceMapper">
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="gdManageDeviceResultMap" type="org.sxkj.gd.workorder.entity.GdManageDeviceEntity">
+    <resultMap id="gdManageDeviceResultMap" type="org.sxkj.gd.workorder.vo.GdManageDeviceVO">
         <result column="id" property="id"/>
         <result column="device_sn" property="deviceSn"/>
         <result column="device_name" property="deviceName"/>
         <result column="nickname" property="nickname"/>
-        <result column="workspace_id" property="workspaceId"/>
-        <result column="device_type" property="deviceType"/>
-        <result column="sub_type" property="subType"/>
         <result column="device_payload" property="devicePayload"/>
         <result column="longitude" property="longitude"/>
         <result column="latitude" property="latitude"/>
-        <result column="user_id" property="userId"/>
-        <result column="domain" property="domain"/>
-        <result column="firmware_version" property="firmwareVersion"/>
-        <result column="compatible_status" property="compatibleStatus"/>
-        <result column="version" property="version"/>
-        <result column="device_index" property="deviceIndex"/>
-        <result column="child_sn" property="childSn"/>
-        <result column="bound_time" property="boundTime"/>
-        <result column="bound_status" property="boundStatus"/>
-        <result column="login_time" property="loginTime"/>
-        <result column="device_desc" property="deviceDesc"/>
-        <result column="url_normal" property="urlNormal"/>
-        <result column="url_select" property="urlSelect"/>
-        <result column="reserve_id" property="reserveId"/>
-        <result column="creama_name" property="creamaName"/>
-        <result column="machine_nest_sn" property="machineNestSn"/>
-        <result column="operate_password" property="operatePassword"/>
-        <result column="mode_code" property="modeCode"/>
-        <result column="movable" property="movable"/>
-        <result column="insure_expired_time" property="insureExpiredTime"/>
-        <result column="flow_type" property="flowType"/>
-        <result column="maintenance_start" property="maintenanceStart"/>
-        <result column="maintenance_end" property="maintenanceEnd"/>
-        <result column="insure_start_time" property="insureStartTime"/>
-        <result column="eid" property="eid"/>
-        <result column="traffic_remaining" property="trafficRemaining"/>
-        <result column="traffic_expire_time" property="trafficExpireTime"/>
-        <result column="hidden_flag" property="hiddenFlag"/>
-        <result column="deployment_mode" property="deploymentMode"/>
-        <result column="dept_id" property="deptId"/>
+         <result column="mode_code" property="modeCode"/>
         <result column="create_time" property="createTime"/>
-        <result column="update_time" property="updateTime"/>
-        <result column="is_deleted" property="isDeleted"/>
-        <result column="area_code" property="areaCode"/>
-        <result column="traffic_data" property="trafficData"/>
-        <result column="dem_status" property="demStatus"/>
+        <result column="device_dept_name" property="deviceDeptName"/>
     </resultMap>
 
 
     <select id="selectGdManageDevicePage" resultMap="gdManageDeviceResultMap">
-        select id, device_sn, device_name, nickname, device_payload,longitude,latitude
-        from ja_gd_manage_device
-        where is_deleted = 0
+        select
+            md.*,
+            bd.dept_name as device_dept_name
+        from
+            ja_gd_manage_device md
+        left join
+                blade_dept bd on md.create_dept = bd.id
+        <where>
+                and md.is_deleted = 0
+            <if test="param2.nickname != null and param2.nickname != ''">
+                and md.nickname like concat('%',#{param2.nickname},'%')
+            </if>
+            <if test="param2.deptId != null">
+                and md.create_dept = #{param2.deptId}
+            </if>
+            <if test="param2.location != null and param2.location != ''">
+                and md.location like concat('%',#{param2.location},'%')
+            </if>
+            <if test="param2.modeCode != null and param2.modeCode != ''">
+                and md.mode_code = #{param2.modeCode}
+            </if>
+            <if test="param2.deviceType != null and param2.deviceType != ''">
+                and md.device_type = #{param2.deviceType}
+            </if>
+
+        </where>
     </select>
 
 
     <select id="exportGdManageDevice" resultType="org.sxkj.gd.workorder.excel.GdManageDeviceExcel">
-        SELECT * FROM ja_gd_manage_device ${ew.customSqlSegment}
+        SELECT
+            *
+        FROM
+            ja_gd_manage_device ${ew.customSqlSegment}
     </select>
 
     <select id="selectGdManageDevice" resultType="org.sxkj.gd.workorder.vo.GdManageDeviceVO">
-        select id, device_sn, device_name, nickname, device_payload,longitude,latitude
-        from ja_gd_manage_device
-        where is_deleted = 0
-        <if test="deviceIds != null and deviceIds.size() > 0">
-            and id in
-            <foreach item="item" collection="deviceIds" index="index" open="(" close=")" separator=",">
-                #{item}
-            </foreach>
-        </if>
+        select
+            md.id,
+            md.device_sn,
+            md.device_name,
+            md.nickname,
+            md.device_payload,
+            md.longitude,
+            md.latitude,
+            md.geom,
+            d2.height as height
+        from
+            ja_gd_manage_device md
+        left join ja_gd_manage_device d2 on md.device_sn = d2.device_sn and d2.device_type = '0'
+        <where>
+            <if test="deviceIds != null and deviceIds.size() > 0">
+                and md.id in
+                <foreach item="item" collection="deviceIds" index="index" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="devicePayload != null and devicePayload != ''">
+                and md.device_payload like concat('%',#{devicePayload},'%')
+            </if>
+            <if test="geom != null and geom != ''">
+                and ST_Intersects(md.geom, ST_GeomFromText(#{geom}))
+            </if>
+            <if test="deviceType != null and deviceType != '' ">
+                and md.device_type = #{deviceType}
+            </if>
+                and md.is_deleted = 0
+        </where>
     </select>
 
 </mapper>

--
Gitblit v1.9.3