update session resource
This commit is contained in:
18
README.md
18
README.md
@@ -6,15 +6,15 @@
|
||||
### Compte rendu
|
||||
|
||||
#### Utilisateur Resource
|
||||
| Methode | URL | Description |
|
||||
|---------|----------------------------------------------|-------------------------------------------------------|
|
||||
| GET | `/utilisateur` | Retourne toute la liste de l'utilisateur |
|
||||
| POST | `/utilisateur/register` | S'incrire nouveaux utilisateur |
|
||||
| POST | `/utilisateur/login` | Se connecter |
|
||||
| GET | `/utilisateur/{id}` | Retourne l'utilisateur par id |
|
||||
| GET | `/utilisateur/{user_id}/session` | Retoune la liste de session que l'utilisateur attends |
|
||||
| PUT | `/utilisateur/{user_id}/session/{session_id}` | Ajoute un nouveau session à la liste de l'utilisateur |
|
||||
| DELETE | `{user_id}/delete` | Supprime utilisateur |
|
||||
| Methode | URL | Description |
|
||||
|---------|---------------------------------------------------|-------------------------------------------------------|
|
||||
| GET | `/utilisateur` | Retourne toute la liste de l'utilisateur |
|
||||
| POST | `/utilisateur/register` | S'incrire nouveaux utilisateur |
|
||||
| POST | `/utilisateur/login` | Se connecter |
|
||||
| GET | `/utilisateur/{id}` | Retourne l'utilisateur par id |
|
||||
| GET | `/utilisateur/{user_id}/session` | Retoune la liste de session que l'utilisateur attends |
|
||||
| PUT | `/utilisateur/{user_id}/add_session/{session_id}` | Ajoute un nouveau session à la liste de l'utilisateur |
|
||||
| DELETE | `{user_id}/delete` | Supprime utilisateur |
|
||||
|
||||
#### Session Resource
|
||||
| Methode | URL | Description |
|
||||
|
||||
@@ -22,6 +22,8 @@ public interface QuizzMapper {
|
||||
QuizzDTO toDTO(Quizz quizz);
|
||||
Quizz toEntity(QuizzDTO quizzDTO);
|
||||
|
||||
List<QuizzDTO> toDTOs(List<Quizz> quizzes);
|
||||
|
||||
default List<Integer> function_mapQ(List<Question> questionList){
|
||||
List<Integer> list=new ArrayList<Integer>();
|
||||
for(Question question : questionList){
|
||||
|
||||
@@ -21,6 +21,8 @@ public interface SessionMapper {
|
||||
SessionDTO toDTO(Session session);
|
||||
Session toEntity(SessionDTO sessionDTO);
|
||||
|
||||
List<SessionDTO> toDTOs(List<Session> sessions);
|
||||
|
||||
//https://www.baeldung.com/mapstruct-map-source-object-target-list
|
||||
default List<Integer> function_mapU(List<Utilisateur> utilisateurList) {
|
||||
List<Integer> result = new ArrayList<>();
|
||||
|
||||
@@ -14,4 +14,6 @@ public interface UtilisateurMapper {
|
||||
|
||||
UtilisateurDTO toDTO(Utilisateur utilisateur);
|
||||
Utilisateur toEntity(UtilisateurDTO dto);
|
||||
|
||||
List<UtilisateurDTO> toDTOs(List<Utilisateur> utilisateurList);
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package fr.istic.taa.jaxrs.rest;
|
||||
|
||||
|
||||
import fr.istic.taa.jaxrs.DAO.SessionDAO;
|
||||
import fr.istic.taa.jaxrs.DTO.QuizzDTO;
|
||||
import fr.istic.taa.jaxrs.DTO.SessionDTO;
|
||||
import fr.istic.taa.jaxrs.DTO.UtilisateurDTO;
|
||||
import fr.istic.taa.jaxrs.Mapper.QuizzMapper;
|
||||
import fr.istic.taa.jaxrs.Mapper.SessionMapper;
|
||||
import fr.istic.taa.jaxrs.metier.Quizz;
|
||||
import fr.istic.taa.jaxrs.metier.Reponse;
|
||||
import fr.istic.taa.jaxrs.Mapper.UtilisateurMapper;
|
||||
import fr.istic.taa.jaxrs.metier.Session;
|
||||
import fr.istic.taa.jaxrs.metier.Utilisateur;
|
||||
import jakarta.ws.rs.*;
|
||||
import jakarta.ws.rs.core.Response;
|
||||
|
||||
@@ -44,6 +47,19 @@ public class SessionResource {
|
||||
if (session == null) {
|
||||
return Response.status(Response.Status.NOT_FOUND).build();
|
||||
}
|
||||
return Response.status(Response.Status.OK).entity(session.getQuizzs()).build();
|
||||
List<QuizzDTO> results= QuizzMapper.INSTANCE.toDTOs(session.getQuizzs());
|
||||
return Response.status(Response.Status.OK).entity(results).build();
|
||||
}
|
||||
|
||||
@GET
|
||||
@Path("/{session_id}/utilisateurs")
|
||||
public Response getUtilisateurs(@PathParam("session_id") Integer sessionId) {
|
||||
Session session = sessionDAO.findById(sessionId);
|
||||
if (session == null) {
|
||||
return Response.status(Response.Status.NOT_FOUND).build();
|
||||
}
|
||||
List<Utilisateur> utilisateurList= session.getUtilisateurs();
|
||||
List<UtilisateurDTO> dtos= UtilisateurMapper.INSTANCE.toDTOs(utilisateurList);
|
||||
return Response.status(Response.Status.OK).entity(dtos).build();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,9 @@ package fr.istic.taa.jaxrs.rest;
|
||||
|
||||
import fr.istic.taa.jaxrs.DAO.SessionDAO;
|
||||
import fr.istic.taa.jaxrs.DAO.UtilisateurDAO;
|
||||
import fr.istic.taa.jaxrs.DTO.SessionDTO;
|
||||
import fr.istic.taa.jaxrs.DTO.UtilisateurDTO;
|
||||
import fr.istic.taa.jaxrs.Mapper.SessionMapper;
|
||||
import fr.istic.taa.jaxrs.Mapper.UtilisateurMapper;
|
||||
import fr.istic.taa.jaxrs.metier.Session;
|
||||
import fr.istic.taa.jaxrs.metier.Utilisateur;
|
||||
@@ -82,7 +84,7 @@ public class UtilisateurResource {
|
||||
}
|
||||
|
||||
@PUT
|
||||
@Path("/{user_id}/session/{session_id}")
|
||||
@Path("/{user_id}/add_session/{session_id}")
|
||||
public Response addSession(@PathParam("user_id") Integer user_id, @PathParam("session_id") Integer session_id) {
|
||||
SessionDAO sessionDAO = new SessionDAO();
|
||||
|
||||
@@ -107,12 +109,14 @@ public class UtilisateurResource {
|
||||
|
||||
@GET
|
||||
@Path("{user_id}/session")
|
||||
public List<Session> listSession(@PathParam("user_id") Integer user_id) {
|
||||
public Response listSession(@PathParam("user_id") Integer user_id) {
|
||||
Utilisateur utilisateur = utilisateurDAO.findById(user_id);
|
||||
if (utilisateur == null) {
|
||||
return Collections.emptyList();
|
||||
return Response.status(Response.Status.NOT_FOUND).build();
|
||||
}
|
||||
return utilisateur.getSession();
|
||||
List<Session> sess= utilisateur.getSession();
|
||||
List<SessionDTO> dtos= SessionMapper.INSTANCE.toDTOs(sess);
|
||||
return Response.status(Response.Status.OK).entity(dtos).build();
|
||||
}
|
||||
|
||||
@DELETE
|
||||
|
||||
Reference in New Issue
Block a user