Beispiel #1
0
        /// <summary>
        /// 获取用户菜单HTML
        /// </summary>
        /// <param name="userID">用户ID</param>
        /// <returns></returns>
        public string GetNewUserMenuTreeHtml(string userId, string websiteOwner)
        {
            StringBuilder sb = new StringBuilder();

            try
            {
                UserInfo curUser   = BaseCacheGetUserInfo(userId);
                int      ShowLevel = 3;
                if (curUser.UserType == 1)
                {
                    ShowLevel = 1;
                }
                else if (curUser.UserID == websiteOwner)
                {
                    ShowLevel = 2;
                }
                BLLMenuInfo     bllMenu = new BLLMenuInfo();
                List <MenuInfo> list    = bllMenu.GetWebsiteMenuList(websiteOwner, ShowLevel, false, true);

                string      relationIds    = "''";
                List <long> pmsGroupIdList = GetPmsGroupIDByUser(websiteOwner);
                if (pmsGroupIdList.Count > 0)
                {
                    relationIds = MyStringHelper.ListToStr(pmsGroupIdList, "'", ",");
                }

                list = bllMenu.CheckMenuRelationList(list, websiteOwner, relationIds);
                list = bllMenu.CheckUserMenuShowLevelList(list, ShowLevel);
                list = list.Where(p => p.IsHide.Value == 0).ToList();

                List <MenuInfo> menuList = new List <MenuInfo>();
                menuList = list;

                int index = 0;
                foreach (MenuInfo item in menuList.Where(p => p.PreID == 0))
                {
                    //sb.AppendFormat("<li class=\"{0}\">", index > 0 ? "" : "active");
                    sb.AppendFormat("<li class=\"{0}\">", index > 0 ? "" : "");//默认不展开任何菜单

                    sb.AppendFormat("<a href=\"javascript:;\"><i class=\"{1}\"></i> <span class=\"nav-label\">{0}</span><span class=\"fa arrow\"></span></a>", item.NodeName, item.ICOCSS);

                    sb.AppendFormat(GetNewSingelTreeHtml(item, menuList));


                    sb.AppendFormat("</li>");
                    index++;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(sb.ToString());
        }
Beispiel #2
0
        /// <summary>
        /// 获取用户菜单HTML
        /// </summary>
        /// <param name="userId">账号</param>
        /// <param name="websiteOwner">所有者</param>
        /// <returns></returns>
        public string GetNewUserMenuTreeHtmlV2(string userId, string websiteOwner)
        {
            StringBuilder sbMenu = new StringBuilder();

            try
            {
                UserInfo userInfo  = BaseCacheGetUserInfo(userId);
                int      showLevel = 3;
                if (userInfo.UserType == 1)
                {
                    showLevel = 1;
                }
                else if (userInfo.UserID == websiteOwner)
                {
                    showLevel = 2;
                }
                BLLMenuInfo     bllMenu = new BLLMenuInfo();
                List <MenuInfo> list    = bllMenu.GetWebsiteMenuList(websiteOwner, 1, false, true);
                list = bllMenu.NewCheckMenuRelationList(list, websiteOwner);
                list = bllMenu.CheckUserMenuShowLevelList(list, showLevel);
                list = list.Where(p => p.IsHide.Value == 0).ToList();

                if (userInfo.UserType != 1)
                {
                    list = CheckPermissionColumnList(list, websiteOwner, userInfo);
                }

                List <MenuInfo> menuList = new List <MenuInfo>();
                menuList = list;

                int index = 0;
                foreach (MenuInfo item in menuList.Where(p => p.PreID == 0))
                {
                    //sbMenu.AppendFormat("<li class=\"{0}\">", index > 0 ? "" : "active");
                    sbMenu.AppendFormat("<li class=\"{0}\">", index > 0 ? "" : "");//默认不展开任何菜单

                    sbMenu.AppendFormat("<a href=\"javascript:;\"><i class=\"{1}\"></i> <span class=\"nav-label\">{0}</span><span class=\"fa arrow\"></span></a>", item.NodeName, item.ICOCSS);

                    sbMenu.AppendFormat(GetNewSingelTreeHtml(item, menuList));


                    sbMenu.AppendFormat("</li>");
                    index++;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(sbMenu.ToString());
        }