Refactor entities: remove preprocessor directives, unify style

Large-scale cleanup of entity and interface classes:
- Removed obsolete #if NET/NETFRAMEWORK preprocessor blocks
- Unified class/property formatting and indentation
- Standardized use of data annotations
- Improved nullable reference type handling
- Simplified interfaces (IHasEnvelope, IHasReceiver)
- Removed redundant and dead code
- No changes to business logic or data model

These changes modernize and standardize the codebase for easier maintenance and .NET compatibility.
This commit is contained in:
2026-02-09 15:32:41 +01:00
parent e2afbc5a62
commit 910a870ddf
9 changed files with 321 additions and 409 deletions

View File

@@ -2,30 +2,22 @@
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{
#endif
[Table("TBSIG_CONFIG", Schema = "dbo")]
public class Config
{ {
[Column("SENDING_PROFILE", TypeName = "int")] [Table("TBSIG_CONFIG", Schema = "dbo")]
[Required] public class Config
public int SendingProfile { get; set; } {
[Column("SENDING_PROFILE", TypeName = "int")]
[Required]
public int SendingProfile { get; set; }
[Column("SIGNATURE_HOST", TypeName = "nvarchar(128)")] [Column("SIGNATURE_HOST", TypeName = "nvarchar(128)")]
[Required] [Required]
public string SignatureHost { get; set; } public string SignatureHost { get; set; }
[Column("EXTERNAL_PROGRAM_NAME", TypeName = "nvarchar(30)")] [Column("EXTERNAL_PROGRAM_NAME", TypeName = "nvarchar(30)")]
public string ExternalProgramName { get; set; } public string ExternalProgramName { get; set; }
[Column("EXPORT_PATH", TypeName = "nvarchar(256)")] [Column("EXPORT_PATH", TypeName = "nvarchar(256)")]
public string ExportPath { get; set; } public string ExportPath { get; set; }
}
#if NETFRAMEWORK
} }
#endif }

View File

@@ -9,85 +9,77 @@ using System.Linq;
#endif #endif
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{ {
#endif [Table("TBSIG_ENVELOPE_DOCUMENT", Schema = "dbo")]
public class Document : IHasEnvelope, IHasAddedWhen
[Table("TBSIG_ENVELOPE_DOCUMENT", Schema = "dbo")]
public class Document : IHasEnvelope, IHasAddedWhen
{
public Document()
{ {
public Document()
{
#if NETFRAMEWORK #if NETFRAMEWORK
Elements = Enumerable.Empty<Signature>().ToList(); Elements = Enumerable.Empty<Signature>().ToList();
#endif
}
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
[Required]
[Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; }
#if NETFRAMEWORK
= 0;
#endif
[Required]
[Column("ADDED_WHEN", TypeName = "datetime")]
public DateTime AddedWhen { get; set; }
[Column("BYTE_DATA", TypeName = "varbinary(max)")]
public byte[]
#if nullable
?
#endif
ByteData { get; set; }
#region File
[Column("FILENAME", TypeName = "nvarchar(256)")]
public string Filename { get; set; }
[Column("FILEPATH", TypeName = "nvarchar(256)")]
public string Filepath { get; set; }
[Column("FILENAME_ORIGINAL", TypeName = "nvarchar(256)")]
public string
#if nullable
?
#endif
FileNameOriginal { get; set; }
#endregion
public virtual List<Signature>
#if nullable
?
#endif
Elements { get; set; }
[ForeignKey("EnvelopeId")]
public virtual Envelope
#if nullable
?
#endif
Envelope { get; set; }
#if NETFRAMEWORK
[NotMapped]
public bool IsTempFile { get; set; }
[NotMapped]
public Bitmap Thumbnail { get; set; }
[NotMapped]
public int PageCount { get; set; }
#endif #endif
} }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
[Required]
[Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; }
#if NETFRAMEWORK
= 0;
#endif
[Required]
[Column("ADDED_WHEN", TypeName = "datetime")]
public DateTime AddedWhen { get; set; }
[Column("BYTE_DATA", TypeName = "varbinary(max)")]
public byte[]
#if nullable
?
#endif
ByteData { get; set; }
#region File
[Column("FILENAME", TypeName = "nvarchar(256)")]
public string Filename { get; set; }
[Column("FILEPATH", TypeName = "nvarchar(256)")]
public string Filepath { get; set; }
[Column("FILENAME_ORIGINAL", TypeName = "nvarchar(256)")]
public string
#if nullable
?
#endif
FileNameOriginal { get; set; }
#endregion
public virtual List<Signature>
#if nullable
?
#endif
Elements { get; set; }
[ForeignKey("EnvelopeId")]
public virtual Envelope
#if nullable
?
#endif
Envelope { get; set; }
#if NETFRAMEWORK
[NotMapped]
public bool IsTempFile { get; set; }
[NotMapped]
public Bitmap Thumbnail { get; set; }
[NotMapped]
public int PageCount { get; set; }
#endif
} }
#if NETFRAMEWORK
}
#endif

View File

@@ -4,69 +4,58 @@ using System.ComponentModel.DataAnnotations.Schema;
using DigitalData.Core.Abstractions.Interfaces; using DigitalData.Core.Abstractions.Interfaces;
using EnvelopeGenerator.Domain.Interfaces; using EnvelopeGenerator.Domain.Interfaces;
#if NETFRAMEWORK
#endif
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{ {
#endif [Table("TBSIG_DOCUMENT_STATUS", Schema = "dbo")]
public class DocumentStatus : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen
[Table("TBSIG_DOCUMENT_STATUS", Schema = "dbo")]
public class DocumentStatus : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen
{
public DocumentStatus()
{ {
// TODO: * check Form Application and remove default value public DocumentStatus()
{
// TODO: * check Form Application and remove default value
#if NETFRAMEWORK #if NETFRAMEWORK
Status = Constants.DocumentStatus.Created; Status = Constants.DocumentStatus.Created;
#endif #endif
} }
[Key] [Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)] [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")] [Column("GUID")]
public int Id { get; set; } public int Id { get; set; }
[Required] [Required]
[Column("ENVELOPE_ID")] [Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; } public int EnvelopeId { get; set; }
[Required] [Required]
[Column("RECEIVER_ID")] [Column("RECEIVER_ID")]
public int ReceiverId { get; set; } public int ReceiverId { get; set; }
[Required] [Required]
[Column("STATUS")] [Column("STATUS")]
public Constants.DocumentStatus Status { get; set; } public Constants.DocumentStatus Status { get; set; }
[Required] [Required]
[Column("ADDED_WHEN", TypeName = "datetime")] [Column("ADDED_WHEN", TypeName = "datetime")]
public DateTime AddedWhen { get; set; } public DateTime AddedWhen { get; set; }
[Column("CHANGED_WHEN", TypeName = "datetime")] [Column("CHANGED_WHEN", TypeName = "datetime")]
public DateTime? ChangedWhen { get; set; } public DateTime? ChangedWhen { get; set; }
[Column("VALUE", TypeName = "nvarchar(max)")] [Column("VALUE", TypeName = "nvarchar(max)")]
public string Value { get; set; } public string Value { get; set; }
[ForeignKey("EnvelopeId")] [ForeignKey("EnvelopeId")]
public virtual Envelope public virtual Envelope
#if NET #if nullable
? ?
#endif #endif
Envelope { get; set; } Envelope { get; set; }
[ForeignKey("ReceiverId")] [ForeignKey("ReceiverId")]
public virtual Receiver public virtual Receiver
#if NET #if nullable
? ?
#endif #endif
Receiver { get; set; } Receiver { get; set; }
}
#if NETFRAMEWORK
} }
#endif }

View File

@@ -6,88 +6,80 @@ using System.ComponentModel.DataAnnotations.Schema;
#endif #endif
namespace EnvelopeGenerator.Domain.Entities 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; }
[Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT_ANNOTATION")] [Required]
public class ElementAnnotation : IHasAddedWhen, IHasChangedWhen, IHasChangedWho [Column("ELEMENT_ID", TypeName = "int")]
{ public int ElementId { get; set; }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID", TypeName = "bigint")]
public long Id { get; set; }
[Required] [Required]
[Column("ELEMENT_ID", TypeName = "int")] [Column("NAME", TypeName = "nvarchar(100)")]
public int ElementId { get; set; } [StringLength(100)]
public string Name { get; set; }
[Required] [Required]
[Column("NAME", TypeName = "nvarchar(100)")] [Column("VALUE", TypeName = "nvarchar(max)")]
[StringLength(100)] public string Value { get; set; }
public string Name { get; set; }
[Required] [Required]
[Column("VALUE", TypeName = "nvarchar(max)")] [Column("TYPE", TypeName = "nvarchar(50)")]
public string Value { get; set; } public string Type { get; set; }
[Required] [Column("POSITION_X", TypeName = "float")]
[Column("TYPE", TypeName = "nvarchar(50)")] public double
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 #if nullable
? ?
#endif #endif
ChangedWho { get; set; } X { get; set; }
[ForeignKey("ElementId")] [Column("POSITION_Y", TypeName = "float")]
public virtual Signature public double
#if nullable #if nullable
? ?
#endif #endif
Element { get; set; } Y { get; set; }
}
#if NETFRAMEWORK [Column("WIDTH", TypeName = "float")]
public double
#if nullable
?
#endif
Width { get; set; }
[Column("HEIGHT", TypeName = "float")]
public double
#if nullable
?
#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; }
} }
#endif }

