| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | using MECF.Framework.Common.Account.Extends;using System.Collections.Generic;namespace OpenSEMI.ClientBase{	public class MenuManager	{		public List<AppMenu> MenuItems		{			get;			private set;		}		public void LoadMenu(List<AppMenu> menuitems)		{			foreach (AppMenu menuitem in menuitems)			{				if (menuitem.MenuItems != null)				{					for (int num = menuitem.MenuItems.Count - 1; num >= 0; num--)					{						AppMenu appMenu = menuitem.MenuItems[num];						appMenu.Parent = menuitem;						if (appMenu.Permission == 1)						{							menuitem.MenuItems.Remove(appMenu);						}					}				}			}			MenuItems = menuitems;		}		public void FilterMenus(List<string> pSystems)		{			if (pSystems != null && MenuItems != null)			{				foreach (AppMenu menuItem in MenuItems)				{					if (menuItem.MenuItems != null)					{						for (int num = menuItem.MenuItems.Count - 1; num >= 0; num--)						{							AppMenu appMenu = menuItem.MenuItems[num];						}					}				}			}		}		private bool IsExist(List<string> pSource, string pMatch)		{			foreach (string item in pSource)			{				if (pMatch.IndexOf(item) >= 0)				{					return true;				}			}			return false;		}		public List<AppMenu> GetAllClone()		{			if (MenuItems == null)			{				return null;			}			List<AppMenu> list = new List<AppMenu>();			foreach (AppMenu menuItem in MenuItems)			{				list.Add((AppMenu)menuItem.Clone(menuItem.Parent));			}			return list;		}	}}
 |