feat(Receiver): EnvelopeReceiver-Eigenschaft zu Entität, ReadDto und Updated Dto hinzugefügt.

This commit is contained in:
Developer 02 2025-02-05 17:17:44 +01:00
parent 311009bc97
commit ee49538f1e
3 changed files with 46 additions and 44 deletions

View File

@ -4,23 +4,24 @@ using DigitalData.EmailProfilerDispatcher.Abstraction.Attributes;
using EnvelopeGenerator.Application.DTOs.EnvelopeReceiver; using EnvelopeGenerator.Application.DTOs.EnvelopeReceiver;
using System.Text.Json.Serialization; using System.Text.Json.Serialization;
namespace EnvelopeGenerator.Application.DTOs.Receiver namespace EnvelopeGenerator.Application.DTOs.Receiver;
public record ReceiverReadDto(
int Id,
string EmailAddress,
string Signature,
DateTime AddedWhen
) : BaseDTO<int>(Id), IUnique<int>
{ {
public record ReceiverReadDto( [JsonIgnore]
int Id, public IEnumerable<EnvelopeReceiverBasicDto>? EnvelopeReceivers { get; init; }
string EmailAddress,
string Signature,
DateTime AddedWhen
) : BaseDTO<int>(Id), IUnique<int>
{
[JsonIgnore]
public IEnumerable<EnvelopeReceiverBasicDto>? EnvelopeReceivers { get; init; }
public string? LastUsedName => EnvelopeReceivers?.LastOrDefault()?.Name; public string? LastUsedName => EnvelopeReceivers?.LastOrDefault()?.Name;
public string? TotpSecretkey { get; set; } = null; public string? TotpSecretkey { get; set; } = null;
[TemplatePlaceholder("[TFA_QR_EXPIRATION]")] [TemplatePlaceholder("[TFA_QR_EXPIRATION]")]
public DateTime? TotpExpiration { get; set; } = null; public DateTime? TotpExpiration { get; set; } = null;
};
} public DateTime? TfaRegDeadline { get; set; }
};

View File

@ -1,6 +1,5 @@
using DigitalData.Core.Abstractions; using DigitalData.Core.Abstractions;
namespace EnvelopeGenerator.Application.DTOs.Receiver namespace EnvelopeGenerator.Application.DTOs.Receiver;
{
public record ReceiverUpdateDto(int Id, string? TotpSecretkey = null, DateTime? TotpExpiration = null) : IUnique<int>; public record ReceiverUpdateDto(int Id, string? TotpSecretkey = null, DateTime? TotpExpiration = null, DateTime? TfaRegDeadline = null) : IUnique<int>;
}

View File

@ -2,34 +2,36 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace EnvelopeGenerator.Domain.Entities namespace EnvelopeGenerator.Domain.Entities;
[Table("TBSIG_RECEIVER", Schema = "dbo")]
public class Receiver : IUnique<int>
{ {
[Table("TBSIG_RECEIVER", Schema = "dbo")] [Key]
public class Receiver : IUnique<int> [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
{ [Column("GUID")]
[Key] public int Id { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")] [Required, EmailAddress]
public int Id { get; set; } [Column("EMAIL_ADDRESS", TypeName = "nvarchar(128)")]
public required string EmailAddress { get; set; }
[Required, EmailAddress]
[Column("EMAIL_ADDRESS", TypeName = "nvarchar(128)")]
public required string EmailAddress { get; set; }
[Required] [Required]
[Column("SIGNATURE", TypeName = "nvarchar(64)")] [Column("SIGNATURE", TypeName = "nvarchar(64)")]
public required string Signature { get; set; } public required string Signature { 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("TOTP_SECRET_KEY", TypeName = "nvarchar(MAX)")] [Column("TOTP_SECRET_KEY", TypeName = "nvarchar(MAX)")]
public string? TotpSecretkey { get; set; } public string? TotpSecretkey { get; set; }
[Column("TOTP_EXPIRATION", TypeName = "datetime")] [Column("TOTP_EXPIRATION", TypeName = "datetime")]
public DateTime? TotpExpiration { get; set; } public DateTime? TotpExpiration { get; set; }
public IEnumerable<EnvelopeReceiver>? EnvelopeReceivers { get; init; } [Column("TFA_REG_DEADLINE", TypeName = "datetime")]
} public DateTime? TfaRegDeadline { get; set; }
public IEnumerable<EnvelopeReceiver>? EnvelopeReceivers { get; init; }
} }