public string abrirProduto(string dtoChave, string dtoProduto) { JavaScriptSerializer js = new JavaScriptSerializer(); DtoRetorno retorno = new DtoRetorno("ACK"); DtoChave chave = js.Deserialize<DtoChave>(dtoChave); Chave mChave = new Chave(); try { mChave.validarChave(chave); DtoProduto produto = js.Deserialize<DtoProduto>(dtoProduto); Produto mProduto = new Produto(); produto = mProduto.abrirProduto(produto.id); chave = mChave.atualizarChave(chave); retorno = new DtoRetornoObjeto(chave, produto); } catch (DtoExcecao ex) { retorno = ex.ToDto(); } catch (Exception ex) { retorno = new DtoRetornoErro(ex.Message); } /*Objeto: DtoProduto com DtoTipoProduto e DtoFabricante*/ return js.Serialize(retorno); }
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 DtoItem abrirItem(int idProduto, int idEnderecoEstabelecimento) { if (idProduto < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o produto solicitado"); if (idEnderecoEstabelecimento < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o estabelecimento solicitado"); DBCatalogDataContext dataContext = new DBCatalogDataContext(); Produto mProduto = new Produto(); DtoItem item = new DtoItem(); item.idProduto = idProduto; item.idEstabelecimento = idEnderecoEstabelecimento; Estabelecimento mEstabelecimento = new Estabelecimento(); item.estabelecimento = mEstabelecimento.abrirEstabelecimento(idEnderecoEstabelecimento); item.produto = mProduto.abrirProduto(idProduto); mProduto = null; var itensBanco = from i in dataContext.tb_Items where i.idProduto == idProduto && i.idEstabelecimento == idEnderecoEstabelecimento orderby i.compraRecente descending, i.qualificacao descending select i; tb_Item itemBanco; if (itensBanco.Count() < 1) { item.id = 0; return item; } else { itemBanco = itensBanco.First(); } item.id = itemBanco.id; item.preco = Convert.ToDouble(itemBanco.preco); item.qualificacao = Convert.ToInt32(itemBanco.qualificacao); item.data = Convert.ToDateTime(itemBanco.compraRecente); return item; }
public string finalizarCheckin(string dtoChave, string dtoEnderecoEstabelecimento, string dtoItensComprados) { JavaScriptSerializer js = new JavaScriptSerializer(); DtoRetorno retorno; DtoChave chave = js.Deserialize<DtoChave>(dtoChave); DtoEnderecoEstabelecimento enderecoEstabelecimento = js.Deserialize<DtoEnderecoEstabelecimento>(dtoEnderecoEstabelecimento); List<DtoProdutoDaLista> itensComprados = js.Deserialize<List<DtoProdutoDaLista>>(dtoItensComprados); Chave mChave = new Chave(); try { mChave.validarChave(chave); Estabelecimento mEstabelecimento = new Estabelecimento(); enderecoEstabelecimento = mEstabelecimento.abrirEstabelecimento(enderecoEstabelecimento.id); chave = mChave.atualizarChave(chave); retorno = new DtoRetornoObjeto(chave); Produto mProduto = new Produto(); Item mItem = new Item(); foreach (DtoProdutoDaLista produtoDaLista in itensComprados) { if (produtoDaLista.item.produto.id == 0) produtoDaLista.item.produto = mProduto.cadastrarProduto(produtoDaLista.item.produto); produtoDaLista.item = mItem.criarItem(produtoDaLista.item.produto.id, produtoDaLista.item.preco, enderecoEstabelecimento.id); } } catch (DtoExcecao ex) { retorno = ex.ToDto(); } catch (Exception ex) { retorno = new DtoRetornoErro(ex.Message); } /*Objeto: DtoRetorno com Ack*/ return js.Serialize(retorno); }
public void IniciarTestes() { js = new JavaScriptSerializer(); mChave = new Chave(); chave = mChave.criarChave(idUsuario); produto = new DtoProduto(); cProduto = new ControllerProduto(); mProduto = new Produto(); }
public string criarProduto(string dtoChave, string dtoProduto) { JavaScriptSerializer js = new JavaScriptSerializer(); DtoRetorno retorno; DtoProduto produto = js.Deserialize<DtoProduto>(dtoProduto); if (produto.nome.Length < 3 || produto.idTipo < 1) { retorno = (new DtoExcecao(DTO.Enum.CriteriosDeCadastroInsuficientes, "Nome do produto e Tipo do Produto")).ToDto(); return js.Serialize(retorno); } DtoChave chave = js.Deserialize<DtoChave>(dtoChave); Chave mChave = new Chave(); try { mChave.validarChave(chave); Produto mProduto = new Produto(); produto = mProduto.cadastrarProduto(produto); chave = mChave.atualizarChave(chave); retorno = new DtoRetornoObjeto(chave, produto); } catch (DtoExcecao ex) { retorno = ex.ToDto(); } catch (Exception ex) { retorno = new DtoRetornoErro(ex.Message); } /*Objeto: DtoProduto com DtoTipoProduto e DtoFabricante*/ return js.Serialize(retorno); }
public string pesquisarProduto(string dtoChave, string parametros) { JavaScriptSerializer js = new JavaScriptSerializer(); DtoRetorno retorno; DtoProduto param = js.Deserialize<DtoProduto>(parametros); if (param.nome.Length < 3 && param.tipoCodigoDeBarras.Length < 3 && (param.tipo == null || param.tipo.tipo.Length < 3) && (param.fabricante == null || param.fabricante.fabricante.Length < 3)) { retorno = (new DtoExcecao(DTO.Enum.CriteriosDeBuscaInsuficientes)).ToDto(); return js.Serialize(retorno); } DtoChave chave = js.Deserialize<DtoChave>(dtoChave); Chave mChave = new Chave(); try { mChave.validarChave(chave); Produto mProduto = new Produto(); DtoProduto[] produtos = mProduto.pesquisarProduto(param); chave = mChave.atualizarChave(chave); retorno = new DtoRetornoObjeto(chave, produtos); } catch (DtoExcecao ex) { retorno = ex.ToDto(); } catch (Exception ex) { retorno = new DtoRetornoErro(ex.Message); } /*Objeto: Array de DtoProdutos com DtoTipoProduto e DtoFabricante*/ return js.Serialize(retorno); }
public string listarEstabelecimentosProssuidores(string dtoChave, string dtoProduto) { JavaScriptSerializer js = new JavaScriptSerializer(); DtoRetorno retorno = new DtoRetorno("ACK"); DtoChave chave = js.Deserialize<DtoChave>(dtoChave); DtoProduto produto = js.Deserialize<DtoProduto>(dtoProduto); Chave mChave = new Chave(); try { mChave.validarChave(chave); Produto mProduto = new Produto(); DtoItem[] itens = mProduto.estabelecimentosPossuidores(produto.id); chave = mChave.atualizarChave(chave); retorno = new DtoRetornoObjeto(chave, itens); } catch (DtoExcecao ex) { retorno = ex.ToDto(); } catch (Exception ex) { retorno = new DtoRetornoErro(ex.Message); } /*Objeto: DtoItem com DtoProduto com DtoTipoProduto e DtoFabricante*/ return js.Serialize(retorno); }
public DtoItem criarItem(int idProduto, double preco, int idEnderecoEstabelecimento) { if (idProduto < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o produto solicitado"); if (idEnderecoEstabelecimento < 1) throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o estabelecimento solicitado"); if (preco < 1) throw new DtoExcecao(DTO.Enum.CampoInvalido, "Preço do Produto"); DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_Produto produtoBanco; try { produtoBanco = dataContext.tb_Produtos.First(p => p.id == idProduto); } catch { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o produto solicitado"); } tb_EnderecoEstabelecimento enderecoEstabelecimentoBanco; try { enderecoEstabelecimentoBanco = dataContext.tb_EnderecoEstabelecimentos.First(ee => ee.id == idEnderecoEstabelecimento); } catch { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "o estabelecimento solicitado"); } DateTime dataAtual = DateTime.Now; tb_Item itemBanco; try { itemBanco = dataContext.tb_Items.First(i => i.idProduto == idProduto && i.idEstabelecimento == idEnderecoEstabelecimento && i.preco == preco && i.compraRecente == dataAtual); itemBanco.qualificacao++; } catch { itemBanco = new tb_Item(); itemBanco.idEstabelecimento = idEnderecoEstabelecimento; itemBanco.idProduto = idProduto; itemBanco.preco = preco; itemBanco.qualificacao = 1; dataContext.tb_Items.InsertOnSubmit(itemBanco); } itemBanco.compraRecente = dataAtual; dataContext.SubmitChanges(); DtoItem item = new DtoItem(); item.id = (dataContext.tb_Items.First(i => i.idProduto == idProduto && i.idEstabelecimento == idEnderecoEstabelecimento && i.preco == preco && i.compraRecente == dataAtual)).id; item.idProduto = idProduto; item.idEstabelecimento = idEnderecoEstabelecimento; item.preco = preco; item.qualificacao = Convert.ToInt32(itemBanco.qualificacao); item.data = dataAtual; Produto mProduto = new Produto(); item.produto = mProduto.abrirProduto(idProduto); Estabelecimento mEstabelecimento = new Estabelecimento(); item.estabelecimento = mEstabelecimento.abrirEstabelecimento(idEnderecoEstabelecimento); return item; }