ludc
2024-01-16 02e7ca80d849ad8a99974bd08f9e68a78f36d601
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
@@ -197,7 +197,6 @@
                        #{item}
                    </foreach>
                  ) ) )
            UNION ALL
            SELECT
@@ -218,6 +217,24 @@
                    #{item}
                </foreach>)
        ) menu ORDER BY sort
    </select>
    <select id="getButtonsByRoleIdAndCode" resultMap="menuResultMap">
        SELECT pm.*
        FROM PL_SYS_MENU ps,
             PL_SYS_MENU pm,
             PL_ORG_ROLE_MENU prom
        WHERE ps.ID = prom.MENU_ID
          <if test="roleId != null and roleId != ''">
              AND prom.ROLE_ID = #{roleId}
          </if>
            AND ps."CATEGORY" = 1
            AND pm.IS_DELETED = 0
          <if test="code != null and code != ''">
            AND ps.ID = pm.PARENT_ID
            AND ps.CODE = #{code}
          </if>
        ORDER BY pm.SORT ASC
    </select>
    <select id="grantTree" resultMap="treeNodeResultMap">
@@ -488,15 +505,40 @@
          and ps.category = 1
          and ps.CODE = #{btmType}
          and ps.ID = pm.PARENT_ID
            <if test="roleIds != null and roleIds != ''">
                and ps.ID in (
                    SELECT menu_id FROM pl_org_role_menu WHERE role_id IN
                    <foreach collection="roleIds" index="index" item="item" open="(" separator="," close=")">
                        #{item}
                    </foreach>
                )
            </if>
          <if test="roleIds != null and roleIds != ''">
            and ps.ID in (
                SELECT menu_id FROM pl_org_role_menu WHERE role_id IN
                <foreach collection="roleIds" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach>
            )
          </if>
        order by pm.sort asc
    </select>
    <select id="getButtonByIdsOrByParentCode" resultMap="menuResultMap">
        SELECT pm.*
        FROM PL_SYS_MENU ps,
        PL_SYS_MENU pm,
        PL_ORG_ROLE_MENU prom
        WHERE ps.ID = prom.MENU_ID
        <if test="roleIds != null and roleIds != ''">
            AND prom.ROLE_ID in (#{roleIds})
        </if>
          AND ps."CATEGORY" = 1
          AND pm.IS_DELETED = 0
        <if test="code != null and code != ''">
            AND ps.ID = pm.PARENT_ID
            AND ps.CODE = #{code}
        </if>
        <if test="ids != null and ids != ''">
            AND ps.ID IN (
                <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
                    #{item}
                </foreach>
            )
        </if>
        ORDER BY pm.SORT ASC
    </select>
</mapper>