64 lines
2.9 KiB
C#
64 lines
2.9 KiB
C#
using AutoMapper;
|
|
using EnvelopeGenerator.Application.Common.Dto.EnvelopeHistory;
|
|
using EnvelopeGenerator.Application.Common.Dto.EnvelopeReceiver;
|
|
using EnvelopeGenerator.Application.Common.Dto.EnvelopeReceiverReadOnly;
|
|
using EnvelopeGenerator.Application.Common.Dto.Messaging;
|
|
using EnvelopeGenerator.Application.Common.Dto.Receiver;
|
|
using EnvelopeGenerator.Application.Common.Extensions;
|
|
using EnvelopeGenerator.Application.Receivers.Commands;
|
|
using EnvelopeGenerator.Domain.Entities;
|
|
|
|
namespace EnvelopeGenerator.Application.Common.Dto;
|
|
|
|
/// <summary>
|
|
/// Represents the AutoMapper profile configuration for mapping between
|
|
/// domain entities and data transfer objects (DTOs) used within the EnvelopeGenerator application.
|
|
/// </summary>
|
|
public class MappingProfile : Profile
|
|
{
|
|
/// <summary>
|
|
/// Initializes a new instance of the <see cref="MappingProfile"/> class.
|
|
/// Configures the mappings between entities and DTOs used throughout the application.
|
|
/// </summary>
|
|
public MappingProfile()
|
|
{
|
|
// Entity to DTO mappings
|
|
CreateMap<Config, ConfigDto>();
|
|
CreateMap<Signature, SignatureDto>();
|
|
CreateMap<DocumentStatus, DocumentStatusDto>();
|
|
CreateMap<EmailTemplate, EmailTemplateDto>();
|
|
CreateMap<Envelope, EnvelopeDto>();
|
|
CreateMap<Document, DocumentDto>();
|
|
CreateMap<EnvelopeHistory, HistoryDto>();
|
|
CreateMap<EnvelopeHistory, HistoryCreateDto>();
|
|
CreateMap<EnvelopeReceiver, EnvelopeReceiverDto>();
|
|
CreateMap<EnvelopeReceiver, EnvelopeReceiverSecretDto>();
|
|
CreateMap<EnvelopeType, EnvelopeTypeDto>();
|
|
CreateMap<Receiver, ReceiverDto>();
|
|
CreateMap<Receiver, ReceiverSecretDto>();
|
|
CreateMap<EnvelopeReceiverReadOnly, EnvelopeReceiverReadOnlyDto>();
|
|
|
|
// DTO to Entity mappings
|
|
CreateMap<ConfigDto, Config>();
|
|
CreateMap<SignatureDto, Signature>();
|
|
CreateMap<DocumentStatusDto, DocumentStatus>();
|
|
CreateMap<EmailTemplateDto, EmailTemplate>();
|
|
CreateMap<EnvelopeDto, Envelope>();
|
|
CreateMap<DocumentDto, Document>();
|
|
CreateMap<HistoryDto, EnvelopeHistory>();
|
|
CreateMap<HistoryCreateDto, EnvelopeHistory>();
|
|
CreateMap<EnvelopeReceiverDto, EnvelopeReceiver>();
|
|
CreateMap<EnvelopeTypeDto, EnvelopeType>();
|
|
CreateMap<ReceiverDto, Receiver>().ForMember(rcv => rcv.EnvelopeReceivers, rcvReadDto => rcvReadDto.Ignore());
|
|
CreateMap<EnvelopeReceiver, EnvelopeReceiverBasicDto>();
|
|
CreateMap<EnvelopeReceiverReadOnlyCreateDto, EnvelopeReceiverReadOnly>();
|
|
CreateMap<EnvelopeReceiverReadOnlyUpdateDto, EnvelopeReceiverReadOnly>();
|
|
|
|
// Messaging mappings
|
|
// for GTX messaging
|
|
CreateMap<GtxMessagingResponse, SmsResponse>()
|
|
.ConstructUsing(gtxRes => gtxRes.Ok()
|
|
? new SmsResponse() { Ok = true }
|
|
: new SmsResponse() { Ok = false, Errors = gtxRes });
|
|
}
|
|
} |