Table of Contents

Class ExerciseCatalogController

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

US#40 (US-106, #9071) — CRUD del catálogo reutilizable de ejercicios (tipo, distancia, tiempo objetivo y repeticiones), para no retipear el mismo ejercicio en cada Programa de Clases o en una sustitución ad-hoc. Baja lógica (IsActive) vía el endpoint DELETE.

[ApiController]
[Route("api/academies/exercise-catalog")]
[Authorize]
[RequireModule("ACADEMY")]
public class ExerciseCatalogController : ControllerBase
Inheritance
object
ControllerBase
ExerciseCatalogController

Constructors

ExerciseCatalogController(IMediator)

public ExerciseCatalogController(IMediator mediator)

Parameters

mediator IMediator

Methods

Create(ExerciseCatalogBody, CancellationToken)

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

Parameters

body ExerciseCatalogBody
cancellationToken CancellationToken

Returns

Task<IActionResult>

Delete(Guid, CancellationToken)

CA3 — soft delete: marca IsActive = false, no borra el registro.

[HttpDelete("{id:guid}")]
[Authorize(Policy = "ACADEMY_EXERCISE_CATALOG_DEACTIVATE")]
public Task<IActionResult> Delete(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetAll(bool?, Guid?, CancellationToken)

CA4 — filtros opcionales isActive/disciplineId.

[HttpGet]
[Authorize(Policy = "ACADEMY_EXERCISE_CATALOG_VIEW")]
public Task<IActionResult> GetAll(bool? isActive, Guid? disciplineId, CancellationToken cancellationToken)

Parameters

isActive bool?
disciplineId Guid?
cancellationToken CancellationToken

Returns

Task<IActionResult>

Update(Guid, ExerciseCatalogBody, CancellationToken)

[HttpPut("{id:guid}")]
[Authorize(Policy = "ACADEMY_EXERCISE_CATALOG_UPDATE")]
public Task<IActionResult> Update(Guid id, ExerciseCatalogBody body, CancellationToken cancellationToken)

Parameters

id Guid
body ExerciseCatalogBody
cancellationToken CancellationToken

Returns

Task<IActionResult>