def fechar_os(conexao): cls() print(Fore.CYAN + """ ============ Fechar de O.S. ============""") num_os = int(input("Insira o número da O.S. que deseja finalizar: ")) solucao = input("Insira a solução: ") data_de_fechamento = datetime.now() data_de_fechamento = data_de_fechamento data_hora = data_de_fechamento.strftime('%d/%m/%Y %H:%M') valor = input("Valor total dos serviços: ") cursor = conexao.cursor() sql2 = f""" UPDATE servicos SET solucao="{solucao}" WHERE rowid = {num_os};""" sql3 = f""" UPDATE servicos SET data_de_fechamento="{data_hora}" WHERE rowid = {num_os};""" sql4 = f""" UPDATE servicos SET valor={valor} WHERE rowid = {num_os}; """ cursor.execute(sql2) cursor.execute(sql3) cursor.execute(sql4) conexao.commit() print(Fore.RED + "Dados inseridos com sucesso!") continuar()
def relatorio_os_mes(conexao): cursor = conexao.cursor() mes = input( "Insira o o número do mês que deseja ver o relatório de Ordens de Serviço criadas: " ) sql = """ SELECT servicos.rowid, servicos.data_de_abertura, user.nome FROM servicos INNER JOIN user ON servicos.iduser = user.rowid """ cursor.execute(sql) lista = cursor.fetchall() cls() # print(lista) print(Fore.CYAN + """ == Relatório de criação mensal de O.S. =""") print(Fore.RED + " |OS|\t| Técnico |\t|Data de Abertura|") for i in range(0, len(lista)): posicao = str(lista[i]) if (posicao[8:10] == mes): print( f" |{posicao[1]} |\t|{posicao[25:-2]:<5}|\t|{posicao[5:21]:>15}|" ) continuar()
def finalizar_os(conexao): cursor = conexao.cursor() while (True): while (True): cls() print(Fore.CYAN + """ ========= Finalização de O.S. =========""") num_os = input("Insira o número da O.S. que deseja finalizar: ") validacao = validacao_os(num_os) if (validacao == 0): break if (isnumber(num_os)): num_os = int(num_os) num_os = num_os - 1 break else: print("Digite somente números! ", end="") op_invalida() sql = ''' SELECT servicos.rowid AS "Número da OS", user.nome AS "Técnico", cliente.nome AS "Nome do Cliente", servicos.problema AS "Problema", servicos.data_de_abertura AS "Data de Abertura", servicos.solucao AS "Solução", servicos.data_de_fechamento AS "Data de Fechamento", servicos.valor AS "Valor do serviço" FROM servicos INNER JOIN user ON servicos.iduser = user.rowid INNER JOIN cliente ON servicos.idcli = cliente.rowid''' cursor.execute(sql) #Atributo para retornar o resultado o Select lista = cursor.fetchall() # print(num_os) # print(lista[num_os][1]) arquivo = open(f"{num_os+1}.txt", "w") for i in range(0, len(lista[num_os])): escrita = str(lista[num_os][i]) arquivo.write(escrita + "@_@") print(Fore.GREEN + "Finalizada a ordem de serviço e feito o BKP!") arquivo.close() continuar()
def alterar_os(conexao): cursor = conexao.cursor() while (True): while (True): cls() print(Fore.CYAN + """ ========= Modificação de O.S. =========""") num_os = input("Qual o número da O.S. a ser modificada? ") validacao = validacao_os(num_os) if (validacao == 0): break if (isnumber(num_os)): num_os = int(num_os) break else: print("Digite somente números! ", end="") op_invalida() sql = f""" SELECT rowid, idcli, iduser, problema, solucao, data_de_fechamento, valor FROM servicos WHERE rowid = {num_os} """ cursor.execute(sql) lista = cursor.fetchall() while (True): update = input("""O que deseja modificar? (idcli [ID do Cliente], iduser [ID do Técnico], problema, solução ou valor) """) update = update.lower() if (update == "idcli"): no_sql = "idcli" update_x = "o ID do Cliente" atual = lista[0][1] break elif (update == "iduser"): no_sql = "iduser" update_x = "o ID do Técnico" atual = lista[0][2] break elif (update == "problema"): no_sql = "problema" update_x = "o problema" atual = lista[0][3] break elif (update == "solução" or update == "solucao"): no_sql = "solucao" update_x = "a solução" atual = str(lista[0][4]) break elif (update == "valor"): no_sql = "valor" update_x = "o valor final" atual = str(lista[0][6]) break else: op_invalida() cls() print(Fore.CYAN + """ ========= Modificação de O.S. =========""") update = input( f"Deseja mesmo alterar {update_x} da {Fore.RED}O.S. {lista[0][0]}{Fore.RESET}? (S/N) " ) update = update.lower() if (update == "s"): while (True): if (atual == "None"): print("Esse atibuto ainda não está prenchido!") else: novo = input(f"Insira {update_x} novo(a): ") while (True): cls() print(Fore.CYAN + f""" ========= Modificando {update_x} =========""") print( f"Lembre-se {update_x} altual é '{Fore.CYAN}{atual}{Fore.RESET}'!" ) print(f"Voce digitou: {novo}") confirmar = input("Confirme {}: ".format(update_x)) update = input(f"Deseja mesmo alterar {update_x}? (S/N) ") update = update.lower() if (update == "n"): cls() break if (confirmar == novo): print(Fore.GREEN + "Alterando", end='', flush=True) for i in range(5): print(Fore.GREEN + '.', end='', flush=True) time.sleep(0.5) print() sql = f""" UPDATE servicos SET {no_sql} = "{confirmar}" WHERE rowid = {num_os} """ cursor.execute(sql) conexao.commit() print(f"Você alterou {update_x} da O.S. {num_os}!") break else: print("Confirmação incorreta!") continuar = input("Deseja continuar (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): sair() continuar = input("Deseja alterar novamente (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): break else: sair()
import funcoes as f opcoes = ["Restaurante Brizolinha", "Cadastrar Prato", "Ver Pratos", "Alterar Prato", "Deletar Pratos", "Lixeira"] while True: escolha = f.menu(opcoes) f.cls() if escolha == "6": print("Obrigado, volte sempre.") break elif escolha == "1": f.cadastrar() elif escolha == "2": f.cardapio("cadastrodepratos.txt", "CARDÁPIO") elif escolha == "3": f.alterar() elif escolha == "4": f.deletar() elif escolha == "5": f.cardapio("lixeira.txt", "LIXEIRA") else: print("Opção Inválida. Tente Novamente.")
import funcoes import cliente import servicos from funcoes import cls from funcoes import sair, opcao, continuar, op_invalida # Conexao ao Banco conexao = sqlite3.connect("infoLoja.sqlite") # Criar tabelas cliente.criarTabelaCliente(conexao) user.criarTabelaUser(conexao) servicos.criar_tabela_servicos(conexao) while (True): cls() menus.menu_login() opcao = input("Insira a opção: ") # Se escolhida a opção 1: Logar no sistema if (opcao == "1"): cls() #Logando no sistema login = funcoes.login(conexao) if (login == 1): while (True): cls() #Menu inicial, ir para Usuários ou OSs menus.menu_inicial() opcao = input("Insira a opção: ")
def excluir_cliente(conexao): cursor = conexao.cursor() while (True): cls() print(Fore.CYAN + """ ========= Exclusão de clientes =========""") rowid = input("Qual o ID do cliente que deseja excluir? ") if (isnumber(rowid)): rowid = int(rowid) break else: print("Apenas números de IDs, ", end="") op_invalida() # Select dos atributos para serem usados para a confirmação sql = """ SELECT nome, cpf, rowid FROM cliente WHERE rowid = {} """.format(rowid) cursor.execute(sql) lista = cursor.fetchall() excluir = input( f'Deseja excluir o cliente "{Fore.RED}{lista[0][0]}{Fore.RESET}" que tem o CPF "{Fore.RED}{lista[0][1]}{Fore.RESET}"?(S/N) ' ) excluir = excluir.lower() if (excluir == 's'): while (True): confirmar = input("Confirme o ID do cliente, para a exclusão: ") if (confirmar == str(lista[0][2])): print(Fore.GREEN + "Excluindo", end='', flush=True) for i in range(5): print(Fore.GREEN + '.', end='', flush=True) time.sleep(0.5) print("") sql_excluir = """ DELETE FROM cliente WHERE rowid = {} """.format(rowid) cursor.execute(sql_excluir) conexao.commit() print(Fore.RED + "Você excluiu o cliente {}!".format(rowid)) break else: print(Fore.RED + "ID incorreta!") continuar = input("Deseja continuar (S/N)? ") continuar = continuar.lower() cls() print(Fore.CYAN + """ ========= Exclusão de clientes =========""") if (continuar == 'n'): sair()
def alterar_cliente(conexao): cursor = conexao.cursor() while (True): cls() print(Fore.CYAN + """ ======== Modificação de Cliente ========""") rowid = input("Qual o ID do cliente a ser modificado? ") if (isnumber(rowid)): num_os = int(rowid) break else: print("Digite somente números! ", end="") op_invalida() sql = f""" SELECT rowid, nome, cpf, rg, celular FROM cliente WHERE rowid = {num_os} """ cursor.execute(sql) lista = cursor.fetchall() print(lista[0]) while (True): cls() print(Fore.CYAN + """ ======== Modificação de Cliente ========""") update = input("""O que deseja modificar? (Nome, CPF, RG, Celular) """) update = update.lower() if (update == "nome"): no_sql = "nome" update_x = "o Nome do Cliente" atual = lista[0][1] break elif (update == "cpf"): no_sql = "cpf" update_x = "o CPF do Técnico" atual = lista[0][2] break elif (update == "rg"): no_sql = "rg" update_x = "o RG do cliente" atual = lista[0][3] break elif (update == "celular"): no_sql = "celular" update_x = "o Celular do cliente" atual = str(lista[0][4]) break else: op_invalida() cls() print(Fore.CYAN + """ ======== Modificação de Cliente ========""") update = input( f"Deseja mesmo alterar {update_x} do {Fore.RED}cliente {lista[0][0]}{Fore.RESET}? (S/N) " ) update = update.lower() if (update == "s"): while (True): cls() print(Fore.CYAN + f""" ========= Modificando {update_x} =========""") novo = input(f"Insira {update_x} novo(a): ") while (True): cls() print(Fore.CYAN + f""" ========= Modificando {update_x} =========""") print( f"Lembre-se {update_x} altual é '{Fore.CYAN}{atual}{Fore.RESET}'!" ) print(f"Voce digitou: {novo}") confirmar = input("Confirme {}: ".format(update_x)) update = input(f"Deseja mesmo alterar {update_x}? (S/N) ") update = update.lower() if (update == "n"): cls() break if (confirmar == novo): print(Fore.GREEN + "Alterando", end='', flush=True) for i in range(5): print(Fore.GREEN + '.', end='', flush=True) time.sleep(0.5) print() sql = f""" UPDATE cliente SET {no_sql} = "{confirmar}" WHERE rowid = {rowid} """ cursor.execute(sql) conexao.commit() print(f"Você alterou {update_x} do Cliente {rowid}!") break else: print("Confirmação incorreta!") continuar = input("Deseja continuar (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): sair() continuar = input("Deseja alterar novamente (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): break else: sair()
while True: try: frete = float(input('Digite o valor médio de um frete: ')) lista.remove_frete(frete) break except: print("Invalido, tente novamente") return (frete, qualidade_min) lista = funcoes.ler_deck() aux = lista.copy() frete, qualidade_min = menu_config() while True: funcoes.cls() funcoes.imprimir(aux.final(funcoes.calcular(aux.copy()), frete), frete) command = input("Press 1-Remover carta 2-Adicionar carta Q-Sair ") if command == "q" or command == "Q": break if command == "1": print("Escolha (pelo número) qual carta deseja remover da lista antes de ser recalculada (pode colocar uma lista de números também):") aux.imprime_nome_cartas() rem = input().split() list_rem = [] for i in rem: list_rem.append(aux.index(int(i))) for i in list_rem: aux.remove(i) if command == "2": nome = input("Digite o nome da carta: ")
def update_usuario(conexao): cursor = conexao.cursor() print(Fore.CYAN + """ ======== Modificação de usuário ========""") rowid = int(input("Qual o ID do usuario que deseja dar update? ")) # Select dos atributos para serem usados para a confirmação sql = """ SELECT nome, login,senha FROM user WHERE rowid = {} """.format(rowid) cursor.execute(sql) while(True): update = input("O que deseja alterar (Nome, Login ou Senha)? ") update = update.lower() if(update == 'senha'): # Update_x: o x seria o que o usuario escolhe, senha, loguin ou nome update_x = 'a Senha' noSql = "senha" break elif(update == 'login'): update_x = 'o Login' noSql = "login" break elif(update == 'nome'): update_x = 'o Nome' noSql = "nome" break else: op_invalida() cls() print(Fore.CYAN + """ ======== Modificação de usuário ========""") lista = cursor.fetchall() update = input(f'Deseja realmente alterar o usuário "{Fore.RED}{lista[0][0]}{Fore.RESET}" que tem o login {Fore.RED}{lista[0][1]}{Fore.RESET}"?(S/N) ') update = update.lower() if (update == 's'): while(True): confirmar = input("Insira a senha: ") if(confirmar == lista[0][2]): novo = input(f"Insira {update_x} novo(a) que deseja alterar: ") while(True): confirmar = input("Confirme {}: ".format(update_x)) if(confirmar == novo): print(Fore.GREEN + "Alterando", end='', flush=True) for i in range(5): print(Fore.GREEN + '.', end='', flush=True) time.sleep(0.5) print() sql_alterar = """ UPDATE user SET {} = '{}' WHERE rowid = {}; """.format(noSql, novo, rowid) cursor.execute(sql_alterar) conexao.commit() print("Você alterou {} do Usuário {}!".format( update_x, rowid)) break else: print("Confirmação incorreta!") continuar = input("Deseja continuar (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): sair() else: print(Fore.RED + "Senha incorreta") continuar = input("Deseja alterar novamente (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): break
def excluir_usuario(conexao): cursor = conexao.cursor() while(True): cls() print(Fore.CYAN + """ ========= Exclusão de usuários =========""") rowid = input("Qual o ID do usuario que deseja excluir? ") if(isnumber(rowid)): rowid = int(rowid) break else: print("Apenas números de IDs, ", end="") op_invalida() # Select dos atributos para serem usados para a confirmação sql = """ SELECT nome, login,senha FROM user WHERE rowid = {} """.format(rowid) cursor.execute(sql) lista = cursor.fetchall() excluir = input(f'Deseja excluir o usuário "{Fore.RED}{lista[0][0]}{Fore.RESET}" que tem o login "{Fore.RED}{lista[0][1]}{Fore.RESET}"?(S/N) ') excluir = excluir.lower() if (excluir == 's'): while(True): confirmar = input("Insira a senha para a exclusão: ") if(confirmar == lista[0][2]): print(Fore.GREEN+"Excluindo", end='', flush=True) for i in range(5): print(Fore.GREEN + '.', end='', flush=True) time.sleep(0.5) print("") sql_excluir = """ DELETE FROM user WHERE rowid = {} """.format(rowid) cursor.execute(sql_excluir) conexao.commit() print(Fore.RED + "Você excluiu o Usuário {}!".format(rowid)) break else: print(Fore.RED + "Senha incorreta") continuar = input("Deseja continuar (S/N)? ") continuar = continuar.lower() if (continuar == 'n'): sair()