-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcadastro.py
More file actions
136 lines (105 loc) · 3.84 KB
/
cadastro.py
File metadata and controls
136 lines (105 loc) · 3.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
import Utilities as util
clients = {}
CONST_FIELD_NAME = "nome do cliente"
CONST_FIELD_CITY = "cidade do cliente"
CONST_FIELD_AGE = "idade do cliente"
def register_client(id, clients):
name = input("Por favor, digite o nome do cliente: ")
city = input("Por favor, digite a cidade do cliente: ")
age = util.get_int_value_with_range("Digite a idade do cliente: ", 14, 120)
clients[id] = {
CONST_FIELD_NAME: name,
CONST_FIELD_CITY: city,
CONST_FIELD_AGE: age
}
def database_clear(clients):
op = util.get_yes_no_value("Tem certeza que deseja zerar o banco de dados? ")
if op == 's':
clients.clear()
return True, "Dados zerados com sucesso."
else:
return False, "Operação cancelada pelo usuário."
def client_query(clients):
id = input("Por favor, digite o CPF do cliente: ")
if id in clients:
print("Nome do cliente:", clients[id][CONST_FIELD_NAME])
print("Cidade do cliente:", clients[id][CONST_FIELD_CITY])
print("Idade do cliente:", clients[id][CONST_FIELD_AGE])
input("")
return True, id
else:
print("Cliente não localizado")
input("")
return False, id
def client_del(clients):
id = input("Por favor, digite o CPF do cliente: ")
if id in clients:
op = util.get_yes_no_value("Tem certeza que deseja excluir este cliente")
if op == 's':
del clients[id]
return True, "Cliente excluído com sucesso"
else:
return False, "Operação cancelada pelo usuário"
def client_edit(clients):
id = input("Por favor, digite o CPF do cliente: ")
if id in clients:
register_client(id, clients)
return True, "Cliente alterado com sucesso"
else:
op = util.get_yes_no_value("Cliente não localizado. Deseja fazer seu cadastro? ")
if op == 's':
register_client(id, clients)
return True, "Cliente cadastrado com sucesso"
else:
return False, "Cliente não localizado."
def client_add(clients):
id = input("Por favor, digite o CPF do cliente: ")
if id in clients:
op = util.get_yes_no_value("Cliente já existente. Deseja alterar seus dados? ")
if op == 's':
register_client(id, clients)
return True, "Cliente alterado com sucesso."
else:
return False, "Cadastro não realizado. Cliente já existente."
else:
register_client(id, clients)
return True, "Cliente cadastrado com sucesso."
def menu():
print("*** Sistema de Cadastro de Clientes ***")
print("1. Cadastrar cliente")
print("2. Alterar dados de cliente")
print("3. Excluir cliente")
print("4. Pesquisar cliente")
print("5. Zerar banco de dados")
print("6. Sair")
print("***************************************\n")
return util.get_int_value_with_range("Digite uma das opções: ", 1, 6)
def main(clients):
while True:
op = menu()
if op == 1:
resp, msg = client_add(clients)
print(msg)
input("")
elif op == 2:
resp, msg = client_edit(clients)
print(msg)
input("")
elif op == 3:
resp, msg = client_del(clients)
print(msg)
input("")
elif op == 4:
client_query(clients)
elif op == 5:
resp, msg = database_clear(clients)
print(msg)
if resp:
r = util.get_yes_no_value("Deseja criar um primeiro cliente? ")
if r == 's':
client_add(clients)
elif op == 6:
break
if __name__ == '__main__':
database = {}
main(database)