using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace IStation.Model
{
///
/// 可下发的菜单权限树
///
public class AuthorizeMenuAuthTree
{
///
///
///
public AuthorizeMenuAuthTree() { }
///
///
///
public AuthorizeMenuAuthTree(Model.Menu rhs)
{
this.MenuID = rhs.ID;
this.Name = rhs.Name;
this.Type = rhs.Type;
this.Icon = rhs.Icon;
this.Router = rhs.Router;
this.Component = rhs.Component;
this.Permission = rhs.Permission;
this.OpenType = rhs.OpenType;
this.Visible = rhs.Visible;
this.Link = rhs.Link;
this.Redirect = rhs.Redirect;
this.Weight = rhs.Weight;
this.Paras = rhs.Paras;
this.TagName = rhs.TagName;
this.SortCode = rhs.SortCode;
this.UseStatus = rhs.UseStatus;
this.Description = rhs.Description;
this.Children = new List();
}
///
///
///
public AuthorizeMenuAuthTree(AuthorizeMenuAuthTree rhs)
{
this.MenuID = rhs.MenuID;
this.Name = rhs.Name;
this.Type = rhs.Type;
this.Icon = rhs.Icon;
this.Router = rhs.Router;
this.Component = rhs.Component;
this.Permission = rhs.Permission;
this.OpenType = rhs.OpenType;
this.Visible = rhs.Visible;
this.Link = rhs.Link;
this.Redirect = rhs.Redirect;
this.Weight = rhs.Weight;
this.Paras = rhs.Paras;
this.TagName = rhs.TagName;
this.SortCode = rhs.SortCode;
this.UseStatus = rhs.UseStatus;
this.Description = rhs.Description;
this.Children = rhs.Children?.Select(x => new AuthorizeMenuAuthTree(x)).ToList();
}
///
/// 权限标识
///
public long MenuID { get; set; }
///
/// 显示名称
///
public string Name { get; set; }
///
/// 字典 (1 模块 2 目录 3 菜单 4按钮)
///
public int Type { get; set; }
///
/// 图标
///
public string Icon { get; set; }
///
/// 路由地址
///
public string Router { get; set; }
///
/// 组件地址
///
public string Component { get; set; }
///
/// 权限标识
///
public string Permission { get; set; }
///
/// 打开方式(字典 0无 1组件 2内链 3外链)
///
public int OpenType { get; set; }
///
/// 是否可见
///
public bool Visible { get; set; }
///
/// 内链地址
///
public string Link { get; set; }
///
/// 重定向地址
///
public string Redirect { get; set; }
///
/// 权重(字典 1系统权重 2业务权重)
///
public int Weight { get; set; }
///
/// 参数
///
public Dictionary Paras { get; set; }
///
/// 标签名称
///
public string TagName { get; set; }
///
/// 排序码
///
public int SortCode { get; set; }
///
/// 使用状态
///
public eUseStatus UseStatus { get; set; }
///
/// 备注
///
public string Description { get; set; }
///
/// 可下发的子权限
///
public List Children { get; set; }
}
}