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;
}
}
}