View File

@@ -4,42 +4,32 @@ using EnvelopeGenerator.Domain.Interfaces;
using System.ComponentModel; using System.ComponentModel;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
#if NETFRAMEWORK
#endif
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{ {
#endif [Table("TBSIG_EMAIL_TEMPLATE", Schema = "dbo")]
public class EmailTemplate : IEntity, IHasAddedWhen, IHasChangedWhen
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
[Table("TBSIG_EMAIL_TEMPLATE", Schema = "dbo")] [Column("NAME", TypeName = "nvarchar(64)")]
public class EmailTemplate : IEntity, IHasAddedWhen, IHasChangedWhen public string Name { get; set; }
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
[Column("NAME", TypeName = "nvarchar(64)")] [Column("BODY", TypeName = "nvarchar(max)")]
public string Name { get; set; } public string Body { get; set; }
[Column("BODY", TypeName = "nvarchar(max)")] [Column("SUBJECT", TypeName = "nvarchar(512)")]
public string Body { get; set; } public string Subject { get; set; }
[Column("SUBJECT", TypeName = "nvarchar(512)")] [Required]
public string Subject { get; set; } [Column("ADDED_WHEN", TypeName = "datetime")]
[DefaultValue("GETDATE()")]
public DateTime AddedWhen { get; set; }
[Required] [Column("CHANGED_WHEN", TypeName = "datetime")]
[Column("ADDED_WHEN", TypeName = "datetime")] public DateTime? ChangedWhen { get; set; }
[DefaultValue("GETDATE()")]
public DateTime AddedWhen { get; set; }
[Column("CHANGED_WHEN", TypeName = "datetime")]
public DateTime? ChangedWhen { get; set; }
}
#if NETFRAMEWORK
} }
#endif }

