From ad2ec97fe0c60eee4bb7c8cdacff7c876f280ea7 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 08 Jan 2024 11:30:18 +0800
Subject: [PATCH] 公安安全监管

---
 src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml |   69 +++++++++++++++++++++++++++-------
 1 files changed, 54 insertions(+), 15 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
index f7c96a2..d418cbb 100644
--- a/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/RegionMapper.xml
@@ -104,22 +104,61 @@
 
     <!--根据父编号查询所有的下级-->
     <select id="getTreeList" resultType="org.springblade.common.node.TreeStringNode">
-        SELECT
-            br.code as id,br.parent_code as parentId,br.name as name
-        FROM
-            (
+        <if test="region.cityCode!=null and region.cityCode!=''">
             SELECT
-                @ids AS ids,
-                ( SELECT @ids := GROUP_CONCAT( code ) FROM blade_region WHERE FIND_IN_SET( parent_code, @ids ) ) AS cids
-            FROM
-                blade_region
-            WHERE
-                @ids IS NOT NULL
-                AND @ids := #{parentCode}
-            ) id,
-            blade_region br
-        WHERE
-            FIND_IN_SET(br.parent_code,ids)
+            code as id,
+            parent_code as parentId,
+            name
+            FROM blade_region
+            where code = #{region.cityCode}
+            union all
+        </if>
+        SELECT
+        code as id,
+        parent_code as parentId,
+        name
+        FROM blade_region
+        where 1=1
+        and district_code = '361102'
+        <if test="region.parentCode!=null and region.parentCode!=''">
+            and parent_code = #{region.parentCode}
+        </if>
+        <if test="region.regionCode!=null and region.regionCode!=''">
+            and code like concat('%',#{region.regionCode},'%')
+        </if>
+    </select>
+
+    <!--根据当前编号查询-->
+    <select id="getTownTree" resultType="org.springblade.common.node.TreeStringNode">
+        SELECT
+        code as id,
+        parent_code as parentId,
+        name
+        FROM blade_region where district_code = '361102'
+        and region_level = 4
+        <if test="regionCode!=null  and regionCode!=''">
+            and code = #{regionCode}
+        </if>
+        union
+        SELECT
+        code as id,
+        parent_code as parentId,
+        name
+        FROM blade_region where district_code = '361102'
+        and region_level = 4
+        <if test="regionCode!=null  and regionCode!=''">
+            and parent_code = #{regionCode}
+        </if>
+    </select>
+
+    <!--树列表(包含省市县三级)-->
+    <select id="getBaseTree" resultType="org.springblade.common.node.TreeStringNode">
+        SELECT
+        code as id,
+        parent_code as parentId,
+        name
+        FROM blade_region
+        where region_level >0 and region_level &lt;4
     </select>
 
 </mapper>

--
Gitblit v1.9.3