xieb
2023-04-26 02f970afdfd9dbf1f8f1ace7ab3712b51b0c583f
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>