예제 #1
0
        public async Task <Response> Handle(EditarProjeto request, CancellationToken cancellationToken)
        {
            if (request == null)
            {
                return(new Response(false, "Informe os dados do projeto que deseja alterar", request));
            }

            Projeto projeto = await _repositorioProjeto.CarregarObjetoPeloID(request.Id);

            if (projeto == null)
            {
                return(new Response(false, "Nenhum projeto encontrado com este Id", request.Id));
            }

            projeto.Editar(request.Nome, request.Descricao);

            if (projeto.Invalid)
            {
                return(new Response(false, "Projeto inválido", projeto.Notifications));
            }

            _repositorioProjeto.Editar(projeto);

            var result = new Response(true, "Projeto atualizado com sucesso!", Notifications);

            return(await Task.FromResult(result));
        }
예제 #2
0
        public async Task <IActionResult> EditarProjeto([FromBody] EditarProjeto request)
        {
            try
            {
                var response = await _mediator.Send(request, CancellationToken.None);

                return(await ResponseAsync(response));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }