Compare commits
38 Commits
feat/db-mi
...
d8200993af
| Author | SHA1 | Date | |
|---|---|---|---|
| d8200993af | |||
| ee98142405 | |||
| c27337a6f5 | |||
| a09ea990ab | |||
| 05888bc57d | |||
| 39af0fe4fd | |||
| f4c61e3bc7 | |||
| 3f5a584399 | |||
| 6aec854a64 | |||
| c360bde103 | |||
| 82d4b0e740 | |||
| 12519f06f7 | |||
| a2471a0c35 | |||
| 4251a24fe9 | |||
| 63a830c8e3 | |||
| acee28ffce | |||
| 50a541c5bf | |||
| d43877db62 | |||
| 242e66cd8d | |||
| e44fa0b7bd | |||
| 4201f7820a | |||
| e095074c22 | |||
| 412f19547f | |||
| b8c00884a9 | |||
| 51d49d68ba | |||
| 4d5ee2b461 | |||
| 8a79ee4126 | |||
| cde9896c01 | |||
| c7d26a87b0 | |||
| 17ceb1f72a | |||
| b2c396c3b2 | |||
|
|
286e17a900 | ||
|
|
a21db6d6c5 | ||
|
|
fe7030b9d7 | ||
|
|
888c04b5c9 | ||
| de2cc62f95 | |||
| 0cfa732d87 | |||
|
|
b14d9169f2 |
@@ -1,12 +0,0 @@
|
|||||||
using DigitalData.Core.Abstraction.Application.Repository;
|
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Application.Contracts.Repositories;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
///
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("Use Read-method returning IReadQuery<TEntity> instead.")]
|
|
||||||
public interface IEnvelopeCertificateRepository : ICRUDRepository<EnvelopeCertificate, int>
|
|
||||||
{
|
|
||||||
}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
using DigitalData.Core.Abstraction.Application;
|
|
||||||
using EnvelopeGenerator.Application.DTOs;
|
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Application.Contracts.Services;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
///
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("Use MediatR")]
|
|
||||||
public interface IEnvelopeCertificateService : IBasicCRUDService<EnvelopeCertificateDto, EnvelopeCertificate, int>
|
|
||||||
{
|
|
||||||
}
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
using Microsoft.AspNetCore.Mvc;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Application.DTOs;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Data Transfer Object representing certificate information for an envelope.
|
|
||||||
/// </summary>
|
|
||||||
[ApiExplorerSettings(IgnoreApi = true)]
|
|
||||||
public class EnvelopeCertificateDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the unique identifier of the certificate.
|
|
||||||
/// </summary>
|
|
||||||
public int Id { get; init; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the envelope ID associated with the certificate.
|
|
||||||
/// </summary>
|
|
||||||
public int EnvelopeId { get; init; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the UUID of the envelope.
|
|
||||||
/// </summary>
|
|
||||||
public string EnvelopeUuid { get; init; } = string.Empty;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the subject of the envelope.
|
|
||||||
/// </summary>
|
|
||||||
public string EnvelopeSubject { get; init; } = string.Empty;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the ID of the creator of the envelope.
|
|
||||||
/// </summary>
|
|
||||||
public int CreatorId { get; init; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the name of the creator.
|
|
||||||
/// </summary>
|
|
||||||
public string CreatorName { get; init; } = string.Empty;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the email address of the creator.
|
|
||||||
/// </summary>
|
|
||||||
public string CreatorEmail { get; init; } = string.Empty;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the current status of the envelope.
|
|
||||||
/// </summary>
|
|
||||||
public int EnvelopeStatus { get; init; }
|
|
||||||
}
|
|
||||||
@@ -27,7 +27,6 @@ public class MappingProfile : Profile
|
|||||||
CreateMap<DocumentStatus, DocumentStatusDto>();
|
CreateMap<DocumentStatus, DocumentStatusDto>();
|
||||||
CreateMap<EmailTemplate, EmailTemplateDto>();
|
CreateMap<EmailTemplate, EmailTemplateDto>();
|
||||||
CreateMap<Envelope, EnvelopeDto>();
|
CreateMap<Envelope, EnvelopeDto>();
|
||||||
CreateMap<EnvelopeCertificate, EnvelopeCertificateDto>();
|
|
||||||
CreateMap<EnvelopeDocument, EnvelopeDocumentDto>();
|
CreateMap<EnvelopeDocument, EnvelopeDocumentDto>();
|
||||||
CreateMap<Domain.Entities.EnvelopeHistory, EnvelopeHistoryDto>();
|
CreateMap<Domain.Entities.EnvelopeHistory, EnvelopeHistoryDto>();
|
||||||
CreateMap<Domain.Entities.EnvelopeHistory, EnvelopeHistoryCreateDto>();
|
CreateMap<Domain.Entities.EnvelopeHistory, EnvelopeHistoryCreateDto>();
|
||||||
@@ -45,7 +44,6 @@ public class MappingProfile : Profile
|
|||||||
CreateMap<DocumentStatusDto, DocumentStatus>();
|
CreateMap<DocumentStatusDto, DocumentStatus>();
|
||||||
CreateMap<EmailTemplateDto, EmailTemplate>();
|
CreateMap<EmailTemplateDto, EmailTemplate>();
|
||||||
CreateMap<EnvelopeDto, Envelope>();
|
CreateMap<EnvelopeDto, Envelope>();
|
||||||
CreateMap<EnvelopeCertificateDto, EnvelopeCertificate>();
|
|
||||||
CreateMap<EnvelopeDocumentDto, EnvelopeDocument>();
|
CreateMap<EnvelopeDocumentDto, EnvelopeDocument>();
|
||||||
CreateMap<EnvelopeHistoryDto, Domain.Entities.EnvelopeHistory>();
|
CreateMap<EnvelopeHistoryDto, Domain.Entities.EnvelopeHistory>();
|
||||||
CreateMap<EnvelopeHistoryCreateDto, Domain.Entities.EnvelopeHistory>();
|
CreateMap<EnvelopeHistoryCreateDto, Domain.Entities.EnvelopeHistory>();
|
||||||
@@ -54,7 +52,7 @@ public class MappingProfile : Profile
|
|||||||
CreateMap<ReceiverReadDto, Domain.Entities.Receiver>().ForMember(rcv => rcv.EnvelopeReceivers, rcvReadDto => rcvReadDto.Ignore());
|
CreateMap<ReceiverReadDto, Domain.Entities.Receiver>().ForMember(rcv => rcv.EnvelopeReceivers, rcvReadDto => rcvReadDto.Ignore());
|
||||||
CreateMap<ReceiverCreateDto, Domain.Entities.Receiver>();
|
CreateMap<ReceiverCreateDto, Domain.Entities.Receiver>();
|
||||||
CreateMap<ReceiverUpdateDto, Domain.Entities.Receiver>();
|
CreateMap<ReceiverUpdateDto, Domain.Entities.Receiver>();
|
||||||
CreateMap<EnvelopeReceiverBase, EnvelopeReceiverBasicDto>();
|
CreateMap<Domain.Entities.EnvelopeReceiver, EnvelopeReceiverBasicDto>();
|
||||||
CreateMap<EnvelopeReceiverReadOnlyCreateDto, Domain.Entities.EnvelopeReceiverReadOnly>();
|
CreateMap<EnvelopeReceiverReadOnlyCreateDto, Domain.Entities.EnvelopeReceiverReadOnly>();
|
||||||
CreateMap<EnvelopeReceiverReadOnlyUpdateDto, Domain.Entities.EnvelopeReceiverReadOnly>();
|
CreateMap<EnvelopeReceiverReadOnlyUpdateDto, Domain.Entities.EnvelopeReceiverReadOnly>();
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ public static class DependencyInjection
|
|||||||
services.TryAddScoped<IDocumentStatusService, DocumentStatusService>();
|
services.TryAddScoped<IDocumentStatusService, DocumentStatusService>();
|
||||||
services.TryAddScoped<IEmailTemplateService, EmailTemplateService>();
|
services.TryAddScoped<IEmailTemplateService, EmailTemplateService>();
|
||||||
services.TryAddScoped<IEnvelopeService, EnvelopeService>();
|
services.TryAddScoped<IEnvelopeService, EnvelopeService>();
|
||||||
services.TryAddScoped<IEnvelopeCertificateService, EnvelopeCertificateService>();
|
|
||||||
services.TryAddScoped<IEnvelopeDocumentService, EnvelopeDocumentService>();
|
services.TryAddScoped<IEnvelopeDocumentService, EnvelopeDocumentService>();
|
||||||
services.TryAddScoped<IEnvelopeReceiverService, EnvelopeReceiverService>();
|
services.TryAddScoped<IEnvelopeReceiverService, EnvelopeReceiverService>();
|
||||||
services.TryAddScoped<IEnvelopeTypeService, EnvelopeTypeService>();
|
services.TryAddScoped<IEnvelopeTypeService, EnvelopeTypeService>();
|
||||||
|
|||||||
@@ -20,11 +20,22 @@
|
|||||||
<PackageReference Include="DigitalData.EmailProfilerDispatcher" Version="3.1.1" />
|
<PackageReference Include="DigitalData.EmailProfilerDispatcher" Version="3.1.1" />
|
||||||
<PackageReference Include="MediatR" Version="12.5.0" />
|
<PackageReference Include="MediatR" Version="12.5.0" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.18" />
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.18" />
|
||||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
|
|
||||||
<PackageReference Include="Otp.NET" Version="1.4.0" />
|
<PackageReference Include="Otp.NET" Version="1.4.0" />
|
||||||
<PackageReference Include="QRCoder" Version="1.6.0" />
|
<PackageReference Include="QRCoder" Version="1.6.0" />
|
||||||
<PackageReference Include="QRCoder-ImageSharp" Version="0.10.0" />
|
<PackageReference Include="QRCoder-ImageSharp" Version="0.10.0" />
|
||||||
<PackageReference Include="UserManager" Version="1.1.1" />
|
<PackageReference Include="UserManager" Version="1.1.3" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
|
||||||
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
|
||||||
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
|
||||||
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
using AutoMapper;
|
|
||||||
using DigitalData.Core.Application;
|
|
||||||
using EnvelopeGenerator.Application.DTOs;
|
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
|
||||||
using EnvelopeGenerator.Application.Contracts.Repositories;
|
|
||||||
using EnvelopeGenerator.Application.Contracts.Services;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Application.Services;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
///
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("Use MediatR")]
|
|
||||||
public class EnvelopeCertificateService : BasicCRUDService<IEnvelopeCertificateRepository, EnvelopeCertificateDto, EnvelopeCertificate, int>, IEnvelopeCertificateService
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
///
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="repository"></param>
|
|
||||||
/// <param name="mapper"></param>
|
|
||||||
public EnvelopeCertificateService(IEnvelopeCertificateRepository repository, IMapper mapper)
|
|
||||||
: base(repository, mapper)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -47,7 +47,7 @@ private readonly IAuthenticator _authenticator;
|
|||||||
_envRcvService = envelopeReceiverService;
|
_envRcvService = envelopeReceiverService;
|
||||||
_dConfig = dispatcherConfigOptions.Value;
|
_dConfig = dispatcherConfigOptions.Value;
|
||||||
_configService = configService;
|
_configService = configService;
|
||||||
_placeholders = mailConfig.Value.Placeholders;
|
_placeholders = new Dictionary<string, string>(mailConfig.Value.Placeholders);
|
||||||
_authenticator = authenticator;
|
_authenticator = authenticator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -84,8 +84,8 @@
|
|||||||
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="DigitalData.Modules.Logging, Version=2.6.5.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\DigitalData.Modules.Logging.2.6.5\lib\net462\DigitalData.Modules.Logging.dll</HintPath>
|
<HintPath>..\packages\DigitalData.Modules.Logging.2.6.5\lib\net462\DigitalData.Modules.Logging.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DigitalData.UserManager.Domain, Version=3.2.1.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="DigitalData.UserManager.Domain, Version=3.2.3.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\UserManager.Domain.3.2.1\lib\net462\DigitalData.UserManager.Domain.dll</HintPath>
|
<HintPath>..\packages\UserManager.Domain.3.2.3\lib\net462\DigitalData.UserManager.Domain.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
|
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
|
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ Public Class EnvelopeModel
|
|||||||
Dim oEnvelope = New Envelope() With {
|
Dim oEnvelope = New Envelope() With {
|
||||||
.Id = pRow.ItemEx("GUID", 0),
|
.Id = pRow.ItemEx("GUID", 0),
|
||||||
.Title = pRow.ItemEx("TITLE", ""),
|
.Title = pRow.ItemEx("TITLE", ""),
|
||||||
|
.Comment = pRow.ItemEx("COMMENT", ""),
|
||||||
.EnvelopeTypeId = pRow.ItemEx("ENVELOPE_TYPE", 0),
|
.EnvelopeTypeId = pRow.ItemEx("ENVELOPE_TYPE", 0),
|
||||||
.ContractType = pRow.ItemEx("CONTRACT_TYPE", 0),
|
.ContractType = pRow.ItemEx("CONTRACT_TYPE", 0),
|
||||||
.Uuid = pRow.ItemEx("ENVELOPE_UUID", ""),
|
.Uuid = pRow.ItemEx("ENVELOPE_UUID", ""),
|
||||||
@@ -63,7 +64,7 @@ Public Class EnvelopeModel
|
|||||||
oEnvelope.Receivers = ReceiverModel.ListEnvelopeReceivers(oEnvelope.Id)
|
oEnvelope.Receivers = ReceiverModel.ListEnvelopeReceivers(oEnvelope.Id)
|
||||||
oEnvelope.Documents = DocumentModel.List(oEnvelope.Id)
|
oEnvelope.Documents = DocumentModel.List(oEnvelope.Id)
|
||||||
oEnvelope.History = HistoryModel.List(oEnvelope.Id)
|
oEnvelope.History = HistoryModel.List(oEnvelope.Id)
|
||||||
oEnvelope.EnvelopeType = EnvelopeTypeModel.GetById(oEnvelope.EnvelopeTypeId)
|
oEnvelope.Type = EnvelopeTypeModel.GetById(oEnvelope.EnvelopeTypeId)
|
||||||
|
|
||||||
Return oEnvelope
|
Return oEnvelope
|
||||||
End Function
|
End Function
|
||||||
|
|||||||
@@ -57,7 +57,9 @@ Public Class ActionService
|
|||||||
Public Function ResendReceiver(pEnvelope As Domain.Entities.Envelope, pReceiver As Receiver) As Boolean
|
Public Function ResendReceiver(pEnvelope As Domain.Entities.Envelope, pReceiver As Receiver) As Boolean
|
||||||
Return EmailService.SendDocumentReceivedEmail(pEnvelope, pReceiver)
|
Return EmailService.SendDocumentReceivedEmail(pEnvelope, pReceiver)
|
||||||
End Function
|
End Function
|
||||||
|
Public Function ManuallySendAccessCode(pEnvelope As Domain.Entities.Envelope, pReceiver As Receiver) As Boolean
|
||||||
|
Return EmailService.SendDocumentAccessCodeReceivedEmail(pEnvelope, pReceiver)
|
||||||
|
End Function
|
||||||
|
|
||||||
Public Function DeleteEnvelope(pEnvelope As Domain.Entities.Envelope, pReason As String) As Boolean
|
Public Function DeleteEnvelope(pEnvelope As Domain.Entities.Envelope, pReason As String) As Boolean
|
||||||
Dim oStatus As EnvelopeStatus
|
Dim oStatus As EnvelopeStatus
|
||||||
|
|||||||
@@ -325,7 +325,11 @@ Namespace My.Resources
|
|||||||
Return ResourceManager.GetString("Invitation successfully resend", resourceCulture)
|
Return ResourceManager.GetString("Invitation successfully resend", resourceCulture)
|
||||||
End Get
|
End Get
|
||||||
End Property
|
End Property
|
||||||
|
Public Shared ReadOnly Property AccessCode_successfully_send() As String
|
||||||
|
Get
|
||||||
|
Return ResourceManager.GetString("AccessCode manually send", resourceCulture)
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
'''<summary>
|
'''<summary>
|
||||||
''' Sucht eine lokalisierte Zeichenfolge, die Fehlendes Dokument ähnelt.
|
''' Sucht eine lokalisierte Zeichenfolge, die Fehlendes Dokument ähnelt.
|
||||||
'''</summary>
|
'''</summary>
|
||||||
|
|||||||
@@ -43,5 +43,5 @@
|
|||||||
<package id="System.Text.Json" version="8.0.5" targetFramework="net462" />
|
<package id="System.Text.Json" version="8.0.5" targetFramework="net462" />
|
||||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
||||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
||||||
<package id="UserManager.Domain" version="3.2.1" targetFramework="net462" />
|
<package id="UserManager.Domain" version="3.2.3" targetFramework="net462" />
|
||||||
</packages>
|
</packages>
|
||||||
@@ -2,7 +2,12 @@
|
|||||||
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")]
|
[Table("TBSIG_CONFIG", Schema = "dbo")]
|
||||||
public class Config
|
public class Config
|
||||||
{
|
{
|
||||||
@@ -20,4 +25,7 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[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
|
||||||
@@ -6,15 +6,30 @@ using System;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT", Schema = "dbo")]
|
[Table("TBSIG_DOCUMENT_RECEIVER_ELEMENT", Schema = "dbo")]
|
||||||
public class DocumentReceiverElement
|
public class DocumentReceiverElement
|
||||||
|
{
|
||||||
|
public DocumentReceiverElement()
|
||||||
{
|
{
|
||||||
// TODO: * Check the Form App and remove the default value
|
// TODO: * Check the Form App and remove the default value
|
||||||
|
#if NETFRAMEWORK
|
||||||
|
Id = -1;
|
||||||
|
Required = false;
|
||||||
|
ReadOnly = false;
|
||||||
|
AnnotationIndex = 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
[Key]
|
[Key]
|
||||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||||
[Column("GUID")]
|
[Column("GUID")]
|
||||||
public int Id { get; set; } = -1;
|
public int Id { get; set; }
|
||||||
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("DOCUMENT_ID")]
|
[Column("DOCUMENT_ID")]
|
||||||
@@ -54,26 +69,23 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[DefaultValue(1)]
|
[DefaultValue(1)]
|
||||||
public int Page { get; set; }
|
public int Page { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("REQUIRED")]
|
[Column("REQUIRED")]
|
||||||
[DefaultValue(false)]
|
[DefaultValue(false)]
|
||||||
public bool Required { get; set; } = false;
|
public bool Required { get; set; }
|
||||||
|
|
||||||
[Column("TOOLTIP")]
|
[Column("TOOLTIP")]
|
||||||
public string Tooltip { get; set; }
|
public string Tooltip { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("READ_ONLY")]
|
[Column("READ_ONLY")]
|
||||||
[DefaultValue(false)]
|
[DefaultValue(false)]
|
||||||
public bool ReadOnly { get; set; } = false;
|
public bool ReadOnly { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("ANNOTATION_INDEX")]
|
[Column("ANNOTATION_INDEX")]
|
||||||
[DefaultValue(0)]
|
[DefaultValue(0)]
|
||||||
public int AnnotationIndex { get; set; } = 0;
|
public int AnnotationIndex { get; set; }
|
||||||
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("ADDED_WHEN", TypeName = "datetime")]
|
[Column("ADDED_WHEN", TypeName = "datetime")]
|
||||||
@@ -89,10 +101,15 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[ForeignKey("ReceiverId")]
|
[ForeignKey("ReceiverId")]
|
||||||
public virtual Receiver Receiver { get; set; }
|
public virtual Receiver Receiver { get; set; }
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public double Top => Math.Round(Y, 5);
|
public double Top => Math.Round(Y, 5);
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public double Left => Math.Round(X, 5);
|
public double Left => Math.Round(X, 5);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -5,10 +5,23 @@ using System;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_DOCUMENT_STATUS", Schema = "dbo")]
|
[Table("TBSIG_DOCUMENT_STATUS", Schema = "dbo")]
|
||||||
public class DocumentStatus
|
public class DocumentStatus
|
||||||
{
|
{
|
||||||
|
public DocumentStatus()
|
||||||
|
{
|
||||||
|
// TODO: * check Form Application and remove default value
|
||||||
|
#if NETFRAMEWORK
|
||||||
|
Status = Constants.DocumentStatus.Created;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
[Key]
|
[Key]
|
||||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||||
[Column("GUID")]
|
[Column("GUID")]
|
||||||
@@ -22,28 +35,14 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[Column("RECEIVER_ID")]
|
[Column("RECEIVER_ID")]
|
||||||
public int ReceiverId { get; set; }
|
public int ReceiverId { get; set; }
|
||||||
|
|
||||||
// TODO: * check Form Application and remove default value
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("STATUS")]
|
[Column("STATUS")]
|
||||||
public Constants.DocumentStatus Status { get; set; } = Constants.DocumentStatus.Created;
|
public Constants.DocumentStatus Status { get; set; }
|
||||||
|
|
||||||
[Column("STATUS_CHANGED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime StatusChangedWhen { get; set; }
|
|
||||||
|
|
||||||
[Column("VALUE", TypeName = "nvarchar(max)")]
|
[Column("VALUE", TypeName = "nvarchar(max)")]
|
||||||
public string Value { get; set; }
|
public string Value { get; set; }
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ADDED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime AddedWhen { get; set; }
|
|
||||||
|
|
||||||
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime ChangedWhen { get; set; }
|
|
||||||
|
|
||||||
[ForeignKey("EnvelopeId")]
|
|
||||||
public virtual Envelope Envelope { get; set; }
|
|
||||||
|
|
||||||
[ForeignKey("ReceiverId")]
|
|
||||||
public virtual Receiver Receiver { get; set; }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -6,7 +6,12 @@ using System;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_EMAIL_TEMPLATE", Schema = "dbo")]
|
[Table("TBSIG_EMAIL_TEMPLATE", Schema = "dbo")]
|
||||||
public class EmailTemplate
|
public class EmailTemplate
|
||||||
{
|
{
|
||||||
@@ -32,4 +37,7 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
||||||
public DateTime ChangedWhen { get; set; }
|
public DateTime ChangedWhen { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -8,141 +8,153 @@ using System.Linq;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_ENVELOPE", Schema = "dbo")]
|
[Table("TBSIG_ENVELOPE", Schema = "dbo")]
|
||||||
public class Envelope
|
public class Envelope
|
||||||
|
{
|
||||||
|
public Envelope()
|
||||||
{
|
{
|
||||||
// TODO: * Check the Form App and remove the default value
|
// TODO: * Check the Form App and remove the default value
|
||||||
|
#if NETFRAMEWORK
|
||||||
|
Id = 0;
|
||||||
|
Status = (int)Constants.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<EnvelopeDocument>().ToList();
|
||||||
|
History = Enumerable.Empty<EnvelopeHistory>().ToList();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
[Key]
|
[Key]
|
||||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||||
[Column("GUID")]
|
[Column("GUID")]
|
||||||
public int Id { get; set; } = 0;
|
public int Id { get; set; }
|
||||||
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("USER_ID")]
|
[Column("USER_ID")]
|
||||||
public int UserId { get; set; }
|
public int UserId { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("STATUS")]
|
[Column("STATUS")]
|
||||||
public int Status { get; set; } = (int)Constants.EnvelopeStatus.EnvelopeCreated;
|
public int Status { get; set; }
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public string StatusName => ((Constants.EnvelopeStatus)Status).ToString();
|
|
||||||
|
|
||||||
// TODO: The default value is set to 0. Check the Form App to remove this
|
|
||||||
[Required]
|
[Required]
|
||||||
[Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")]
|
[Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")]
|
||||||
public string Uuid { get; set; } = Guid.NewGuid().ToString();
|
public string Uuid { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("MESSAGE", TypeName = "nvarchar(max)")]
|
[Column("MESSAGE", TypeName = "nvarchar(max)")]
|
||||||
public string Message { get; set; } = My.Resources.Envelope.Please_read_and_sign_this_document;
|
public string Message { get; set; }
|
||||||
|
|
||||||
[Column("EXPIRES_WHEN", TypeName = "datetime")]
|
[Column("EXPIRES_WHEN", TypeName = "datetime")]
|
||||||
public DateTime ExpiresWhen { get; set; }
|
public DateTime? ExpiresWhen { get; set; }
|
||||||
|
|
||||||
[Column("EXPIRES_WARNING_WHEN", TypeName = "datetime")]
|
[Column("EXPIRES_WARNING_WHEN", TypeName = "datetime")]
|
||||||
public DateTime ExpiresWarningWhen { get; set; }
|
public DateTime? ExpiresWarningWhen { 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; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("TITLE", TypeName = "nvarchar(128)")]
|
[Column("TITLE", TypeName = "nvarchar(128)")]
|
||||||
public string Title { get; set; } = string.Empty;
|
public string
|
||||||
|
#if NET
|
||||||
|
?
|
||||||
|
#endif
|
||||||
|
Title { get; set; }
|
||||||
|
|
||||||
|
[Column("COMMENT", TypeName = "nvarchar(128)")]
|
||||||
|
public string Comment { get; set; }
|
||||||
|
|
||||||
[Column("CONTRACT_TYPE")]
|
[Column("CONTRACT_TYPE")]
|
||||||
public int ContractType { get; set; }
|
public int? ContractType { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
#if NETFRAMEWORK
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public string ContractTypeTranslated => My.Resources.Model.ResourceManager.GetString(ContractType.ToString());
|
public string ContractTypeTranslated => My.Resources.Model.ResourceManager.GetString(ContractType.ToString());
|
||||||
|
#endif
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("LANGUAGE", TypeName = "nvarchar(5)")]
|
[Column("LANGUAGE", TypeName = "nvarchar(5)")]
|
||||||
public string Language { get; set; } = "de-DE";
|
public string Language { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("SEND_REMINDER_EMAILS")]
|
[Column("SEND_REMINDER_EMAILS")]
|
||||||
public bool SendReminderEmails { get; set; } = false;
|
public bool SendReminderEmails { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("FIRST_REMINDER_DAYS")]
|
[Column("FIRST_REMINDER_DAYS")]
|
||||||
public int FirstReminderDays { get; set; } = 0;
|
public int? FirstReminderDays { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("REMINDER_INTERVAL_DAYS")]
|
[Column("REMINDER_INTERVAL_DAYS")]
|
||||||
public int ReminderIntervalDays { get; set; } = 0;
|
public int? ReminderIntervalDays { get; set; }
|
||||||
|
|
||||||
[Column("ENVELOPE_TYPE")]
|
[Column("ENVELOPE_TYPE")]
|
||||||
public int EnvelopeTypeId { get; set; }
|
public int? EnvelopeTypeId { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("CERTIFICATION_TYPE")]
|
[Column("CERTIFICATION_TYPE")]
|
||||||
public int CertificationType { get; set; } = (int)Constants.CertificationType.AdvancedElectronicSignature;
|
public int? CertificationType { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("USE_ACCESS_CODE")]
|
[Column("USE_ACCESS_CODE")]
|
||||||
public bool UseAccessCode { get; set; } = false;
|
public bool UseAccessCode { get; set; }
|
||||||
|
|
||||||
[Column("FINAL_EMAIL_TO_CREATOR")]
|
[Column("FINAL_EMAIL_TO_CREATOR")]
|
||||||
public int FinalEmailToCreator { get; set; }
|
public int? FinalEmailToCreator { get; set; }
|
||||||
|
|
||||||
[Column("FINAL_EMAIL_TO_RECEIVERS")]
|
[Column("FINAL_EMAIL_TO_RECEIVERS")]
|
||||||
public int FinalEmailToReceivers { get; set; }
|
public int? FinalEmailToReceivers { get; set; }
|
||||||
|
|
||||||
[Column("EXPIRES_WHEN_DAYS")]
|
[Column("EXPIRES_WHEN_DAYS")]
|
||||||
public int ExpiresWhenDays { get; set; }
|
public int? ExpiresWhenDays { get; set; }
|
||||||
|
|
||||||
[Column("EXPIRES_WARNING_WHEN_DAYS")]
|
[Column("EXPIRES_WARNING_WHEN_DAYS")]
|
||||||
public int ExpiresWarningWhenDays { get; set; }
|
public int? ExpiresWarningWhenDays { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[Column("TFA_ENABLED", TypeName = "bit")]
|
|
||||||
public bool TFAEnabled { get; set; } = false;
|
|
||||||
|
|
||||||
[Column("DOC_RESULT", TypeName = "varbinary(max)")]
|
|
||||||
public byte[] DocResult { get; set; }
|
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public string CURRENT_WORK_APP { get; set; } = "signFLOW GUI";
|
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
[ForeignKey("UserId")]
|
[ForeignKey("UserId")]
|
||||||
public User User { get; set; }
|
public User User { get; set; }
|
||||||
|
|
||||||
[ForeignKey("EnvelopeTypeId")]
|
[ForeignKey("EnvelopeTypeId")]
|
||||||
public EnvelopeType EnvelopeType { get; set; }
|
public virtual EnvelopeType
|
||||||
|
#if NET
|
||||||
|
?
|
||||||
|
#endif
|
||||||
|
Type { get; set; }
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public string EnvelopeTypeTitle => EnvelopeType?.Title;
|
public string CURRENT_WORK_APP { get; set; } = "signFLOW GUI";
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public bool IsAlreadySent => Status > (int)Constants.EnvelopeStatus.EnvelopeSaved;
|
public bool IsAlreadySent => Status > (int)Constants.EnvelopeStatus.EnvelopeSaved;
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public string StatusTranslated => My.Resources.Model.ResourceManager.GetString(Status.ToString());
|
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public bool TFA_Enabled { get; set; } = false;
|
public bool TFA_Enabled { get; set; } = false;
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public byte[] DOC_RESULT { get; set; }
|
public byte[] DOC_RESULT { get; set; }
|
||||||
|
#endif
|
||||||
|
|
||||||
|
public List<EnvelopeDocument> Documents { get; set; }
|
||||||
|
|
||||||
|
public List<EnvelopeHistory> History { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
// TODO: * Check the Form App and remove the default value
|
||||||
public List<EnvelopeDocument> Documents { get; set; } = new List<EnvelopeDocument>();
|
[NotMapped]
|
||||||
|
public List<Receiver> Receivers { get; set; } = Enumerable.Empty<Receiver>().ToList();
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
public List<EnvelopeHistory> History { get; set; } = new List<EnvelopeHistory>();
|
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
|
||||||
public List<Receiver> Receivers { get; set; } = new List<Receiver>();
|
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Validates whether the receiver and document data are complete.
|
/// Validates whether the receiver and document data are complete.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -161,5 +173,9 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
|
|
||||||
return errors;
|
return errors;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
using System.ComponentModel.DataAnnotations;
|
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
|
||||||
{
|
|
||||||
[Table("TBSIG_ENVELOPE_CERTIFICATE", Schema = "dbo")]
|
|
||||||
public class EnvelopeCertificate
|
|
||||||
{
|
|
||||||
[Key]
|
|
||||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
|
||||||
[Column("GUID")]
|
|
||||||
public int Id { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ENVELOPE_ID")]
|
|
||||||
public int EnvelopeId { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")]
|
|
||||||
public string EnvelopeUuid { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ENVELOPE_SUBJECT", TypeName = "nvarchar(512)")]
|
|
||||||
public string EnvelopeSubject { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("CREATOR_ID")]
|
|
||||||
public int CreatorId { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("CREATOR_NAME", TypeName = "nvarchar(128)")]
|
|
||||||
public string CreatorName { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("CREATOR_EMAIL", TypeName = "nvarchar(128)")]
|
|
||||||
public string CreatorEmail { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ENVELOPE_STATUS")]
|
|
||||||
public int EnvelopeStatus { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,16 +1,28 @@
|
|||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
using System.Drawing;
|
|
||||||
#if NETFRAMEWORK
|
#if NETFRAMEWORK
|
||||||
using System;
|
using System.Drawing;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_ENVELOPE_DOCUMENT", Schema = "dbo")]
|
[Table("TBSIG_ENVELOPE_DOCUMENT", Schema = "dbo")]
|
||||||
public class EnvelopeDocument
|
public class EnvelopeDocument
|
||||||
{
|
{
|
||||||
|
public EnvelopeDocument()
|
||||||
|
{
|
||||||
|
#if NETFRAMEWORK
|
||||||
|
Elements = Enumerable.Empty<DocumentReceiverElement>().ToList();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
[Key]
|
[Key]
|
||||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||||
[Column("GUID")]
|
[Column("GUID")]
|
||||||
@@ -20,16 +32,16 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[Column("ENVELOPE_ID")]
|
[Column("ENVELOPE_ID")]
|
||||||
public int EnvelopeId { get; set; } = 0;
|
public int EnvelopeId { get; set; } = 0;
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ADDED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime AddedWhen { get; set; }
|
|
||||||
|
|
||||||
[Column("BYTE_DATA", TypeName = "varbinary(max)")]
|
[Column("BYTE_DATA", TypeName = "varbinary(max)")]
|
||||||
public byte[] ByteData { get; set; }
|
public byte[] ByteData { get; set; }
|
||||||
|
|
||||||
// TODO: * Check the Form App and remove the default value
|
public List<DocumentReceiverElement> Elements { get; set; }
|
||||||
public List<DocumentReceiverElement> Elements { get; set; } = new List<DocumentReceiverElement>();
|
|
||||||
|
|
||||||
|
// TODO: * Check the Form App and remove the default value
|
||||||
|
[NotMapped]
|
||||||
|
public string Filepath { get; set; }
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public string FileNameOriginal { get; set; }
|
public string FileNameOriginal { get; set; }
|
||||||
|
|
||||||
@@ -39,13 +51,14 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
[NotMapped]
|
[NotMapped]
|
||||||
public string Filename { get; set; }
|
public string Filename { get; set; }
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public string Filepath { get; set; }
|
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public Bitmap Thumbnail { get; set; }
|
public Bitmap Thumbnail { get; set; }
|
||||||
|
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public int PageCount { get; set; }
|
public int PageCount { get; set; }
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -6,7 +6,12 @@ using System;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_ENVELOPE_HISTORY", Schema = "dbo")]
|
[Table("TBSIG_ENVELOPE_HISTORY", Schema = "dbo")]
|
||||||
public class EnvelopeHistory
|
public class EnvelopeHistory
|
||||||
{
|
{
|
||||||
@@ -42,7 +47,12 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
|
|
||||||
public virtual Receiver Receiver { get; set; }
|
public virtual Receiver Receiver { get; set; }
|
||||||
|
|
||||||
|
#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
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -1,14 +1,69 @@
|
|||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
#if NETFRAMEWORK
|
||||||
|
using System;
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_ENVELOPE_RECEIVER", Schema = "dbo")]
|
[Table("TBSIG_ENVELOPE_RECEIVER", Schema = "dbo")]
|
||||||
public class EnvelopeReceiver : EnvelopeReceiverBase
|
public class EnvelopeReceiver
|
||||||
{
|
{
|
||||||
|
[Column("ENVELOPE_ID")]
|
||||||
|
public int EnvelopeId { get; set; }
|
||||||
|
|
||||||
|
[Column("RECEIVER_ID")]
|
||||||
|
public int ReceiverId { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
[Column("SEQUENCE")]
|
||||||
|
public int Sequence { get; set; }
|
||||||
|
|
||||||
|
[Column("NAME", TypeName = "nvarchar(128)")]
|
||||||
|
public string Name { get; set; }
|
||||||
|
|
||||||
|
[Column("JOB_TITLE", TypeName = "nvarchar(128)")]
|
||||||
|
public string JobTitle { get; set; }
|
||||||
|
|
||||||
|
[Column("COMPANY_NAME", TypeName = "nvarchar(128)")]
|
||||||
|
public string CompanyName { get; set; }
|
||||||
|
|
||||||
|
[Column("PRIVATE_MESSAGE", TypeName = "nvarchar(max)")]
|
||||||
|
public string PrivateMessage { get; set; }
|
||||||
|
|
||||||
|
[Column("ACCESS_CODE", TypeName = "nvarchar(64)")]
|
||||||
|
public string AccessCode { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
[Column("ADDED_WHEN", TypeName = "datetime")]
|
||||||
|
public DateTime AddedWhen { get; set; }
|
||||||
|
|
||||||
|
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
||||||
|
public DateTime ChangedWhen { get; set; }
|
||||||
|
|
||||||
|
[Column("PHONE_NUMBER")]
|
||||||
|
[StringLength(20)]
|
||||||
|
[RegularExpression(@"^\+[0-9]+$", ErrorMessage = "Phone number must start with '+' followed by digits.")]
|
||||||
|
public string PhoneNumber { get; set; }
|
||||||
|
|
||||||
|
[NotMapped]
|
||||||
|
public Tuple<int, int> Id => Tuple.Create(EnvelopeId, ReceiverId);
|
||||||
|
|
||||||
|
[NotMapped]
|
||||||
|
public bool HasPhoneNumber => !string.IsNullOrWhiteSpace(PhoneNumber);
|
||||||
|
|
||||||
[ForeignKey("EnvelopeId")]
|
[ForeignKey("EnvelopeId")]
|
||||||
public Envelope Envelope { get; set; }
|
public Envelope Envelope { get; set; }
|
||||||
|
|
||||||
[ForeignKey("ReceiverId")]
|
[ForeignKey("ReceiverId")]
|
||||||
public Receiver Receiver { get; set; }
|
public Receiver Receiver { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
using System.ComponentModel.DataAnnotations;
|
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
|
||||||
#if NETFRAMEWORK
|
|
||||||
using System;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
|
||||||
{
|
|
||||||
[Table("TBSIG_ENVELOPE_RECEIVER", Schema = "dbo")]
|
|
||||||
public class EnvelopeReceiverBase
|
|
||||||
{
|
|
||||||
[Key]
|
|
||||||
[Column("ENVELOPE_ID")]
|
|
||||||
public int EnvelopeId { get; set; }
|
|
||||||
|
|
||||||
[Key]
|
|
||||||
[Column("RECEIVER_ID")]
|
|
||||||
public int ReceiverId { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("SEQUENCE")]
|
|
||||||
public int Sequence { get; set; }
|
|
||||||
|
|
||||||
[Column("NAME", TypeName = "nvarchar(128)")]
|
|
||||||
public string Name { get; set; }
|
|
||||||
|
|
||||||
[Column("JOB_TITLE", TypeName = "nvarchar(128)")]
|
|
||||||
public string JobTitle { get; set; }
|
|
||||||
|
|
||||||
[Column("COMPANY_NAME", TypeName = "nvarchar(128)")]
|
|
||||||
public string CompanyName { get; set; }
|
|
||||||
|
|
||||||
[Column("PRIVATE_MESSAGE", TypeName = "nvarchar(max)")]
|
|
||||||
public string PrivateMessage { get; set; }
|
|
||||||
|
|
||||||
[Column("ACCESS_CODE", TypeName = "nvarchar(64)")]
|
|
||||||
public string AccessCode { get; set; }
|
|
||||||
|
|
||||||
[Required]
|
|
||||||
[Column("ADDED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime AddedWhen { get; set; }
|
|
||||||
|
|
||||||
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
|
||||||
public DateTime ChangedWhen { get; set; }
|
|
||||||
|
|
||||||
[Column("PHONE_NUMBER")]
|
|
||||||
[StringLength(20)]
|
|
||||||
[RegularExpression(@"^\+[0-9]+$", ErrorMessage = "Phone number must start with '+' followed by digits.")]
|
|
||||||
public string PhoneNumber { get; set; }
|
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public Tuple<int, int> Id => Tuple.Create(EnvelopeId, ReceiverId);
|
|
||||||
|
|
||||||
[NotMapped]
|
|
||||||
public bool HasPhoneNumber => !string.IsNullOrWhiteSpace(PhoneNumber);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -7,7 +7,12 @@ using System.Collections.Generic;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Domain.Entities
|
namespace EnvelopeGenerator.Domain.Entities
|
||||||
|
#if NET
|
||||||
|
;
|
||||||
|
#elif NETFRAMEWORK
|
||||||
{
|
{
|
||||||
|
#endif
|
||||||
|
|
||||||
[Table("TBSIG_RECEIVER", Schema = "dbo")]
|
[Table("TBSIG_RECEIVER", Schema = "dbo")]
|
||||||
public class Receiver
|
public class Receiver
|
||||||
{
|
{
|
||||||
@@ -33,10 +38,11 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
public string TotpSecretkey { get; set; }
|
public string TotpSecretkey { get; set; }
|
||||||
|
|
||||||
[Column("TFA_REG_DEADLINE", TypeName = "datetime")]
|
[Column("TFA_REG_DEADLINE", TypeName = "datetime")]
|
||||||
public DateTime TfaRegDeadline { get; set; }
|
public DateTime? TfaRegDeadline { get; set; }
|
||||||
|
|
||||||
public List<EnvelopeReceiver> EnvelopeReceivers { get; set; }
|
public List<EnvelopeReceiver> EnvelopeReceivers { get; set; }
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
[NotMapped]
|
[NotMapped]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
@@ -86,5 +92,9 @@ namespace EnvelopeGenerator.Domain.Entities
|
|||||||
{
|
{
|
||||||
return EmailAddress.ToUpperInvariant().GetChecksum();
|
return EmailAddress.ToUpperInvariant().GetChecksum();
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if NETFRAMEWORK
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFrameworks>net462;net7.0;net8.0;net9.0</TargetFrameworks>
|
<TargetFrameworks>net462;net7.0;net8.0;net9.0</TargetFrameworks>
|
||||||
|
<AssemblyVersion>1.4.0</AssemblyVersion>
|
||||||
|
<FileVersion>1.4.0</FileVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(TargetFramework)' == 'net462'">
|
<PropertyGroup Condition="'$(TargetFramework)' == 'net462'">
|
||||||
@@ -33,7 +35,7 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="DigitalData.EmailProfilerDispatcher.Abstraction.Attributes" Version="1.0.0" />
|
<PackageReference Include="DigitalData.EmailProfilerDispatcher.Abstraction.Attributes" Version="1.0.0" />
|
||||||
<PackageReference Include="UserManager.Domain" Version="3.2.1" />
|
<PackageReference Include="UserManager.Domain" Version="3.2.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -60,6 +60,15 @@ namespace My.Resources {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sucht eine lokalisierte Zeichenfolge, die Der Zugangs Code wurde erfolgreich an [@Mail] versendet! ähnelt.
|
||||||
|
/// </summary>
|
||||||
|
public static string AccessCode_manually_send {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("AccessCode manually send", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sucht eine lokalisierte Zeichenfolge, die Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten: ähnelt.
|
/// Sucht eine lokalisierte Zeichenfolge, die Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten: ähnelt.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -150,6 +159,15 @@ namespace My.Resources {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sucht eine lokalisierte Zeichenfolge, die Aktuell sind per Drag and Drop nur PDF-Dateien erlaubt. ähnelt.
|
||||||
|
/// </summary>
|
||||||
|
public static string Drop_only_pdf {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("Drop only pdf", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sucht eine lokalisierte Zeichenfolge, die Bearbeite Umschlag ähnelt.
|
/// Sucht eine lokalisierte Zeichenfolge, die Bearbeite Umschlag ähnelt.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -241,8 +259,8 @@ namespace My.Resources {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sucht eine lokalisierte Zeichenfolge, die The mobile phone number [@PhoneNr] could not be validated.
|
/// Sucht eine lokalisierte Zeichenfolge, die Die Mobiltelefonnummer [@PhoneNr] konnte nicht validiert werden.
|
||||||
///Pattern: +491234567890 ähnelt.
|
///Muster: +491234567890 ähnelt.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static string Error_phone_Validation {
|
public static string Error_phone_Validation {
|
||||||
get {
|
get {
|
||||||
@@ -368,7 +386,7 @@ namespace My.Resources {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sucht eine lokalisierte Zeichenfolge, die ähnelt.
|
/// Sucht eine lokalisierte Zeichenfolge, die Not translated ähnelt.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static string ModificationOriginFile_FormFields {
|
public static string ModificationOriginFile_FormFields {
|
||||||
get {
|
get {
|
||||||
@@ -476,7 +494,7 @@ namespace My.Resources {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sucht eine lokalisierte Zeichenfolge, die Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese Speichern? ähnelt.
|
/// Sucht eine lokalisierte Zeichenfolge, die Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese speichern? ähnelt.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static string There_are_unsaved_changes {
|
public static string There_are_unsaved_changes {
|
||||||
get {
|
get {
|
||||||
|
|||||||
@@ -147,9 +147,6 @@
|
|||||||
<data name="Drop only one file" xml:space="preserve">
|
<data name="Drop only one file" xml:space="preserve">
|
||||||
<value>Currently, only one PDF file is permitted via drag and drop.</value>
|
<value>Currently, only one PDF file is permitted via drag and drop.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Drop only pdf" xml:space="preserve">
|
|
||||||
<value />
|
|
||||||
</data>
|
|
||||||
<data name="Edit Envelope" xml:space="preserve">
|
<data name="Edit Envelope" xml:space="preserve">
|
||||||
<value>Edit Envelope</value>
|
<value>Edit Envelope</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -181,7 +178,8 @@
|
|||||||
<value>The email [ @Mail ] could not be varified!</value>
|
<value>The email [ @Mail ] could not be varified!</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Error phone Validation" xml:space="preserve">
|
<data name="Error phone Validation" xml:space="preserve">
|
||||||
<value />
|
<value>The mobile phone number [@PhoneNr] could not be validated.
|
||||||
|
Pattern: +491234567890</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Error sending the envelope" xml:space="preserve">
|
<data name="Error sending the envelope" xml:space="preserve">
|
||||||
<value>Error sending the envelope:</value>
|
<value>Error sending the envelope:</value>
|
||||||
@@ -222,6 +220,9 @@
|
|||||||
<data name="Missing Receivers" xml:space="preserve">
|
<data name="Missing Receivers" xml:space="preserve">
|
||||||
<value>Missing Receivers</value>
|
<value>Missing Receivers</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="ModificationOriginFile_FormFields" xml:space="preserve">
|
||||||
|
<value>Not translated</value>
|
||||||
|
</data>
|
||||||
<data name="New Envelope" xml:space="preserve">
|
<data name="New Envelope" xml:space="preserve">
|
||||||
<value>New Envelope</value>
|
<value>New Envelope</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -255,10 +256,16 @@
|
|||||||
<data name="There are already elements for this recipient" xml:space="preserve">
|
<data name="There are already elements for this recipient" xml:space="preserve">
|
||||||
<value>There are already elements for this recipient. Do you still want to delete the recipient?</value>
|
<value>There are already elements for this recipient. Do you still want to delete the recipient?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="There are unsaved changes." xml:space="preserve">
|
<data name="There are unsaved changes" xml:space="preserve">
|
||||||
<value>There are unsaved changes. Do you want to save them?</value>
|
<value>There are unsaved changes. Do you want to save them?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="You received a document to sign" xml:space="preserve">
|
<data name="You received a document to sign" xml:space="preserve">
|
||||||
<value>You received a document to sign:</value>
|
<value>You received a document to sign:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Drop only pdf" xml:space="preserve">
|
||||||
|
<value>Currently, only PDF files are allowed via drag and drop.</value>
|
||||||
|
</data>
|
||||||
|
<data name="AccessCode manually send" xml:space="preserve">
|
||||||
|
<value>The access code was successfully sent to [@Mail]!</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
@@ -178,8 +178,8 @@
|
|||||||
<value>Die Email-Adresse [ @Mail ] konnte nicht validiert werden!</value>
|
<value>Die Email-Adresse [ @Mail ] konnte nicht validiert werden!</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Error phone Validation" xml:space="preserve">
|
<data name="Error phone Validation" xml:space="preserve">
|
||||||
<value>The mobile phone number [@PhoneNr] could not be validated.
|
<value>Die Mobiltelefonnummer [@PhoneNr] konnte nicht validiert werden.
|
||||||
Pattern: +491234567890</value>
|
Muster: +491234567890</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Error sending the envelope" xml:space="preserve">
|
<data name="Error sending the envelope" xml:space="preserve">
|
||||||
<value>Fehler beim Senden des Umschlags:</value>
|
<value>Fehler beim Senden des Umschlags:</value>
|
||||||
@@ -221,7 +221,7 @@ Pattern: +491234567890</value>
|
|||||||
<value>Fehlende Empfänger</value>
|
<value>Fehlende Empfänger</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ModificationOriginFile_FormFields" xml:space="preserve">
|
<data name="ModificationOriginFile_FormFields" xml:space="preserve">
|
||||||
<value />
|
<value>Not translated</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="New Envelope" xml:space="preserve">
|
<data name="New Envelope" xml:space="preserve">
|
||||||
<value>Neuer Umschlag</value>
|
<value>Neuer Umschlag</value>
|
||||||
@@ -257,9 +257,15 @@ Pattern: +491234567890</value>
|
|||||||
<value>Es gibt für diesen Empfänger bereits Elemente. Wollen Sie den Empfänger trotzdem löschen?</value>
|
<value>Es gibt für diesen Empfänger bereits Elemente. Wollen Sie den Empfänger trotzdem löschen?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="There are unsaved changes" xml:space="preserve">
|
<data name="There are unsaved changes" xml:space="preserve">
|
||||||
<value>Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese Speichern?</value>
|
<value>Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese speichern?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="You received a document to sign" xml:space="preserve">
|
<data name="You received a document to sign" xml:space="preserve">
|
||||||
<value>Sie haben ein Dokument zum signieren erhalten:</value>
|
<value>Sie haben ein Dokument zum signieren erhalten:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Drop only pdf" xml:space="preserve">
|
||||||
|
<value>Aktuell sind per Drag and Drop nur PDF-Dateien erlaubt.</value>
|
||||||
|
</data>
|
||||||
|
<data name="AccessCode manually send" xml:space="preserve">
|
||||||
|
<value>Der Zugangs Code wurde erfolgreich an [@Mail] versendet!</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
@@ -132,6 +132,9 @@
|
|||||||
<data name="Completed" xml:space="preserve">
|
<data name="Completed" xml:space="preserve">
|
||||||
<value>Completed</value>
|
<value>Completed</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="CompletelySigned" xml:space="preserve">
|
||||||
|
<value>Completely signed</value>
|
||||||
|
</data>
|
||||||
<data name="Contract" xml:space="preserve">
|
<data name="Contract" xml:space="preserve">
|
||||||
<value>Contract</value>
|
<value>Contract</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="HtmlSanitizer" Version="8.0.865" />
|
<PackageReference Include="HtmlSanitizer" Version="8.0.865" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="9.0.4" />
|
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.19" />
|
<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.19" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
|
||||||
<PackageReference Include="Otp.NET" Version="1.4.0" />
|
<PackageReference Include="Otp.NET" Version="1.4.0" />
|
||||||
|
|||||||
@@ -101,8 +101,8 @@
|
|||||||
<Reference Include="DigitalData.Modules.Messaging, Version=1.9.8.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="DigitalData.Modules.Messaging, Version=1.9.8.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\DigitalData.Modules.Messaging.1.9.8\lib\net462\DigitalData.Modules.Messaging.dll</HintPath>
|
<HintPath>..\packages\DigitalData.Modules.Messaging.1.9.8\lib\net462\DigitalData.Modules.Messaging.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DigitalData.UserManager.Domain, Version=3.2.2.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="DigitalData.UserManager.Domain, Version=3.2.3.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\UserManager.Domain.3.2.2\lib\net462\DigitalData.UserManager.Domain.dll</HintPath>
|
<HintPath>..\packages\UserManager.Domain.3.2.3\lib\net462\DigitalData.UserManager.Domain.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
|
<Reference Include="DocumentFormat.OpenXml, Version=3.2.0.0, Culture=neutral, PublicKeyToken=8fb06cb64d019a17, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
|
<HintPath>..\packages\DocumentFormat.OpenXml.3.2.0\lib\net46\DocumentFormat.OpenXml.dll</HintPath>
|
||||||
|
|||||||
@@ -68,17 +68,17 @@ Public Class frmEnvelopeMainData
|
|||||||
chked_2Faktor.EditValue = DEF_TF_ENABLED
|
chked_2Faktor.EditValue = DEF_TF_ENABLED
|
||||||
|
|
||||||
Else
|
Else
|
||||||
If IsNothing(Envelope.EnvelopeType) Then
|
If IsNothing(Envelope.Type) Then
|
||||||
Envelope.EnvelopeType = EnvelopeType
|
Envelope.Type = EnvelopeType
|
||||||
End If
|
End If
|
||||||
If Envelope.EnvelopeType.ContractType = 0 Then
|
If Envelope.Type.ContractType = 0 Then
|
||||||
cmbEnvelopeType.EditValue = EnvelopeType
|
cmbEnvelopeType.EditValue = EnvelopeType
|
||||||
Else
|
Else
|
||||||
' This will trigger loading values from the type
|
' This will trigger loading values from the type
|
||||||
cmbEnvelopeType.EditValue = Envelope.EnvelopeType
|
cmbEnvelopeType.EditValue = Envelope.Type
|
||||||
' cmbEnvelopeType.SelectedIndex = Convert.ToInt32(Envelope.EnvelopeType) - 1
|
' cmbEnvelopeType.SelectedIndex = Convert.ToInt32(Envelope.Type) - 1
|
||||||
' cmbEnvelopeType.SelectedIndex = Envelope.Type.Id - 1
|
' cmbEnvelopeType.SelectedIndex = Envelope.Type.Id - 1
|
||||||
' cmbEnvelopeType.SelectedItem = cmbEnvelopeType.Properties.Items.Cast(Of EnvelopeType).Where(Function(i) i.Id = Envelope.EnvelopeType.Id).SingleOrDefault()
|
' cmbEnvelopeType.SelectedItem = cmbEnvelopeType.Properties.Items.Cast(Of Type).Where(Function(i) i.Id = Envelope.Type.Id).SingleOrDefault()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -126,7 +126,7 @@ Public Class frmEnvelopeMainData
|
|||||||
oEnvelopeType = EnvelopeType
|
oEnvelopeType = EnvelopeType
|
||||||
End If
|
End If
|
||||||
Envelope.Title = txtTitle.EditValue.ToString
|
Envelope.Title = txtTitle.EditValue.ToString
|
||||||
Envelope.EnvelopeType = oEnvelopeType
|
Envelope.Type = oEnvelopeType
|
||||||
Envelope.EnvelopeTypeId = IIf(IsNothing(oEnvelopeType), 0, oEnvelopeType.Id)
|
Envelope.EnvelopeTypeId = IIf(IsNothing(oEnvelopeType), 0, oEnvelopeType.Id)
|
||||||
Envelope.CertificationType = cmbCertificationType.SelectedIndex + 1
|
Envelope.CertificationType = cmbCertificationType.SelectedIndex + 1
|
||||||
Envelope.Language = cmbLanguage.EditValue
|
Envelope.Language = cmbLanguage.EditValue
|
||||||
|
|||||||
@@ -243,7 +243,7 @@ Partial Public Class frmFieldEditor
|
|||||||
If oElement IsNot Nothing Then
|
If oElement IsNot Nothing Then
|
||||||
oStickyNote.Tag = GetAnnotationTag(SelectedReceiver.Id, oPage, oElement.Id)
|
oStickyNote.Tag = GetAnnotationTag(SelectedReceiver.Id, oPage, oElement.Id)
|
||||||
Else
|
Else
|
||||||
MsgBox("No Element for Update found!")
|
'MsgBox("No Element for Update found!")
|
||||||
Logger.Error("No Element for Update found!")
|
Logger.Error("No Element for Update found!")
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|||||||
40
EnvelopeGenerator.Form/frmMain.Designer.vb
generated
40
EnvelopeGenerator.Form/frmMain.Designer.vb
generated
@@ -87,6 +87,7 @@ Partial Class frmMain
|
|||||||
Me.ColHistoryDateCompleted = New DevExpress.XtraGrid.Columns.GridColumn()
|
Me.ColHistoryDateCompleted = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
Me.ViewCompleted = New DevExpress.XtraGrid.Views.Grid.GridView()
|
Me.ViewCompleted = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||||
Me.GridColumn3 = New DevExpress.XtraGrid.Columns.GridColumn()
|
Me.GridColumn3 = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
|
Me.GridColumn6 = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
Me.GridColumn4 = New DevExpress.XtraGrid.Columns.GridColumn()
|
Me.GridColumn4 = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
Me.GridColumn5 = New DevExpress.XtraGrid.Columns.GridColumn()
|
Me.GridColumn5 = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
Me.GridColumn7 = New DevExpress.XtraGrid.Columns.GridColumn()
|
Me.GridColumn7 = New DevExpress.XtraGrid.Columns.GridColumn()
|
||||||
@@ -111,6 +112,8 @@ Partial Class frmMain
|
|||||||
Me.RefreshTimer = New System.Windows.Forms.Timer(Me.components)
|
Me.RefreshTimer = New System.Windows.Forms.Timer(Me.components)
|
||||||
Me.SaveFileDialog1 = New System.Windows.Forms.SaveFileDialog()
|
Me.SaveFileDialog1 = New System.Windows.Forms.SaveFileDialog()
|
||||||
Me.XtraSaveFileDialog1 = New DevExpress.XtraEditors.XtraSaveFileDialog(Me.components)
|
Me.XtraSaveFileDialog1 = New DevExpress.XtraEditors.XtraSaveFileDialog(Me.components)
|
||||||
|
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
|
||||||
|
Me.RibbonPageGroupReceiver = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.SplitContainerControl1.Panel1.SuspendLayout()
|
Me.SplitContainerControl1.Panel1.SuspendLayout()
|
||||||
@@ -340,9 +343,9 @@ Partial Class frmMain
|
|||||||
Me.RibbonControl.ExpandCollapseItem.Id = 0
|
Me.RibbonControl.ExpandCollapseItem.Id = 0
|
||||||
Me.RibbonControl.ExpandCollapseItem.ImageOptions.ImageIndex = CType(resources.GetObject("RibbonControl.ExpandCollapseItem.ImageOptions.ImageIndex"), Integer)
|
Me.RibbonControl.ExpandCollapseItem.ImageOptions.ImageIndex = CType(resources.GetObject("RibbonControl.ExpandCollapseItem.ImageOptions.ImageIndex"), Integer)
|
||||||
Me.RibbonControl.ExpandCollapseItem.ImageOptions.LargeImageIndex = CType(resources.GetObject("RibbonControl.ExpandCollapseItem.ImageOptions.LargeImageIndex"), Integer)
|
Me.RibbonControl.ExpandCollapseItem.ImageOptions.LargeImageIndex = CType(resources.GetObject("RibbonControl.ExpandCollapseItem.ImageOptions.LargeImageIndex"), Integer)
|
||||||
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.btnCreateEnvelope, Me.btnEditEnvelope, Me.btnDeleteEnvelope, Me.BarButtonItem1, Me.txtRefreshLabel, Me.btnShowDocument, Me.btnContactReceiver, Me.txtEnvelopeIdLabel, Me.btnOpenLogDirectory, Me.BarCheckItem1, Me.bsitmInfo, Me.bbtnitmEB, Me.bbtnitmInfoMail, Me.bbtnitm_ResendInvitation, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarStaticItemGhost, Me.bbtnitm2Faktor})
|
Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.btnCreateEnvelope, Me.btnEditEnvelope, Me.btnDeleteEnvelope, Me.BarButtonItem1, Me.txtRefreshLabel, Me.btnShowDocument, Me.btnContactReceiver, Me.txtEnvelopeIdLabel, Me.btnOpenLogDirectory, Me.BarCheckItem1, Me.bsitmInfo, Me.bbtnitmEB, Me.bbtnitmInfoMail, Me.bbtnitm_ResendInvitation, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarStaticItemGhost, Me.bbtnitm2Faktor, Me.BarButtonItem2})
|
||||||
resources.ApplyResources(Me.RibbonControl, "RibbonControl")
|
resources.ApplyResources(Me.RibbonControl, "RibbonControl")
|
||||||
Me.RibbonControl.MaxItemId = 21
|
Me.RibbonControl.MaxItemId = 22
|
||||||
Me.RibbonControl.Name = "RibbonControl"
|
Me.RibbonControl.Name = "RibbonControl"
|
||||||
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage2})
|
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1, Me.RibbonPage2})
|
||||||
Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
|
Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
@@ -509,7 +512,7 @@ Partial Class frmMain
|
|||||||
'
|
'
|
||||||
'RibbonPage1
|
'RibbonPage1
|
||||||
'
|
'
|
||||||
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageEnvelopeActions, Me.RibbonPageGroup1, Me.RibbonPageGroupFunctions})
|
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageEnvelopeActions, Me.RibbonPageGroup1, Me.RibbonPageGroupFunctions, Me.RibbonPageGroupReceiver})
|
||||||
Me.RibbonPage1.Name = "RibbonPage1"
|
Me.RibbonPage1.Name = "RibbonPage1"
|
||||||
resources.ApplyResources(Me.RibbonPage1, "RibbonPage1")
|
resources.ApplyResources(Me.RibbonPage1, "RibbonPage1")
|
||||||
'
|
'
|
||||||
@@ -532,9 +535,6 @@ Partial Class frmMain
|
|||||||
'RibbonPageGroupFunctions
|
'RibbonPageGroupFunctions
|
||||||
'
|
'
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.btnShowDocument)
|
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.btnShowDocument)
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitm_ResendInvitation)
|
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.btnContactReceiver)
|
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitm2Faktor)
|
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitmEB)
|
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitmEB)
|
||||||
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitmInfoMail)
|
Me.RibbonPageGroupFunctions.ItemLinks.Add(Me.bbtnitmInfoMail)
|
||||||
Me.RibbonPageGroupFunctions.Name = "RibbonPageGroupFunctions"
|
Me.RibbonPageGroupFunctions.Name = "RibbonPageGroupFunctions"
|
||||||
@@ -662,7 +662,7 @@ Partial Class frmMain
|
|||||||
'
|
'
|
||||||
'ViewCompleted
|
'ViewCompleted
|
||||||
'
|
'
|
||||||
Me.ViewCompleted.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.GridColumn3, Me.GridColumn4, Me.GridColumn5, Me.GridColumn7, Me.GridColumn1})
|
Me.ViewCompleted.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.GridColumn3, Me.GridColumn6, Me.GridColumn4, Me.GridColumn5, Me.GridColumn7, Me.GridColumn1})
|
||||||
Me.ViewCompleted.GridControl = Me.GridCompleted
|
Me.ViewCompleted.GridControl = Me.GridCompleted
|
||||||
Me.ViewCompleted.Name = "ViewCompleted"
|
Me.ViewCompleted.Name = "ViewCompleted"
|
||||||
Me.ViewCompleted.OptionsBehavior.Editable = False
|
Me.ViewCompleted.OptionsBehavior.Editable = False
|
||||||
@@ -676,6 +676,13 @@ Partial Class frmMain
|
|||||||
Me.GridColumn3.FieldName = "EnvelopeTypeTitle"
|
Me.GridColumn3.FieldName = "EnvelopeTypeTitle"
|
||||||
Me.GridColumn3.Name = "GridColumn3"
|
Me.GridColumn3.Name = "GridColumn3"
|
||||||
'
|
'
|
||||||
|
'GridColumn6
|
||||||
|
'
|
||||||
|
resources.ApplyResources(Me.GridColumn6, "GridColumn6")
|
||||||
|
Me.GridColumn6.FieldName = "Comment"
|
||||||
|
Me.GridColumn6.MinWidth = 80
|
||||||
|
Me.GridColumn6.Name = "GridColumn6"
|
||||||
|
'
|
||||||
'GridColumn4
|
'GridColumn4
|
||||||
'
|
'
|
||||||
resources.ApplyResources(Me.GridColumn4, "GridColumn4")
|
resources.ApplyResources(Me.GridColumn4, "GridColumn4")
|
||||||
@@ -841,6 +848,22 @@ Partial Class frmMain
|
|||||||
'
|
'
|
||||||
Me.XtraSaveFileDialog1.FileName = "XtraSaveFileDialog1"
|
Me.XtraSaveFileDialog1.FileName = "XtraSaveFileDialog1"
|
||||||
'
|
'
|
||||||
|
'BarButtonItem2
|
||||||
|
'
|
||||||
|
resources.ApplyResources(Me.BarButtonItem2, "BarButtonItem2")
|
||||||
|
Me.BarButtonItem2.Id = 21
|
||||||
|
Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||||
|
Me.BarButtonItem2.Name = "BarButtonItem2"
|
||||||
|
'
|
||||||
|
'RibbonPageGroupReceiver
|
||||||
|
'
|
||||||
|
Me.RibbonPageGroupReceiver.ItemLinks.Add(Me.bbtnitm_ResendInvitation)
|
||||||
|
Me.RibbonPageGroupReceiver.ItemLinks.Add(Me.BarButtonItem2)
|
||||||
|
Me.RibbonPageGroupReceiver.ItemLinks.Add(Me.bbtnitm2Faktor)
|
||||||
|
Me.RibbonPageGroupReceiver.ItemLinks.Add(Me.btnContactReceiver)
|
||||||
|
Me.RibbonPageGroupReceiver.Name = "RibbonPageGroupReceiver"
|
||||||
|
resources.ApplyResources(Me.RibbonPageGroupReceiver, "RibbonPageGroupReceiver")
|
||||||
|
'
|
||||||
'frmMain
|
'frmMain
|
||||||
'
|
'
|
||||||
resources.ApplyResources(Me, "$this")
|
resources.ApplyResources(Me, "$this")
|
||||||
@@ -976,4 +999,7 @@ Partial Class frmMain
|
|||||||
Friend WithEvents Label1 As Label
|
Friend WithEvents Label1 As Label
|
||||||
Friend WithEvents Button1 As Button
|
Friend WithEvents Button1 As Button
|
||||||
Friend WithEvents txtEnvID As TextBox
|
Friend WithEvents txtEnvID As TextBox
|
||||||
|
Friend WithEvents GridColumn6 As DevExpress.XtraGrid.Columns.GridColumn
|
||||||
|
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
|
||||||
|
Friend WithEvents RibbonPageGroupReceiver As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -746,7 +746,7 @@
|
|||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="bbtnitm_ResendInvitation.Caption" xml:space="preserve">
|
<data name="bbtnitm_ResendInvitation.Caption" xml:space="preserve">
|
||||||
<value>Einladung erneut versenden</value>
|
<value>Einladung manuell versenden</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="bbtnitm_ResendInvitation.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="bbtnitm_ResendInvitation.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
@@ -903,6 +903,28 @@
|
|||||||
LjQsMjEuNiwxNCwxNiwxNCAgIGMtNi41LDAtMTAsNS4yLTEwLDljMCw0LDIuMSw2LjUsMi4yLDYuN0M4
|
LjQsMjEuNiwxNCwxNiwxNCAgIGMtNi41LDAtMTAsNS4yLTEwLDljMCw0LDIuMSw2LjUsMi4yLDYuN0M4
|
||||||
LjQsMjkuOSw4LjcsMzAsOSwzMEM5LjIsMzAsOS41LDI5LjksOS43LDI5Ljh6IiBjbGFzcz0iQmxhY2si
|
LjQsMjkuOSw4LjcsMzAsOSwzMEM5LjIsMzAsOS41LDI5LjksOS43LDI5Ljh6IiBjbGFzcz0iQmxhY2si
|
||||||
IC8+DQogIDwvZz4NCjwvc3ZnPgs=
|
IC8+DQogIDwvZz4NCjwvc3ZnPgs=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="BarButtonItem2.Caption" xml:space="preserve">
|
||||||
|
<value>AccessCode manuell versenden</value>
|
||||||
|
</data>
|
||||||
|
<data name="BarButtonItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||||
|
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||||
|
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKQCAAAC77u/
|
||||||
|
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
|
||||||
|
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
|
||||||
|
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
|
||||||
|
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
|
||||||
|
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
|
||||||
|
WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLlJlZHtmaWxsOiNEMTFD
|
||||||
|
MUM7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7Zmls
|
||||||
|
bDojNzI3MjcyO30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuNzU7fQo8L3N0eWxl
|
||||||
|
Pg0KICA8ZyBpZD0iTWFpbCI+DQogICAgPHBhdGggZD0iTTE2LDE4LjNsMTQtOFYyNWMwLDAuNS0wLjUs
|
||||||
|
MS0xLDFIM2MtMC41LDAtMS0wLjUtMS0xVjEwLjNMMTYsMTguM3ogTTI5LDZIM0MyLjUsNiwyLDYuNSwy
|
||||||
|
LDd2MWwxNCw4bDE0LThWNyAgIEMzMCw2LjUsMjkuNSw2LDI5LDZ6IiBjbGFzcz0iQmxhY2siIC8+DQog
|
||||||
|
IDwvZz4NCjwvc3ZnPgs=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RibbonControl.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="RibbonControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
@@ -917,6 +939,9 @@
|
|||||||
<data name="RibbonPageGroupFunctions.Text" xml:space="preserve">
|
<data name="RibbonPageGroupFunctions.Text" xml:space="preserve">
|
||||||
<value>Funktionen</value>
|
<value>Funktionen</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="RibbonPageGroupReceiver.Text" xml:space="preserve">
|
||||||
|
<value>Empfänger</value>
|
||||||
|
</data>
|
||||||
<data name="RibbonPage1.Text" xml:space="preserve">
|
<data name="RibbonPage1.Text" xml:space="preserve">
|
||||||
<value>Start</value>
|
<value>Start</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1098,11 +1123,23 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn3.VisibleIndex" type="System.Int32, mscorlib">
|
<data name="GridColumn3.VisibleIndex" type="System.Int32, mscorlib">
|
||||||
<value>2</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn3.Width" type="System.Int32, mscorlib">
|
<data name="GridColumn3.Width" type="System.Int32, mscorlib">
|
||||||
<value>100</value>
|
<value>100</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="GridColumn6.Caption" xml:space="preserve">
|
||||||
|
<value>Kommentar</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridColumn6.Visible" type="System.Boolean, mscorlib">
|
||||||
|
<value>True</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridColumn6.VisibleIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>1</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridColumn6.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>80</value>
|
||||||
|
</data>
|
||||||
<data name="GridColumn4.Caption" xml:space="preserve">
|
<data name="GridColumn4.Caption" xml:space="preserve">
|
||||||
<value>Status</value>
|
<value>Status</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1110,7 +1147,7 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn4.VisibleIndex" type="System.Int32, mscorlib">
|
<data name="GridColumn4.VisibleIndex" type="System.Int32, mscorlib">
|
||||||
<value>1</value>
|
<value>2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn4.Width" type="System.Int32, mscorlib">
|
<data name="GridColumn4.Width" type="System.Int32, mscorlib">
|
||||||
<value>163</value>
|
<value>163</value>
|
||||||
@@ -1134,7 +1171,7 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn7.VisibleIndex" type="System.Int32, mscorlib">
|
<data name="GridColumn7.VisibleIndex" type="System.Int32, mscorlib">
|
||||||
<value>3</value>
|
<value>4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn7.Width" type="System.Int32, mscorlib">
|
<data name="GridColumn7.Width" type="System.Int32, mscorlib">
|
||||||
<value>120</value>
|
<value>120</value>
|
||||||
@@ -1146,7 +1183,7 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn1.VisibleIndex" type="System.Int32, mscorlib">
|
<data name="GridColumn1.VisibleIndex" type="System.Int32, mscorlib">
|
||||||
<value>4</value>
|
<value>5</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridColumn1.Width" type="System.Int32, mscorlib">
|
<data name="GridColumn1.Width" type="System.Int32, mscorlib">
|
||||||
<value>120</value>
|
<value>120</value>
|
||||||
@@ -2084,6 +2121,12 @@
|
|||||||
<data name=">>GridColumn3.Type" xml:space="preserve">
|
<data name=">>GridColumn3.Type" xml:space="preserve">
|
||||||
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>GridColumn6.Name" xml:space="preserve">
|
||||||
|
<value>GridColumn6</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GridColumn6.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
<data name=">>GridColumn4.Name" xml:space="preserve">
|
<data name=">>GridColumn4.Name" xml:space="preserve">
|
||||||
<value>GridColumn4</value>
|
<value>GridColumn4</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -2132,6 +2175,18 @@
|
|||||||
<data name=">>XtraSaveFileDialog1.Type" xml:space="preserve">
|
<data name=">>XtraSaveFileDialog1.Type" xml:space="preserve">
|
||||||
<value>DevExpress.XtraEditors.XtraSaveFileDialog, DevExpress.XtraDialogs.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
<value>DevExpress.XtraEditors.XtraSaveFileDialog, DevExpress.XtraDialogs.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>BarButtonItem2.Name" xml:space="preserve">
|
||||||
|
<value>BarButtonItem2</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>BarButtonItem2.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>RibbonPageGroupReceiver.Name" xml:space="preserve">
|
||||||
|
<value>RibbonPageGroupReceiver</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>RibbonPageGroupReceiver.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
<data name=">>$this.Name" xml:space="preserve">
|
<data name=">>$this.Name" xml:space="preserve">
|
||||||
<value>frmMain</value>
|
<value>frmMain</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -1,17 +1,19 @@
|
|||||||
Imports System.IO
|
Imports System.ComponentModel
|
||||||
|
Imports System.IdentityModel.Metadata
|
||||||
|
Imports System.IO
|
||||||
|
Imports System.Text
|
||||||
Imports DevExpress.LookAndFeel
|
Imports DevExpress.LookAndFeel
|
||||||
Imports DevExpress.Utils.Extensions
|
Imports DevExpress.Utils.Extensions
|
||||||
Imports DevExpress.XtraCharts
|
Imports DevExpress.XtraCharts
|
||||||
Imports DevExpress.XtraGrid
|
Imports DevExpress.XtraGrid
|
||||||
Imports DevExpress.XtraGrid.Views.Grid
|
Imports DevExpress.XtraGrid.Views.Grid
|
||||||
|
Imports DevExpress.XtraPrinting
|
||||||
Imports DevExpress.XtraSplashScreen
|
Imports DevExpress.XtraSplashScreen
|
||||||
Imports DigitalData.GUIs.Common
|
Imports DigitalData.GUIs.Common
|
||||||
Imports DigitalData.Modules.Base
|
Imports DigitalData.Modules.Base
|
||||||
Imports DigitalData.Modules.Logging
|
Imports DigitalData.Modules.Logging
|
||||||
Imports EnvelopeGenerator.CommonServices
|
Imports EnvelopeGenerator.CommonServices
|
||||||
Imports EnvelopeGenerator.CommonServices.My
|
Imports EnvelopeGenerator.CommonServices.My
|
||||||
Imports System.ComponentModel
|
|
||||||
Imports DevExpress.XtraPrinting
|
|
||||||
Imports EnvelopeGenerator.Domain.Entities
|
Imports EnvelopeGenerator.Domain.Entities
|
||||||
|
|
||||||
Public Class frmMain
|
Public Class frmMain
|
||||||
@@ -25,6 +27,7 @@ Public Class frmMain
|
|||||||
Private Controller As EnvelopeListController
|
Private Controller As EnvelopeListController
|
||||||
Private myFileData As Byte()
|
Private myFileData As Byte()
|
||||||
Private myResFileData As Byte()
|
Private myResFileData As Byte()
|
||||||
|
Private FormLoad As Boolean = True
|
||||||
|
|
||||||
Public Sub New(pState As State)
|
Public Sub New(pState As State)
|
||||||
' Dieser Aufruf ist für den Designer erforderlich.
|
' Dieser Aufruf ist für den Designer erforderlich.
|
||||||
@@ -60,6 +63,10 @@ Public Class frmMain
|
|||||||
XtraTabControlMain.TabPages(3).PageVisible = False
|
XtraTabControlMain.TabPages(3).PageVisible = False
|
||||||
End If
|
End If
|
||||||
LoadEnvelopeData()
|
LoadEnvelopeData()
|
||||||
|
Dim oXMLPath = Get_DocGrid_Layout_Filename(ViewEnvelopes.Name)
|
||||||
|
If File.Exists(oXMLPath) Then
|
||||||
|
ViewEnvelopes.RestoreLayoutFromXml(oXMLPath)
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub LoadEnvelopeData()
|
Private Sub LoadEnvelopeData()
|
||||||
@@ -216,6 +223,7 @@ Public Class frmMain
|
|||||||
RibbonPageEnvelopeActions.Enabled = True
|
RibbonPageEnvelopeActions.Enabled = True
|
||||||
Select Case XtraTabControlMain.SelectedTabPageIndex
|
Select Case XtraTabControlMain.SelectedTabPageIndex
|
||||||
Case 1
|
Case 1
|
||||||
|
RibbonPageGroupReceiver.Visible = False
|
||||||
btnEditEnvelope.Enabled = False
|
btnEditEnvelope.Enabled = False
|
||||||
btnDeleteEnvelope.Enabled = False
|
btnDeleteEnvelope.Enabled = False
|
||||||
btnContactReceiver.Enabled = False
|
btnContactReceiver.Enabled = False
|
||||||
@@ -225,7 +233,12 @@ Public Class frmMain
|
|||||||
bbtnitmEB.Enabled = True
|
bbtnitmEB.Enabled = True
|
||||||
bbtnitm2Faktor.Enabled = False
|
bbtnitm2Faktor.Enabled = False
|
||||||
LoadEnvelopeData()
|
LoadEnvelopeData()
|
||||||
|
Dim oXMLPath = Get_DocGrid_Layout_Filename(ViewCompleted.Name)
|
||||||
|
If File.Exists(oXMLPath) Then
|
||||||
|
ViewCompleted.RestoreLayoutFromXml(oXMLPath)
|
||||||
|
End If
|
||||||
Case 0
|
Case 0
|
||||||
|
RibbonPageGroupReceiver.Visible = True
|
||||||
btnEditEnvelope.Enabled = True
|
btnEditEnvelope.Enabled = True
|
||||||
btnDeleteEnvelope.Enabled = True
|
btnDeleteEnvelope.Enabled = True
|
||||||
btnContactReceiver.Enabled = True
|
btnContactReceiver.Enabled = True
|
||||||
@@ -557,6 +570,7 @@ Public Class frmMain
|
|||||||
MYUSER = oUser
|
MYUSER = oUser
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
FormLoad = False
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub bbtnitmInfoMail_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitmInfoMail.ItemClick
|
Private Sub bbtnitmInfoMail_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitmInfoMail.ItemClick
|
||||||
@@ -795,9 +809,12 @@ Public Class frmMain
|
|||||||
If oDT.Rows.Count = 1 Then
|
If oDT.Rows.Count = 1 Then
|
||||||
Dim oTFA_REG_DL = oDT.Rows(0).Item("TFA_REG_DEADLINE")
|
Dim oTFA_REG_DL = oDT.Rows(0).Item("TFA_REG_DEADLINE")
|
||||||
Dim oTOTP = oDT.Rows(0).Item("TOTP_SECRET_KEY")
|
Dim oTOTP = oDT.Rows(0).Item("TOTP_SECRET_KEY")
|
||||||
Dim oForm As New frm2Factor_Properties(oReceiver.EmailAddress, oTOTP, oTFA_REG_DL, DB_DD_ECM)
|
If Not IsDBNull(oTOTP) And Not IsDBNull(oTFA_REG_DL) Then
|
||||||
|
Dim oForm As New frm2Factor_Properties(oReceiver.EmailAddress, oTOTP.ToString, oTFA_REG_DL, DB_DD_ECM)
|
||||||
oForm.ShowDialog()
|
oForm.ShowDialog()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
@@ -838,4 +855,71 @@ Public Class frmMain
|
|||||||
.DbConfig = Nothing
|
.DbConfig = Nothing
|
||||||
}
|
}
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Private Sub BarButtonItem2_ItemClick_1(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
|
||||||
|
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
|
||||||
|
Try
|
||||||
|
Dim oView As GridView = GridEnvelopes.FocusedView
|
||||||
|
Dim selReceiver As Receiver
|
||||||
|
If oView.Name = ViewReceivers.Name Then
|
||||||
|
selReceiver = oView.GetRow(oView.FocusedRowHandle)
|
||||||
|
Else
|
||||||
|
MsgBox(Resources.Envelope.Please_select_a_recipient_from_the_Recipients_tab, MsgBoxStyle.Information, Text)
|
||||||
|
End If
|
||||||
|
If ViewEnvelopes.FocusedRowHandle < 0 Or IsNothing(selReceiver) Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
Dim oEnvelope As Envelope = ViewEnvelopes.GetRow(ViewEnvelopes.FocusedRowHandle)
|
||||||
|
If oEnvelope.UseAccessCode = True Then
|
||||||
|
Dim oController = New EnvelopeEditorController(State, oEnvelope)
|
||||||
|
Dim Documents As New BindingList(Of EnvelopeDocument)
|
||||||
|
Dim Receivers As New BindingList(Of Receiver)
|
||||||
|
Receivers = New BindingList(Of Receiver)(oController.Envelope.Receivers)
|
||||||
|
For Each oReceiver As Receiver In Receivers
|
||||||
|
If oReceiver.EmailAddress = selReceiver.EmailAddress Then
|
||||||
|
If oController.ActionService.ManuallySendAccessCode(oEnvelope, oReceiver) = True Then
|
||||||
|
Dim oMsg = Resources.Envelope.AccessCode_successfully_send.Replace("@Mail", oReceiver.EmailAddress)
|
||||||
|
MsgBox(oMsg, MsgBoxStyle.Information, Text)
|
||||||
|
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
Else
|
||||||
|
MsgBox("Envelope is defined without AccessCode so far!", MsgBoxStyle.Information)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
Logger.Error(ex)
|
||||||
|
Finally
|
||||||
|
|
||||||
|
|
||||||
|
End Try
|
||||||
|
SplashScreenManager.CloseOverlayForm(oHandle)
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Sub ViewCompleted_Layout(sender As Object, e As EventArgs) Handles ViewCompleted.Layout
|
||||||
|
If FormLoad = True Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
Dim oXMLPath = Get_DocGrid_Layout_Filename(ViewCompleted.Name)
|
||||||
|
ViewCompleted.SaveLayoutToXml(oXMLPath)
|
||||||
|
bsitmInfo.Caption = "Grid Layout Envelopes Completed Saved"
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Sub ViewEnvelopes_Layout(sender As Object, e As EventArgs) Handles ViewEnvelopes.Layout
|
||||||
|
If FormLoad = True Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
Dim oXMLPath = Get_DocGrid_Layout_Filename(ViewEnvelopes.Name)
|
||||||
|
ViewEnvelopes.SaveLayoutToXml(oXMLPath)
|
||||||
|
bsitmInfo.Caption = "Grid Layout Envelopes Saved"
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
Private Function Get_DocGrid_Layout_Filename(pGridViewName As String)
|
||||||
|
Dim EntityRegex As New RegularExpressions.Regex("\s+\(\d+\)")
|
||||||
|
Dim Filename As String = String.Format("{0}_UserLayout.xml", pGridViewName)
|
||||||
|
Dim oGridlayoutFullFilename = System.IO.Path.Combine(Application.UserAppDataPath(), Filename)
|
||||||
|
Return oGridlayoutFullFilename
|
||||||
|
End Function
|
||||||
End Class
|
End Class
|
||||||
@@ -50,5 +50,5 @@
|
|||||||
<package id="System.Text.Json" version="9.0.0" targetFramework="net462" />
|
<package id="System.Text.Json" version="9.0.0" targetFramework="net462" />
|
||||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
||||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
||||||
<package id="UserManager.Domain" version="3.2.2" targetFramework="net462" />
|
<package id="UserManager.Domain" version="3.2.3" targetFramework="net462" />
|
||||||
</packages>
|
</packages>
|
||||||
@@ -48,7 +48,6 @@ public static class DIExtensions
|
|||||||
services.TryAddScoped<IDocumentStatusRepository, DocumentStatusRepository>();
|
services.TryAddScoped<IDocumentStatusRepository, DocumentStatusRepository>();
|
||||||
services.TryAddScoped<IEmailTemplateRepository, EmailTemplateRepository>();
|
services.TryAddScoped<IEmailTemplateRepository, EmailTemplateRepository>();
|
||||||
services.TryAddScoped<IEnvelopeRepository, EnvelopeRepository>();
|
services.TryAddScoped<IEnvelopeRepository, EnvelopeRepository>();
|
||||||
services.TryAddScoped<IEnvelopeCertificateRepository, EnvelopeCertificateRepository>();
|
|
||||||
services.TryAddScoped<IEnvelopeHistoryRepository, EnvelopeHistoryRepository>();
|
services.TryAddScoped<IEnvelopeHistoryRepository, EnvelopeHistoryRepository>();
|
||||||
services.TryAddScoped<IEnvelopeReceiverRepository, EnvelopeReceiverRepository>();
|
services.TryAddScoped<IEnvelopeReceiverRepository, EnvelopeReceiverRepository>();
|
||||||
services.TryAddScoped<IEnvelopeTypeRepository, EnvelopeTypeRepository>();
|
services.TryAddScoped<IEnvelopeTypeRepository, EnvelopeTypeRepository>();
|
||||||
@@ -61,7 +60,6 @@ public static class DIExtensions
|
|||||||
services.AddDbRepository<EGDbContext, DocumentStatus>(context => context.DocumentStatus).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, DocumentStatus>(context => context.DocumentStatus).UseAutoMapper();
|
||||||
services.AddDbRepository<EGDbContext, EmailTemplate>(context => context.EmailTemplate).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, EmailTemplate>(context => context.EmailTemplate).UseAutoMapper();
|
||||||
services.AddDbRepository<EGDbContext, Envelope>(context => context.Envelopes).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, Envelope>(context => context.Envelopes).UseAutoMapper();
|
||||||
services.AddDbRepository<EGDbContext, EnvelopeCertificate>(context => context.EnvelopeCertificates).UseAutoMapper();
|
|
||||||
services.AddDbRepository<EGDbContext, EnvelopeHistory>(context => context.EnvelopeHistories).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, EnvelopeHistory>(context => context.EnvelopeHistories).UseAutoMapper();
|
||||||
services.AddDbRepository<EGDbContext, EnvelopeReceiver>(context => context.EnvelopeReceivers).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, EnvelopeReceiver>(context => context.EnvelopeReceivers).UseAutoMapper();
|
||||||
services.AddDbRepository<EGDbContext, EnvelopeType>(context => context.EnvelopeTypes).UseAutoMapper();
|
services.AddDbRepository<EGDbContext, EnvelopeType>(context => context.EnvelopeTypes).UseAutoMapper();
|
||||||
|
|||||||
@@ -29,8 +29,6 @@ public class EGDbContext : DbContext, IUserManagerDbContext, IMailDbContext
|
|||||||
|
|
||||||
public DbSet<EmailTemplate> EmailTemplate { get; set; }
|
public DbSet<EmailTemplate> EmailTemplate { get; set; }
|
||||||
|
|
||||||
public DbSet<EnvelopeCertificate> EnvelopeCertificates { get; set; }
|
|
||||||
|
|
||||||
public DbSet<EnvelopeDocument> EnvelopeDocument { get; set; }
|
public DbSet<EnvelopeDocument> EnvelopeDocument { get; set; }
|
||||||
|
|
||||||
public DbSet<EnvelopeHistory> EnvelopeHistories { get; set; }
|
public DbSet<EnvelopeHistory> EnvelopeHistories { get; set; }
|
||||||
@@ -73,7 +71,6 @@ public class EGDbContext : DbContext, IUserManagerDbContext, IMailDbContext
|
|||||||
Envelopes = Set<Envelope>();
|
Envelopes = Set<Envelope>();
|
||||||
DocumentReceiverElements = Set<DocumentReceiverElement>();
|
DocumentReceiverElements = Set<DocumentReceiverElement>();
|
||||||
DocumentStatus = Set<DocumentStatus>();
|
DocumentStatus = Set<DocumentStatus>();
|
||||||
EnvelopeCertificates = Set<EnvelopeCertificate>();
|
|
||||||
EnvelopeDocument = Set<EnvelopeDocument>();
|
EnvelopeDocument = Set<EnvelopeDocument>();
|
||||||
EnvelopeHistories = Set<EnvelopeHistory>();
|
EnvelopeHistories = Set<EnvelopeHistory>();
|
||||||
EnvelopeTypes = Set<EnvelopeType>();
|
EnvelopeTypes = Set<EnvelopeType>();
|
||||||
@@ -101,7 +98,6 @@ public class EGDbContext : DbContext, IUserManagerDbContext, IMailDbContext
|
|||||||
modelBuilder.Entity<DocumentStatus>();
|
modelBuilder.Entity<DocumentStatus>();
|
||||||
modelBuilder.Entity<EmailTemplate>();
|
modelBuilder.Entity<EmailTemplate>();
|
||||||
modelBuilder.Entity<Envelope>();
|
modelBuilder.Entity<Envelope>();
|
||||||
modelBuilder.Entity<EnvelopeCertificate>();
|
|
||||||
modelBuilder.Entity<EnvelopeHistory>();
|
modelBuilder.Entity<EnvelopeHistory>();
|
||||||
modelBuilder.Entity<EnvelopeType>();
|
modelBuilder.Entity<EnvelopeType>();
|
||||||
modelBuilder.Entity<Receiver>();
|
modelBuilder.Entity<Receiver>();
|
||||||
@@ -165,7 +161,6 @@ public class EGDbContext : DbContext, IUserManagerDbContext, IMailDbContext
|
|||||||
AddTrigger<DocumentStatus>();
|
AddTrigger<DocumentStatus>();
|
||||||
AddTrigger<EmailTemplate>();
|
AddTrigger<EmailTemplate>();
|
||||||
AddTrigger<Envelope>();
|
AddTrigger<Envelope>();
|
||||||
AddTrigger<EnvelopeCertificate>();
|
|
||||||
AddTrigger<EnvelopeDocument>();
|
AddTrigger<EnvelopeDocument>();
|
||||||
AddTrigger<EnvelopeHistory>();
|
AddTrigger<EnvelopeHistory>();
|
||||||
AddTrigger<EnvelopeReceiver>();
|
AddTrigger<EnvelopeReceiver>();
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<PackageReference Include="DigitalData.Core.Infrastructure" Version="2.1.1" />
|
<PackageReference Include="DigitalData.Core.Infrastructure" Version="2.1.1" />
|
||||||
<PackageReference Include="DigitalData.Core.Infrastructure.AutoMapper" Version="1.0.3" />
|
<PackageReference Include="DigitalData.Core.Infrastructure.AutoMapper" Version="1.0.3" />
|
||||||
<PackageReference Include="DigitalData.EmailProfilerDispatcher" Version="3.1.1" />
|
<PackageReference Include="DigitalData.EmailProfilerDispatcher" Version="3.1.1" />
|
||||||
<PackageReference Include="UserManager" Version="1.1.1" />
|
<PackageReference Include="UserManager" Version="1.1.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -1053,7 +1053,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.EnvelopeType", b =>
|
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Type", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
.ValueGeneratedOnAdd()
|
.ValueGeneratedOnAdd()
|
||||||
@@ -1271,7 +1271,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Envelope", b =>
|
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Envelope", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("EnvelopeGenerator.Domain.Entities.EnvelopeType", "EnvelopeType")
|
b.HasOne("EnvelopeGenerator.Domain.Entities.Type", "Type")
|
||||||
.WithMany()
|
.WithMany()
|
||||||
.HasForeignKey("EnvelopeTypeId")
|
.HasForeignKey("EnvelopeTypeId")
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
@@ -1283,7 +1283,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
b.Navigation("EnvelopeType");
|
b.Navigation("Type");
|
||||||
|
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1050,7 +1050,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.EnvelopeType", b =>
|
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Type", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
.ValueGeneratedOnAdd()
|
.ValueGeneratedOnAdd()
|
||||||
@@ -1268,7 +1268,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Envelope", b =>
|
modelBuilder.Entity("EnvelopeGenerator.Domain.Entities.Envelope", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("EnvelopeGenerator.Domain.Entities.EnvelopeType", "EnvelopeType")
|
b.HasOne("EnvelopeGenerator.Domain.Entities.Type", "Type")
|
||||||
.WithMany()
|
.WithMany()
|
||||||
.HasForeignKey("EnvelopeTypeId")
|
.HasForeignKey("EnvelopeTypeId")
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
@@ -1280,7 +1280,7 @@ namespace EnvelopeGenerator.Infrastructure.Migrations
|
|||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
b.Navigation("EnvelopeType");
|
b.Navigation("Type");
|
||||||
|
|
||||||
b.Navigation("User");
|
b.Navigation("User");
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
using DigitalData.Core.Infrastructure;
|
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
|
||||||
using EnvelopeGenerator.Application.Contracts.Repositories;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Infrastructure.Repositories;
|
|
||||||
|
|
||||||
[Obsolete("Use IRepository")]
|
|
||||||
public class EnvelopeCertificateRepository : CRUDRepository<EnvelopeCertificate, int, EGDbContext>, IEnvelopeCertificateRepository
|
|
||||||
{
|
|
||||||
public EnvelopeCertificateRepository(EGDbContext dbContext) : base(dbContext, dbContext.EnvelopeCertificates)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
using EnvelopeGenerator.Web.Services;
|
using EnvelopeGenerator.Web.Services;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Web.Controllers
|
namespace EnvelopeGenerator.Web.Controllers;
|
||||||
{
|
|
||||||
public class BaseController : Controller
|
public class BaseController : Controller
|
||||||
{
|
{
|
||||||
protected readonly DatabaseService database;
|
protected readonly DatabaseService database;
|
||||||
@@ -15,4 +15,3 @@ namespace EnvelopeGenerator.Web.Controllers
|
|||||||
_logger = logger;
|
_logger = logger;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
using EnvelopeGenerator.Application.Contracts.Services;
|
|
||||||
using EnvelopeGenerator.Application.DTOs;
|
|
||||||
using EnvelopeGenerator.Domain.Entities;
|
|
||||||
|
|
||||||
namespace EnvelopeGenerator.Web.Controllers.Test;
|
|
||||||
|
|
||||||
[Obsolete("Use MediatR")]
|
|
||||||
public class TestEnvelopeCertificateController : TestControllerBase<IEnvelopeCertificateService, EnvelopeCertificateDto, EnvelopeCertificate, int>
|
|
||||||
{
|
|
||||||
public TestEnvelopeCertificateController(ILogger<TestEnvelopeCertificateController> logger, IEnvelopeCertificateService service) : base(logger, service)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -7,8 +7,5 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"AdminPassword": "dd",
|
"AdminPassword": "dd",
|
||||||
"UseCSPInDev": false,
|
"UseCSPInDev": false
|
||||||
"ConnectionStrings": {
|
|
||||||
"Default": "Server=sDD-VMP04-SQL19\\CURSORAG;Database=DD_ECM;User Id=sa;Password=dd;Encrypt=false;TrustServerCertificate=True;"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
74
EnvelopeGenerator.Web/wwwroot/README.md
Normal file
74
EnvelopeGenerator.Web/wwwroot/README.md
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
# 📄 PSPDFKit-Integration – Vanilla JavaScript
|
||||||
|
|
||||||
|
Dieses Projekt zeigt, wie die PDF-Anzeige- und Signaturbibliothek [PSPDFKit](https://www.nutrient.io/sdk/web/getting-started/other-frameworks/javascript/) mithilfe von **Vanilla JavaScript** integriert werden kann.
|
||||||
|
|
||||||
|
## 🚀 Verwendungszweck
|
||||||
|
|
||||||
|
PSPDFKit wurde in der Webanwendung verwendet, um PDF-Dokumente:
|
||||||
|
- anzuzeigen,
|
||||||
|
- zu signieren,
|
||||||
|
- mit Anmerkungen zu versehen,
|
||||||
|
- Formularfelder auszufüllen.
|
||||||
|
|
||||||
|
Benutzer können Dokumente **direkt über den Browser signieren und versenden**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔧 Wo und wie wurde PSPDFKit verwendet?
|
||||||
|
|
||||||
|
### 1. PSPDFKit laden
|
||||||
|
|
||||||
|
PSPDFKit wurde mit der Funktion `loadPSPDFKit` in `UI.js` gestartet:
|
||||||
|
|
||||||
|
```js
|
||||||
|
PSPDFKit.load({
|
||||||
|
container: ‚#app‘,
|
||||||
|
document: arrayBuffer,
|
||||||
|
licenseKey: ‚YOUR_LICENSE_KEY‘,
|
||||||
|
...
|
||||||
|
})
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Anmerkungen und Formularfelder
|
||||||
|
|
||||||
|
In `annotation.js` werden die folgenden Felder dynamisch zu PDF-Dokumenten hinzugefügt:
|
||||||
|
|
||||||
|
- **Signaturfeld** (`SignatureFormField`)
|
||||||
|
- **Position** (`TextFormField`)
|
||||||
|
- **Stadt** (`TextFormField`)
|
||||||
|
- **Datum** (`TextFormField`, wird automatisch mit dem heutigen Datum ausgefüllt)
|
||||||
|
- **Bezeichnungen** (`Ort`, `Position`, `Date`) – dies sind nur lesbare Textfelder.
|
||||||
|
- **Rahmen für Signaturbild** – wird dynamisch erstellt und platziert, wenn der Benutzer unterschreibt.
|
||||||
|
|
||||||
|
Die Felder werden entsprechend ihrer Position auf dem PDF berechnet und für jedes Feld wird eine eindeutige ID erstellt.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 3. Anpassungen der Symbolleiste
|
||||||
|
|
||||||
|
In `UI.js` ist die Standard-Symbolleiste (`toolbarItems`) von PSPDFKit konfiguriert:
|
||||||
|
|
||||||
|
- Es werden nur zulässige Elemente (`sidebar`, `zoom`, `pager`, `search` usw.) angezeigt.
|
||||||
|
- Je nach Benutzerberechtigung (z. B. schreibgeschützt oder beschreibbar) werden die folgenden speziellen Schaltflächen dynamisch hinzugefügt:
|
||||||
|
|
||||||
|
**Beschreibbarer Modus:**
|
||||||
|
- `Teilen` (SHARE)
|
||||||
|
- `Logout` (LOGOUT)
|
||||||
|
- `Zurücksetzen` (RESET)
|
||||||
|
- `Ablehnen` (REJECT)
|
||||||
|
- `Finalisieren` (FINISH)
|
||||||
|
|
||||||
|
**Nur-Lesemodus:**
|
||||||
|
- Die Schaltfläche `Teilen` kopiert nur den Link in die Zwischenablage (COPY_URL)
|
||||||
|
|
||||||
|
Für mobile Geräte werden zusätzlich vereinfachte Schaltflächen angezeigt.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 📁 Wichtige Dateien
|
||||||
|
|
||||||
|
| Datei | Beschreibung |
|
||||||
|
|-------------------|-----------------------------------------------|
|
||||||
|
| `app.js` | Hauptanwendungsklasse, Dokumentladen und -steuerung |
|
||||||
|
| `ui.js` | PSPDFKit-UI-Einrichtung und Symbolleistenverwaltung |
|
||||||
|
| `annotation.js` | Erstellen und Löschen von Anmerkungsfeldern |
|
||||||
Reference in New Issue
Block a user