Skip to content

Ajout du backend pour la fonctionnalité EcoNews : récupération, favoris, tracking et export CSV#46

Merged
SylvainCostes merged 2 commits into
developfrom
feat/eco-news
Jun 13, 2025
Merged

Ajout du backend pour la fonctionnalité EcoNews : récupération, favoris, tracking et export CSV#46
SylvainCostes merged 2 commits into
developfrom
feat/eco-news

Conversation

@SylvainCostes

Copy link
Copy Markdown
Contributor

Cette Pull Request implémente l'intégralité de la logique serveur pour la fonctionnalité EcoNews, en lien avec le front React :


📥 Récupération d’actualités externes

  • Endpoint : GET /api/v1/news/external-news?topic=...
  • API utilisée : NewsData.io
  • Format JSON retourné directement au front

⭐ Gestion des favoris

  • Endpoints :
    • GET /api/v1/favorites — récupération des articles favoris de l’utilisateur connecté
    • POST /api/v1/favorites — ajout d’un article en favori
    • DELETE /api/v1/favorites?url=... — suppression d’un favori
  • Lié à l’entité FavoriteArticle

🔍 Tracking des vues d’articles

  • Endpoint : POST /api/v1/news/view
  • Stocke les vues en base avec date et utilisateur
  • Endpoints statistiques :
    • GET /api/v1/news/views — historique complet
    • GET /api/v1/news/views/stats — total et dernier article consulté
    • GET /api/v1/news/views/top — top 10 des articles les plus consultés (tous utilisateurs)
    • GET /api/v1/news/views/export — export CSV personnalisé par utilisateur (authentifié)

🔒 Sécurité

  • Mise à jour de SecurityConfiguration pour autoriser :
    • /api/v1/news/views/export
    • /api/v1/news/external-news

💾 Technique

  • Nouvelle entité : ArticleView
  • Nouvelle entité : FavoriteArticle
  • Repositories associés
  • Services métiers : NewsService, FavoriteArticleService
  • DTO : ArticleViewRequest pour encapsuler le POST de tracking
  • Docker : modification des ports pour éviter les conflits locaux (3307:3306)

🧪 À tester :

  • Authentification utilisateur requise pour les endpoints favoris et vues
  • Export CSV correct avec encodage et séparateurs
  • Suppression correcte d’un favori existant
  • Pas de duplication d’un favori déjà existant

Ce backend est complètement fonctionnel avec le front développé sur la branche feat/eco-news du repo Frontend. Il offre une UX fluide, sécurisée et cohérente pour la navigation dans les actualités écologiques.

@SylvainCostes SylvainCostes merged commit 82df55d into develop Jun 13, 2025
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant