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
| KEYS = "parcelle", "remarque" # a modifier
# le pire des cas ?
e = {
"parcelle1": "A",
"remarque1": "avance ....",
"parcelle2": "B",
"remarque2": "bon ....",
"parcelle3": "", # date vide ???
"remarque3": "",
"parcelle4": "D",
"remarque4": "ok ....",
"parcelle5": "E",
"remarque5": "fin demain ....",
"parcelle6": "F",
"remarque6": "", # pas de remarque (donc on affiche pas ?)
"parcelle7": "X",
# "remarque7": "", # champ existe pas
"remarque8": "Bug", # du grand n'importe quoi : sans "date" !
}
def filtre_travaux(e) -> list:
champs = e.keys() # e.fields() avec GIS
keys = ((f"{KEYS[0]}{i}", f"{KEYS[1]}{i}") for i in range(1, 12) if f"{KEYS[0]}{i}" in champs)
# print(" # recup only:", keys) # si non générateur mais list
return [f"{e[d]:10} : {e[r]}" for d, r in keys if e[d] and r in champs and e[r]]
travaux = filtre_travaux(e)
print(len(travaux), "travaux avec remarque")
print()
if len(travaux) > 0:
print("-" * 12)
print("\n".join(travaux))
# self.dlg.tavauxListe.setText("\n".join(travaux))
else:
...
# self.dlg.tavauxListe.setText("rien en cours") |