View File

@@ -4,101 +4,88 @@ using System.ComponentModel.DataAnnotations.Schema;
using DigitalData.Core.Abstractions.Interfaces; using DigitalData.Core.Abstractions.Interfaces;
using EnvelopeGenerator.Domain.Interfaces; using EnvelopeGenerator.Domain.Interfaces;
#if NETFRAMEWORK
#endif
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{ {
#endif [Table("TBSIG_ENVELOPE_RECEIVER", Schema = "dbo")]
public class EnvelopeReceiver : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen
[Table("TBSIG_ENVELOPE_RECEIVER", Schema = "dbo")]
public class EnvelopeReceiver : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen
{
public EnvelopeReceiver()
{ {
public EnvelopeReceiver()
{
#if NETFRAMEWORK #if NETFRAMEWORK
CompanyName = string.Empty; CompanyName = string.Empty;
#endif #endif
} }
[Column("ENVELOPE_ID")] [Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; } public int EnvelopeId { get; set; }
[Column("RECEIVER_ID")] [Column("RECEIVER_ID")]
public int ReceiverId { get; set; } public int ReceiverId { get; set; }
[Required] [Required]
[Column("SEQUENCE")] [Column("SEQUENCE")]
public int Sequence { get; set; } public int Sequence { get; set; }
[Column("NAME", TypeName = "nvarchar(128)")] [Column("NAME", TypeName = "nvarchar(128)")]
public string Name { get; set; } public string Name { get; set; }
[Column("JOB_TITLE", TypeName = "nvarchar(128)")] [Column("JOB_TITLE", TypeName = "nvarchar(128)")]
public string JobTitle { get; set; } public string JobTitle { get; set; }
[Column("COMPANY_NAME", TypeName = "nvarchar(128)")] [Column("COMPANY_NAME", TypeName = "nvarchar(128)")]
public string public string
#if nullable #if nullable
? ?
#endif #endif
CompanyName { get; set; } CompanyName { get; set; }
[Column("PRIVATE_MESSAGE", TypeName = "nvarchar(max)")] [Column("PRIVATE_MESSAGE", TypeName = "nvarchar(max)")]
public string PrivateMessage { get; set; } public string PrivateMessage { get; set; }
[Column("ACCESS_CODE", TypeName = "nvarchar(64)")] [Column("ACCESS_CODE", TypeName = "nvarchar(64)")]
public string AccessCode { get; set; } public string AccessCode { get; set; }
[Required] [Required]
[Column("ADDED_WHEN", TypeName = "datetime")] [Column("ADDED_WHEN", TypeName = "datetime")]
public DateTime AddedWhen { get; set; } public DateTime AddedWhen { get; set; }
[Column("CHANGED_WHEN", TypeName = "datetime")] [Column("CHANGED_WHEN", TypeName = "datetime")]
public DateTime? ChangedWhen { get; set; } public DateTime? ChangedWhen { get; set; }
[Column("PHONE_NUMBER")] [Column("PHONE_NUMBER")]
[StringLength(20)] [StringLength(20)]
[RegularExpression(@"^\+[0-9]+$", ErrorMessage = "Phone number must start with '+' followed by digits.")] [RegularExpression(@"^\+[0-9]+$", ErrorMessage = "Phone number must start with '+' followed by digits.")]
public string PhoneNumber { get; set; } public string PhoneNumber { get; set; }
[NotMapped] [NotMapped]
public Tuple<int, int> Id => Tuple.Create(EnvelopeId, ReceiverId); public Tuple<int, int> Id => Tuple.Create(EnvelopeId, ReceiverId);
[NotMapped] [NotMapped]
public bool HasPhoneNumber => !string.IsNullOrWhiteSpace(PhoneNumber); public bool HasPhoneNumber => !string.IsNullOrWhiteSpace(PhoneNumber);
[ForeignKey("EnvelopeId")] [ForeignKey("EnvelopeId")]
public Envelope public Envelope
#if nullable #if nullable
? ?
#endif #endif
Envelope { get; set; } Envelope { get; set; }
[ForeignKey("ReceiverId")] [ForeignKey("ReceiverId")]
public Receiver public Receiver
#if nullable #if nullable
? ?
#endif #endif
Receiver { get; set; } Receiver { get; set; }
#region Model of old serice #region Model of old serice
[NotMapped] [NotMapped]
public Constants.ReceiverStatus Status { get; set; } public Constants.ReceiverStatus Status { get; set; }
[NotMapped] [NotMapped]
public bool HasId => Id.Item1 > 0 && Id.Item2 > 0; public bool HasId => Id.Item1 > 0 && Id.Item2 > 0;
[NotMapped] [NotMapped]
public bool HasEmailAndName => public bool HasEmailAndName =>
!string.IsNullOrWhiteSpace(Receiver.EmailAddress) &&
!string.IsNullOrWhiteSpace(Name);
#endregion #endregion
} }
}
#if NETFRAMEWORK
}
#endif

