using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; using gehGassi.Domain.Base; using gehGassi.Domain.Common; namespace gehGassi.Domain.Messages { /// /// Repräsentiert eine Nachricht von einem Benutzer an einen anderen. /// public class Message : SyncEntity { /// /// Id der Konversation /// [Required] [MaxLength(128)] public string ConversationId { get; set; } /// /// Sender der Nachricht /// [MaxLength(128)] public string SenderId { get; set; } /// /// Empfänger der Nachricht /// [MaxLength(128)] public string ReceiverId { get; set; } /// /// Inhalt Nachricht /// [MaxLength(500)] public string Content { get; set; } } /// /// Repräsentiert eine Kopie Nachricht von einem Benutzer an einen anderen. /// Wird aus Sicherheitsgründen archiviert, aber nach Zeitraum X automatisch gelöscht /// public class MessageCopy : SyncEntity { /// /// Id der Konversation /// [Required] [MaxLength(128)] public string ConversationId { get; set; } /// /// Sender der Nachricht /// [MaxLength(128)] public string SenderId { get; set; } /// /// Empfänger der Nachricht /// [MaxLength(128)] public string ReceiverId { get; set; } /// /// Inhalt Nachricht /// [MaxLength(500)] public string Content { get; set; } /// /// Wurde gelesen? /// public bool Read { get; set; } /// /// Wann gelesen? /// public DateTimeOffset? ReadDate { get; set; } } }