Table of Contents

Class EnrollmentsController

Namespace
KadicErp.WebApi.Controllers.Academy
Assembly
KadicErp.WebApi.dll

US#6 (#8486) — inscripciones: wizard (Alumno→Grupo→Resumen) y hub. El importe sale siempre de quote (GET, no persiste); el alta real vive en POST /enrollments.

[ApiController]
[Route("api/academies/enrollments")]
[Authorize]
[RequireModule("ACADEMY")]
public class EnrollmentsController : ControllerBase
Inheritance
object
ControllerBase
EnrollmentsController

Constructors

EnrollmentsController(IMediator)

public EnrollmentsController(IMediator mediator)

Parameters

mediator IMediator

Methods

AudienceCheck(Guid, Guid, CancellationToken)

US#28 (#8984) — soporte UX: el wizard lo llama antes del POST para saber si debe mostrar el modal de autorización. No reemplaza la revalidación server-side del POST real.

[HttpGet("audience-check")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW")]
public Task<IActionResult> AudienceCheck(Guid studentId, Guid groupId, CancellationToken cancellationToken)

Parameters

studentId Guid
groupId Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

Create(CreateEnrollmentBody, CancellationToken)

[HttpPost]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_CONFIRM")]
public Task<IActionResult> Create(CreateEnrollmentBody body, CancellationToken cancellationToken)

Parameters

body CreateEnrollmentBody
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetCompatibleGroups(Guid, Guid?, CancellationToken)

[HttpGet("compatible-groups")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_CREATE")]
public Task<IActionResult> GetCompatibleGroups(Guid studentId, Guid? academicPeriodId, CancellationToken cancellationToken)

Parameters

studentId Guid
academicPeriodId Guid?
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetKpis(CancellationToken)

[HttpGet("kpis")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW_KPI")]
public Task<IActionResult> GetKpis(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task<IActionResult>

GetProrationModes(CancellationToken)

[HttpGet("proration-modes")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW_PRICING")]
public Task<IActionResult> GetProrationModes(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task<IActionResult>

GetQuote(Guid, Guid, DateOnly?, Guid?, CancellationToken)

[HttpGet("quote")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW_PRICING")]
public Task<IActionResult> GetQuote(Guid studentId, Guid groupId, DateOnly? date, Guid? prorationModeId, CancellationToken cancellationToken)

Parameters

studentId Guid
groupId Guid
date DateOnly?
prorationModeId Guid?
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetRecent(PaginatorRequestDto, Guid?, CancellationToken)

[HttpGet("recent")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW")]
public Task<IActionResult> GetRecent(PaginatorRequestDto paginator, Guid? academicPeriodId, CancellationToken cancellationToken)

Parameters

paginator PaginatorRequestDto
academicPeriodId Guid?
cancellationToken CancellationToken

Returns

Task<IActionResult>