View File

@@ -7,74 +7,66 @@ using EnvelopeGenerator.Domain.Constants;
using DigitalData.Core.Abstractions.Interfaces; using DigitalData.Core.Abstractions.Interfaces;
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities
#if NET
;
#elif NETFRAMEWORK
{ {
[Table("TBSIG_ENVELOPE_HISTORY", Schema = "dbo")]
public class History : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public long Id { get; set; }
[Required]
[Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; }
[Required]
[Column("USER_REFERENCE", TypeName = "nvarchar(128)")]
public string UserReference { get; set; }
[Required]
[Column("STATUS")]
public EnvelopeStatus Status { get; set; }
[Required]
[Column("ADDED_WHEN", TypeName = "datetime")]
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public DateTime AddedWhen { get; set; }
[Column("ACTION_DATE", TypeName = "datetime")]
public DateTime? ChangedWhen { get; set; }
[Column("COMMENT", TypeName = "nvarchar(max)")]
public string
#if nullable
?
#endif #endif
Comment { get; set; }
[Table("TBSIG_ENVELOPE_HISTORY", Schema = "dbo")] [ForeignKey("EnvelopeId")]
public class History : IHasEnvelope, IHasReceiver, IEntity, IHasAddedWhen, IHasChangedWhen public virtual Envelope
{ #if nullable
[Key] ?
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public long Id { get; set; }
[Required]
[Column("ENVELOPE_ID")]
public int EnvelopeId { get; set; }
[Required]
[Column("USER_REFERENCE", TypeName = "nvarchar(128)")]
public string UserReference { get; set; }
[Required]
[Column("STATUS")]
public EnvelopeStatus Status { get; set; }
[Required]
[Column("ADDED_WHEN", TypeName = "datetime")]
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public DateTime AddedWhen { get; set; }
[Column("ACTION_DATE", TypeName = "datetime")]
public DateTime? ChangedWhen { get; set; }
[Column("COMMENT", TypeName = "nvarchar(max)")]
public string
#if NET
?
#endif #endif
Comment { get; set; } Envelope { get; set; }
[ForeignKey("EnvelopeId")] [ForeignKey("UserReference")]
public virtual Envelope public virtual User
#if NET #if nullable
? ?
#endif #endif
Envelope { get; set; } Sender { get; set; }
[ForeignKey("UserReference")] [ForeignKey("UserReference")]
public virtual User public virtual Receiver
#if NET #if nullable
? ?
#endif #endif
Sender { get; set; } Receiver { get; set; }
[ForeignKey("UserReference")]
public virtual Receiver
#if NET
?
#endif
Receiver { get; set; }
#if NETFRAMEWORK #if NETFRAMEWORK
[NotMapped] [NotMapped]
public string StatusTranslated => My.Resources.Model.ResourceManager.GetString(Status.ToString()); public string StatusTranslated => My.Resources.Model.ResourceManager.GetString(Status.ToString());
#endif #endif
}
#if NETFRAMEWORK
} }
#endif }

View File

@@ -1,22 +1,11 @@
namespace EnvelopeGenerator.Domain.Interfaces namespace EnvelopeGenerator.Domain.Interfaces
#if NET
;
#elif NETFRAMEWORK
{
#endif
public interface IHasEnvelope
{ {
#if NET public interface IHasEnvelope
public {
#endif
Entities.Envelope Entities.Envelope
#if NET #if nullable
? ?
#endif #endif
Envelope { get; set; } Envelope { get; set; }
}
} }
#if NETFRAMEWORK
}
#endif

View File

@@ -1,22 +1,11 @@
namespace EnvelopeGenerator.Domain.Interfaces namespace EnvelopeGenerator.Domain.Interfaces
#if NET {
; public interface IHasReceiver
#elif NETFRAMEWORK
{ {
#endif
public interface IHasReceiver
{
#if NET
public
#endif
Entities.Receiver Entities.Receiver
#if NET #if nullable
? ?
#endif #endif
Receiver { get; set; } Receiver { get; set; }
}
} }
#if NETFRAMEWORK
}
#endif