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
-
objectControllerBaseExerciseCatalogController
Constructors
ExerciseCatalogController(IMediator)
public ExerciseCatalogController(IMediator mediator)
Parameters
mediatorIMediator
Methods
Create(ExerciseCatalogBody, CancellationToken)
[HttpPost]
[Authorize(Policy = "ACADEMY_EXERCISE_CATALOG_CREATE")]
public Task<IActionResult> Create(ExerciseCatalogBody body, CancellationToken cancellationToken)
Parameters
bodyExerciseCatalogBodycancellationTokenCancellationToken
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
idGuidcancellationTokenCancellationToken
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
isActivebool?disciplineIdGuid?cancellationTokenCancellationToken
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
idGuidbodyExerciseCatalogBodycancellationTokenCancellationToken
Returns
- Task<IActionResult>