示例#1
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()
示例#2
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()
示例#3
0
                        # elif(opcao == "6"):
                        #     cls()
                        #     cliente.listar_cliente(conexao)
                        #     continuar()

                        #Se escolhida a opção de voltar
                        elif (opcao == "5"):
                            cls()
                            break

                        #Se escolhida a opção de sair do sistema.
                        elif (opcao == "6"):
                            sair()

                        else:
                            op_invalida()

                #Se escolhida a opção 2, que entra no menu de OSs
                elif (opcao == "2"):
                    while (True):
                        cls()
                        menus.menu_os()
                        opcao = input("Insira a opção: ")

                        #Quando escolhida a opção de criar OSs
                        if (opcao == "1"):
                            cls()
                            servicos.inserir_os(conexao)

                        elif (opcao == "2"):
                            cls()
示例#4
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()
示例#5
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()
示例#6
0
文件: user.py 项目: kairo741/infoLoja
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
示例#7
0
文件: user.py 项目: kairo741/infoLoja
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()