65 lines
1.8 KiB
XML
65 lines
1.8 KiB
XML
<?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="com.dbnt.kcscbackend.admin.config.mapper.TcMenuMapper">
|
|
|
|
<select id="selectMenuList" resultType="TcMenu">
|
|
select a.menu_id,
|
|
a.menu_title,
|
|
a.role_grp_id,
|
|
a.menu_group,
|
|
a.menu_level,
|
|
a.menu_sort,
|
|
a.menu_url,
|
|
a.menu_type_cd,
|
|
a.use_yn,
|
|
a.frst_crt_id,
|
|
a.frst_crt_dt,
|
|
a.last_chg_id,
|
|
a.last_chg_dt,
|
|
b.item_nm as menu_type_value
|
|
from tc_menu a
|
|
inner join tc_code_item b on a.menu_type_cd = b.item_cd
|
|
where a.use_yn = 'Y'
|
|
order by menu_type_cd desc, menu_id asc
|
|
</select>
|
|
|
|
<select id="selectMenuAuthList" resultType="TcMenu">
|
|
select a.menu_id ,
|
|
a.menu_title ,
|
|
a.menu_group ,
|
|
a.menu_url,
|
|
coalesce(b.role_cd, '') as menu_auth
|
|
from tc_menu a
|
|
left outer join (
|
|
select menu_id , string_agg(role_id, ',') as role_cd
|
|
from tb_menu_role
|
|
group by menu_id
|
|
) b on a.menu_id = b.menu_id
|
|
where a.use_yn = 'Y'
|
|
order by a.menu_id asc
|
|
</select>
|
|
|
|
<select id="selectMenuListToRole" resultType="TcMenu" parameterType="TcMenu">
|
|
select a.menu_id ,
|
|
a.menu_title ,
|
|
a.menu_group ,
|
|
a.menu_url,
|
|
c.menu_title as group_title,
|
|
coalesce(b.role_cd, '') as menu_auth
|
|
from tc_menu a
|
|
inner join (
|
|
select menu_id , string_agg(role_id, ',') as role_cd
|
|
from tb_menu_role
|
|
where role_id in
|
|
<foreach collection="roleList" item="role" separator="," open="(" close=")">
|
|
#{role}
|
|
</foreach>
|
|
group by menu_id
|
|
) b on a.menu_id = b.menu_id
|
|
inner join tc_menu c on a.menu_group = c.menu_id
|
|
where a.use_yn = 'Y'
|
|
and a.menu_type_cd = #{menuTypeCd}
|
|
order by a.menu_id asc
|
|
</select>
|
|
</mapper> |