Пример #1
0
 public ActionResult Update(SysAdminMenuModel SingleMenu)
 {
     if (SingleMenu != null)
     {
         SingleMenu.FatherName = SingleMenu.FatherID == 0 ? "" : SingleMenu.FatherName;
         int rowcount = mbll.AddAndUpdateData(SingleMenu);
     }
     return(RedirectToAction("Menu", "SysSettings", new { area = "AdminArea" }));
 }
Пример #2
0
        /// <summary>
        /// 查询用户拥有的菜单权限
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public List <SysAdminMenuModel> GetUserAttributeMenu(SysAdminUserModel user)
        {
            List <SysAdminMenuModel> list = new List <SysAdminMenuModel>();
            string sqltxt = @"SELECT  A.PermissionType ,
        B.ID ,
        B.MenuAlt ,
        b.ActionName ,
        b.AreaName ,
        b.ControllerName ,
        b.FatherID ,
        b.FatherName ,
        b.LinkUrl ,
        b.MenuName ,
        b.MenuType ,
        b.SortIndex,
        B.MenuIcon,
       B.MenuStatus
FROM    dbo.SysAdminGrouprMenu A WITH ( NOLOCK )
        INNER JOIN dbo.SysAdminMenu B WITH ( NOLOCK ) ON A.MID = b.ID
WHERE   A.GID = @gid
        AND b.MenuStatus = 1
       AND A.PermissionType<>4
ORDER BY b.SortIndex ASC";

            SqlParameter[] paramter =
            {
                new SqlParameter("@gid", user.GID)
            };
            DataTable dt = helper.Query(sqltxt, paramter).Tables[0];

            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow item in dt.Rows)
                {
                    SysAdminMenuModel model = new SysAdminMenuModel();
                    model.ActionName     = item["ActionName"].ToString();
                    model.AreaName       = item["AreaName"].ToString();
                    model.ControllerName = item["ControllerName"].ToString();
                    model.FatherID       = string.IsNullOrWhiteSpace(item["FatherID"].ToString()) ? 0 : int.Parse(item["FatherID"].ToString());
                    model.FatherName     = item["FatherName"].ToString();
                    model.ID             = int.Parse(item["ID"].ToString());
                    model.LinkUrl        = item["LinkUrl"].ToString();
                    model.MenuAlt        = item["MenuAlt"].ToString();
                    model.MenuName       = item["MenuName"].ToString();
                    model.MenuStatus     = int.Parse(item["MenuStatus"].ToString());
                    model.MenuType       = int.Parse(item["MenuType"].ToString());
                    model.PermissionType = int.Parse(item["PermissionType"].ToString());
                    model.SortIndex      = string.IsNullOrWhiteSpace(item["SortIndex"].ToString()) ? 0 : int.Parse(item["SortIndex"].ToString());
                    model.MenuIcon       = item["MenuIcon"].ToString();
                    list.Add(model);
                }
            }
            return(list);
        }
