From 08ddfad4530a014094c06fe68b8c2d9a0753403a Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 05 Aug 2026 14:09:29 +0800
Subject: [PATCH] fix(gd): 修复线索事件查询中的SQL语法错误
---
drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml | 96 +++++++++++++----------------------------------
1 files changed, 27 insertions(+), 69 deletions(-)
diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml b/drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml
index 00816d3..d024733 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/detection/mapper/FwEffectEvalMapper.xml
@@ -3,7 +3,7 @@
<mapper namespace="org.sxkj.fw.detection.mapper.FwEffectEvalMapper">
<!-- 通用查询映射结果 -->
- <resultMap id="fwEffectEvalResultMap" type="org.sxkj.fw.detection.entity.FwEffectEvalEntity">
+ <resultMap id="fwEffectEvalResultMap" type="org.sxkj.fw.detection.vo.FwEffectEvalVO">
<result column="id" property="id"/>
<result column="alarm_record_id" property="alarmRecordId"/>
<result column="device_id" property="deviceId"/>
@@ -27,86 +27,44 @@
<result column="update_user" property="updateUser"/>
<result column="update_time" property="updateTime"/>
<result column="status" property="status"/>
- <result column="is_deleted" property="isDeleted"/>
</resultMap>
<select id="selectFwEffectEvalPage" resultMap="fwEffectEvalResultMap">
- select * from ja_fw_effect_eval
+ select
+ ee.*,
+ string_agg(distinct ad.area_name, ',') as area_name,
+ string_agg(distinct ds.scene_name, ',') as scene_name
+ from ja_fw_effect_eval ee
+ left join ja_fw_area_divide ad on ee.device_id = ANY(string_to_array(ad.device_ids, ',')::bigint[]) and ad.is_deleted = 0
+ left join ja_fw_defense_scene ds on ad.id = ANY(string_to_array(ds.area_divide_ids, ',')::bigint[]) and ds.is_deleted = 0
<where>
- is_deleted = 0
- <if test="param2.id != null and param2.id != ''">
- and id = #{param2.id}
- </if>
- <if test="param2.alarmRecordId != null and param2.alarmRecordId != ''">
- and alarm_record_id = #{param2.alarmRecordId}
- </if>
- <if test="param2.deviceId != null and param2.deviceId != ''">
- and device_id = #{param2.deviceId}
- </if>
- <if test="param2.deviceSn != null and param2.deviceSn != ''">
- and device_sn = #{param2.deviceSn}
- </if>
+ ee.is_deleted = 0
<if test="param2.deviceName != null and param2.deviceName != ''">
- and device_name = #{param2.deviceName}
- </if>
- <if test="param2.deviceModel != null and param2.deviceModel != ''">
- and device_model = #{param2.deviceModel}
+ and ee.device_name like concat('%', #{param2.deviceName}, '%')
</if>
<if test="param2.deviceType != null and param2.deviceType != ''">
- and device_type = #{param2.deviceType}
- </if>
- <if test="param2.droneName != null and param2.droneName != ''">
- and drone_name = #{param2.droneName}
- </if>
- <if test="param2.droneType != null and param2.droneType != ''">
- and drone_type = #{param2.droneType}
- </if>
- <if test="param2.droneDeviceCode != null and param2.droneDeviceCode != ''">
- and drone_device_code = #{param2.droneDeviceCode}
- </if>
- <if test="param2.findTime != null and param2.findTime != ''">
- and find_time = #{param2.findTime}
+ and ee.device_type = #{param2.deviceType}
</if>
<if test="param2.counterEffect != null and param2.counterEffect != ''">
- and counter_effect = #{param2.counterEffect}
+ and ee.counter_effect = #{param2.counterEffect}
</if>
- <if test="param2.deployLongitude != null and param2.deployLongitude != ''">
- and deploy_longitude = #{param2.deployLongitude}
+ <if test="param2.deptList != null and param2.deptList.size > 0">
+ and (ee.create_dept in
+ <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ <!-- 或者设备是共享给当前部门的 -->
+ <if test="param2.currentDeptId != null and param2.currentDeptId != '' ">
+ or ee.device_id in (
+ SELECT device_id FROM ja_fw_device_per_share
+ WHERE loan_to_dept_id = #{param2.currentDeptId}
+ AND is_deleted = 0
+ )
+ </if>
+ )
</if>
- <if test="param2.deployLatitude != null and param2.deployLatitude != ''">
- and deploy_latitude = #{param2.deployLatitude}
- </if>
- <if test="param2.coverRadiusM != null and param2.coverRadiusM != ''">
- and cover_radius_m = #{param2.coverRadiusM}
- </if>
- <if test="param2.workMode != null and param2.workMode != ''">
- and work_mode = #{param2.workMode}
- </if>
- <if test="param2.areaCode != null and param2.areaCode != ''">
- and area_code = #{param2.areaCode}
- </if>
- <if test="param2.createUser != null and param2.createUser != ''">
- and create_user = #{param2.createUser}
- </if>
- <if test="param2.createDept != null and param2.createDept != ''">
- and create_dept = #{param2.createDept}
- </if>
- <if test="param2.createTime != null and param2.createTime != ''">
- and create_time = #{param2.createTime}
- </if>
- <if test="param2.updateUser != null and param2.updateUser != ''">
- and update_user = #{param2.updateUser}
- </if>
- <if test="param2.updateTime != null and param2.updateTime != ''">
- and update_time = #{param2.updateTime}
- </if>
- <if test="param2.status != null and param2.status != ''">
- and status = #{param2.status}
- </if>
- <if test="param2.isDeleted != null and param2.isDeleted != ''">
- and is_deleted = #{param2.isDeleted}
- </if>
+ group by ee.id -- 按主表主键分组
</where>
</select>
--
Gitblit v1.9.3