using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; using gehGassi.Domain.Common; namespace gehGassi.Domain.Devices { /// /// Repräsentiert ein Gerät eines Benutzers. /// Konkret ein smartphone, Tablet oder sonstiges /// public class Device { /// /// Eindeutige ID des Devices /// [Key] [Required] public long Id { get; set; } /// /// Id des App-Users dem das Device gehört /// [Required] [MaxLength(128)] public string AppUserId { get; set; } /// /// Eindeutige ID des Devices /// [Required] [MaxLength(128)] public string InstallationId { get; set; } /// /// Platform des Devices /// [Required] public Platform Platform { get; set; } /// /// Notification-Platform die verwendet werden soll /// [Required] public NotificationPlatform NotificationPlatform { get; set; } /// /// Welcher Pushnotification-Channel wurde gebucht /// [Required] [MaxLength(512)] public string Channel { get; set; } /// /// Eingestellte Sprache des Devices /// [Required] [MaxLength(2)] public string Language { get; set; } /// /// Datum der Erstellung /// [Required] public DateTimeOffset Created { get; set; } /// /// Datum der letzten Aktualisierung /// [Required] public DateTimeOffset LastUpdate { get; set; } } }