Gestion des filtres numériques < et > #17

This commit is contained in:
Colin Maudry
2025-08-18 12:26:26 +02:00
parent 3f931313a6
commit 6e37e59c4c
2 changed files with 8 additions and 4 deletions
+3 -3
View File
@@ -99,13 +99,13 @@ layout = [
Vous pouvez appliquer un filtre pour chaque colonne en entrant du texte sous le nom de la colonne, puis en tapant sur `Entrée`.
- Champs textuels : la recherche est insensible à la casse (majuscules/minuscules).
- Champs numériques : possibilité d'ajouter < ou > devant le chiffre recherché pour chercher des valeurs inférieures ou supérieur.
- Champs numériques : vous pouvez soit taper un nombre pour trouver les valeurs égales, soit le précéder de > ou < pour filtrer les valeurs supérieures ou inférieures.
Vous pouvez filtrer plusieurs colonnes à la fois. Vos filtres sont perdus quand vous rafraîchissez la page.
Vous pouvez filtrer plusieurs colonnes à la fois. Vos filtres sont remis à zéro quand vous rafraîchissez la page.
**Télécharger le résultat**
Vous pouvez télécharger le résultat de vos filtres en cliquant sur Télécharger au format Excel.
Vous pouvez télécharger le résultat de vos filtres et tris, pour les colonnes affichées, en cliquant sur Télécharger au format Excel.
Si vous téléchargez un volume important de données, il se peut que vous attendiez quelques minutes avant le début du téléchargement.
"""
+5 -1
View File
@@ -12,6 +12,8 @@ load_dotenv()
operators = [
["s<", "<"],
["s>", ">"],
["i<", "<"],
["i>", ">"],
["icontains", "contains"],
]
@@ -31,6 +33,7 @@ def split_filter_part(filter_part):
name_part = name_part.strip()
value = value_part.strip()
name = name_part[name_part.find("{") + 1 : name_part.rfind("}")]
print("=>", name, operator_group[1], value)
return name, operator_group[1], value
@@ -105,8 +108,9 @@ def get_decp_data() -> pl.LazyFrame:
df: pl.DataFrame = pl.read_parquet(os.getenv("DATA_FILE_PARQUET_PATH"))
lff: pl.LazyFrame = df.lazy()
# Remplacement des valeurs numériques par des chaînes de caractères
lff = numbers_to_strings(lff)
# lff = numbers_to_strings(lff)
# Tri des marchés par date de notification
lff = lff.sort(by=["datePublicationDonnees"], descending=True, nulls_last=True)