-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path3-actividades-con-huecos.py
executable file
·59 lines (47 loc) · 1.52 KB
/
3-actividades-con-huecos.py
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
#!/usr/bin/env python
import sys
import common
anyo = False
if len(sys.argv) > 1:
try:
anyo = int(sys.argv[1])
except Exception:
anyo = False
print("Loading file from disk")
actividades = common.readjson(filename="actividades")
print("Procesando actividades...")
usuariosyactividad = {}
actividadyusuarios = {}
usuariosyhorarios = {}
horarios = {}
horarios[7] = "11:30"
horarios[8] = "09:00"
horarios[9] = "10:00"
horarios[10] = "12:30"
print("NOMBRE,PLAZAS,USADAS,LIBRES,HORA,AÑO INICIO,AÑO FIN")
for actividad in actividades:
myid = actividad["idActivitat"]
nombre = actividad["nom"]
horario = int(actividad["idNivell"])
try:
anyoinicio = int(actividad["edatMin"])
anyofin = int(actividad["edatMax"])
except:
anyoinicio = 0
anyofin = 0
if horario in {7, 8, 9, 10}:
inscritos = common.readjson(filename=f"{myid}")
usadas = 0
for inscrito in inscritos:
if inscrito["estat"] == "INSCRESTNOVA":
usadas = usadas + 1
libres = int(actividad["maxPlaces"]) - usadas
if libres > 0:
if anyo and anyo >= anyoinicio and anyo <= anyofin:
print(
f'{nombre},{int(actividad["maxPlaces"])},{usadas},{libres},{horarios[horario]},{anyoinicio},{anyofin}'
)
elif not anyo:
print(
f'{nombre},{int(actividad["maxPlaces"])},{usadas},{libres},{horarios[horario]},{anyoinicio},{anyofin}'
)