def __init__(self, parent=None): super(Main, self).__init__(parent) self.setupUI(self) self.banco = Banco() #tela inicial self.tela_inicial.ButtonCadastrar.clicked.connect( self.abrirTelaCadastro) self.tela_inicial.ButtonLogin.clicked.connect(self.abrirTelaLogin) #Tela cadastro self.tela_cadastro.ButtonConfirmar.clicked.connect(self.cadastro) self.tela_cadastro.ButtonVoltar.clicked.connect(self.abrirTelaInicial) #Tela login self.tela_login.ButtonEntrar.clicked.connect(self.botaoLogin) self.tela_login.ButtonVoltar.clicked.connect(self.abrirTelaInicial) #Tela opcoes self.tela_opcoes.ButtonExtrato.clicked.connect(self.abrirTelaExtrato) self.tela_opcoes.ButtonSaque.clicked.connect(self.abrirTelaSaque) self.tela_opcoes.ButtonDeposito.clicked.connect(self.abrirTelaDeposito) self.tela_opcoes.ButtonTransferir.clicked.connect( self.abrirTelaTransferencia) self.tela_opcoes.ButtonVoltar.clicked.connect(self.sairOpcoes) #Tela extrato self.tela_extrato.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes) #Tela saque self.tela_saque.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes) self.tela_saque.ButtonConfirmar.clicked.connect(self.botaoSaque) #Tela deposito self.tela_deposito.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes) self.tela_deposito.ButtonConfirmar.clicked.connect(self.botaoDeposito) #tela transferencia self.tela_transferencia.ButtonVoltar.clicked.connect( self.abrirTelaOpcoes) self.tela_transferencia.ButtonTransferir.clicked.connect( self.botaoTransfere)
def select_user(self, idusuario): banco = Banco() try: c = banco.conexao.cursor() c.execute("select * from usuarios where idusuario = " + idusuario + "") for linha in c: self.idusuario = linha[0] self.p_nome = linha[1] self.p_idade = linha[2] self.p_cpf = linha[3] self.p_email = linha[4] self.p_fone = linha[5] self.p_cidade = linha[6] self.p_uf = linha[7] self.p_criado_em = linha[8] # idusuario, nome, idade, cpf, email, fone, cidade, uf, criado_em c.close() return ("Busca feita com sucesso!") except: return ("Ocorreu um erro na busca do usuário.")
def autenticaUser(self): banco = Banco() try: c = banco.conexao.cursor() c.execute("select * from usuarios where usuario = '" + self.usuario + "' and senha = '" + self.senha + "'") for linha in c: self.idusuario = linha[0] self.nome = linha[1] self.telefone = linha[2] self.email = linha[3] self.usuario = linha[4] self.senha = linha[5] c.close() if self.idusuario > 0: return "Autentica sucesso" return "Autentica falha - usuario não encontrado" except: return "Autentica falha - error"
def test_cria_banco(): try: b = Banco('nome') except Exception: assert False, 'Erro ao criar o Banco' else: assert hasattr(b, 'nome'), 'Não criou o atributo público nome'
def deleteProduto(self, idproduto, nome): banco = Banco() self.idproduto = idproduto self.nome = nome try: bd = banco.conexao.cursor() if (self.idproduto != 0): bd.execute("delete from produtos where idproduto = '" + self.idproduto + "'") banco.conexao.commit() bd.close() return "delete produto sucesso" elif (self.nome != ""): bd.execute("delete from produtos where nome = '" + self.nome + "'") banco.conexao.commit() bd.close() return "delete produto sucesso" else: bd.close() return "delete produto sucesso - forneça o id ou nome do produto" except: return "delete produto falha - error"
def insertCarrinho(self, idusuario, idproduto): banco = Banco() self.idusuario = idusuario self.idproduto = idproduto print(self.idusuario, self.idproduto) try: bd = banco.conexao.cursor() aux = self.selectCarrinhoProduto(self.idusuario, self.idproduto) if aux == "select carrinhoProduto sucesso - produto ou carrinho não encontrado": bd.execute( "insert into carrinhos (idusuario, idproduto) values ('" + self.idusuario + "', '" + self.idproduto + "')") #bd.execute('insert into carrinhos (idusuario, idproduto) values (?, ?)', (self.idusuario, self.idproduto)) banco.conexao.commit() bd.close() return "select carrinhoProduto sucesso - produto cadastrado" elif aux == "select carrinhoProduto sucesso - forneça o id do carrinho ou do usuario": bd.close() return "falta informações" bd.close() return aux except: return "insert carrinho falha"
def selectAmostra(self, idAmostra): banco = Banco() try: c = banco.conexao.cursor() c2 = banco.conexao.cursor() #numero de colunas da matriz c.execute( "select max(x.nrcoluna) from matrizamostra x where x.idamostratestes = " + str(idAmostra) + " ") contadorColunas = 0 for linha in c: contadorColunas = linha[0] #Preenchimento da MatrizX matrizX = [] c.execute( "select x.idamostratestes from matrizamostra x where x.idamostratestes = " + str(idAmostra) + " group by x.idamostratestes order by x.idamostratestes asc") listaAmostras = [] for regAmostras in c: listaAmostras.append(regAmostras[0]) #print(listaAmostras) for amostra in listaAmostras: #print(amostra) linhaMatriz = [] c.execute( "SELECT idamostratestes, vlresultado FROM public.matrizamostra where idamostratestes = " + str(amostra) + " order by idamostratestes, nrsequencia, nrlinha, nrcoluna, dsidentifica asc" ) for regDadosAmostra in c: if regDadosAmostra[1] == 0E-8: linhaMatriz.append('0') else: linhaMatriz.append(regDadosAmostra[1]) print(amostra) print(linhaMatriz) matrizX += [linhaMatriz] #print('MATRIZ - X') #print(matrizX) c.close() return matrizX except Exception: print(Exception) return "Ocorreu um erro na busca dos dados"
def login(): form_login={} form_login["email"]=input("\nEscriba su Email: ") form_login["password"]=input("Escriba su contraseña: ") if (validator.validar_login(form_login) is not False) and (form_login["email"] == ("*****@*****.**")): user=Usuario(*validator.validar_login(form_login)) print("=========================================================") print(f"============ Bienvenido al menu de ADMINISTRADOR!!=======\n") return Menu_adm() elif validator.validar_login(form_login) is not False: user=Usuario(*validator.validar_login(form_login)) if 1+1 == 2: sql="select ID from usuarios where email=%s" val=(form_login["email"],) dba.get_cursor().execute(sql,val) result=dba.get_cursor().fetchone() user.set_id(result[0]) if 4+4==8: sql="select nombre from bancos where ID=%s" val=(user.get_banco(),) dba.get_cursor().execute(sql,val) result=dba.get_cursor().fetchone() bank=Banco(result[0]) print() print("=======================================================") print(f"============ Bienvenido a CompuEcommerce {user.get_nombre()}!!=======\n") return Menu_us(user,bank) else: print("\nUsuario o contraseña incorrecta.\n") return login()
def selectCarrinhoProduto(self, idusuario, idproduto): banco = Banco() self.idusuario = idusuario self.idproduto = idproduto try: bd = banco.conexao.cursor() if (self.idusuario != 0): bd.execute("select * from carrinhos where idusuario = '" + self.idusuario + "' and idproduto = '" + self.idproduto + "'") for linha in bd: self.idinsercao = linha[0] self.idusuario = linha[1] self.idproduto = linha[2] bd.close() if self.idinsercao == 0: return "select carrinhoProduto sucesso - produto ou carrinho não encontrado" return "select carrinhoProduto sucesso - produto encontrado" else: bd.close() return "select carrinhoProduto sucesso - forneça o id do carrinho ou do usuario" except: return "select carrinhoProduto falha"
def SetUp(self): self.banco = Banco("banco") self.cajero = CajeroAutomatico(self.banco) self.banco.agregar_usuario("rut2", "nombre2", "clave2") self.banco.agregar_usuario("rut", "nombre", "clave") self.banco.usuarios[0].saldo = 100000 self.monto = 50000
def cadastroTarefa(self): descricao = self.entryDescricao.get() data = self.entryData.get() if len(descricao)<1 or len(data)<1: self.changeMSG("Todos os campos devem ser preenchidos",'red') else: banco = Banco() try: c = banco.conexao.cursor() query = "insert into tarefas (descricao,data) values ('{0}','{1}');".format(descricao,data) c.execute(query) banco.conexao.commit() if c.lastrowid > 0: self.changeMSG("Tarefa cadastrado com sucesso","green") self.entryDescricao.delete("0","end") self.entryData.delete("0","end") print("sucesso") else: print("erro") self.changeMSG("Ocorreu um erro no cadastro da tarefa","red") c.close() except: print("exceção") self.changeMSG("Ocorreu um erro no cadastro da tarefa","red")
def selectImovel(self, IdImovel): banco = Banco() try: c=banco.conexao.cursor() c.execute("select * from Imoveis where IdImovel = " + IdImovel + " ") for linha in c: self.IdImovel = linha[0] self.DataCadastro = linha[1] self.IdProprietario = linha[2] self.AreaUtil = linha[3] self.AreaTotal = linha[4] self.VlrVenda = linha[5] self.VlrAluguel = linha[6] self.VlrIPTU = linha[7] self.VlrCondominio = linha[8] self.NumRelogioAES = linha[9] self.NumRelogioSABESP = linha[10] self.NumSeguro = linha[11] self.Apolice = linha[12] self.Tipo = linha[13] c.close() return "Busca feita com sucesso!" except: return "Ocorreu um erro na busca do Imóvel!"
def test_cria_banco(): try: b = Banco('nome') except Exception: assert False, 'Erro ao criar o Banco' else: assert not hasattr(b, 'nome'), 'nome deve ser um atributo privado'
def test_abre_conta(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 100) ccs = b.lista_contas() assert len(ccs) == 1, 'O banco deveria ter 1 conta' assert type(ccs[0]) == Conta, 'Deveria retornar um objeto do tipo Conta' assert ccs[0].get_numero() == 1, 'A primeira conta deve ser a numero 1'
def test_abre_conta(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 100) ccs = b.lista_contas() assert len(ccs) == 1 assert type(ccs[0]) == Conta assert ccs[0].get_numero() == 1, 'A primeira conta deve ser a numero 1'
def lista_contas_com_contas(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 200) b.abre_conta([c], 300) assert len(b.lista_contas()) == 2, 'O banco deveria ter 2 contas' for cc in b.lista_contas(): assert type(cc) == Conta, 'Deveria retornar uma lista de contas'
def __init__(self, cargo, id_setor, qtd_dependentes, nome, sexo, data_nascimento, salario): super().__init__(nome, sexo, data_nascimento) self.id_funcionario = None self.cargo = cargo self.id_setor = int(id_setor) self.salario = int(salario) self.qtd_dependentes = int(qtd_dependentes) self.banco = Banco()
def test_banco_contas_existentes(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 200) b.abre_conta([c], 300) assert len(b.contas) == 2, 'O banco deveria ter 2 contas' for cc in b.contas: assert isinstance(cc, Conta), ('Os elementos da lista de contas ' 'devem ser instâncias da classe Conta')
def excluir(self): conecta = Banco() c = conecta.conexao.cursor() c.execute('delete from ControleDeProcessos where NumeroDoProcesso="' + self.NumeroDoProcesso + '"') c.close() conecta.conexao.commit() return "Excluido com sucesso!"
def test_abre_conta_2(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 100) b.abre_conta([c], 500) ccs = b.lista_contas() assert len(ccs) == 2, 'O banco deveria ter 2 contas' assert type(ccs[1]) == Conta, 'Deveria retornar um objeto do tipo Conta' assert ccs[1].get_numero() == 2, 'A segunda conta deve ser a numero 2'
def selectUser(self, idusuario): banco = Banco() try: c = banco.conexao.cursor() c.execute("select * from usuarios where idusuario = " + idusuario + " ") for linha in c: self.
def test_abre_conta_2(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') b.abre_conta([c], 100) b.abre_conta([c], 500) ccs = b.lista_contas() assert len(ccs) == 2 assert type(ccs[1]) == Conta assert ccs[1].get_numero() == 2, 'A segunda conta deve ser a numero 2'
def consultar_todos(self): conecta = Banco() c = conecta.conexao.cursor() c.execute('select * from ControleDeProcessos') lista = [] for linha in c: lista.append(linha) c.close() return lista
def test_banco_abre_conta_erro(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') try: b.abre_conta([c], -100) except ValueError: pass except Exception: assert False, ( 'Erro diferente de ValueError para saldo inicial negativo') assert len(b.contas) == 0, 'Abriu uma conta com saldo inicial negativo'
def test_n_abre_conta(): b = Banco('nome') c = Cliente('nome', 99999999, '*****@*****.**') try: b.abre_conta([c], -100) except ValueError: assert True except Exception: assert False, 'Não lançou um ValueError' ccs = b.lista_contas() assert len(ccs) == 0
def setUp(self): self.banco = Banco("Seguritas") self.rut1 = "18.375.852-2" self.nombre1 = "Alberto Rodriguez" self.clave1 = 2345 self.rut2 = "13.432.113-k" self.nombre2 = "Fernanda Pereira" self.clave2 = 5912 self.banco.agregar_usuario(self.rut1, self.nombre1, self.clave1) self.banco.agregar_usuario(self.rut2, self.nombre2, self.clave2) self.cajero = CajeroAutomatico(self.banco)
def insertImovel(self): banco = Banco() try: c = banco.conexao.cursor() c.execute("insert into Imoveis (DataCadastro, IdProprietario, AreaUtil, AreaTotal, VlrVenda, VlrAluguel, VlrIPTU, VlrCondominio, NumRelogioAES, NumRelogioSABESP, NumSeguro, Apolice, Tipo) values ('" + self.DataCadastro + "', '" + self.IdProprietario + "', '" + self.AreaUtil + "', '"+ self.AreaTotal + "', '" + self.VlrVenda + "' , '" + self.VlrAluguel + "' , '" + self.VlrIPTU + "', '" + self.VlrCondominio + "','" + self.NumRelogioAES + "', '" + self.NumRelogioSABESP + "','" + self.NumSeguro + "', '" + self.Apolice + "', '" + self.Tipo + "' )") banco.conexao.commit() c.close() return "Imóvel cadastrado com sucesso!" except: return "Ocorreu um erro na inserção do Imóvel"
def selectMatrizXModelo(self, idModelo): banco = Banco() try: c = banco.conexao.cursor() c2 = banco.conexao.cursor() #numero de colunas da matriz c.execute( "select max(x.nrPosicaoColuna) from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idModelo = " + idModelo + " ") contadorColunas = 0 for linha in c: contadorColunas = linha[0] #Preenchimento da MatrizX matrizX = [] c.execute( "select x.idAmostra from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idModelo = " + str(idModelo) + " group by x.idAmostra order by x.idAmostra asc") listaAmostras = [] for regAmostras in c: listaAmostras.append(regAmostras[0]) print(listaAmostras) for amostra in listaAmostras: #print(amostra) linhaMatriz = [] c.execute( "select x.idAmostra, x.nrSequencia, x.nrPosicaoLinha, x.nrPosicaoColuna, x.vlLinhaColuna from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idAmostra = " + str(amostra) + " order by x.nrPosicaoLinha asc, x.nrPosicaoColuna asc") for regDadosAmostra in c: linhaMatriz.append(regDadosAmostra[4]) #print(linhaMatriz) matrizX += [linhaMatriz] print(matrizX) c.close() return "Busca feita com sucesso!" except Exception: print(Exception) return "Ocorreu um erro na busca dos dados"
def selectMatrizyYNOVO(self, idModelo, conjunto): banco = Banco() try: c = banco.conexao.cursor() matrizY = [] c.execute( "select y.idamostra from matrizy y " "inner join amostra a on (a.idamostra = y.idamostra) where a.tpamostra = '" + str(conjunto) + "' " "order by y.idamostra asc") listaAmostras = [] cont = 0 for regAmostras in c: listaAmostras.append(regAmostras[0]) cont = cont + 1 #print(listaAmostras) print('Qtde de Amostras - Matriz Y') print(cont) for amostra in listaAmostras: #print(amostra) linhaMatriz = [] c.execute( "select y.idamostra, y.vlreferencia from matrizy y where " "y.idamostra = " + str(amostra) + " order by y.idamostra asc") for regDadosAmostra in c: if regDadosAmostra[1] == 0E-8: linhaMatriz.append('0') else: linhaMatriz.append(np.double(regDadosAmostra[1])) #print(amostra) #print(linhaMatriz) matrizY += [linhaMatriz] #print('MATRIZ - Y') #print(matrizY) c.close() return matrizY except Exception: print(Exception) return "Ocorreu um erro na busca dos dados"
def updateImovel(self): banco = Banco() try: c=banco.conexao.cursor() c.execute("update Imoveis set DataCadastro = '"+self.DataCadastro+"', IdProprietario = '"+self.IdProprietario+"', AreaUtil = '"+self.AreaUtil+"', AreaTotal = '"+self.AreaTotal+"', VlrVenda = '"+self.VlrVenda+"', VlrAluguel = '"+self.VlrAluguel+"', VlrIPTU = '"+self.VlrIPTU+"', VlrCondominio = '"+self.VlrCondominio+"', NumRelogioAES = '"+self.NumRelogioAES+"', NumRelogioSABESP = '"+self.NumRelogioSABESP+"', NumSeguro = '"+self.NumSeguro+"', Apolice = '"+self.Apolice+"',Tipo = '"+self.Tipo+"' where IdImovel = "+self.IdImovel+" ") banco.conexao.commit() c.close() return "Dados atualizado com sucesso!" except: return "Ocorreu um erro na alteração dos dados!"