Class TransfersController
- Namespace
- KadicErp.WebApi.Controllers.Academy
- Assembly
- KadicErp.WebApi.dll
US#12 (#8492) — Transferir alumno entre grupos. CA12: no hay flujo de aprobación,
POST /transfers ejecuta de inmediato y es irreversible — la confirmación vive en el cliente.
[ApiController]
[Route("api/academies/transfers")]
[Authorize]
[RequireModule("ACADEMY")]
public class TransfersController : ControllerBase
- Inheritance
-
objectControllerBaseTransfersController
Constructors
TransfersController(IMediator, ICurrentUser)
public TransfersController(IMediator mediator, ICurrentUser currentUser)
Parameters
mediatorIMediatorcurrentUserICurrentUser
Methods
Create(CreateTransferBody, CancellationToken)
[HttpPost]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_EXECUTE")]
public Task<IActionResult> Create(CreateTransferBody body, CancellationToken cancellationToken)
Parameters
bodyCreateTransferBodycancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetCompatibleGroups(Guid, Guid, CancellationToken)
[HttpGet("compatible-groups")]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_CREATE")]
public Task<IActionResult> GetCompatibleGroups(Guid studentId, Guid fromGroupId, CancellationToken cancellationToken)
Parameters
studentIdGuidfromGroupIdGuidcancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetKpis(CancellationToken)
[HttpGet("kpis")]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_VIEW")]
public Task<IActionResult> GetKpis(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetProrationModes(CancellationToken)
[HttpGet("proration-modes")]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_VIEW_PRICING")]
public Task<IActionResult> GetProrationModes(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetRecent(int, CancellationToken)
[HttpGet("recent")]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_VIEW_HISTORY")]
public Task<IActionResult> GetRecent(int take = 20, CancellationToken cancellationToken = default)
Parameters
takeintcancellationTokenCancellationToken
Returns
- Task<IActionResult>
Preview(Guid, Guid, Guid, string, Guid?, CancellationToken)
[HttpGet("preview")]
[Authorize(Policy = "ACADEMY_SECTION_TRANSFERS_VIEW_PRICING")]
public Task<IActionResult> Preview(Guid studentId, Guid fromGroupId, Guid toGroupId, string effectiveDate, Guid? prorationModeId, CancellationToken cancellationToken)
Parameters
studentIdGuidfromGroupIdGuidtoGroupIdGuideffectiveDatestringprorationModeIdGuid?cancellationTokenCancellationToken
Returns
- Task<IActionResult>