From 02f970afdfd9dbf1f8f1ace7ab3712b51b0c583f Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Wed, 26 Apr 2023 11:53:08 +0800
Subject: [PATCH] 中台数据库行政区划增加treeList接口

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttAdBaseMapper.xml |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttAdBaseMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttAdBaseMapper.xml
index 9f2d3fc..e359732 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttAdBaseMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttAdBaseMapper.xml
@@ -2,4 +2,36 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="cn.gistack.sm.sjztmd.mapper.AttAdBaseMapper">
 
+    <resultMap id="treeNodeResultMap" type="org.springblade.core.tool.node.TreeNode">
+        <id column="id" property="id"/>
+        <result column="parent_id" property="parentId"/>
+        <result column="title" property="title"/>
+        <result column="value" property="value"/>
+        <result column="key" property="key"/>
+        <result column="has_children" property="hasChildren"/>
+    </resultMap>
+
+    <select id="lazyTree" resultMap="treeNodeResultMap">
+        SELECT
+        region."ad_code" AS "id",
+        region."p_ad_code" AS "parent_id",
+        region."ad_name" AS "title",
+        region."ad_code" AS "value",
+        region."ad_code" AS "key",
+        ( SELECT CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END FROM "SJZT_MD"."att_ad_base" WHERE "p_ad_code" = region."ad_code" ) AS "has_children"
+        FROM
+        "SJZT_MD"."att_ad_base" region
+        <where>
+            <if test="param1!=null">
+                and region."p_ad_code" = #{param1}
+            </if>
+            <if test="param2.code!=null and param2.code!=''">
+                and region."ad_code" like concat(concat('%', #{param2.code}),'%')
+            </if>
+            <if test="param2.name!=null and param2.name!=''">
+                and region."ad_name" like concat(concat('%', #{param2.name}),'%')
+            </if>
+        </where>
+        ORDER BY region."ad_code"
+    </select>
 </mapper>

--
Gitblit v1.9.3