Removed UserIdProvider from controllers and moved it to services
This commit is contained in:
@@ -9,13 +9,13 @@ public interface IVisaApplicationRequestsHandler
|
||||
Task<List<VisaApplicationModelForAuthority>> GetAllAsync(CancellationToken cancellationToken);
|
||||
|
||||
/// Returns all applications of one applicant
|
||||
Task<List<VisaApplicationModelForApplicant>> GetForApplicantAsync(Guid userId, CancellationToken cancellationToken);
|
||||
Task<List<VisaApplicationModelForApplicant>> GetForApplicantAsync(CancellationToken cancellationToken);
|
||||
|
||||
/// Creates application for applicant with specific user identifier
|
||||
Task HandleCreateRequestAsync(Guid userId, VisaApplicationCreateRequest request, CancellationToken cancellationToken);
|
||||
Task HandleCreateRequestAsync(VisaApplicationCreateRequest request, CancellationToken cancellationToken);
|
||||
|
||||
/// Sets application status to closed
|
||||
Task HandleCloseRequestAsync(Guid userId, Guid applicationId, CancellationToken cancellationToken);
|
||||
Task HandleCloseRequestAsync(Guid applicationId, CancellationToken cancellationToken);
|
||||
|
||||
Task SetApplicationStatusFromAuthorityAsync(Guid applicationId, AuthorityRequestStatuses status, CancellationToken cancellationToken);
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ public class VisaApplicationRequestsHandler(
|
||||
IApplicantsRepository applicants,
|
||||
IUnitOfWork unitOfWork,
|
||||
IMapper mapper,
|
||||
IDateTimeProvider dateTimeProvider) : IVisaApplicationRequestsHandler
|
||||
IDateTimeProvider dateTimeProvider,
|
||||
IUserIdProvider userIdProvider) : IVisaApplicationRequestsHandler
|
||||
{
|
||||
async Task<List<VisaApplicationModelForAuthority>> IVisaApplicationRequestsHandler.GetAllAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
@@ -40,16 +41,16 @@ public class VisaApplicationRequestsHandler(
|
||||
return model;
|
||||
}
|
||||
|
||||
public async Task<List<VisaApplicationModelForApplicant>> GetForApplicantAsync(Guid userId, CancellationToken cancellationToken)
|
||||
public async Task<List<VisaApplicationModelForApplicant>> GetForApplicantAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
var applicantId = await applicants.GetApplicantIdByUserId(userId, cancellationToken);
|
||||
var applicantId = await applicants.GetApplicantIdByUserId(userIdProvider.GetUserId(), cancellationToken);
|
||||
var visaApplications = await applications.GetOfApplicantAsync(applicantId, cancellationToken);
|
||||
return mapper.Map<List<VisaApplicationModelForApplicant>>(visaApplications);
|
||||
}
|
||||
|
||||
public async Task HandleCreateRequestAsync(Guid userId, VisaApplicationCreateRequest request, CancellationToken cancellationToken)
|
||||
public async Task HandleCreateRequestAsync(VisaApplicationCreateRequest request, CancellationToken cancellationToken)
|
||||
{
|
||||
var applicant = await applicants.FindByUserIdAsync(userId, cancellationToken);
|
||||
var applicant = await applicants.FindByUserIdAsync(userIdProvider.GetUserId(), cancellationToken);
|
||||
|
||||
var visaApplication = mapper.Map<VisaApplication>(request);
|
||||
visaApplication.RequestDate = dateTimeProvider.Now();
|
||||
@@ -60,9 +61,9 @@ public class VisaApplicationRequestsHandler(
|
||||
await unitOfWork.SaveAsync(cancellationToken);
|
||||
}
|
||||
|
||||
async Task IVisaApplicationRequestsHandler.HandleCloseRequestAsync(Guid userId, Guid applicationId, CancellationToken cancellationToken)
|
||||
async Task IVisaApplicationRequestsHandler.HandleCloseRequestAsync(Guid applicationId, CancellationToken cancellationToken)
|
||||
{
|
||||
var applicantId = await applicants.GetApplicantIdByUserId(userId, cancellationToken);
|
||||
var applicantId = await applicants.GetApplicantIdByUserId(userIdProvider.GetUserId(), cancellationToken);
|
||||
var application = await applications.GetByApplicantAndApplicationIdAsync(applicantId, applicationId, cancellationToken);
|
||||
|
||||
application.Status = ApplicationStatus.Closed;
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
using ApplicationLayer.InfrastructureServicesInterfaces;
|
||||
using ApplicationLayer.Services.VisaApplications.Handlers;
|
||||
using ApplicationLayer.Services.VisaApplications.Models;
|
||||
using ApplicationLayer.Services.VisaApplications.Requests;
|
||||
@@ -14,7 +13,6 @@ namespace SchengenVisaApi.Controllers;
|
||||
[Route("visaApplications")]
|
||||
public class VisaApplicationController(
|
||||
IVisaApplicationRequestsHandler visaApplicationRequestsHandler,
|
||||
IUserIdProvider userIdProvider,
|
||||
IValidator<VisaApplicationCreateRequest> visaApplicationCreateRequestValidator) : ControllerBase
|
||||
{
|
||||
/// <summary> Returns all applications from DB </summary>
|
||||
@@ -41,8 +39,7 @@ public class VisaApplicationController(
|
||||
[Route("OfApplicant")]
|
||||
public async Task<IActionResult> GetForApplicant(CancellationToken cancellationToken)
|
||||
{
|
||||
var userId = userIdProvider.GetUserId();
|
||||
var result = await visaApplicationRequestsHandler.GetForApplicantAsync(userId, cancellationToken);
|
||||
var result = await visaApplicationRequestsHandler.GetForApplicantAsync(cancellationToken);
|
||||
return Ok(result);
|
||||
}
|
||||
|
||||
@@ -59,8 +56,7 @@ public class VisaApplicationController(
|
||||
{
|
||||
await visaApplicationCreateRequestValidator.ValidateAndThrowAsync(request, cancellationToken);
|
||||
|
||||
var userId = userIdProvider.GetUserId();
|
||||
await visaApplicationRequestsHandler.HandleCreateRequestAsync(userId, request, cancellationToken);
|
||||
await visaApplicationRequestsHandler.HandleCreateRequestAsync(request, cancellationToken);
|
||||
return Ok();
|
||||
}
|
||||
|
||||
@@ -75,8 +71,7 @@ public class VisaApplicationController(
|
||||
[Route("{applicationId:guid}")]
|
||||
public async Task<IActionResult> CloseApplication(Guid applicationId, CancellationToken cancellationToken)
|
||||
{
|
||||
var userId = userIdProvider.GetUserId();
|
||||
await visaApplicationRequestsHandler.HandleCloseRequestAsync(userId, applicationId, cancellationToken);
|
||||
await visaApplicationRequestsHandler.HandleCloseRequestAsync(applicationId, cancellationToken);
|
||||
return Ok();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user