Class SubModulesController
- Namespace
- KadicAuth.Api.Controllers
- Assembly
- KadicAuth.Api.dll
[ApiController]
[Route("api/[controller]")]
[Produces("application/json", new string[] { })]
public class SubModulesController : ControllerBase
- Inheritance
-
objectControllerBaseSubModulesController
Constructors
SubModulesController(IMediator, ILogger<SubModulesController>, IStringLocalizer<AuthMessages>)
public SubModulesController(IMediator mediator, ILogger<SubModulesController> logger, IStringLocalizer<AuthMessages> localizer)
Parameters
mediatorIMediatorloggerILogger<SubModulesController>localizerIStringLocalizer<AuthMessages>
Methods
ActivateSubModule(Guid, CancellationToken)
Activate a submodule
[HttpPost("{id:guid}/activate")]
[Authorize(Policy = "AUTH_SUBMODULES_ACTIVATE")]
[ProducesResponseType(200)]
[ProducesResponseType(typeof(Error), 404)]
[ProducesResponseType(typeof(Error), 400)]
public Task<ActionResult> ActivateSubModule(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<ActionResult>
CreateSubModule(CreateSubModuleDto, CancellationToken)
Create a new submodule
[HttpPost]
[Authorize(Policy = "AUTH_SUBMODULES_CREATE")]
[ProducesResponseType(typeof(Result<Guid>), 201)]
[ProducesResponseType(typeof(Result), 400)]
public Task<ActionResult> CreateSubModule(CreateSubModuleDto request, CancellationToken cancellationToken)
Parameters
requestCreateSubModuleDtocancellationTokenCancellationToken
Returns
- Task<ActionResult>
DeactivateSubModule(Guid, CancellationToken)
Deactivate a submodule
[HttpPost("{id:guid}/deactivate")]
[Authorize(Policy = "AUTH_SUBMODULES_DEACTIVATE")]
[ProducesResponseType(200)]
[ProducesResponseType(typeof(Error), 404)]
[ProducesResponseType(typeof(Error), 400)]
public Task<ActionResult> DeactivateSubModule(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<ActionResult>
DeleteSubModule(Guid, CancellationToken)
Delete a submodule
[HttpDelete("{id:guid}")]
[Authorize(Policy = "AUTH_SUBMODULES_DELETE")]
[ProducesResponseType(typeof(Result), 200)]
[ProducesResponseType(typeof(Result), 400)]
[ProducesResponseType(typeof(Result), 404)]
public Task<ActionResult> DeleteSubModule(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<ActionResult>
GetSubModuleById(Guid, CancellationToken)
Get submodule by ID
[HttpGet("{id:guid}")]
[Authorize(Policy = "AUTH_SUBMODULES_VIEW")]
[ProducesResponseType(typeof(SubModuleDto), 200)]
[ProducesResponseType(typeof(Error), 404)]
[ProducesResponseType(typeof(Error), 400)]
public Task<ActionResult<SubModuleDto>> GetSubModuleById(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<ActionResult<SubModuleDto>>
GetSubModules(PaginatorRequestDto, CancellationToken)
Get paginated list of submodules
[HttpGet]
[Authorize(Policy = "AUTH_SUBMODULES_VIEW")]
[ProducesResponseType(typeof(PaginatorResponseDto<SubModuleDto>), 200)]
[ProducesResponseType(typeof(Error), 400)]
public Task<ActionResult<PaginatorResponseDto<SubModuleDto>>> GetSubModules(PaginatorRequestDto paginatorRequest, CancellationToken cancellationToken = default)
Parameters
paginatorRequestPaginatorRequestDtocancellationTokenCancellationToken
Returns
- Task<ActionResult<PaginatorResponseDto<SubModuleDto>>>
GetSubModulesByModule(Guid, CancellationToken)
Get submodules by module ID
[HttpGet("by-module/{moduleId:guid}")]
[Authorize(Policy = "AUTH_SUBMODULES_VIEW")]
[ProducesResponseType(typeof(IEnumerable<SubModuleDto>), 200)]
[ProducesResponseType(typeof(Error), 400)]
public Task<ActionResult<IEnumerable<SubModuleDto>>> GetSubModulesByModule(Guid moduleId, CancellationToken cancellationToken)
Parameters
moduleIdGuidcancellationTokenCancellationToken
Returns
- Task<ActionResult<IEnumerable<SubModuleDto>>>
UpdateSubModule(Guid, UpdateSubModuleDto, CancellationToken)
Update an existing submodule
[HttpPut("{id:guid}")]
[Authorize(Policy = "AUTH_SUBMODULES_UPDATE")]
[ProducesResponseType(typeof(Result), 200)]
[ProducesResponseType(typeof(Result), 400)]
[ProducesResponseType(typeof(Result), 404)]
public Task<ActionResult> UpdateSubModule(Guid id, UpdateSubModuleDto request, CancellationToken cancellationToken)
Parameters
idGuidrequestUpdateSubModuleDtocancellationTokenCancellationToken
Returns
- Task<ActionResult>