Table of Contents

Class NotificationRulesController

Namespace
KadicErp.WebApi.Controllers.Notifications
Assembly
KadicErp.WebApi.dll

Espejo en el ERP del RulesController de KadicErp.Notifications.Api — permite que la UI del ERP configure reglas evento→template (ej. correos por etapa del pipeline de Recruiting) sin depender del deployable aparte.

[ApiController]
[Authorize]
[Route("api/notifications/rules")]
[Produces("application/json", new string[] { })]
[RequireModule("NOTIFICATIONS")]
public class NotificationRulesController : ControllerBase
Inheritance
object
ControllerBase
NotificationRulesController

Constructors

NotificationRulesController(IMediator)

public NotificationRulesController(IMediator mediator)

Parameters

mediator IMediator

Methods

CreateRule(CreateNotificationRuleCommand, CancellationToken)

[HttpPost]
[Authorize(Policy = "NOTIFICATIONS_RULES_CREATE")]
[ProducesResponseType(typeof(object), 201)]
public Task<IActionResult> CreateRule(CreateNotificationRuleCommand command, CancellationToken cancellationToken)

Parameters

command CreateNotificationRuleCommand
cancellationToken CancellationToken

Returns

Task<IActionResult>

Delete(Guid, CancellationToken)

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

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

Disable(Guid, CancellationToken)

[HttpPatch("{id:guid}/disable")]
[Authorize(Policy = "NOTIFICATIONS_RULES_UPDATE")]
public Task<IActionResult> Disable(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

Enable(Guid, CancellationToken)

[HttpPatch("{id:guid}/enable")]
[Authorize(Policy = "NOTIFICATIONS_RULES_UPDATE")]
public Task<IActionResult> Enable(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetRuleById(Guid, CancellationToken)

[HttpGet("{id:guid}")]
[Authorize(Policy = "NOTIFICATIONS_RULES_VIEW")]
[ProducesResponseType(typeof(NotificationRuleDto), 200)]
public Task<IActionResult> GetRuleById(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetRules(bool?, string?, CancellationToken)

[HttpGet]
[Authorize(Policy = "NOTIFICATIONS_RULES_VIEW")]
[ProducesResponseType(typeof(IReadOnlyCollection<NotificationRuleListItemDto>), 200)]
public Task<IActionResult> GetRules(bool? isEnabled, string? eventKey, CancellationToken cancellationToken)

Parameters

isEnabled bool?
eventKey string
cancellationToken CancellationToken

Returns

Task<IActionResult>