Lisez la version en anglais README.md
l'API id-fix est un service qui reçoit des données au format BAL, les traite et les envoie à la plateforme BAN. En fonction de si la commune utilise ou non les ban-id, id-fix enverra les données à l'api legacy de ban-plateforme ou utilisera l'api ban-id de ban-plateforme. Dans le deuxième cas, id-fix détectera les données à créer, à modifier et à supprimer. Il les formatera également dans la structure correcte pour utiliser l'api ban-id.
Choisissez entre une installation avec Docker ou en local :
- Docker
- Docker-compose
Instructions pour installer l'api (en mode dev) :
- Clonez ce dépôt
- Lancez le conteneur Docker :
docker-compose up --build -d
- Node (v18 ou version supérieure)
- NPM
Instructions pour installer l'api (en mode dev) :
- Installez les dépendances :
npm install
- Lancez l'api :
npm run dev
I. Initialisez un fichier csv bal dans la plateforme ban en utilisant le traitement bal d'id-fix.
Prérequis : les données de la commune de la bal à importer doivent déjà être présentes dans la base de données ban. Sinon, utilisez l'api POST /district pour la créer.
Voici la commande à utiliser :
npm run initBALIntoBAN chemin/vers/le/fichier-BAL.csv
remplacez "chemin/vers/le/fichier-BAL.csv" par le chemin réel du fichier csv bal à traiter et à insérer dans la ban.
Ce projet utilise la bibliothèque de log Winston. La configuration des logs est définie dans le fichier logger.ts.
En mode développement (lorsque NODE_ENV n'est pas défini sur production), le logger affiche les logs dans la console.
En mode production (lorsque NODE_ENV est défini sur production), le logger écrit les logs dans un fichier à l'aide de la bibliothèque winston-daily-rotate-file. Les fichiers de logs sont créés quotidiennement et sont stockés dans le répertoire logs. Le nom de fichier des logs est au format id-fix-YYYY-MM-DD.log. Pour plus de détails sur les paramètres de rotation (taille maximale du fichier, nombre maximal de fichiers, ...), veuillez vous référer au fichier logger.ts.
Les logs sont formatés en JSON et chaque entrée de log inclut un timestamp.
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
Express TypeScript Docker Docker Compose ESLint Prettier