Table des matières

Évaluation Technique Spring Boot - 1h30

Système de commentaires et notations pour les profils

Contexte

Les utilisateurs du Portfolio-builder souhaitent pouvoir recevoir des retours constructifs sur leurs profils de la part de visiteurs ou recruteurs. Vous allez implémenter un système de commentaires avec notation par catégories (présentation, contenu, design).


Modèle de données

Diagramme PlantUML

Profileid: UUIDusername: String...Commentid: UUIDcontent: StringauthorName: StringauthorEmail: StringcreatedAt: LocalDateTimestatus: CommentStatusgetAverageScore(): DoubleRatingid: UUIDscore: Integercategory: RatingCategoryCommentStatusPENDINGAPPROVEDREJECTEDRatingCategoryPRESENTATIONCONTENTDESIGNUn commentaire peut avoir1 à 3 ratings (un par catégorie)score doit être comprisentre 1 et 5receives10..*contains11..3

Travail demandé

Partie 1 : Modèle de données (30 min)

1. Créer l'enum CommentStatus

2. Créer l'enum RatingCategory

3. Créer l'entité Comment

Attributs :

Relations :

4. Créer l'entité Rating

Attributs :

Relations :


Partie 2 : Repositories (15 min)

5. Créer CommentRepository

6. Créer RatingRepository

Partie 3 : DTOs (15 min)

7. Créer RatingDTO

Attributs :

8. Créer CreateCommentRequest

Attributs :

9. Créer CommentDTO

Attributs :


Critères d'évaluation

Critère Points
Entités : annotations JPA correctes, relations bidirectionnelles cohérentes /5
Repositories : déclarations correctes avec méthodes personnalisées /3
DTOs : structure et validations appropriées /2