Aller au contenu principal

Offres d'énergie

Fichier : apps/web/src/pages/Admin/Offers.tsx

Features​

FeatureStatut
Gestion des fournisseursFAIT
Modal de previsualisationFAIT
Liste des offresFAIT
Filtrage et rechercheFAIT
Modification d'offreFAIT
Suppression d'offreFAIT
Purge fournisseurFAIT

Details implementation​

Gestion des fournisseurs (FAIT)​

Section avec carte par fournisseur :

  • 9 fournisseurs : EDF, Enercoop, TotalEnergies, Primeo, Engie, ALPIQ, Alterna, Ekwateur, Octopus
  • ~254 offres energetiques au total
  • Logo via Clearbit Logo API
  • Nombre d'offres actives
  • Date du tarif
  • URLs des scrapers editables
  • Bouton "Previsualiser" (icone Eye)
  • Bouton "Purger" (icone Trash2, rouge)

3 onglets avec compteurs :

  • Nouvelles offres (fond vert) : Offres a creer
  • Mises a jour (fond bleu) : Offres modifiees avec diff des prix
  • Desactivations (fond rouge) : Offres a desactiver

Affichage :

  • Nom, Type, Puissance, Prix, Date du tarif
  • Diff : Ancien prix -> Nouveau prix (+X.X% ou -X.X%)
  • Support tous types : BASE, HC/HP, TEMPO, SEASONAL, Week-end

Barre de progression :

  • Demarrage (10%) -> API (60%) -> Cache (80%) -> Termine (100%)

Actions :

  • Bouton "Annuler"
  • Bouton "Appliquer les changements"

Liste des offres (FAIT)​

Tableau groupe par fournisseur :

  • Sections pliables
  • Tri alphabetique
  • Checkbox de selection (+ selection SHIFT)
  • Colonnes : Nom, Type, Puissance, Abonnement, Prix kWh, Date tarif
  • Alerte si tarif > 6 mois
  • Actions groupees : Activer, Desactiver, Supprimer

Filtrage et recherche (FAIT)​

  • Recherche par nom d'offre
  • Filtre fournisseur (dropdown)
  • Filtre type (BASE, HC_HP, TEMPO, EJP, SEASONAL...)
  • Filtre puissance (3-36 kVA)
  • Toggle alertes tarifs anciens

Modification d'offre (FAIT)​

Modal avec formulaire :

  • Informations generales : Nom
  • Periode validite : Date application, fin validite
  • Puissance et abonnement
  • Tarifs selon type :
    • BASE : Prix semaine + week-end
    • HC/HP : HC/HP semaine + week-end
    • TEMPO : 6 prix (Bleu/Blanc/Rouge HC/HP)
    • EJP : Normal + Pointe
    • SEASONAL : Hiver/Ete HC/HP + Jour pointe

Permissions requises​

  • Permission offers : Lecture, previsualisation
  • Permission offers.edit : Modification, URLs scrapers
  • Permission offers.delete : Suppression, purge

Technologies​

  • React avec TypeScript
  • React Query (useQuery, useMutation)
  • Lucide React pour icones
  • React Hot Toast pour notifications
  • Tailwind CSS + dark mode

API utilisee​

EndpointMethodeDescription
/admin/offers/previewGETPrevisualisation (DRY RUN)
/admin/offers/refreshPOSTApplication des changements
/admin/offers/purgeDELETESuppression offres fournisseur
/energy/providersGETListe fournisseurs
/energy/offersGETListe offres
/energy/offers/{id}PUTMise a jour offre
/energy/offers/{id}DELETESuppression offre

Notes​

  • Offres desactivees non proposees dans simulateur
  • Tarifs > 6 mois signales avec alerte
  • Puissances : 3, 6, 9, 12, 15, 18, 24, 30, 36 kVA
  • Offres TEMPO : 6 tarifs (3 couleurs x 2 periodes)
  • Logos via Clearbit Logo API