using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; using System.Threading.Tasks; namespace gehGassiApp.Domain.Users { /// /// Repräsentiert den angemeldeten Benutzer /// public class User { /// /// Id /// [Key] [Required] [MaxLength(128)] public string Id { get; set; } /// /// Benutzername - Email /// [Required] [MaxLength(256)] public string UserName { get; set; } /// /// Vorname /// [Required] [MaxLength(150)] public string FirstName { get; set; } /// /// Nachname /// [Required] [MaxLength(150)] public string LastName { get; set; } /// /// Zugeordnete Rollen /// [MaxLength(255)] public string Roles { get; set; } /// /// Foto /// [MaxLength(500)] public string Photo { get; set; } ///// ///// Foto - Base64 ///// //public string PhotoBase64 { get; set; } /// /// Datum der Registrierung /// public DateTimeOffset? RegistrationDate { get; set; } /// /// Datum der letzten Anmeldung /// public DateTimeOffset? LastLoginDate { get; set; } /// /// Id des App-Users /// [MaxLength(128)] public string AppUserId { get; set; } /// /// Access-Token für den Benutzer /// [NotMapped] public string AccessToken { get; set; } /// /// Ablaufdatum Access-Token /// [NotMapped] public DateTimeOffset AccessTokenExpires { get; set; } /// /// Refreshtoken für den Benutzer /// [NotMapped] public string RefreshToken { get; set; } /// /// Ablaufdatum Refresh-Token /// [NotMapped] public DateTimeOffset RefreshTokenExpires { get; set; } /// /// Voller Name /// public string FullName => $"{FirstName} {LastName}"; } }