Table of Contents

Class RelationshipsController

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

US#34 (#9050) — catálogo de parentesco (Padre, Madre, Tutor legal…), CRUD calcado de DisciplinesController.

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

Constructors

RelationshipsController(IMediator)

public RelationshipsController(IMediator mediator)

Parameters

mediator IMediator

Methods

Create(CreateRelationshipBody, CancellationToken)

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

Parameters

body CreateRelationshipBody
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetAll(PaginatorRequestDto, bool?, CancellationToken)

[HttpGet]
[Authorize(Policy = "ACADEMY_RELATIONSHIPS_VIEW")]
public Task<IActionResult> GetAll(PaginatorRequestDto paginator, bool? isActive, CancellationToken cancellationToken)

Parameters

paginator PaginatorRequestDto
isActive bool?
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetById(Guid, CancellationToken)

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

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

SetActive(Guid, SetRelationshipActiveBody, CancellationToken)

Toggle de IsActive. Rechaza con 400 si hay tutores activos usando el parentesco.

[HttpPatch("{id:guid}")]
[Authorize(Policy = "ACADEMY_RELATIONSHIPS_DEACTIVATE")]
public Task<IActionResult> SetActive(Guid id, SetRelationshipActiveBody body, CancellationToken cancellationToken)

Parameters

id Guid
body SetRelationshipActiveBody
cancellationToken CancellationToken

Returns

Task<IActionResult>

Update(Guid, UpdateRelationshipBody, CancellationToken)

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

Parameters

id Guid
body UpdateRelationshipBody
cancellationToken CancellationToken

Returns

Task<IActionResult>