public DtoChave cadastrarUsuario(DtoUsuario usuario) { Chave mChave = new Chave(); DBCatalogDataContext dataContext = new DBCatalogDataContext(); var usuarioBanco = dataContext.tb_Usuarios.FirstOrDefault(u => u.email == usuario.email); if(usuarioBanco == null) //nenhum email encontrado (cadastrar usuario) { usuarioBanco = new Linq.tb_Usuario(); usuarioBanco.email = usuario.email; usuarioBanco.senha = usuario.senha; usuarioBanco.nome = usuario.nome; dataContext.tb_Usuarios.InsertOnSubmit(usuarioBanco); dataContext.SubmitChanges(); //criando chave var usuarioRecemCadastrado = dataContext.tb_Usuarios.FirstOrDefault(u => u.email == usuario.email); DtoChave chave = mChave.criarChave(usuarioRecemCadastrado.id); return chave; } else { throw new DtoExcecao(DTO.Enum.CampoInvalido, "Email ja existente"); } }
public DtoChave logar(string email, string senha) { Chave mChave = new Chave(); DBCatalogDataContext dataContext = new DBCatalogDataContext(); var usuarioBanco = dataContext.tb_Usuarios.FirstOrDefault(u => u.email == email && u.senha == senha); var usuarioSenhaAlternativaBanco = dataContext.tb_SenhaAlternativas.FirstOrDefault(u => u.tb_Usuario.email == email && u.senha == senha); var verificarSenhaAlternativaBanco = dataContext.tb_SenhaAlternativas.FirstOrDefault(u => u.tb_Usuario.email == email); if (usuarioBanco != null) { if (verificarSenhaAlternativaBanco != null) { dataContext.tb_SenhaAlternativas.DeleteOnSubmit(verificarSenhaAlternativaBanco); dataContext.SubmitChanges(); } DtoChave chave = mChave.criarChave(usuarioBanco.id); return chave; } else if (usuarioSenhaAlternativaBanco != null) { DtoChave chave = new DtoChave(); chave.idUsuario = usuarioSenhaAlternativaBanco.idUsuario; chave.token = "00000"; chave.ultimoAcesso = new TimeSpan().ToString(); return chave; } else { throw new DtoExcecao(DTO.Enum.CampoInvalido, "Email e Senha não conferem"); } }
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 DtoChave alterarDadosCadastrais(string senha, string novaSenha) { Chave mChave = new Chave(); DBCatalogDataContext dataContext = new DBCatalogDataContext(); var usuarios = dataContext.tb_Usuarios.FirstOrDefault(u => u.senha == senha); if (usuarios != null) { DtoChave chave = mChave.criarChave(usuarios.id); usuarios.senha = novaSenha; dataContext.SubmitChanges(); return chave; } else { throw new DtoExcecao(DTO.Enum.CampoInvalido, "Senha incorreto!"); } }
public DtoEnderecoEstabelecimento cadastrarEstabelecimento(DtoEnderecoEstabelecimento enderecoEstabelecimento) { DBCatalogDataContext dataContext = new DBCatalogDataContext(); var estabelecimentoBanco = new tb_Estabelecimento(); var ultimoEstabelecimentoSalvo = new tb_Estabelecimento(); var enderecoEstabelecimentoBanco = dataContext.tb_EnderecoEstabelecimentos.FirstOrDefault(u => u.rua == enderecoEstabelecimento.rua && u.numero == enderecoEstabelecimento.numero); var estabBanco = dataContext.tb_Estabelecimentos.FirstOrDefault(u => u.estabelecimento == enderecoEstabelecimento.estabelecimento.nome); if (enderecoEstabelecimentoBanco == null && estabBanco == null) { enderecoEstabelecimentoBanco = new tb_EnderecoEstabelecimento(); estabelecimentoBanco.estabelecimento = enderecoEstabelecimento.estabelecimento.nome; dataContext.tb_Estabelecimentos.InsertOnSubmit(estabelecimentoBanco); dataContext.SubmitChanges(); ultimoEstabelecimentoSalvo = (from ues in dataContext.tb_Estabelecimentos orderby ues.id descending select ues).First(); enderecoEstabelecimentoBanco.idEstabelecimento = ultimoEstabelecimentoSalvo.id; enderecoEstabelecimentoBanco.rua = enderecoEstabelecimento.rua; enderecoEstabelecimentoBanco.cidade = enderecoEstabelecimento.cidade; enderecoEstabelecimentoBanco.estado = enderecoEstabelecimento.estado; enderecoEstabelecimentoBanco.numero = enderecoEstabelecimento.numero; enderecoEstabelecimentoBanco.cep = enderecoEstabelecimento.cep; enderecoEstabelecimentoBanco.latitude = enderecoEstabelecimento.latitude; enderecoEstabelecimentoBanco.longitude = enderecoEstabelecimento.longitude; dataContext.tb_EnderecoEstabelecimentos.InsertOnSubmit(enderecoEstabelecimentoBanco); dataContext.SubmitChanges(); } else if (enderecoEstabelecimentoBanco == null && estabBanco != null) { enderecoEstabelecimentoBanco = new tb_EnderecoEstabelecimento(); enderecoEstabelecimentoBanco.idEstabelecimento = estabBanco.id; enderecoEstabelecimentoBanco.rua = enderecoEstabelecimento.rua; enderecoEstabelecimentoBanco.cidade = enderecoEstabelecimento.cidade; enderecoEstabelecimentoBanco.estado = enderecoEstabelecimento.estado; enderecoEstabelecimentoBanco.numero = enderecoEstabelecimento.numero; enderecoEstabelecimentoBanco.cep = enderecoEstabelecimento.cep; enderecoEstabelecimentoBanco.latitude = enderecoEstabelecimento.latitude; enderecoEstabelecimentoBanco.longitude = enderecoEstabelecimento.longitude; dataContext.tb_EnderecoEstabelecimentos.InsertOnSubmit(enderecoEstabelecimentoBanco); dataContext.SubmitChanges(); } else { throw new DtoExcecao(DTO.Enum.CampoInvalido, "Estabelecimento ja existente"); } var estabelecimentoRetorno = new DtoEnderecoEstabelecimento(); estabelecimentoRetorno.cep = enderecoEstabelecimento.cep; estabelecimentoRetorno.cidade = enderecoEstabelecimento.cidade; estabelecimentoRetorno.estado = enderecoEstabelecimento.estado; estabelecimentoRetorno.idEstabelecimento = ultimoEstabelecimentoSalvo.id; estabelecimentoRetorno.latitude = enderecoEstabelecimento.latitude; estabelecimentoRetorno.longitude = enderecoEstabelecimento.longitude; estabelecimentoRetorno.numero = enderecoEstabelecimento.numero; estabelecimentoRetorno.rua = enderecoEstabelecimento.rua; return estabelecimentoRetorno; }
public DtoProduto cadastrarProduto(DtoProduto produto) { produto.nome = produto.nome.Trim(); if (produto.nome == "") throw new DtoExcecao(DTO.Enum.CampoInvalido, "Nome do Produto"); try { produto.tipo = (new TipoProduto()).abrirTipo(produto.idTipo); produto.fabricante = (new Fabricante()).cadastrarFabricante(produto.fabricante); produto.idFabricante = produto.fabricante.id; } catch (DtoExcecao ex) { throw ex; } catch { throw new DtoExcecao(DTO.Enum.CampoInvalido, "Tipo do Produto"); } DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_Produto produtoBanco; if (produto.codigoDeBarras == "") { produtoBanco = dataContext.tb_Produtos.FirstOrDefault(p => p.nome == produto.nome && p.idTipo == produto.idTipo && p.idFabricante == produto.idFabricante); } else { produtoBanco = dataContext.tb_Produtos.FirstOrDefault(p => p.nome == produto.nome && p.idTipo == produto.idTipo && p.idFabricante == produto.idFabricante && (p.codigoDeBarras == produto.codigoDeBarras || p.codigoDeBarras == "")); } if (produtoBanco != null) { produto.id = produtoBanco.id; if (produto.codigoDeBarras != "" && produtoBanco.codigoDeBarras == "") {//esse produto existe, mas sem codigo de barras produtoBanco.codigoDeBarras = produto.codigoDeBarras; //produtoBanco.tipoCodigo = produto.tipoCodigoDeBarras; dataContext.SubmitChanges(); } } else {//não existe esse produto produtoBanco = new tb_Produto(); produtoBanco.nome = produto.nome; produtoBanco.idTipo = produto.idTipo; produtoBanco.idFabricante = produto.idFabricante; produtoBanco.codigoDeBarras = produto.codigoDeBarras; //produtoBanco.tipoCodigo = produto.tipoCodigoDeBarras; dataContext.tb_Produtos.InsertOnSubmit(produtoBanco); dataContext.SubmitChanges(); produto.id = dataContext.tb_Produtos.FirstOrDefault(p => p.idFabricante == produto.idFabricante && p.idTipo == produto.idTipo && p.nome == produto.nome).id; } return produto; }
//________________ RECUPERAR SENHA ____________________// public void recuperarSenha(string email) { DBCatalogDataContext dataContext = new DBCatalogDataContext(); var usuarioBanco = dataContext.tb_Usuarios.FirstOrDefault(u => u.email == email); if(usuarioBanco != null) { Random rnd = new Random(); int senhaAlternativa = rnd.Next(999999); DateTime dataAtual = DateTime.Today; //enviar email SmtpClient cliente = new SmtpClient(); cliente.Host = "smtp.gmail.com"; cliente.EnableSsl = true; cliente.Credentials = new NetworkCredential("*****@*****.**", "comprasdigitais"); //email e sennha cliente.Send("*****@*****.**", email, "Recuperar senha", "Sua senha alternativa é:" + senhaAlternativa.ToString()); //banco var usuarioSenhaAlternativaBanco = from sa in dataContext.tb_SenhaAlternativas where sa.tb_Usuario.email == email select sa; foreach (var sa in usuarioSenhaAlternativaBanco) { sa.senha = senhaAlternativa.ToString(); sa.idUsuario = usuarioBanco.id; sa.dataDeCriacao = dataAtual; } if (usuarioSenhaAlternativaBanco.Count() == 0) { var senhaAlternativaBanco = new Linq.tb_SenhaAlternativa(); senhaAlternativaBanco.senha = senhaAlternativa.ToString(); senhaAlternativaBanco.idUsuario = usuarioBanco.id; senhaAlternativaBanco.dataDeCriacao = dataAtual; dataContext.tb_SenhaAlternativas.InsertOnSubmit(senhaAlternativaBanco); } dataContext.SubmitChanges(); } else { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, email); } }
public DtoLista criarLista(DtoLista lista) { lista.titulo = lista.titulo.Trim(); if (lista.titulo == "") throw new DtoExcecao(DTO.Enum.CampoInvalido, "Titulo inválido"); DBCatalogDataContext dataContext = new DBCatalogDataContext(); var ListasSimilaresBanco = from l in dataContext.tb_Listas where l.titulo.StartsWith(lista.titulo) select l; if (ListasSimilaresBanco.Count() >= 1) lista.titulo = lista.titulo + " " + DateTime.Now.ToString(); tb_Lista listaBanco = new tb_Lista(); listaBanco.titulo = lista.titulo; listaBanco.idUsuario = lista.idUsuario; dataContext.tb_Listas.InsertOnSubmit(listaBanco); dataContext.SubmitChanges(); lista.id = dataContext.tb_Listas.First(l => l.idUsuario == lista.idUsuario && l.titulo == lista.titulo).id; return lista; }
public void removerProduto(int idProduto) { DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_ProdutoDaLista produtoLista; try { produtoLista = (dataContext.tb_ProdutoDaListas.First(p => p.idProduto == idProduto)); } catch { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado, "produto da lista"); } dataContext.tb_ProdutoDaListas.DeleteOnSubmit(produtoLista); dataContext.SubmitChanges(); }
public void excluirLista(int idLista) { 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"); } foreach(tb_ProdutoDaLista produto in listaBanco.tb_ProdutoDaListas) { dataContext.tb_ProdutoDaListas.DeleteOnSubmit(produto); } dataContext.tb_Listas.DeleteOnSubmit(listaBanco); dataContext.SubmitChanges(); }
public void editarLista(int idLista, string novoNome) { DBCatalogDataContext dataContext = new DBCatalogDataContext(); tb_Lista listaBanco; try { listaBanco = dataContext.tb_Listas.First(l => l.id == idLista); } catch { throw new DtoExcecao(DTO.Enum.ObjetoNaoEncontrado); } listaBanco.titulo = novoNome; dataContext.SubmitChanges(); }
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; }