Пример #1
0
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()
Пример #2
0
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()
Пример #3
0
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()
Пример #4
0
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()
Пример #5
0
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.")
Пример #6
0
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: ")
Пример #7
0
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()
Пример #8
0
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()
Пример #9
0
    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:   ")
Пример #10
0
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
Пример #11
0
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()