public async Task <IActionResult> ReabrirAtasPostAsync(Guid id,
                                                               Guid ataId)
        {
            var reuniao = await ObterReuniaoAsync(id);

            var command = new ReabrirAtaDeReuniaoCommand()
            {
                Reuniao = reuniao,
                AtaId   = ataId
            };

            await mediator.Send(command);

            return(NoContent());
        }
Esempio n. 2
0
        public async Task <Unit> Handle(ReabrirAtaDeReuniaoCommand request, CancellationToken cancellationToken)
        {
            if (request.Reuniao.Ata == null)
            {
                throw new AtaDeReuniaoAindaNaoGeradaException();
            }

            if (request.Reuniao.Ata.Id != request.AtaId)
            {
                throw new AtaDeReuniaoInvalidaException();
            }

            request.Reuniao.Ata.Reabrir();

            return(await ProcederComAAtualizacaoDaReuniaoAsync(request.Reuniao));
        }