Table of Contents

Class MakeupsController

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

US#14 (#8494) — Make-ups (recuperación de clases). Los verbos siguen exactamente lo que makeups.service.ts ya construye: PATCH para las acciones (a diferencia de US#13, que usa POST) — se respeta lo declarado por cada servicio del front, no se homogeniza.

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

Constructors

MakeupsController(IMediator)

public MakeupsController(IMediator mediator)

Parameters

mediator IMediator

Methods

Complete(Guid, CancellationToken)

[HttpPatch("{id:guid}/complete")]
[Authorize(Policy = "ACADEMY_MAKEUPS_COMPLETE")]
public Task<IActionResult> Complete(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetAll(string?, Guid?, string?, CancellationToken)

[HttpGet]
[Authorize(Policy = "ACADEMY_MAKEUPS_VIEW")]
public Task<IActionResult> GetAll(string? status, Guid? studentId, string? search, CancellationToken cancellationToken)

Parameters

status string
studentId Guid?
search string
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetById(Guid, CancellationToken)

[HttpGet("{id:guid}")]
[Authorize(Policy = "ACADEMY_MAKEUPS_VIEW")]
public Task<IActionResult> GetById(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetCompatibleGroups(Guid, string, CancellationToken)

[HttpGet("{id:guid}/compatible-groups")]
[Authorize(Policy = "ACADEMY_MAKEUPS_SCHEDULE")]
public Task<IActionResult> GetCompatibleGroups(Guid id, string date, CancellationToken cancellationToken)

Parameters

id Guid
date string
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetQuota(Guid, string, CancellationToken)

[HttpGet("quota")]
[Authorize(Policy = "ACADEMY_MAKEUPS_VIEW")]
public Task<IActionResult> GetQuota(Guid studentId, string period, CancellationToken cancellationToken)

Parameters

studentId Guid
period string
cancellationToken CancellationToken

Returns

Task<IActionResult>

Schedule(Guid, ScheduleMakeupBody, CancellationToken)

[HttpPatch("{id:guid}/schedule")]
[Authorize(Policy = "ACADEMY_MAKEUPS_SCHEDULE")]
public Task<IActionResult> Schedule(Guid id, ScheduleMakeupBody body, CancellationToken cancellationToken)

Parameters

id Guid
body ScheduleMakeupBody
cancellationToken CancellationToken

Returns

Task<IActionResult>