using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using IoTIntegrationPlatform.Model.Model; namespace IoTIntegrationPlatform.Model.common { /// /// 格式化菜单 /// public class MenuDetail : AdminMenu { /// /// 子菜单 /// public List SubMenus { get; set; } /// /// 按钮权限 /// public List Buttons { get; set; } /// /// 获取管理菜单 /// /// /// public static List FromAdminMenu(IEnumerable adminMenus) { var result = new List(); if (adminMenus.Any()) { result = SubChilds(adminMenus, "-1"); } return result; } /// ///生成菜单子级 /// /// /// /// public static List SubChilds(IEnumerable adminMenus, string parentMenuCode) { List result = new List(); var subChilds = adminMenus.Where(m => m.ParentMenuCode == parentMenuCode); if (subChilds.Any()) { foreach (var item in subChilds) { var tmp = new MenuDetail { Id = item.Id, MenuCode = item.MenuCode, MenuName = item.MenuName, ParentMenuCode = item.ParentMenuCode, IsMenu = item.IsMenu, Path = item.Path, Icon = item.Icon, PowerCode=item.PowerCode }; tmp.SubMenus = SubChilds(adminMenus, item.MenuCode); result.Add(tmp); } } return result; } } }