using APT.BaseData.Domain.Entities.OP;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.Text;

namespace APT.BaseData.Domain.ApiModel
{
    public class OPUserRoleModel
    {
		/// <summary>
		/// 
		/// </summary>
		public OPUserRoleModel()
		{
			
		}
		/// <summary>
		/// 用户
		/// </summary>
		public virtual T_OP_USER User { get; set; }
	
		///// <summary>
		///// 角色授权
		///// </summary>
		public virtual RolePerm Nav_RolePerm { get; set; }

		public bool CanMenuRework { get; set; }
		/// <summary>
		/// 登录
		/// </summary>
		

	}
	public class OPUserLoginBaseModel : OPUserRoleModel
	{
		public OPUserLoginBaseModel()
		{
			this.NeedRemoveCookieKeys = new List<string>();		
		}


		public dynamic BaseConfig { get; set; }
		/// <summary>
		/// 用户类型 PFUserTypeEnum
		/// </summary>
		public int UserType { get; set; }

		public int ShowStyle { get; set; }

		/// <summary>
		/// 表单设置版本
		/// </summary>
		public decimal FormConfigVersion { get; set; }


		public virtual ICollection<string> NeedRemoveCookieKeys { get; set; }

		/// <summary>
		/// 通知公告
		/// </summary>
		//public virtual ICollection<NotificationModel> Nav_Notifications { get; set; }

	}

	/// <summary>
	/// 登录
	/// </summary>
	public class OPUserLoginModel : OPUserLoginBaseModel
	{
		public OPUserLoginModel()
		{		
		}

		public virtual IEnumerable<TreeNode<T_OP_MENU>> Menus { get; set; }	

	}
}
