Skip to content

IA-1013: feat(japprends-configs): add response config and description implementation with full CRUD API

khadija.elbachouri a demandé de fusionner feature/IA-1013 vers develop

Description

Implémentation du module assistantJapprendsConfigs dans le microservice brainboost-assistant-japprends-service. Ce module expose deux APIs REST dédiées : la gestion de la configuration de réponse des assistants exercices enfants et la gestion de leur description/statut.

Changements

Configuration (pom.xml)

  • Mise à jour de brainboost-common de 0.0.104-RELEASE vers 0.0.104-SNAPSHOT pour accéder à ChildExerciseAssistantResponseConfig

Bootstrap (Application.java)

  • Ajout de scanBasePackages pour inclure com.marketingconfort.assistantJapprendsConfigs
  • Ajout du package configs dans @EntityScan et @EnableJpaRepositories
  • Simplification : remplacement du SpringApplication manuel par SpringApplication.run()

Constants

  • Ajout de ApiPaths : constantes pour tous les endpoints /response-config et /assistants (description/statut)

Response Config

  • ExerciseResponseConfigController : endpoints GET, POST, PUT, DELETE pour la config de réponse (reset, toggles voice/image/PDF, phrases motivationnelles, formats audio)
  • ExerciseResponseConfigService + ExerciseResponseConfigServiceImpl : logique métier complète avec getOrCreate, update, reset, toggles, gestion des phrases
  • ExerciseResponseConfigMapper : mapping entité DTO + mise à jour partielle depuis request
  • ExerciseAssistantResponseConfigDTO : record Java avec méthode defaultConfig
  • UpdateExerciseResponseConfigRequest : record de validation avec contraintes Jakarta
  • ChildExerciseAssistantResponseConfigRepository : JPA repository avec requêtes natives de nettoyage des collections

Description

  • AssistantJapprendsDescriptionController : endpoints GET/PUT description + PATCH statut
  • AssistantJapprendsDescriptionService + AssistantJapprendsDescriptionServiceImpl : récupération et mise à jour de la description et du statut (enabled) depuis ChildExerciseAssistant
  • AssistantJapprendsDescriptionRepository : JPA repository sur ChildExerciseAssistant avec recherche par UUID
  • AssistantJapprendsDescriptionDTO : DTO complet avec métadonnées et LastModificationDetails

Exceptions

  • BaseAppException : exception abstraite avec code HTTP
  • ResourceNotFoundException : 404 avec factory method forAssistantUuid

Rapports de requête de fusion