Skip to main content

Automate enedis flux parsing, then inject data into odoo

Project description

Project generated with PyScaffold

Projet enedis_odoo_bridge

Le projet enedis_odoo_bridge vise à automatiser le traitement des flux de données d’Enedis et leur intégration dans Odoo, une suite d’applications de gestion d’entreprise open source. Ce pont entre Enedis et Odoo simplifie la gestion des données de consommation énergétique, permettant une gestion plus efficace et automatisée des factures et des analyses de consommation.

Fonctionnalités Principales

  • Récupération automatique des données : Importation des données de consommation énergétique depuis Enedis. Flux R15 et F15 supportés, R151 est le prochain objectif

  • Traitement et fusion des données : Traitement des données récupérées et fusion avec les données existantes dans Odoo.

  • Calcul des tarifs TURPE : Application des tarifs TURPE (Tarif d’Utilisation des Réseaux Publics d’Électricité) aux données de consommation.

  • Mise à jour des factures dans Odoo : Automatisation de la mise à jour des factures de consommation énergétique dans Odoo.

Classes et Responsabilités

  1. OdooAPI : - Responsabilité : Gère la communication avec l’API d’Odoo pour récupérer et mettre à jour les données.

  2. EnedisFluxEngine : - Responsabilité : Interagit avec les flux de données d’Enedis pour récupérer les données contractuelles, de consommation énergétique, de facturation…

    1. Flux Transformers : - Responsabilité : Transforme les données des flux en une matrice exploitable, et propose des méthodes spécifiques à chaque type de flux Enedis. Flux actuellement supportés : [R15, F15] Bientôt R151. - Prérequis: Les transformers utilisent les xsd fournis par Enedis pour lire les XML des flux. La confidentialité de ces flux n’étant pas claire, ils ne sont pas inclus dans la repo. (dispos dans SGE, avec le kit d’implémentation des flux)

    2. Consumption Estimators : - Responsabilité : Chaque estimateur implémente une heuristique permettant d’estimer la consommation à partir des données du Flux R15. Bientôt d’autres à partir du R151. - pourquoi une estimation ? : Les flux ne sont pas toujours complets ou publiés à temps.

  3. Processes :

    L’idée des process est d’implémenter divers process métiers, qui traitent et mettent à jour des données différentes. On pourrait dire en gros que le reste c’est la lib, et ici on l’utilise en fonction de nos besoins spécifiques.

    a. AddEnedisServiceToDraftInvoiceProcess : - Responsabilité : Lit le flux F15 pour récupérer les prestations Enedis facturées et les ajouter au factures usager.ères correspondantes.

    1. UpdateValuesInDraftInvoicesProcess :
      • Responsabilité : Récupére les estimations de consommation d’EnedisFluxEngine, calcule les taxes. Récupére les factures brouillons dans Odoo, et met à jour les consommations, ainsi que les données légales de facturation comme le numéro de série du compteur.

  4. Utils : - Responsabilité : Fournit des fonctions utilitaires pour la génération de dates et la vérification des configurations.

Installation et Configuration

Installation

  1. Installer depuis le repo

b. Installer le module en utilisant pip : Sera valable une fois un poil stabilisé, pour l’instant le package n’est pas publié. Pour commencer, installe simplement le module enedis_odoo_bridge en utilisant pip :

pip install enedis-odoo-bridge

Configuration

Configurez le script en remplissant un fichier .env à la racine du module

# Pour Odoo
ENEDIS_ODOO_BRIDGE_ODOO_URL = "https://mon-site.odoo.com/"
ENEDIS_ODOO_BRIDGE_ODOO_DB = "ma-db"
ENEDIS_ODOO_BRIDGE_ODOO_USERNAME = "admin"
ENEDIS_ODOO_BRIDGE_ODOO_PASSWORD = "sooooseccuuure"
# Pour la maj des activités
ENEDIS_ODOO_BRIDGE_ODOO_FACTURISTE_ID = 13
ENEDIS_ODOO_BRIDGE_ODOO_ACTIVITY_APPROUVAL_ID = 17

# Constantes calculs des Taxes
ENEDIS_ODOO_BRIDGE_TURPE_TAUX_HPH_CU4 = 6.67
ENEDIS_ODOO_BRIDGE_TURPE_TAUX_HCH_CU4 = 4.56
ENEDIS_ODOO_BRIDGE_TURPE_TAUX_HPB_CU4 = 1.43
ENEDIS_ODOO_BRIDGE_TURPE_TAUX_HCB_CU4 = 0.88
ENEDIS_ODOO_BRIDGE_TURPE_B_CU4 = 9.00
ENEDIS_ODOO_BRIDGE_TURPE_CG = 15.48
ENEDIS_ODOO_BRIDGE_TURPE_CC = 19.92

# Connexion au FTP contenant les Flux
ENEDIS_ODOO_BRIDGE_FTP_ADDRESS = xxx.xxx.xxx.xxx
ENEDIS_ODOO_BRIDGE_FTP_USER = user
ENEDIS_ODOO_BRIDGE_FTP_PASSWORD = pswwdd
ENEDIS_ODOO_BRIDGE_FTP_R15_DIR = R15 ¿ R16
ENEDIS_ODOO_BRIDGE_FTP_C15_DIR = C15
ENEDIS_ODOO_BRIDGE_FTP_F15_DIR = F15
# Déchiffrage des archives des flux
ENEDIS_ODOO_BRIDGE_AES_IV = iv
ENEDIS_ODOO_BRIDGE_AES_KEY = clé

Utilisation

Documentation

Pour des informations détaillées sur l’installation, la configuration et l’utilisation du module, veuillez consulter notre Documentation

Release on PyPI

Simply tag

git tag -a v0.1.0 -m "first release"

Note

This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

enedis_odoo_bridge-1.0.1.post1.dev0.tar.gz (67.5 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file enedis_odoo_bridge-1.0.1.post1.dev0.tar.gz.

File metadata

File hashes

Hashes for enedis_odoo_bridge-1.0.1.post1.dev0.tar.gz
Algorithm Hash digest
SHA256 6ef06d2c9a53ecf320cc185afd06dab8d9c9f4b2d13070dcc1ebc087ad997aab
MD5 41084664f2afe3fc03197c9b737bfd7b
BLAKE2b-256 28e592a032bfce7c4f3c8d3a0adc9f18ae5cf37ffa4a380f25b25aa6bbac1374

See more details on using hashes here.

File details

Details for the file enedis_odoo_bridge-1.0.1.post1.dev0-py3-none-any.whl.

File metadata

File hashes

Hashes for enedis_odoo_bridge-1.0.1.post1.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 4d1bcd94b9b30ee4ba8754924c4f2e3f7a38a9697c9c8deb247ae4815b24f926
MD5 d3de2f6affb07b4b6d42d84c0313d7ed
BLAKE2b-256 3fb0a89fdfd4af796f096c4e3e9096fa24e8337ce67dd658077c024f0a974649

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page