dilicom_parser.parser package¶
Subpackages¶
Submodules¶
dilicom_parser.parser.distributor_parser module¶
Module de parsing des fichiers distributeurs Dilicom.
- class dilicom_parser.parser.distributor_parser.DistributorParser(distributor_list)¶
Bases :
objectClasse de service pour le parsing des fichiers reçus de Dilicom. Cette classe est responsable de :
Lire les fichiers depuis un répertoire spécifié.
Déterminer le type de fichier en fonction de son en-tête.
Extraire les données pertinentes en fonction du type de fichier.
Stocker les données extraites dans des structures de données appropriées.
- Attributs :
directory : Path - Le répertoire où les fichiers sont stockés.
data : Optional[pd.DataFrame] - Les données extraites du fichier.
file_path : Optional[Path] - Le chemin complet du fichier en cours de traitement.
filename : str - Le nom du fichier en cours de traitement.
distributor_data : Optional[DistributorData] - Les données du distributeur extraites.
- Méthodes :
__init__() : Initialise les attributs de la classe et crée le répertoire s’il n’existe pas
- parse()Parse les fichiers de type “distributor” et extrait les données
(combine _transform_data_to_dataframe() et _df_to_distributor_data()).
_transform_data_to_dataframe() : transforme la donnée texte en un DataFrame pandas.
_df_to_distributor_data() : Convertit un DataFrame en une instance de DistributorData.
- parse()¶
Parse les fichiers de type “distributor” et extrait les données.
- Paramètres:
None
- Renvoie:
Liste des données parsées
- Type renvoyé:
list[DistributorData]
dilicom_parser.parser.service_parser module¶
Module de parsing des fichiers de messages de service Dilicom.
- class dilicom_parser.parser.service_parser.ServiceParser(file_contents)¶
Bases :
objectParseur pour les fichiers de messages de service (ATE/ALE/ANE/AST). - Traite une liste de FileContent et détecte automatiquement le format (GENCOD/EANCOM). - Les messages GENCOD sont retournés dans une liste de GencodServiceMessage. - Les messages EANCOM sont retournés dans une instance d’EancomInterchange.
ATE : Accusé de réception technique
ALE : Accusé de réception logistique
ANE : Accusé de réception d’erreur
AST : Accusé de réception de statut
Supporte les formats : - GENCOD (CNUT 05003) : fichiers à plat séparés par “;” - EANCOM D96A (APERAK) : fichiers EDIFACT
- parse()¶
Parse la liste de FileContent.
Traite chaque FileContent en détectant son format et en utilisant le parseur approprié (GENCOD ou EANCOM).
- Type renvoyé:
List[List[GencodServiceMessage] |EancomInterchange]- Renvoie:
Liste contenant les résultats du parsing. - List[GencodServiceMessage] pour les fichiers GENCOD - EancomInterchange pour les fichiers EANCOM
- Lève:
ValueError – Si la liste de FileContent est vide
Module contents¶
Modules de modèles de données pour le parser Dilicom. Ce module regroupe les classes de modèles de données utilisées pour représenter les différentes entités et structures de données rencontrées lors du parsing des fichiers Dilicom, tels que les messages de service, les données de distributeurs, etc.