From f0ad850a7a962dcf53c6c88e31de4bc2b1e20457 Mon Sep 17 00:00:00 2001
From: rain <1679827795@qq.com>
Date: Tue, 13 Jan 2026 15:18:16 +0800
Subject: [PATCH] 设备和区域场景list 过滤时增加id返回已绑定的子数据
---
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml | 26 ++++++++++++++++----------
1 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml b/drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml
index 762bb35..cb55d26 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/area/mapper/FwDefenseSceneMapper.xml
@@ -87,14 +87,9 @@
select ds.* from ja_fw_defense_scene ds
<where>
ds.is_deleted = 0
- <choose>
- <when test="areaId != null">
- and ds.area_divide_ids is not null
- and ds.area_divide_ids != ''
- and find_in_set(#{areaId}, replace(ds.area_divide_ids, ' ', ''))
- </when>
- <when test="filterSelected != null and filterSelected == 1">
- and not exists (
+ <if test="filterSelected != null and filterSelected == 1">
+ and (
+ not exists (
select 1
from ja_fw_defense_zone dz
where dz.is_deleted = 0
@@ -102,8 +97,19 @@
and dz.defense_scene_ids != ''
and find_in_set(ds.id, dz.defense_scene_ids)
)
- </when>
- </choose>
+ <if test="zoneId != null">
+ or exists (
+ select 1
+ from ja_fw_defense_zone dz
+ where dz.is_deleted = 0
+ and dz.id = #{zoneId}
+ and dz.defense_scene_ids is not null
+ and dz.defense_scene_ids != ''
+ and find_in_set(ds.id, dz.defense_scene_ids)
+ )
+ </if>
+ )
+ </if>
</where>
</select>
--
Gitblit v1.9.3