2025-10-16 02:40:39 +02:00

46 lines
1.3 KiB
Java

package fr.la_banquise.backend.rest;
import fr.la_banquise.backend.data.model.User;
import fr.la_banquise.backend.rest.response.DashboardResponse;
import fr.la_banquise.backend.services.InstanceService;
import fr.la_banquise.backend.services.SujetService;
import fr.la_banquise.backend.services.UserService;
import io.quarkus.security.Authenticated;
import io.quarkus.security.identity.SecurityIdentity;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.core.Response;
/**
* Endpoints
*/
@Path("api")
public class Endpoints {
@Inject SecurityIdentity identity;
@Inject InstanceService instanceService;
@Inject SujetService sujetService;
@Inject UserService userService;
@GET
@Authenticated
@Path("dashboard")
public Response getDashboard() {
String username = identity.getPrincipal().getName();
User user = userService.getUser(username);
DashboardResponse dashboard = new DashboardResponse();
dashboard.roles = user.getRoles();
dashboard.name = username;
dashboard.jiRespo = user.jiRespo;
dashboard.jiParticipant = user.jiParticipant;
dashboard.sujetRespo = user.sujetRespo;
return Response.ok(dashboard).build();
}
}