/// <summary> /// 提取 SystemWorkPlace 以及 SystemWorkTask 数据初始化合成用于后台管理的主菜单条目集合 /// </summary> private static void _SetSubMenuItems() { _SubMenuItems = new List <SimpleSubMenuItem>(); var wpItems = _Context.SystemWorkPlaces;//.SelectMany(x => x.SystemWorkSections); foreach (var item in wpItems) { _Context.Entry(item).Collection(x => x.SystemWorkSections).Load(); foreach (var sItem in item.SystemWorkSections) { var subMenuItem = new SimpleSubMenuItem() { Id = sItem.Id, Name = sItem.Name, SortCode = sItem.SortCode, ParentId = item.Id, URL = "" }; _SubMenuItems.Add(subMenuItem); _Context.Entry(sItem).Collection(x => x.SystemWorkTasks).Load(); foreach (var mItem in sItem.SystemWorkTasks) { var miniMenuItem = new SimpleSubMenuItem() { Id = mItem.Id, Name = mItem.Name, URL = "../../" + mItem.ControllerName, SortCode = mItem.SortCode, ParentId = sItem.Id }; _SubMenuItems.Add(miniMenuItem); } } } }
/// <summary> /// 根据 SystemWorkTask 和相应的归属 Id 对象,更新左侧菜单条目 /// </summary> /// <param name="bo">SystemWorkTask 对象</param> /// <param name="pId">归属对象Id</param> public static void UpdateSubMenuItems(SystemWorkTask bo, Guid pId) { var sMenuItem = _SubMenuItems.FirstOrDefault(x => x.Id == bo.Id); if (sMenuItem == null) { var miniMenuItem = new SimpleSubMenuItem() { Id = bo.Id, Name = bo.Name, URL = "../../" + bo.ControllerName, SortCode = bo.SortCode, ParentId = pId }; _SubMenuItems.Add(miniMenuItem); } else { sMenuItem.Name = bo.Name; sMenuItem.URL = "../../" + bo.ControllerName; sMenuItem.SortCode = bo.SortCode; sMenuItem.ParentId = pId; } }
/// <summary> /// 根据 SystemWorkSection 和相应的归属 ID 对象,更新左侧菜单条目 /// </summary> /// <param name="bo">SystemWorkSection 对象</param> /// <param name="pID">归属主菜单的ID</param> public static void UpdateSubMenuItems(SystemWorkSection bo, Guid pID) { var sMenuItem = _SubMenuItems.FirstOrDefault(x => x.ID == bo.ID); if (sMenuItem == null) { var miniMenuItem = new SimpleSubMenuItem() { ID = bo.ID, Name = bo.Name, URL = "", SortCode = bo.SortCode, ParentID = pID }; _SubMenuItems.Add(miniMenuItem); } else { sMenuItem.Name = bo.Name; sMenuItem.URL = ""; sMenuItem.SortCode = bo.SortCode; sMenuItem.ParentID = pID; } }