refactor: Refactor mappings

This commit is contained in:
Pc 2023-07-05 23:54:10 +03:30
parent bb7aaa2edb
commit 12625661e6
14 changed files with 28 additions and 19 deletions

View File

@ -12,6 +12,7 @@ using Elasticsearch.Net;
using Exceptions; using Exceptions;
using Flight; using Flight;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -47,7 +48,7 @@ public class CreateBookingEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CreateBookingResponseDto(result.Id); var response = result.Adapt<CreateBookingResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -13,6 +13,7 @@ using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using Flight.Aircrafts.ValueObjects; using Flight.Aircrafts.ValueObjects;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -49,11 +50,11 @@ public class CreateAircraftEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CreateAircraftResponseDto(result.Id); var response = result.Adapt<CreateAircraftResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })
//.RequireAuthorization(nameof(ApiScope)) .RequireAuthorization(nameof(ApiScope))
.WithName("CreateAircraft") .WithName("CreateAircraft")
.WithApiVersionSet(builder.NewApiVersionSet("Flight").Build()) .WithApiVersionSet(builder.NewApiVersionSet("Flight").Build())
.Produces<CreateAircraftResponseDto>() .Produces<CreateAircraftResponseDto>()

View File

@ -11,6 +11,7 @@ using Data;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -46,7 +47,7 @@ public class CreateAirportEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CreateAirportResponseDto(result.Id); var response = result.Adapt<CreateAirportResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -13,6 +13,7 @@ using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using Flight.Airports.ValueObjects; using Flight.Airports.ValueObjects;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -54,7 +55,7 @@ public class CreateFlightEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CreateFlightResponseDto(result.Id); var response = result.Adapt<CreateFlightResponseDto>();
return Results.CreatedAtRoute("GetFlightById", new { id = result.Id }, response); return Results.CreatedAtRoute("GetFlightById", new { id = result.Id }, response);
}) })

View File

@ -35,7 +35,7 @@ public class DeleteFlightEndpoint : IMinimalEndpoint
builder.MapDelete($"{EndpointConfig.BaseApiPath}/flight/{{id}}", builder.MapDelete($"{EndpointConfig.BaseApiPath}/flight/{{id}}",
async (Guid id, IMediator mediator, CancellationToken cancellationToken) => async (Guid id, IMediator mediator, CancellationToken cancellationToken) =>
{ {
var result = await mediator.Send(new DeleteFlight(id), cancellationToken); await mediator.Send(new DeleteFlight(id), cancellationToken);
return Results.NoContent(); return Results.NoContent();
}) })

View File

