public DtoLista abrirLista(int idLista) { if (idLista < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "lista solicitada"); DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_Lista listaBanco; try { listaBanco = dataContext.tb_Listas.First(l => l.id == idLista); } catch { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "lista solicitada"); } DtoLista lista = new DtoLista(); lista.id = listaBanco.id; lista.titulo = listaBanco.titulo; lista.idUsuario = Convert.ToInt32(listaBanco.idUsuario); if (listaBanco.tb_ProdutoDaListas.Count > 0) { lista.produtosDaLista = new DtoProdutoDaLista[listaBanco.tb_ProdutoDaListas.Count]; int i = 0; DtoProdutoDaLista produtoDaLista; Produto mProduto = new Produto(); foreach (tb_ProdutoDaLista produtoDaListaBanco in listaBanco.tb_ProdutoDaListas) { produtoDaLista = new DtoProdutoDaLista(); produtoDaLista.id = Convert.ToInt32(produtoDaListaBanco.id); produtoDaLista.idLista = Convert.ToInt32(produtoDaListaBanco.idLista); produtoDaLista.idProduto = Convert.ToInt32(produtoDaListaBanco.idProduto); produtoDaLista.produto = mProduto.abrirProduto(produtoDaLista.idProduto); produtoDaLista.quantidade = Convert.ToInt32(produtoDaListaBanco.quantidade); lista.produtosDaLista[i++] = produtoDaLista; } } return lista; }
public DtoProdutoDaLista adicionarProduto(DtoProdutoDaLista produto) { DBCatalogDataContext dataContext = new DBCatalogDataContext(); var produtosListaExistentes = from p in dataContext.tb_ProdutoDaListas where p.idProduto.Equals(produto.id) select p; if (produtosListaExistentes.Count() > 1) { produto.quantidade = produto.quantidade + 1; dataContext.SubmitChanges(); } else { tb_ProdutoDaLista produtoLista = new tb_ProdutoDaLista() ; produtoLista.idLista = produto.idLista; produtoLista.idProduto = produto.idProduto; produtoLista.quantidade = produto.quantidade; dataContext.tb_ProdutoDaListas.InsertOnSubmit(produtoLista); dataContext.SubmitChanges(); produto.id = dataContext.tb_ProdutoDaListas.FirstOrDefault(p => p.idProduto == produto.idProduto && p.idLista == produto.idLista).id; } return produto; }
public DtoLista listarItensEm(int idLista, int idEstabelecimento) { if (idLista < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "lista solicitada"); if (idEstabelecimento < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "estabelecimento solicitado"); DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_Lista listaBanco; tb_EnderecoEstabelecimento EnderecoEstabelecimento; try {listaBanco = dataContext.tb_Listas.First(l => l.id == idLista);} catch {throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "lista solicitada");} try {EnderecoEstabelecimento = dataContext.tb_EnderecoEstabelecimentos.First(ee => ee.id == idEstabelecimento);} catch {throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "estabelecimento solicitado");} DtoLista lista = new DtoLista(); lista.id = listaBanco.id; lista.titulo = listaBanco.titulo; lista.idUsuario = Convert.ToInt32(listaBanco.idUsuario); if (listaBanco.tb_ProdutoDaListas.Count > 0) { lista.produtosDaLista = new DtoProdutoDaLista[listaBanco.tb_ProdutoDaListas.Count]; int i = 0; DtoProdutoDaLista produtoDaLista; Item mItem = new Item(); foreach (tb_ProdutoDaLista produtoDaListaBanco in listaBanco.tb_ProdutoDaListas) { produtoDaLista = new DtoProdutoDaLista(); produtoDaLista.id = Convert.ToInt32(produtoDaListaBanco.id); produtoDaLista.idLista = Convert.ToInt32(produtoDaListaBanco.idLista); produtoDaLista.idProduto = Convert.ToInt32(produtoDaListaBanco.idProduto); produtoDaLista.item = mItem.abrirItem(produtoDaLista.idProduto, idEstabelecimento); produtoDaLista.quantidade = Convert.ToInt32(produtoDaListaBanco.quantidade); lista.produtosDaLista[i++] = produtoDaLista; } } return lista; }