using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations; using DigitalData.Core.Abstractions; using DigitalData.EmailProfilerDispatcher.Abstraction.Attributes; namespace EnvelopeGenerator.Domain.Entities { [Table("TBSIG_ENVELOPE_RECEIVER_READ_ONLY")] public class EnvelopeReceiverReadOnly : IUnique { [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Column("GUID")] public long Id { get; init; } [Column("ENVELOPE_ID")] [Required] public long EnvelopeId { get; init; } //TODO: remove NotMapped attribute when EnvelopeId data type is standardized [NotMapped] public Envelope? Envelope { get; set; } [Column("RECEIVER_MAIL")] [Required] [StringLength(250)] [TemplatePlaceholder("NAME_RECEIVER")] public required string ReceiverMail { get; init; } [Column("DATE_VALID")] [Required] public DateTime DateValid { get; init; } [Column("ADDED_WHO")] [Required] [StringLength(100)] public required string AddedWho { get; init; } public Receiver? Receiver { get; init; } [Column("ADDED_WHEN")] [Required] public DateTime AddedWhen { get; init; } [Column("CHANGED_WHO")] [StringLength(100)] public string? ChangedWho { get; init; } [Column("CHANGED_WHEN")] public DateTime? ChangedWhen { get; init; } } }