Пример #3
0
        /// <summary>
        /// 得到所有菜单并包含当前组是否有权限
        /// </summary>
        /// <param name="gid"></param>
        /// <returns></returns>
        public List <SysAdminMenuModel> GetAllMenuWithPermission(int gid)
        {
            List <SysAdminMenuModel> list = new List <SysAdminMenuModel>();
            string sqltxt = @"SELECT  ID ,
        MenuName ,
        FatherID ,
        MenuAlt ,
        FatherName ,
        LinkUrl ,
        MenuStatus ,
        SortIndex ,
        MenuType ,
        ControllerName ,
        ActionName ,
        AreaName ,
        MenuIcon ,
        ( SELECT    PermissionType
          FROM      dbo.SysAdminGrouprMenu WITH ( NOLOCK )
          WHERE     Gid = @gid
                    AND MID = A.ID
        ) AS ISHave
FROM    dbo.SysAdminMenu A 
WHERE A.MenuStatus=1 ";

            SqlParameter[] paramter = { new SqlParameter("@gid", gid) };
            DataTable      dt       = helper.Query(sqltxt, paramter).Tables[0];

            foreach (DataRow item in dt.Rows)
            {
                SysAdminMenuModel model = new SysAdminMenuModel();
                model.ActionName     = item["ActionName"].ToString();
                model.AreaName       = item["AreaName"].ToString();
                model.ControllerName = item["ControllerName"].ToString();
                model.FatherID       = int.Parse(item["FatherID"].ToString());
                model.FatherName     = item["FatherName"].ToString();
                model.ID             = int.Parse(item["ID"].ToString());
                model.LinkUrl        = item["LinkUrl"].ToString();
                model.MenuAlt        = item["MenuAlt"].ToString();
                model.MenuIcon       = item["MenuIcon"].ToString();
                model.MenuName       = item["MenuName"].ToString();
                model.MenuStatus     = int.Parse(item["MenuStatus"].ToString());
                model.MenuType       = int.Parse(item["MenuType"].ToString());
                model.SortIndex      = int.Parse(item["SortIndex"].ToString());
                model.IsHave         = item["ISHave"].ToString();
                list.Add(model);
            }
            return(list);
        }
Пример #4
0
        /// <summary>
        ///查询用户组没权限的菜单
        /// </summary>
        /// <returns></returns>
        public List <SysAdminMenuModel> GetOtherMenuByGroup(int gid)
        {
            List <SysAdminMenuModel> list = new List <SysAdminMenuModel>();
            string sqltxt = @"  SELECT    ID ,
            MenuName ,
            FatherID ,
            MenuAlt ,
            FatherName ,
            LinkUrl ,
            MenuStatus ,
            SortIndex ,
            MenuType ,
            ControllerName ,
            ActionName ,
            AreaName ,
            MenuIcon
  FROM      dbo.SysAdminMenu
  WHERE     id NOT IN ( SELECT  mid
                        FROM    dbo.SysAdminGrouprMenu
                        WHERE   GID = @gid )
            AND MenuStatus=1";

            SqlParameter[] paramter =
            {
                new SqlParameter("@gid", gid)
            };
            DataTable dt = helper.Query(sqltxt, paramter).Tables[0];

            foreach (DataRow item in dt.Rows)
            {
                SysAdminMenuModel model = new SysAdminMenuModel();
                model.ActionName     = item["ActionName"].ToString();
                model.AreaName       = item["AreaName"].ToString();
                model.ControllerName = item["ControllerName"].ToString();
                model.FatherID       = int.Parse(item["FatherID"].ToString());
                model.FatherName     = item["FatherName"].ToString();
                model.ID             = int.Parse(item["ID"].ToString());
                model.LinkUrl        = item["LinkUrl"].ToString();
                model.MenuAlt        = item["MenuAlt"].ToString();
                model.MenuIcon       = item["MenuIcon"].ToString();
                model.MenuName       = item["MenuName"].ToString();
                model.MenuStatus     = int.Parse(item["MenuStatus"].ToString());
                model.MenuType       = int.Parse(item["MenuType"].ToString());
                model.SortIndex      = int.Parse(item["SortIndex"].ToString());
                list.Add(model);
            }
            return(list);
        }
