public async Task <bool> Handle(AtivarColaboradorCommand message, CancellationToken cancellationToken) { var success = await Validar(message); if (!success) { return(success); } var colaboradorDb = ObterColaboradorPorId(message, ref success); if (success) { if (colaboradorDb.Ativo) { await _mediatorHandler.PublicarNotificacao(new DomainNotification(message.MessageType, $"O colaborador informado {message.Data.Id}- {message.Data.Nome} já está ativado!")); return(success); } colaboradorDb.AtivarColaborador(); success = await AlterarColaborador(colaboradorDb, message.MessageType); if (success) { await _mediatorHandler.PublicarEvento(new Events.Colaborador.ColaboradorAtivadoEvent(colaboradorDb)); } } return(success); }
public async Task DesativarColaborador(Guid id) { var colaborador = _colaboradorRepository.GetById(id); var ativarCommand = new AtivarColaboradorCommand(colaborador); await _mediator.EnviarComando(ativarCommand); }