Files
EnvelopeGenerator/EnvelopeGenerator.Domain/Entities/EnvelopeReceiverReadOnly.cs
TekH ee7c92ff5b Refactor entities to use new auditing interfaces
Replaced granular auditing interfaces with IUpdateAuditable and ICreationAuditable in ElementAnnotation, EnvelopeReceiverReadOnly, and Signature to modernize and consolidate auditing logic.
2026-02-09 15:55:38 +01:00

57 lines
1.6 KiB
C#

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