using System.Collections.Generic;
using System.Text.Json.Serialization;

namespace AsbCloudApp.Data
{
    /// <summary>
    /// Роль пользователя платформы
    /// </summary>
    public class UserRoleDto : IId
    {
        /// <inheritdoc/>
        public int Id { get; set; }

        /// <summary>
        /// название
        /// </summary>
        public string Caption { get; set; }

        /// <summary>
        /// id типа роли
        /// </summary>
        public int IdType { get; set; }

        /// <summary>
        /// список разрешений
        /// </summary>
        public IEnumerable<PermissionDto> Permissions { get; set; }

        /// <summary>
        /// Включенные роли
        /// </summary>
        public virtual ICollection<UserRoleDto> Roles { get; set; }

        /// <summary>
        /// Пользователи в роли
        /// </summary>
        [JsonIgnore]
        public virtual ICollection<UserDto> Users { get; set; }

    }
}