DAL.MYSQL/DAL_Admin/Menu.cs

(开头部分) 15KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Text;
using System.Data;
using MySql.Data.MySqlClient;
namespace DAL.MYSQL.DAL_Admin
{
    public class Menu : IDAL.IDAL_Admin.IMenu
    {

        /// <summary>
        /// 根据一个或者多个角色获得当前面板导航
        /// </summary>
        /// <param name="role_id"></param>
        /// <returns></returns>
        public DataTable Get_Menu_Panel(string role_id)
        {
            StringBuilder sb = new StringBuilder();
            sb.Append(" select  m.id,m.mu_name,m.mu_parentid,m.mu_sort ,m.mu_icon,rmb.role_id,b.bu_way,m.mu_url");
            sb.Append(" from Sys_Menu m");
            sb.Append(" left join Sys_Menu_Button mb on m.id = mb.menu_id");
            sb.Append(" left join Sys_Button b on mb.button_id = b.id");
            sb.Append(" left join Sys_Role_Menu_Button rmb on(mb.menu_id = rmb.menu_id and mb.button_id = rmb.button_id and rmb.role_id in (" + role_id + "))");
            sb.Append(" order by m.mu_sort asc");

            //return SqlHelper.GetDataTable(SqlHelper.connStr, CommandType.Text, sb.ToString(), new MySqlParameter("@id", role_id));
            return SqlHelper.GetDataTable(SqlHelper.connStr, CommandType.Text, sb.ToString(), null);
        }


        /// <summary>
        /// 更新菜单下的功能按钮
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public int Set_Menu_Button_Id(Model.Model_Admin.Menu model)
        {
            StringBuilder sb = new StringBuilder();
            sb.Append("if exists (select id from Sys_Button where id=@bu_id) ");//按钮ID不存在
            sb.Append(" if exists (select id from Sys_Menu where id=@id)");//没有菜单ID
            sb.Append(" if exists(select id from Sys_Menu where id=(select top 1 mu_parentid from Sys_Menu where id=(select top 1 mu_parentid from Sys_Menu where id=@id)) and mu_parentid=0)");//该菜单不在二级菜单下
            sb.Append(" if not exists(select * from Sys_Menu_Button where button_id=@bu_id and menu_id<>@id and  menu_id in (select id from Sys_Menu where mu_parentid=(select top 1 mu_parentid from Sys_Menu where id=@id)))");//同级下已经有关联过该按钮
            sb.Append(" begin");
            sb.Append(" delete from Sys_Menu_Button where menu_id=@id");
            sb.Append(" insert into Sys_Menu_Button(menu_id,button_id) values(@id,@bu_id)");
            sb.Append(" update Sys_Menu set mu_name=(select bu_name from Sys_Button where id=@bu_id),mu_url=@mu_url,mu_sort=@mu_sort where id=@id");
            sb.Append(" select 1");
            sb.Append(" end");
            sb.Append(" else");
            sb.Append(" select -4");//同级下已经有关联过该按钮
            sb.Append(" else");
            sb.Append(" select -3");//该菜单不在二级菜单下
            sb.Append(" else");
            sb.Append(" select -2");//没有菜单ID
            sb.Append(" else");
            sb.Append(" select -1"); //按钮ID不存在


            MySqlParameter[] parms = {
                new MySqlParameter("@bu_id", MySqlDbType.Int32),
                new MySqlParameter("@mu_sort", MySqlDbType.Int32),
后面还有 286 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。