Ajout fonctionnalités :
- Détection et notification VISA de la présence d'ancien type de point dans le CSV. Pour le moment les anciens type sont : "AUT" et "ABCE". - Pour plus de clarté : le programme n'affiche plus les notifications dans la console. Elles seront seulement présentent dans le VISA.
This commit is contained in:
parent
d65b146fde
commit
3c64b98a5c
11
NEOBANBOU.py
11
NEOBANBOU.py
@ -547,6 +547,10 @@ class _Projet:
|
||||
def notifier(self, categorie, texte):
|
||||
"""
|
||||
Ajoute une notification au _Projet
|
||||
|
||||
La catégorie est soit "PDF", "CSV", "DWG" pour notifier dans la
|
||||
feuille correspondante. Une chaine personnalisée notifiera dans la
|
||||
feuille FRONT.
|
||||
"""
|
||||
print("\n_Projet.notifier()")
|
||||
print(f"Incident ajouté :{texte} ")
|
||||
@ -790,7 +794,7 @@ def preparer_dossier_travail(projet):
|
||||
case _:
|
||||
pass # TODO: voir pour les autres cas, normalement il n'y en a pas pour le moment
|
||||
|
||||
# renomme le fichier en conséquence
|
||||
# renomme le fichier en conséquence
|
||||
fichier.nom = os.path.basename(dest)
|
||||
|
||||
dest = dest + f".{fichier.extension}"
|
||||
@ -980,6 +984,11 @@ def lire_et_controler_ligne(projet, ligne):
|
||||
projet.notifs.append(incident)
|
||||
projet.controles |= 2**2
|
||||
|
||||
# controle la présence d'ancien type de point et notifie
|
||||
if type_ in ["AUT", "ABCE"] :
|
||||
incident = _Notification("CSV", f"Point ID {id_point} : Ancien TYPE : {type_}")
|
||||
projet.notifs.append(incident)
|
||||
|
||||
#print(f'SORTIE : "{ligne}"')
|
||||
|
||||
return ligne
|
||||
|
||||
22
README.md
22
README.md
@ -78,24 +78,24 @@ Lignes :
|
||||
- 608-663 : Fonctions pour obtenir des elements d'environnement pour le projet : date, nom du dossier, etc.
|
||||
- 666-808 : Fonction importante qui crée les dossiers nécessaires et copie les fichiers de travail.
|
||||
- 811-831 : Fonction qui controle la longueur des noms de fichier.
|
||||
- 833-985 : Fonctions importantes qui formate le fichier CSV.
|
||||
- 995-1060 : Fonction qui génère le Visa de controle.
|
||||
- 833-990 : Fonctions importantes qui formate le fichier CSV.
|
||||
- 1004-1169 : Fonction qui génère le Visa de controle.
|
||||
|
||||
#### 4. Exécution du programme
|
||||
|
||||
>Note : Le programme principal parait donc très court car il va ensuite faire appel à toutes les autres fonctions vu plus haut.
|
||||
|
||||
- 1200-1210 : Le programme commence par créer un Projet et définie des valeurs utiles (date, chemin, etc)
|
||||
- 1213 : Le programme parcourt le dossier où se trouve le script et analyse tous les fichiers trouvés (quel est son nom, son extension, est-il est utile pour le projet ? ) et stocke toutes ces infos dans une liste pour être utiliser plus tard.
|
||||
- 1216 : calcule la taille **seulement** des fichiers qui vont être copiés dans le dossier de Travail.
|
||||
- 1220 : reprend la liste créée et décide des dossiers à créer puis y copie les fichiers attendus.
|
||||
- 1232-1236 : le fichier CSV contenant les points est lu. Chaque ligne, contenant une coordonnée, est :
|
||||
- 1209-1219 : Le programme commence par créer un Projet et définie des valeurs utiles (date, chemin, etc)
|
||||
- 1222 : Le programme parcourt le dossier où se trouve le script et analyse tous les fichiers trouvés (quel est son nom, son extension, est-il est utile pour le projet ? ) et stocke toutes ces infos dans une liste pour être utiliser plus tard.
|
||||
- 1225 : calcule la taille **seulement** des fichiers qui vont être copiés dans le dossier de Travail.
|
||||
- 1229 : reprend la liste créée et décide des dossiers à créer puis y copie les fichiers attendus.
|
||||
- 1241-1245 : le fichier CSV contenant les points est lu. Chaque ligne, contenant une coordonnée, est :
|
||||
- analysée, on vérifie de sa projection.
|
||||
- formatée, on corrige certains défauts de syntaxe. Les lignes vides, etc.
|
||||
- ajoutée à une liste. Cette liste est ensuite écrite dans un fichier.
|
||||
|
||||
- ligne 1240 : Le programme controle la longueur de tous les noms de fichiers.
|
||||
- ligne 1245 : finalement le programme crée un visa à partir d'un modèle, et ajoute toutes les informations nécessaires, ainsi que toutes les notifications sur des points de controles qui ne seraient pas passés.
|
||||
- ligne 1249 : Le programme controle la longueur de tous les noms de fichiers.
|
||||
- ligne 1254 : finalement le programme crée un visa à partir d'un modèle, et ajoute toutes les informations nécessaires, ainsi que toutes les notifications sur des points de controles qui ne seraient pas passés.
|
||||
|
||||
### 🛂🚧 Les points de controles réalisés 🚧🛂
|
||||
|
||||
@ -132,7 +132,7 @@ Un projet doit necessairement comporter au moins ces 4 fichiers :
|
||||
|
||||
## 🎍 A l'attention des utilisateurs avancés 📖
|
||||
|
||||
J'ai considéré l'écriture de ce script comme un exercice d'algorithmie et de d'apprentissage du Python.
|
||||
J'ai considéré l'écriture de ce script comme un exercice d'algorithmie et d'apprentissage du langage Python.
|
||||
De ce point de vue, il y a certainement beaucoup d'optimisation.
|
||||
|
||||
*C'est vrai ça : Pourquoi s'embêter à faire des classes pour des objets qui ont deja nativement dans le langage des classes et méthodes ( wtf une classe _Fichier ??), ou alors pourquoi implementer une variable binaire pour comptabiliser les controles ? (alors que de simples variables ou une liste de variables aurait pu aussi bien fait l'affaire...).*
|
||||
@ -147,6 +147,8 @@ Notez également qu'il n'y a eu aucun recours à de l'IA. L'exercice consistait
|
||||
|
||||
### 🔧 Lancer les Tests 🔧
|
||||
|
||||
> Avertissement : la version modulaire n'est plus à jour. Les tests sont donc réalisés sur des fichiers anciens.
|
||||
|
||||
Pour lancer les tests, il faudra préalablement installer un environnement de travail isolé
|
||||
|
||||
```bash
|
||||
|
||||
Loading…
Reference in New Issue
Block a user