Пример #5
0
        /// <summary>
        /// 根据ID查询菜单
        /// </summary>
        /// <param name="idstr"></param>
        /// <returns></returns>
        public List <SysAdminMenuModel> GetSysMenuByIds(string idstr)
        {
            List <SysAdminMenuModel> list = new List <SysAdminMenuModel>();

            if (string.IsNullOrWhiteSpace(idstr))
            {
                return(list);
            }
            string    sqltxt = @"SELECT ID,
      MenuName,
      FatherID,
      MenuAlt,
      FatherName,
      LinkUrl,
      MenuStatus,
      SortIndex,
      MenuType,
      ControllerName,
      ActionName,
      AreaName,
      MenuIcon
  FROM dbo.SysAdminMenu With(nolock)
   WHERE id IN (" + idstr + ")";
            DataTable dt     = helper.Query(sqltxt).Tables[0];

            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow item in dt.Rows)
                {
                    SysAdminMenuModel model = new SysAdminMenuModel();
                    model.ActionName     = item["ActionName"].ToString();
                    model.AreaName       = item["AreaName"].ToString();
                    model.ControllerName = item["ControllerName"].ToString();
                    model.FatherID       = string.IsNullOrWhiteSpace(item["FatherID"].ToString()) ? 0 : int.Parse(item["FatherID"].ToString());
                    model.FatherName     = item["FatherName"].ToString();
                    model.ID             = int.Parse(item["ID"].ToString());
                    model.LinkUrl        = item["LinkUrl"].ToString();
                    model.MenuAlt        = item["MenuAlt"].ToString();
                    model.MenuName       = item["MenuName"].ToString();
                    model.MenuStatus     = int.Parse(item["MenuStatus"].ToString());
                    model.MenuType       = int.Parse(item["MenuType"].ToString());
                    model.SortIndex      = string.IsNullOrWhiteSpace(item["SortIndex"].ToString()) ? 0 : int.Parse(item["SortIndex"].ToString());
                    model.MenuIcon       = item["MenuIcon"].ToString();
                    list.Add(model);
                }
            }
            return(list);
        }
Пример #6
0
        /// <summary>
        /// 新增和修改系统菜单
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public int AddAndUpdateData(SysAdminMenuModel model)
        {
            int    rowcount = 0;
            string sqltxt   = "";

            if (model.Type == 0)
            {
                sqltxt = @"INSERT INTO dbo.SysAdminMenu
           (MenuName,
           FatherID,
           MenuAlt,
           FatherName,
           LinkUrl,
           MenuStatus,
           SortIndex,
           MenuType,
           ControllerName,
           ActionName,
           AreaName,
           MenuIcon)
     VALUES
           (@MenuName,
           @FatherID,
           @MenuAlt,
           @FatherName,
           @LinkUrl,
           @MenuStatus,
           @SortIndex,
           @MenuType,
           @ControllerName,
           @ActionName, 
           @AreaName,
           @MenuIcon)";
            }
            else
            {
                sqltxt = @"UPDATE dbo.SysAdminMenu
   SET MenuName = @MenuName,
      FatherID = @FatherID,
      MenuAlt = @MenuAlt,
      FatherName =@FatherName,
      LinkUrl = @LinkUrl,
      MenuStatus = @MenuStatus,
      SortIndex = @SortIndex,
      MenuType = @MenuType,
      ControllerName = @ControllerName,
      ActionName = @ActionName,
      AreaName = @AreaName,
      MenuIcon = @MenuIcon
 WHERE ID=@ID";
            }
            SqlParameter[] paramter =
            {
                new SqlParameter("@ID",             model.ID),
                new SqlParameter("@MenuName",       model.MenuName),
                new SqlParameter("@FatherID",       model.FatherID),
                new SqlParameter("@MenuAlt",        model.MenuAlt),
                new SqlParameter("@FatherName",     model.FatherName),
                new SqlParameter("@LinkUrl",        model.LinkUrl),
                new SqlParameter("@MenuStatus",     model.MenuStatus),
                new SqlParameter("@SortIndex",      model.SortIndex),
                new SqlParameter("@MenuType",       model.MenuType),
                new SqlParameter("@ControllerName", model.ControllerName),
                new SqlParameter("@ActionName",     model.ActionName),
                new SqlParameter("@AreaName",       model.AreaName),
                new SqlParameter("@MenuIcon",       model.MenuIcon)
            };
            rowcount = helper.ExecuteSql(sqltxt, paramter);
            return(rowcount);
        }
Пример #7
0
 /// <summary>
 /// 添加和修改系统菜单
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public int AddAndUpdateData(SysAdminMenuModel model)
 {
     return(dal.AddAndUpdateData(model));
 }