@ -13,6 +13,7 @@ using Data;
using Dtos; using Dtos;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -39,7 +40,7 @@ public class GetAvailableFlightsEndpoint : IMinimalEndpoint
{ {
var result = await mediator.Send(new GetAvailableFlights(), cancellationToken); var result = await mediator.Send(new GetAvailableFlights(), cancellationToken);
var response = new GetAvailableFlightsResponseDto(result?.FlightDtos); var response = result.Adapt<GetAvailableFlightsResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -11,6 +11,7 @@ using Dtos;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -30,11 +31,11 @@ public class GetFlightByIdEndpoint : IMinimalEndpoint
public IEndpointRouteBuilder MapEndpoint(IEndpointRouteBuilder builder) public IEndpointRouteBuilder MapEndpoint(IEndpointRouteBuilder builder)
{ {
builder.MapGet($"{EndpointConfig.BaseApiPath}/flight/{{id}}", builder.MapGet($"{EndpointConfig.BaseApiPath}/flight/{{id}}",
async (Guid id, IMediator mediator, CancellationToken cancellationToken) => async (Guid id, IMediator mediator, IMapper mapper, CancellationToken cancellationToken) =>
{ {
var result = await mediator.Send(new GetFlightById(id), cancellationToken); var result = await mediator.Send(new GetFlightById(id), cancellationToken);
var response = new GetFlightByIdResponseDto(result?.FlightDto); var response = result.Adapt<GetFlightByIdResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -14,6 +14,7 @@ using Flight.Seats.Exceptions;
using Flight.Seats.Models; using Flight.Seats.Models;
using Flights.ValueObjects; using Flights.ValueObjects;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -64,7 +65,7 @@ public class CreateSeatEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CreateSeatResponseDto(result.Id); var response = result.Adapt<CreateSeatResponseDto>();
return Results.Ok(response); return Results.Ok(response);
} }

View File

@ -13,6 +13,7 @@ using Dtos;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -48,7 +49,7 @@ public class GetAvailableSeatsEndpoint : IMinimalEndpoint
{ {
var result = await mediator.Send(new GetAvailableSeats(id), cancellationToken); var result = await mediator.Send(new GetAvailableSeats(id), cancellationToken);
var response = new GetAvailableSeatsResponseDto(result?.SeatDtos); var response = result.Adapt<GetAvailableSeatsResponseDto>();
return Results.Ok(response); return Results.Ok(response);
} }

View File

@ -12,6 +12,7 @@ using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using Flights.ValueObjects; using Flights.ValueObjects;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -52,11 +53,11 @@ public class ReserveSeatEndpoint : IMinimalEndpoint
private async Task<IResult> ReserveSeat(ReserveSeatRequestDto request, IMediator mediator, IMapper mapper, private async Task<IResult> ReserveSeat(ReserveSeatRequestDto request, IMediator mediator, IMapper mapper,
CancellationToken cancellationToken) CancellationToken cancellationToken)
{ {
var command = mapper.Map<V1.ReserveSeat>(request); var command = mapper.Map<ReserveSeat>(request);
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new ReserveSeatResponseDto(result.Id); var response = result.Adapt<ReserveSeatResponseDto>();
return Results.Ok(response); return Results.Ok(response);
} }

View File

@ -11,8 +11,5 @@ public class IdentityMappings : IRegister
config.NewConfig<RegisterNewUserRequestDto, RegisterNewUser>() config.NewConfig<RegisterNewUserRequestDto, RegisterNewUser>()
.ConstructUsing(x => new RegisterNewUser(x.FirstName, x.LastName, x.Username, x.Email, .ConstructUsing(x => new RegisterNewUser(x.FirstName, x.LastName, x.Username, x.Email,
x.Password, x.ConfirmPassword, x.PassportNumber)); x.Password, x.ConfirmPassword, x.PassportNumber));
config.NewConfig<RegisterNewUserResult, RegisterNewUserResponseDto>()
.ConstructUsing(x => new RegisterNewUserResponseDto(x.Id, x.FirstName, x.LastName, x.Username, x.PassportNumber));
} }
} }

View File

@ -12,6 +12,7 @@ using BuildingBlocks.Web;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -43,7 +44,7 @@ public class RegisterNewUserEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = mapper.Map<RegisterNewUserResponseDto>(result); var response = result.Adapt<RegisterNewUserResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -9,6 +9,7 @@ using Dtos;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MassTransit; using MassTransit;
using MediatR; using MediatR;
@ -46,7 +47,7 @@ public class CompleteRegisterPassengerEndpoint : IMinimalEndpoint
var result = await mediator.Send(command, cancellationToken); var result = await mediator.Send(command, cancellationToken);
var response = new CompleteRegisterPassengerResponseDto(result?.PassengerDto); var response = result.Adapt<CompleteRegisterPassengerResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })

View File

@ -8,6 +8,7 @@ using Dtos;
using Duende.IdentityServer.EntityFramework.Entities; using Duende.IdentityServer.EntityFramework.Entities;
using Exceptions; using Exceptions;
using FluentValidation; using FluentValidation;
using Mapster;
using MapsterMapper; using MapsterMapper;
using MediatR; using MediatR;
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Builder;
@ -32,7 +33,7 @@ public class GetPassengerByIdEndpoint : IMinimalEndpoint
{ {
var result = await mediator.Send(new GetPassengerById(id), cancellationToken); var result = await mediator.Send(new GetPassengerById(id), cancellationToken);
var response = new GetPassengerByIdResponseDto(result?.PassengerDto); var response = result.Adapt<GetPassengerByIdResponseDto>();
return Results.Ok(response); return Results.Ok(response);
}) })