| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="org.springblade.system.mapper.MenuMapper">
- <!-- 通用查询映射结果 -->
- <resultMap id="menuResultMap" type="org.springblade.system.entity.Menu">
- <id column="id" property="id"/>
- <result column="code" property="code"/>
- <result column="parent_id" property="parentId"/>
- <result column="name" property="name"/>
- <result column="alias" property="alias"/>
- <result column="path" property="path"/>
- <result column="source" property="source"/>
- <result column="sort" property="sort"/>
- <result column="category" property="category"/>
- <result column="action" property="action"/>
- <result column="is_open" property="isOpen"/>
- <result column="remark" property="remark"/>
- <result column="is_deleted" property="isDeleted"/>
- <result column="sys_id" property="sysId"/>
- <result column="text_info" property="textInfo"/>
- <result column="is_layout" property="isLayout"/>
- <result column="video_url" property="videoUrl"/>
- <result column="excel_url" property="excelUrl"/>
- </resultMap>
- <resultMap id="menuVOResultMap" type="org.springblade.system.vo.MenuVO">
- <id column="id" property="id"/>
- <result column="code" property="code"/>
- <result column="parent_id" property="parentId"/>
- <result column="name" property="name"/>
- <result column="alias" property="alias"/>
- <result column="path" property="path"/>
- <result column="source" property="source"/>
- <result column="sort" property="sort"/>
- <result column="category" property="category"/>
- <result column="action" property="action"/>
- <result column="is_open" property="isOpen"/>
- <result column="remark" property="remark"/>
- <result column="is_deleted" property="isDeleted"/>
- <result column="has_children" property="hasChildren"/>
- <result column="text_info" property="textInfo"/>
- <result column="is_layout" property="isLayout"/>
- <result column="video_url" property="videoUrl"/>
- <result column="excel_url" property="excelUrl"/>
- </resultMap>
- <resultMap id="treeNodeResultMap" type="org.springblade.system.user.vo.TreeNodeVO">
- <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="sysId" property="sysId"/>
- </resultMap>
- <select id="lazyList" resultMap="menuVOResultMap">
- SELECT
- menu.*,
- (
- SELECT
- CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
- FROM
- blade_menu
- WHERE
- parent_id = menu.id AND is_deleted = 0
- ) AS "has_children"
- FROM
- blade_menu menu
- WHERE menu.is_deleted = 0
- <if test="param1!=null">
- and menu.parent_id = #{param1}
- </if>
- <if test="param2.name!=null and param2.name!=''">
- and menu.name like concat(concat('%', #{param2.name}),'%')
- </if>
- <if test="param2.code!=null and param2.code!=''">
- and menu.code like concat(concat('%', #{param2.code}),'%')
- </if>
- <if test="param2.alias!=null and param2.alias!=''">
- and menu.alias like concat(concat('%', #{param2.alias}),'%')
- </if>
- <if test="param2.sysId!=null and param2.sysId!=''">
- and menu.sys_id = #{param2.sysId}
- </if>
- ORDER BY menu.sort
- </select>
- <select id="lazyMenuList" resultMap="menuVOResultMap">
- SELECT
- menu.*,
- (
- SELECT
- CASE WHEN count( 1 ) > 0 THEN 1 ELSE 0 END
- FROM
- blade_menu
- WHERE
- parent_id = menu.id AND is_deleted = 0 AND category = 1
- ) AS "has_children"
- FROM
- blade_menu menu
- WHERE menu.is_deleted = 0 AND menu.category = 1
- <if test="param1!=null">
- and menu.parent_id = #{param1}
- </if>
- <if test="param2.name!=null and param2.name!=''">
- and menu.name like concat(concat('%', #{param2.name}),'%')
- </if>
- <if test="param2.code!=null and param2.code!=''">
- and menu.code like concat(concat('%', #{param2.code}),'%')
- </if>
- <if test="param2.alias!=null and param2.alias!=''">
- and menu.alias like concat(concat('%', #{param2.alias}),'%')
- </if>
- ORDER BY menu.sort
- </select>
- <select id="tree" resultMap="treeNodeResultMap">
- select id, parent_id, name as title, id as "value", id as "key"
- from blade_menu
- where is_deleted = 0
- and category = 1
- </select>
- <select id="allMenu" resultMap="menuResultMap">
- select * from blade_menu where is_deleted = 0 and category = 1
- </select>
- <select id="allMenuBySysType" resultMap="menuResultMap">
- select a.*
- from blade_menu a,
- blade_client b
- where a.is_deleted = 0
- and a.sys_id = b.id
- and b.client_id = #{sysType}
- and (a.category = 1 or (a.is_show_button = 1 and a.category = 2))
- </select>
- <select id="roleMenu" resultMap="menuResultMap">
- select * from blade_menu where is_deleted = 0 and id IN
- ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="param1" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- <if test="param2!=null and param2>0">
- AND id IN
- (
- SELECT menu_id FROM blade_top_menu_setting WHERE top_menu_id = #{param2}
- )
- </if>
- </select>
- <select id="roleMenuByRoleId" resultMap="menuResultMap">
- select * from blade_menu where is_deleted = 0 and id IN
- ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- </select>
- <select id="roleMenuByTopMenuId" resultMap="menuResultMap">
- select *
- from blade_menu
- where is_deleted = 0
- and id IN
- (
- SELECT menu_id
- FROM blade_top_menu_setting
- WHERE top_menu_id = #{param1}
- )
- </select>
- <select id="routes" resultMap="menuResultMap">
- SELECT
- *
- FROM
- blade_menu
- WHERE
- is_deleted = 0 and category = 1
- and id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- </select>
- <select id="allButtons" resultMap="menuResultMap">
- SELECT id,
- parent_id,
- CODE,
- NAME,
- alias,
- path,
- source,
- action,
- sort,
- text_info
- FROM
- blade_menu
- WHERE
- (
- category = 2
- OR id IN ( SELECT parent_id FROM blade_menu WHERE is_deleted = 0
- AND category = 2 )
- )
- AND is_deleted = 0
- and sys_id =(SELECT id from blade_client where client_id=#{param1})
- ORDER BY sort
- </select>
- <select id="buttons" resultMap="menuResultMap">
- SELECT * FROM (
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort
- FROM
- blade_menu
- WHERE
- is_deleted = 0 and id IN (
- SELECT parent_id FROM blade_menu
- WHERE ( category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- ) ) )
- UNION ALL
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort
- FROM
- blade_menu
- WHERE
- is_deleted = 0 and category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>)
- ) menu ORDER BY sort
- </select>
- <select id="buttonsByClientId" resultMap="menuResultMap">
- SELECT * FROM (
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort,
- text_info
- FROM
- blade_menu
- WHERE
- is_deleted = 0 and id IN (
- SELECT parent_id FROM blade_menu
- WHERE ( category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="param1" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- ) ) )
- and sys_id =(SELECT id from blade_client where client_id=#{param2})
- UNION ALL
- SELECT
- id,
- parent_id,
- code,
- name,
- alias,
- path,
- source,
- action,
- sort,
- text_info
- FROM
- blade_menu
- WHERE
- is_deleted = 0 and category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
- <foreach collection="param1" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>)
- and sys_id =(SELECT id from blade_client where client_id=#{param2})
- ) menu ORDER BY sort
- </select>
- <select id="grantTree" resultMap="treeNodeResultMap">
- select id, parent_id, name as title, id as "value", id as "key", sys_id AS "sysId"
- from blade_menu
- where is_deleted = 0
- order by sort
- </select>
- <select id="grantTreeByRole" resultMap="treeNodeResultMap">
- select id, parent_id, name as title, id as "value", id as "key", sys_id AS "sysId" from blade_menu where
- is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- or id in (
- select parent_id from blade_menu where is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- order by sort
- </select>
- <select id="grantTopTree" resultMap="treeNodeResultMap">
- select id, parent_id, name as title, id as "value", id as "key"
- from blade_menu
- where category = 1
- and is_deleted = 0
- order by sort
- </select>
- <select id="grantTopTreeByRole" resultMap="treeNodeResultMap">
- select id, parent_id, name as title, id as "value", id as "key" from blade_menu where category = 1 and
- is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- or id in (
- select parent_id from blade_menu where is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- order by sort
- </select>
- <select id="grantDataScopeTree" resultMap="treeNodeResultMap">
- SELECT *
- FROM (
- SELECT id,
- parent_id,
- NAME AS title,
- id AS "value",
- id AS "key"
- FROM blade_menu
- WHERE category = 1
- AND is_deleted = 0
- AND id IN (SELECT menu_id FROM blade_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL)
- ) menu
- UNION ALL
- SELECT id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
- FROM blade_scope_data
- WHERE is_deleted = 0
- AND menu_id IS NOT NULL
- </select>
- <select id="grantApiScopeTree" resultMap="treeNodeResultMap">
- SELECT *
- FROM (
- SELECT id,
- parent_id,
- NAME AS title,
- id AS "value",
- id AS "key"
- FROM blade_menu
- WHERE category = 1
- AND is_deleted = 0
- AND id IN (SELECT menu_id FROM blade_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL)
- ) menu
- UNION ALL
- SELECT id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
- FROM blade_scope_api
- WHERE is_deleted = 0
- AND menu_id IS NOT NULL
- </select>
- <select id="grantDataScopeTreeByRole" resultMap="treeNodeResultMap">
- SELECT
- *
- FROM
- (
- SELECT
- id,
- parent_id,
- NAME AS title,
- id AS "value",
- id AS "key"
- FROM
- blade_menu
- WHERE
- category = 1
- AND is_deleted = 0
- AND id IN ( SELECT menu_id FROM blade_scope_data WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- AND (
- id IN (
- select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- OR id IN (
- select parent_id from blade_menu where is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- )
- ) menu
- UNION ALL
- SELECT
- id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
- FROM
- blade_scope_data
- WHERE
- is_deleted = 0
- AND (
- menu_id IN (
- select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- OR menu_id IN (
- select parent_id from blade_menu where is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- )
- AND menu_id IS NOT NULL
- </select>
- <select id="grantApiScopeTreeByRole" resultMap="treeNodeResultMap">
- SELECT
- *
- FROM
- (
- SELECT
- id,
- parent_id,
- NAME AS title,
- id AS "value",
- id AS "key"
- FROM
- blade_menu
- WHERE
- category = 1
- AND is_deleted = 0
- AND id IN ( SELECT menu_id FROM blade_scope_api WHERE is_deleted = 0 AND menu_id IS NOT NULL )
- AND (
- id IN (
- select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- OR id IN (
- select parent_id from blade_menu where is_deleted = 0
- and id in (
- select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- )
- ) menu
- UNION ALL
- SELECT
- id,
- menu_id AS parent_id,
- scope_name AS title,
- id AS "value",
- id AS "key"
- FROM
- blade_scope_api
- WHERE
- is_deleted = 0
- AND
- (
- menu_id IN (
- select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- OR menu_id IN (
- select parent_id from blade_menu where is_deleted = 0
- and id in ( select menu_id from blade_role_menu where role_id in
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- )
- )
- )
- AND menu_id IS NOT NULL
- </select>
- <select id="authRoutes" resultType="org.springblade.system.dto.MenuDTO">
- SELECT
- GROUP_CONCAT(r.role_alias) as alias,
- m.path
- FROM
- blade_role_menu rm
- LEFT JOIN blade_menu m ON rm.menu_id = m.id
- LEFT JOIN blade_role r ON rm.role_id = r.id
- WHERE
- rm.role_id IN
- <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- AND m.path IS NOT NULL and m.is_deleted = 0
- GROUP BY m.path
- </select>
- <select id="selectBySysId" resultType="org.springblade.system.entity.AuthClient">
- select * from blade_client
- </select>
- <select id="allRoleAndMenu" resultType="org.springblade.system.vo.RoleAndMenusVO">
- select * from blade_role_menu where role_id = #{roleId}
- </select>
- </mapper>
|