Exemplo n.º 1
0
        public async Task <Pedido> AprovaPedidoAsync(int id, AprovarPedidoDTO model)
        {
            try
            {
                var pedido = await _pedidoPresist.GetPedidoByIdAsync(id);

                if (pedido == null)
                {
                    return(null);
                }

                pedido.AprovadorId = model.AprovadorId;
                var data = model.DataAprovacao.ToString("dd/MM/yyyy");
                pedido.DataAprovacao      = data;
                pedido.StatusAprov        = model.StatusAprov;
                pedido.ObservacaoRejeicao = model.ObservacaoRejeicao;

                await GerarRankingAsync(pedido.cotacaoId);


                FGeralPersist.Update <Pedido>(pedido);
                if (await FGeralPersist.SaveChangesAsync())
                {
                    await FGeralPersist.SaveChangesAsync();

                    return(await _pedidoPresist.GetPedidoByIdAsync(id));
                }
                return(null);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Putalterarstatus(int id, [FromBody] AprovarPedidoDTO model)
        {
            try
            {
                var solicitacao = await PedidoService.AprovaPedidoAsync(id, model);

                if (solicitacao == null)
                {
                    return(BadRequest("Erro ao alterar status. Tente Novamente!"));
                }
                return(Ok(solicitacao));
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Erro ao tentar efetuar a alteração de status. Erro: {ex.Message}"));
            }
        }