diff --git a/stats.py b/stats.py index d904463..1d7355f 100644 --- a/stats.py +++ b/stats.py @@ -1,7 +1,7 @@ from users import Utilisateurs class Stats(Utilisateurs): - """Gère l'export des statistiques en format CSV.""" + """Gère les statistiques et son export en format CSV.""" def __init__(self): super().__init__(r"db.sqlite3") @@ -9,14 +9,31 @@ class Stats(Utilisateurs): """ Récupère le prix d'une transaction et l'ajoute au total d'un utilisateur. - - Si aucune date n'est précisé dans la base de donnée d'un utilisateur, - alors il n'a jamais enregistré de statistiques et on procède normalement. - - Si une date est déjà renseigné : - - Si la date correspond à la date d'aujourd'hui, on procède normalement - - Si la date ne correspond pas, on enregistre ce qu'il y a dans la base de donnée + - si aucune date n'est précisé dans la base de donnée d'un utilisateur, + alors il n'a jamais enregistré de statistiques et on procède normalement + - si une date est déjà renseigné : + - si la date correspond à la date d'aujourd'hui, on procède normalement + - si la date ne correspond pas, on enregistre ce qu'il y a dans la base de donnée dans un fichier `CSV`, ensuite on écrase l'ancien prix par `0` et la date par celle d'aujourd'hui, ensuite on procède normalement - Procéder normalement consiste à ajouter le prix au prix totale stocké dans la base de donnée + Procéder normalement consiste à ajouter le prix au prix totale stocké dans la base de donnée. + """ + pass + + def exportCSV(self, utilisateurID: int, mode: bool = False): + """ + Exporte les statistiques d'un utilisateur dans un fichier `CSV`. + + Deux modes : + - `False` : exporte dans le fichier globale (qui contient tous les utilisateurs, utilisés + par l'histogramme de l'interface du Manager) + - si le fichier `CSV` ne contient aucune donnée de l'utilisateur, on créer + le fichier (sa structure, etc.) et on y rajoute les données de l'utilisateur + - ne garde qu'un historique des 7 derniers jours maximum + - `True` : exporte dans un fichier séparé l'utilisateur choisie (demande à l'utilisateur + où il souhaite que le fichier soit exporté) - (utilisé par le bouton d'exportation de + l'interface du caissier) + - A savoir : n'exporte que l'état actuel de la base de donnée """ pass