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).
1. Créer l'enum CommentStatus
PENDING, APPROVED, REJECTED
2. Créer l'enum RatingCategory
PRESENTATION, CONTENT, DESIGN
3. Créer l'entité Comment
Attributs :
id : identifiant UUIDcontent : texte de 500 caractères maximum, obligatoireauthorName : nom du commentateur, obligatoireauthorEmail : email du commentateur, obligatoirecreatedAt : date/heure de créationstatus : statut du commentaire (enum)Relations :
4. Créer l'entité Rating
Attributs :
id : identifiant UUIDscore : note de 1 à 5, obligatoirecategory : catégorie de notation (enum)Relations :
5. Créer CommentRepository
JpaRepository<Comment, UUID>
6. Créer RatingRepository
JpaRepository<Rating, UUID>
7. Créer RatingDTO
Attributs :
categoryscore
8. Créer CreateCommentRequest
Attributs :
contentauthorNameauthorEmailratings (liste de RatingDTO)
9. Créer CommentDTO
Attributs :
idcontentauthorNamecreatedAtstatusratingsaverageScore| 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 |