From c674a450d8d56aaf7c0feec06d7d376171b27cde Mon Sep 17 00:00:00 2001 From: TekH Date: Mon, 9 Feb 2026 15:37:00 +0100 Subject: [PATCH] Refactor entities: remove preprocessor blocks, unify style Refactored Envelope, Receiver, and Signature entity classes to eliminate preprocessor directives around class and property definitions. Applied attributes directly and reformatted properties for clarity. Constructors are now always present, with default initializations still conditional where needed. Removed obsolete directives from IHasAddedWho. These changes improve code readability, maintainability, and cross-platform compatibility. --- EnvelopeGenerator.Domain/Entities/Envelope.cs | 253 +++++++++--------- EnvelopeGenerator.Domain/Entities/Receiver.cs | 61 ++--- .../Entities/Signature.cs | 201 +++++++------- .../Interfaces/IHasAddedWho.cs | 4 - 4 files changed, 249 insertions(+), 270 deletions(-) diff --git a/EnvelopeGenerator.Domain/Entities/Envelope.cs b/EnvelopeGenerator.Domain/Entities/Envelope.cs index 8d1a9a11..80f31307 100644 --- a/EnvelopeGenerator.Domain/Entities/Envelope.cs +++ b/EnvelopeGenerator.Domain/Entities/Envelope.cs @@ -5,204 +5,201 @@ using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using EnvelopeGenerator.Domain.Constants; using Newtonsoft.Json; - #if NETFRAMEWORK using System.Collections.Generic; using System.Linq; #endif namespace EnvelopeGenerator.Domain.Entities -#if NET - ; -#elif NETFRAMEWORK { -#endif - -[Table("TBSIG_ENVELOPE", Schema = "dbo")] -public class Envelope : IHasAddedWhen, IHasChangedWhen -{ - public Envelope() + [Table("TBSIG_ENVELOPE", Schema = "dbo")] + public class Envelope : IHasAddedWhen, IHasChangedWhen { - // TODO: * Check the Form App and remove the default value + public Envelope() + { + // TODO: * Check the Form App and remove the default value #if NETFRAMEWORK - Id = 0; - Status = EnvelopeStatus.EnvelopeCreated; - Uuid = Guid.NewGuid().ToString(); - Message = My.Resources.Envelope.Please_read_and_sign_this_document; - Title= string.Empty; - Comment = string.Empty; - Language = "de-DE"; - SendReminderEmails = false; - FirstReminderDays = 0; - ReminderIntervalDays = 0; - CertificationType = (int)Constants.CertificationType.AdvancedElectronicSignature; - UseAccessCode = false; - Documents = Enumerable.Empty().ToList(); - Histories = Enumerable.Empty().ToList(); - EnvelopeReceivers = Enumerable.Empty().ToList(); + Id = 0; + Status = EnvelopeStatus.EnvelopeCreated; + Uuid = Guid.NewGuid().ToString(); + Message = My.Resources.Envelope.Please_read_and_sign_this_document; + Title = string.Empty; + Comment = string.Empty; + Language = "de-DE"; + SendReminderEmails = false; + FirstReminderDays = 0; + ReminderIntervalDays = 0; + CertificationType = (int)Constants.CertificationType.AdvancedElectronicSignature; + UseAccessCode = false; + Documents = Enumerable.Empty().ToList(); + Histories = Enumerable.Empty().ToList(); + EnvelopeReceivers = Enumerable.Empty().ToList(); #endif - } + } - [Key] - [DatabaseGenerated(DatabaseGeneratedOption.Identity)] - [Column("GUID")] - public int Id { get; set; } + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + [Column("GUID")] + public int Id { get; set; } - [Required] - [Column("USER_ID")] - public int UserId { get; set; } + [Required] + [Column("USER_ID")] + public int UserId { get; set; } - [Required] - [Column("STATUS")] - public EnvelopeStatus Status { get; set; } + [Required] + [Column("STATUS")] + public EnvelopeStatus Status { get; set; } - [Required] - [Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")] - public string Uuid { get; set; } + [Required] + [Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")] + public string Uuid { get; set; } - [Column("MESSAGE", TypeName = "nvarchar(max)")] - public string Message { get; set; } + [Column("MESSAGE", TypeName = "nvarchar(max)")] + public string Message { get; set; } - [Column("EXPIRES_WHEN", TypeName = "datetime")] - public DateTime? ExpiresWhen { get; set; } + [Column("EXPIRES_WHEN", TypeName = "datetime")] + public DateTime? ExpiresWhen { get; set; } - [Column("EXPIRES_WARNING_WHEN", TypeName = "datetime")] - public DateTime? ExpiresWarningWhen { get; set; } + [Column("EXPIRES_WARNING_WHEN", TypeName = "datetime")] + public DateTime? ExpiresWarningWhen { get; set; } - [Required] - [Column("ADDED_WHEN", TypeName = "datetime")] - public DateTime AddedWhen { 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_WHEN", TypeName = "datetime")] + public DateTime? ChangedWhen { get; set; } - [Column("TITLE", TypeName = "nvarchar(128)")] - public string + [Column("TITLE", TypeName = "nvarchar(128)")] + public string #if nullable ? #endif - Title { get; set; } + Title + { get; set; } - [Column("COMMENT", TypeName = "nvarchar(128)")] - public string Comment { get; set; } + [Column("COMMENT", TypeName = "nvarchar(128)")] + public string Comment { get; set; } - [Column("CONTRACT_TYPE")] - public int? ContractType { get; set; } + [Column("CONTRACT_TYPE")] + public int? ContractType { get; set; } #if NETFRAMEWORK - [NotMapped] - public string ContractTypeTranslated => My.Resources.Model.ResourceManager.GetString(ContractType.ToString()); + [NotMapped] + public string ContractTypeTranslated => My.Resources.Model.ResourceManager.GetString(ContractType.ToString()); #endif - [Column("LANGUAGE", TypeName = "nvarchar(5)")] - public string Language { get; set; } + [Column("LANGUAGE", TypeName = "nvarchar(5)")] + public string Language { get; set; } - [Column("SEND_REMINDER_EMAILS")] - public bool SendReminderEmails { get; set; } + [Column("SEND_REMINDER_EMAILS")] + public bool SendReminderEmails { get; set; } - [Column("FIRST_REMINDER_DAYS")] - public int? FirstReminderDays { get; set; } + [Column("FIRST_REMINDER_DAYS")] + public int? FirstReminderDays { get; set; } - [Column("REMINDER_INTERVAL_DAYS")] - public int? ReminderIntervalDays { get; set; } + [Column("REMINDER_INTERVAL_DAYS")] + public int? ReminderIntervalDays { get; set; } - [Column("ENVELOPE_TYPE")] - public int? EnvelopeTypeId { get; set; } + [Column("ENVELOPE_TYPE")] + public int? EnvelopeTypeId { get; set; } - [JsonIgnore] - [NotMapped] - public bool ReadOnly => EnvelopeTypeId == 2; - - [Column("CERTIFICATION_TYPE")] - public int? CertificationType { get; set; } + [JsonIgnore] + [NotMapped] + public bool ReadOnly => EnvelopeTypeId == 2; - [Column("USE_ACCESS_CODE")] - public bool UseAccessCode { get; set; } + [Column("CERTIFICATION_TYPE")] + public int? CertificationType { get; set; } - [Column("FINAL_EMAIL_TO_CREATOR")] - public int? FinalEmailToCreator { get; set; } + [Column("USE_ACCESS_CODE")] + public bool UseAccessCode { get; set; } - [Column("FINAL_EMAIL_TO_RECEIVERS")] - public int? FinalEmailToReceivers { get; set; } + [Column("FINAL_EMAIL_TO_CREATOR")] + public int? FinalEmailToCreator { get; set; } - [Column("EXPIRES_WHEN_DAYS")] - public int? ExpiresWhenDays { get; set; } + [Column("FINAL_EMAIL_TO_RECEIVERS")] + public int? FinalEmailToReceivers { get; set; } - [Column("EXPIRES_WARNING_WHEN_DAYS")] - public int? ExpiresWarningWhenDays { get; set; } + [Column("EXPIRES_WHEN_DAYS")] + public int? ExpiresWhenDays { get; set; } - [ForeignKey("UserId")] - public User User { get; set; } + [Column("EXPIRES_WARNING_WHEN_DAYS")] + public int? ExpiresWarningWhenDays { get; set; } - [Column("TFA_ENABLED")] - public bool TfaEnabled { get; set; } + [ForeignKey("UserId")] + public User User { get; set; } + + [Column("TFA_ENABLED")] + public bool TfaEnabled { get; set; } #if NETFRAMEWORK - = false; + = false; #endif - [NotMapped] - [Column("DOC_RESULT")] - public byte[] + [NotMapped] + [Column("DOC_RESULT")] + public byte[] #if nullable ? #endif - DocResult { get; set; } + DocResult + { get; set; } - [ForeignKey("EnvelopeTypeId")] - public virtual EnvelopeType + [ForeignKey("EnvelopeTypeId")] + public virtual EnvelopeType #if nullable ? #endif - Type { get; set; } + Type + { get; set; } #if NETFRAMEWORK - [NotMapped] - public string CURRENT_WORK_APP { get; set; } = "signFLOW GUI"; + [NotMapped] + public string CURRENT_WORK_APP { get; set; } = "signFLOW GUI"; - [NotMapped] - public bool IsAlreadySent => Status > EnvelopeStatus.EnvelopeSaved; + [NotMapped] + public bool IsAlreadySent => Status > EnvelopeStatus.EnvelopeSaved; #endif - public List + public List #if nullable ? #endif - Documents { get; set; } + Documents + { get; set; } - public List + public List #if nullable ? #endif - Histories { get; set; } + Histories + { get; set; } - public List + public List #if nullable ? #endif - EnvelopeReceivers { get; set; } + EnvelopeReceivers + { get; set; } -//#if NETFRAMEWORK - /// - /// Validates whether the receiver and document data are complete. - /// - public List ValidateReceiverDocumentData() - { - var errors = new List(); + //#if NETFRAMEWORK + /// + /// Validates whether the receiver and document data are complete. + /// + public List ValidateReceiverDocumentData() + { + var errors = new List(); - if (!Documents?.Any() ?? true) - errors.Add(My.Resources.Envelope.Missing_Documents); + if (!Documents?.Any() ?? true) + errors.Add(My.Resources.Envelope.Missing_Documents); - if (!EnvelopeReceivers?.Any() ?? true) - errors.Add(My.Resources.Envelope.Missing_Receivers); + if (!EnvelopeReceivers?.Any() ?? true) + errors.Add(My.Resources.Envelope.Missing_Receivers); - if (EnvelopeReceivers?.Any(r => !r.HasEmailAndName) ?? false) - errors.Add(My.Resources.Envelope.Incomplete_Receivers); + if (EnvelopeReceivers?.Any(r => !r.HasEmailAndName) ?? false) + errors.Add(My.Resources.Envelope.Incomplete_Receivers); - return errors; - } -//#endif -} - -#if NETFRAMEWORK + return errors; + } + //#endif } -#endif \ No newline at end of file +} \ No newline at end of file diff --git a/EnvelopeGenerator.Domain/Entities/Receiver.cs b/EnvelopeGenerator.Domain/Entities/Receiver.cs index e1ecaacd..fc8f1e85 100644 --- a/EnvelopeGenerator.Domain/Entities/Receiver.cs +++ b/EnvelopeGenerator.Domain/Entities/Receiver.cs @@ -1,51 +1,42 @@ -using System; -using EnvelopeGenerator.Domain.Interfaces; +using EnvelopeGenerator.Domain.Interfaces; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using System.Drawing; #if NETFRAMEWORK +using System; using System.Collections.Generic; #endif namespace EnvelopeGenerator.Domain.Entities -#if NET - ; -#elif NETFRAMEWORK { -#endif - -[Table("TBSIG_RECEIVER", Schema = "dbo")] -public class Receiver : IHasAddedWhen -{ - [Key] - [DatabaseGenerated(DatabaseGeneratedOption.Identity)] - [Column("GUID")] - public int Id { get; set; } + [Table("TBSIG_RECEIVER", Schema = "dbo")] + public class Receiver : IHasAddedWhen + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + [Column("GUID")] + public int Id { get; set; } - [Required, EmailAddress] - [Column("EMAIL_ADDRESS", TypeName = "nvarchar(250)")] - [StringLength(250)] - public string EmailAddress { get; set; } + [Required, EmailAddress] + [Column("EMAIL_ADDRESS", TypeName = "nvarchar(250)")] + [StringLength(250)] + public string EmailAddress { get; set; } - [Required] - [Column("SIGNATURE", TypeName = "nvarchar(64)")] - public string Signature { get; set; } + [Required] + [Column("SIGNATURE", TypeName = "nvarchar(64)")] + public string Signature { get; set; } - [Required] - [Column("ADDED_WHEN", TypeName = "datetime")] - public DateTime AddedWhen { get; set; } + [Required] + [Column("ADDED_WHEN", TypeName = "datetime")] + public DateTime AddedWhen { get; set; } - [Column("TOTP_SECRET_KEY", TypeName = "nvarchar(MAX)")] - public string TotpSecretkey { get; set; } + [Column("TOTP_SECRET_KEY", TypeName = "nvarchar(MAX)")] + public string TotpSecretkey { get; set; } - [Column("TFA_REG_DEADLINE", TypeName = "datetime")] - public DateTime? TfaRegDeadline { get; set; } + [Column("TFA_REG_DEADLINE", TypeName = "datetime")] + public DateTime? TfaRegDeadline { get; set; } - public List EnvelopeReceivers { get; set; } + public List EnvelopeReceivers { get; set; } - public string GetSignature() => EmailAddress.ToUpperInvariant().GetChecksum(); -} - -#if NETFRAMEWORK + public string GetSignature() => EmailAddress.ToUpperInvariant().GetChecksum(); } -#endif \ No newline at end of file +} \ No newline at end of file diff --git a/EnvelopeGenerator.Domain/Entities/Signature.cs b/EnvelopeGenerator.Domain/Entities/Signature.cs index e3c77b18..e673c12a 100644 --- a/EnvelopeGenerator.Domain/Entities/Signature.cs +++ b/EnvelopeGenerator.Domain/Entities/Signature.cs @@ -8,127 +8,122 @@ using System.Collections.Generic; #endif namespace EnvelopeGenerator.Domain.Entities -#if NET - ; -#elif NETFRAMEWORK { -#endif - -[Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT", Schema = "dbo")] -public class Signature : ISignature, IHasReceiver, IHasAddedWhen, IHasChangedWhen, IHasChangedWho -{ - public Signature() + [Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT", Schema = "dbo")] + public class Signature : ISignature, IHasReceiver, IHasAddedWhen, IHasChangedWhen, IHasChangedWho { - // TODO: * Check the Form App and remove the default value + public Signature() + { + // TODO: * Check the Form App and remove the default value #if NETFRAMEWORK - Id = -1; - Required = false; - ReadOnly = false; - AnnotationIndex = 0; + Id = -1; + Required = false; + ReadOnly = false; + AnnotationIndex = 0; #endif - } - - [Key] - [DatabaseGenerated(DatabaseGeneratedOption.Identity)] - [Column("GUID")] - public int Id { get; set; } - - [Required] - [Column("DOCUMENT_ID")] - public int DocumentId { get; set; } - - [Required] - [Column("RECEIVER_ID")] - public int ReceiverId { get; set; } - - [Required] - [Column("ELEMENT_TYPE")] - [DefaultValue(0)] - public int ElementType { get; set; } - - [Required] - [Column("POSITION_X")] - [DefaultValue(0)] - public double X { get; set; } - - [Required] - [Column("POSITION_Y")] - [DefaultValue(0)] - public double Y { get; set; } - - [Required] - [Column("WIDTH")] - [DefaultValue(0)] - public double Width { get; set; } - - [Required] - [Column("HEIGHT")] - [DefaultValue(0)] - public double Height { get; set; } - - [Required] - [Column("PAGE")] - [DefaultValue(1)] - public int Page { get; set; } - - [Required] - [Column("REQUIRED")] - [DefaultValue(false)] - public bool Required { get; set; } - - [Column("TOOLTIP")] - public string Tooltip { get; set; } - - [Required] - [Column("READ_ONLY")] - [DefaultValue(false)] - public bool ReadOnly { get; set; } - - [Required] - [Column("ANNOTATION_INDEX")] - [DefaultValue(0)] - public int AnnotationIndex { get; set; } - - [Required] - [Column("ADDED_WHEN", TypeName = "datetime")] - [DefaultValue("GETDATE()")] - public DateTime AddedWhen { get; set; } - - [Column("CHANGED_WHEN", TypeName = "datetime")] - public DateTime? ChangedWhen { get; set; } - - [Column("CHANGED_WHO", TypeName = "nvarchar(100)")] - public string + } + + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + [Column("GUID")] + public int Id { get; set; } + + [Required] + [Column("DOCUMENT_ID")] + public int DocumentId { get; set; } + + [Required] + [Column("RECEIVER_ID")] + public int ReceiverId { get; set; } + + [Required] + [Column("ELEMENT_TYPE")] + [DefaultValue(0)] + public int ElementType { get; set; } + + [Required] + [Column("POSITION_X")] + [DefaultValue(0)] + public double X { get; set; } + + [Required] + [Column("POSITION_Y")] + [DefaultValue(0)] + public double Y { get; set; } + + [Required] + [Column("WIDTH")] + [DefaultValue(0)] + public double Width { get; set; } + + [Required] + [Column("HEIGHT")] + [DefaultValue(0)] + public double Height { get; set; } + + [Required] + [Column("PAGE")] + [DefaultValue(1)] + public int Page { get; set; } + + [Required] + [Column("REQUIRED")] + [DefaultValue(false)] + public bool Required { get; set; } + + [Column("TOOLTIP")] + public string Tooltip { get; set; } + + [Required] + [Column("READ_ONLY")] + [DefaultValue(false)] + public bool ReadOnly { get; set; } + + [Required] + [Column("ANNOTATION_INDEX")] + [DefaultValue(0)] + public int AnnotationIndex { get; set; } + + [Required] + [Column("ADDED_WHEN", TypeName = "datetime")] + [DefaultValue("GETDATE()")] + public DateTime AddedWhen { get; set; } + + [Column("CHANGED_WHEN", TypeName = "datetime")] + public DateTime? ChangedWhen { get; set; } + + [Column("CHANGED_WHO", TypeName = "nvarchar(100)")] + public string #if nullable ? #endif - ChangedWho { get; set; } + ChangedWho + { get; set; } - [ForeignKey("DocumentId")] - public virtual Document Document { get; set; } + [ForeignKey("DocumentId")] + public virtual Document Document { get; set; } - [ForeignKey("ReceiverId")] - public virtual Receiver + [ForeignKey("ReceiverId")] + public virtual Receiver #if nullable ? #endif - Receiver { get; set; } + Receiver + { get; set; } - public virtual IEnumerable + public virtual IEnumerable #if nullable ? #endif - Annotations { get; set; } + Annotations + { get; set; } #if NETFRAMEWORK - [NotMapped] - public double Top => Math.Round(Y, 5); + [NotMapped] + public double Top => Math.Round(Y, 5); - [NotMapped] - public double Left => Math.Round(X, 5); + [NotMapped] + public double Left => Math.Round(X, 5); #endif -} - -#if NETFRAMEWORK } -#endif \ No newline at end of file +} \ No newline at end of file diff --git a/EnvelopeGenerator.Domain/Interfaces/IHasAddedWho.cs b/EnvelopeGenerator.Domain/Interfaces/IHasAddedWho.cs index 23018845..0ec5566b 100644 --- a/EnvelopeGenerator.Domain/Interfaces/IHasAddedWho.cs +++ b/EnvelopeGenerator.Domain/Interfaces/IHasAddedWho.cs @@ -1,7 +1,3 @@ -#if NETFRAMEWORK -using System; -#endif - namespace EnvelopeGenerator.Domain.Interfaces { public interface IHasAddedWho