cjl
2025-01-06 8490eb11583ffdc586436f165860de5cfc39f915
screen-api/src/main/resources/mapper/MenuMapper.xml
@@ -2,17 +2,44 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.moral.api.mapper.MenuMapper">
        <!-- 通用查询映射结果 -->
        <resultMap id="BaseResultMap" type="com.moral.api.entity.Menu">
                    <id column="id" property="id" />
                    <result column="name" property="name" />
                    <result column="url" property="url" />
                    <result column="icon" property="icon" />
                    <result column="parent_id" property="parentId" />
                    <result column="order" property="order" />
                    <result column="create_time" property="createTime" />
                    <result column="update_time" property="updateTime" />
                    <result column="is_delete" property="isDelete" />
        </resultMap>
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.moral.api.entity.Menu">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="url" property="url"/>
        <result column="icon" property="icon"/>
        <result column="parent_id" property="parentId"/>
        <result column="order" property="order"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
        <result column="is_delete" property="isDelete"/>
    </resultMap>
    <sql id="Base_Column_List">
        m.id, m.name, m.url, m.icon, m.parent_id, m.order, m.create_time, m.update_time
    </sql>
    <select id="selectUserMenu" resultMap="BaseResultMap">
        SELECT
        <include refid="Base_Column_List"/>
        FROM `user_group` ug,`group_menu` gm,`menu` m
        WHERE ug.user_id = #{userId}
        AND ug.group_id = gm.group_id
        AND gm.menu_id = m.id
        AND ug.is_delete = 0
        AND gm.is_delete = 0
        AND gm.channel_key = 0
        AND m.is_delete = 0
    </select>
    <select id="selectOrganizationMenu" resultMap="BaseResultMap">
        SELECT
        DISTINCT m.id, m.name, m.url, m.icon, m.parent_id, m.order, m.create_time, m.update_time
        FROM `menu` m, `group_menu` gm
        WHERE gm.organization_id = #{orgId}
        AND m.id = gm.menu_id
        AND gm.channel_key = 0
        AND gm.is_delete = 0
        AND m.is_delete = 0
    </select>
</mapper>