Introduced interfaces for audit fields (AddedWhen, ChangedWhen, ChangedWho, AddedWho) and updated domain entities to implement them. Adjusted properties for consistency and nullability. Updated MappingProfile to map audit fields between DTOs and entities. Improves auditability and standardization across the domain model.
93 lines
1.9 KiB
C#
93 lines
1.9 KiB
C#
using System;
|
|
using EnvelopeGenerator.Domain.Interfaces;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
#if NETFRAMEWORK
|
|
#endif
|
|
|
|
namespace EnvelopeGenerator.Domain.Entities
|
|
#if NET
|
|
;
|
|
#elif NETFRAMEWORK
|
|
{
|
|
#endif
|
|
|
|
[Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT_ANNOTATION")]
|
|
public class ElementAnnotation : IHasAddedWhen, IHasChangedWhen, IHasChangedWho
|
|
{
|
|
[Key]
|
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
|
[Column("GUID", TypeName = "bigint")]
|
|
public long Id { get; set; }
|
|
|
|
[Required]
|
|
[Column("ELEMENT_ID", TypeName = "int")]
|
|
public int ElementId { get; set; }
|
|
|
|
[Required]
|
|
[Column("NAME", TypeName = "nvarchar(100)")]
|
|
[StringLength(100)]
|
|
public string Name { get; set; }
|
|
|
|
[Required]
|
|
[Column("VALUE", TypeName = "nvarchar(max)")]
|
|
public string Value { get; set; }
|
|
|
|
[Required]
|
|
[Column("TYPE", TypeName = "nvarchar(50)")]
|
|
public string Type { get; set; }
|
|
|
|
[Column("POSITION_X", TypeName = "float")]
|
|
public double
|
|
#if NET
|
|
?
|
|
#endif
|
|
X { get; set; }
|
|
|
|
[Column("POSITION_Y", TypeName = "float")]
|
|
public double
|
|
#if NET
|
|
?
|
|
#endif
|
|
Y { get; set; }
|
|
|
|
[Column("WIDTH", TypeName = "float")]
|
|
public double
|
|
#if NET
|
|
?
|
|
#endif
|
|
Width { get; set; }
|
|
|
|
[Column("HEIGHT", TypeName = "float")]
|
|
public double
|
|
#if NET
|
|
?
|
|
#endif
|
|
Height { get; set; }
|
|
|
|
[Required]
|
|
[Column("ADDED_WHEN", TypeName = "datetime")]
|
|
public DateTime AddedWhen { get; set; }
|
|
|
|
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
|
public DateTime? ChangedWhen { get; set; }
|
|
|
|
[Column("CHANGED_WHO", TypeName = "nvarchar(100)")]
|
|
[StringLength(100)]
|
|
public string
|
|
#if nullable
|
|
?
|
|
#endif
|
|
ChangedWho { get; set; }
|
|
|
|
[ForeignKey("ElementId")]
|
|
public virtual Signature
|
|
#if nullable
|
|
?
|
|
#endif
|
|
Element { get; set; }
|
|
}
|
|
|
|
#if NETFRAMEWORK
|
|
}
|
|
#endif |