/// <summary> /// 输出主菜单HTML文本 /// </summary> /// <returns></returns> public string SystemMenuHtml(RmsPM.Web.User user) { HtmlMenu systemMenu = new HtmlMenu(); XmlDocument doc = new XmlDocument(); doc.Load(_ConfigFileName); XmlNode realmis = doc.DocumentElement.SelectSingleNode("RealMis"); List <MenuItem> itemlist = new List <MenuItem>(); if (realmis != null) { string RealmisName = realmis.Attributes["Name"].Value; XmlNodeList SubSystems = realmis.SelectNodes("SubSystem"); foreach (XmlNode node in SubSystems) { string Right = GetConfigText(node, "Right"); string RightLevel = GetConfigText(node, "RightLevel"); if (CheckRight(user, Right, RightLevel)) { makeItem(user, systemMenu, itemlist, node); } } } if (systemMenu.DefaultIndex > 0) { systemMenu.DefaultIndex--; } systemMenu.MenuItems = itemlist; return(systemMenu.OutPutMainMenuHtml()); }
private void makeItem(RmsPM.Web.User user, HtmlMenu systemMenu, List <MenuItem> itemlist, XmlNode node) { MenuItem item = new MenuItem(); item.Name = GetConfigText(node, "Name"); item.Text = GetConfigText(node, "Text"); item.ToolTip = GetConfigText(node, "ToolTip"); item.NavigateURL = GetConfigText(node, "NavigateURL").Replace("@UserName", user.UserID); item.TargetFrame = GetConfigText(node, "TargetFrame"); item.ClientCommand = GetConfigText(node, "Command").Replace("@UserName", user.UserID); item.IsDefault = GetConfigText(node, "IsDefault").ToLower() == "true" ? true : false; itemlist.Add(item); if (true == item.IsDefault && 0 == systemMenu.DefaultIndex) { systemMenu.DefaultIndex = itemlist.Count; } }