예제 #1
0
        public static List <ProdutoItem> Buscar(Pedido pedido)
        {
            DataRowCollection reader;
            var listaProdutos = new List <ProdutoItem>();

            try
            {
                reader = BancoDeDados.select("select *from produtositens where idPedido=?param1", new object[] { pedido.Id });
            }
            catch (Exception e)
            {
                throw new Exception("Falha ao buscar itens de pedido.\n" + e.Message.ToString());
            }

            foreach (DataRow row in reader)
            {
                var n = new ProdutoItem();

                PreencherValores(n, row);

                try
                {
                    n.Produto = Produto.BuscarPorId((int)row["idProduto"]);
                    if ((int)row["idProduto"] == 0)
                    {
                        throw new Exception("Valor de idProduto nao pode ser zero");
                    }

                    n.Nome = n.Produto.nome;
                }
                catch (Exception e)
                {
                    throw new Exception("Falha ao buscar item de produto.\n" + e.Message.ToString());
                }

                listaProdutos.Add(n);
            }

            return(listaProdutos);
        }
예제 #2
0
 private static void PreencherValores(ProdutoItem n, DataRow row)
 {
     n.Qtd       = Convert.ToInt32(row["quantidade"]);
     n.Valor     = Convert.ToDecimal(row["valor"]);
     n.idProduto = (int)row["idProduto"];
 }