using Hotline.Share.Enums.Settings;
using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hotline.Share.Dtos.Home
{
    public record SetFastMenuDto
    {
        public List<string> FastMenuArr { get; set; }
    }

    public record GetFastMenuByTokenDto
    {
        public string name { get; set; }
    }

   
    public class UserAuthorityDto
    {
        public List<SystemMenuDto> menus { get; set; }
        public List<string> buttons { get; set; }
    }

    public class SystemMenuDto
    {
        /// <summary>
        /// 页面名称
        /// </summary>
        public string PageName { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        public int DisplayOrder { get; set; }

        /// <summary>
        /// 上级ID
        /// </summary>
        public string ParentId { get; set; }

        /// <summary>
        /// 类型
        /// </summary>
        public EMenuType? MenuType { get; set; }

        /// <summary>
        /// 功能点Code
        /// </summary>
        public string PermissionCode { get; set; }

        /// <summary>
        /// 是否显示
        /// </summary>
        public bool IsHide { get; set; }

        /// <summary>
        /// 重定向地址
        /// </summary>
        public string Redirect { get; set; }

        /// <summary>
        /// 是否外链
        /// </summary>
        public bool IsLink { get; set; }

        /// <summary>
        /// 外部连接
        /// </summary>
        public string Link { get; set; }

        /// <summary>
        /// 路由路径
        /// </summary>
        public string Path { get; set; }

        /// <summary>
        /// 是否缓存
        /// </summary>
        public bool IsKeepAlive { get; set; }

        /// <summary>
        /// 是否固定
        /// </summary>
        public bool IsAffix { get; set; }

        /// <summary>
        /// 是否内嵌
        /// </summary>
        public bool IsIframe { get; set; }

        /// <summary>
        /// 路由名称
        /// </summary>
        public string RuleName { get; set; }

        /// <summary>
        /// 组件路径
        /// </summary>
        public string Component { get; set; }

        /// <summary>
        /// 图标
        /// </summary>
        public string Icon { get; set; }

        /// <summary>
        /// 是否可为快捷
        /// </summary>
        public bool IsFast { get; set; }

        /// <summary>
        /// 快捷图标
        /// </summary>
        public string FastIcon { get; set; }

        public List<SystemMenuDto> children { get; set; }
    }

}
