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
-
objectControllerBaseEnrollmentsController
Constructors
EnrollmentsController(IMediator)
public EnrollmentsController(IMediator mediator)
Parameters
mediatorIMediator
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
studentIdGuidgroupIdGuidcancellationTokenCancellationToken
Returns
- Task<IActionResult>
Create(CreateEnrollmentBody, CancellationToken)
[HttpPost]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_CONFIRM")]
public Task<IActionResult> Create(CreateEnrollmentBody body, CancellationToken cancellationToken)
Parameters
bodyCreateEnrollmentBodycancellationTokenCancellationToken
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
studentIdGuidacademicPeriodIdGuid?cancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetKpis(CancellationToken)
[HttpGet("kpis")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW_KPI")]
public Task<IActionResult> GetKpis(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetProrationModes(CancellationToken)
[HttpGet("proration-modes")]
[Authorize(Policy = "ACADEMY_ENROLLMENTS_VIEW_PRICING")]
public Task<IActionResult> GetProrationModes(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
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
studentIdGuidgroupIdGuiddateDateOnly?prorationModeIdGuid?cancellationTokenCancellationToken
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
paginatorPaginatorRequestDtoacademicPeriodIdGuid?cancellationTokenCancellationToken
Returns
- Task<IActionResult>