Пример #1
0
        public IActionResult ListaAlfDec()
        {
            var produtos = database.Produtos.Include(f => f.Fornecedor).OrderByDescending(p => p.Nome).ToList();

            List <ProdutoGetContainer> produtosHATEOAS = new List <ProdutoGetContainer>();

            foreach (var produto in produtos)
            {
                ProdutoGetContainer produtoHateoas = new ProdutoGetContainer();
                produtoHateoas.Id            = produto.Id;
                produtoHateoas.Codigo        = produto.Codigo;
                produtoHateoas.Nome          = produto.Nome;
                produtoHateoas.Valor         = produto.Valor;
                produtoHateoas.Promocao      = produto.Promocao;
                produtoHateoas.ValorPromocao = produto.ValorPromocao;
                produtoHateoas.Categoria     = produto.Categoria;
                produtoHateoas.Imagem        = produto.Imagem;
                produtoHateoas.Quantidade    = produto.Quantidade;

                var fornId = database.Fornecedores.First(p => p.Id == produto.Fornecedor.Id);

                produtoHateoas.FornecedorId = fornId.Id;

                produtoHateoas.links = HATEOAS.GetActions(produto.Id.ToString());
                produtosHATEOAS.Add(produtoHateoas);
            }

            return(Ok(new{ produtosHATEOAS }));
        }
Пример #2
0
        public IActionResult Get(int id)
        {
            try{
                var produto = database.Produtos.Include(f => f.Fornecedor).First(f => f.Id == id);
                ProdutoGetContainer produtoHateoas = new ProdutoGetContainer();
                produtoHateoas.Id            = produto.Id;
                produtoHateoas.Codigo        = produto.Codigo;
                produtoHateoas.Nome          = produto.Nome;
                produtoHateoas.Valor         = produto.Valor;
                produtoHateoas.Promocao      = produto.Promocao;
                produtoHateoas.ValorPromocao = produto.ValorPromocao;
                produtoHateoas.Categoria     = produto.Categoria;
                produtoHateoas.Imagem        = produto.Imagem;
                produtoHateoas.Quantidade    = produto.Quantidade;

                var fornId = database.Fornecedores.First(p => p.Id == produto.Fornecedor.Id);


                produtoHateoas.FornecedorId = fornId.Id;
                produtoHateoas.links        = HATEOAS.GetActions(produto.Id.ToString());


                return(Ok(produtoHateoas));
            }catch (Exception) {
                Response.StatusCode = 404;
                return(new ObjectResult(new{ msg = "Id inválido" }));
            }
        }
Пример #3
0
        public IActionResult PesquisaNome(string nome)
        {
            try{
                var produtos = database.Produtos.Include(f => f.Fornecedor).Where(p => p.Nome.Contains(nome)).ToList();

                List <ProdutoGetContainer> produtosHATEOAS = new List <ProdutoGetContainer>();
                foreach (var produto in produtos)
                {
                    ProdutoGetContainer produtoHateoas = new ProdutoGetContainer();
                    produtoHateoas.Id            = produto.Id;
                    produtoHateoas.Codigo        = produto.Codigo;
                    produtoHateoas.Nome          = produto.Nome;
                    produtoHateoas.Valor         = produto.Valor;
                    produtoHateoas.Promocao      = produto.Promocao;
                    produtoHateoas.ValorPromocao = produto.ValorPromocao;
                    produtoHateoas.Categoria     = produto.Categoria;
                    produtoHateoas.Imagem        = produto.Imagem;
                    produtoHateoas.Quantidade    = produto.Quantidade;

                    var fornId = database.Fornecedores.First(p => p.Id == produto.Fornecedor.Id);


                    produtoHateoas.FornecedorId = fornId.Id;
                    produtoHateoas.links        = HATEOAS.GetActions(produto.Id.ToString());
                    produtosHATEOAS.Add(produtoHateoas);
                }

                if (produtos.Count == 0)
                {
                    Response.StatusCode = 404;
                    return(new ObjectResult(new{ msg = "Nome não disponível na lista de produtos" }));
                }


                return(Ok(new{ produtosHATEOAS }));
            }catch {
                Response.StatusCode = 404;
                return(new ObjectResult(new{ msg = "Nome não disponível na lista de produtos" }));
            }
        }