示例#1
0
        public IActionResult BuscarProdutoPorCodigo(string codigoProduto, bool telaDetalhes)
        {
            try
            {
                bool          sucesso   = true;
                List <string> mensagens = new List <string>();

                var produtoPorCodigo = _produtoAppService.BuscarProdutos()
                                       .Where(x => x.Codigo == codigoProduto).FirstOrDefault();

                if (produtoPorCodigo == null)
                {
                    sucesso = false;
                    return(Json(new
                    {
                        sucesso = sucesso,
                        tipo = sucesso ? "sucesso" : "alerta"
                    }));
                }
                else
                {
                    if (telaDetalhes)
                    {
                        produtoPorCodigo.DetalhesProduto = _registroVendasAppService
                                                           .BuscarRegistrosDeVendas(codigoProduto).ToList();
                    }

                    return(Json(new
                    {
                        sucesso = sucesso,
                        mensagens = mensagens,
                        dados = produtoPorCodigo,
                        tipo = sucesso ? "sucesso" : "alerta"
                    }));
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Erro ao tentar buscar produto por codigo");
                return(Json(new
                {
                    sucesso = false,
                    tipo = "erro",
                    mensagens = new List <string> {
                        "Erro ao executar ação, tente novamente ou entre em contato com o administrador."
                    }
                }));
            }
        }