Skip to content
Snippets Groups Projects
Commit 3dc211d5 authored by Paul Cancel's avatar Paul Cancel
Browse files

RestController correctif

parent 08155db9
No related branches found
No related tags found
No related merge requests found
...@@ -11,11 +11,13 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -11,11 +11,13 @@ import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import fr.but.infoetu.meetingplannr.pojo.Meeting; import fr.but.infoetu.meetingplannr.pojo.Meeting;
import fr.but.infoetu.meetingplannr.pojo.User;
import fr.but.infoetu.meetingplannr.repository.MeetingRepository; import fr.but.infoetu.meetingplannr.repository.MeetingRepository;
import fr.but.infoetu.meetingplannr.repository.UserRepository; import fr.but.infoetu.meetingplannr.repository.UserRepository;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.List; import java.util.List;
import java.util.Optional;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
...@@ -38,19 +40,21 @@ public class MeetingRestController { ...@@ -38,19 +40,21 @@ public class MeetingRestController {
List<Meeting> meetings = meetingRepository.findByRequestDate(date); List<Meeting> meetings = meetingRepository.findByRequestDate(date);
return ResponseEntity.ok() return ResponseEntity.ok()
.contentType(MediaType.APPLICATION_JSON) .contentType(MediaType.APPLICATION_JSON)
.body(meetings); .body(meetings != null ? meetings : List.of());
} catch (Exception e) { } catch (Exception e) {
return ResponseEntity.badRequest().build(); return ResponseEntity.badRequest().build();
} }
} }
@GetMapping("/myappointments/{username}") @GetMapping("/myappointments/{username}")
public ResponseEntity<?> getFutureMeetingsByName(@PathVariable String username) { public ResponseEntity<List<Meeting>> getFutureMeetingsByName(@PathVariable String username) {
try { try {
var user = userRepository.findByUsername(username); Optional<User> user = userRepository.findByUsername(username);
if (user.isEmpty()) { if (user.isEmpty()) {
return ResponseEntity.notFound().build(); return ResponseEntity.ok()
.contentType(MediaType.APPLICATION_JSON)
.body(List.of());
} }
List<Meeting> meetings = meetingRepository List<Meeting> meetings = meetingRepository
...@@ -64,9 +68,7 @@ public class MeetingRestController { ...@@ -64,9 +68,7 @@ public class MeetingRestController {
.body(meetings); .body(meetings);
} catch (Exception e) { } catch (Exception e) {
return ResponseEntity return ResponseEntity.badRequest().build();
.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body("Error retrieving meetings: " + e.getMessage());
} }
} }
} }
...@@ -72,7 +72,8 @@ public class Security { ...@@ -72,7 +72,8 @@ public class Security {
.requestMatchers(mvc.pattern("/public/**"), .requestMatchers(mvc.pattern("/public/**"),
mvc.pattern("styles/**"), mvc.pattern("styles/**"),
mvc.pattern("/common/**"), mvc.pattern("/common/**"),
mvc.pattern("/uploads/**")).permitAll() mvc.pattern("/uploads/**"),
mvc.pattern("/api/**")).permitAll()
.requestMatchers(mvc.pattern("/perform_login")).permitAll() .requestMatchers(mvc.pattern("/perform_login")).permitAll()
.requestMatchers(mvc.pattern("/user/**")).authenticated() .requestMatchers(mvc.pattern("/user/**")).authenticated()
.requestMatchers(mvc.pattern("/admin/**")).hasRole("ADMIN") .requestMatchers(mvc.pattern("/admin/**")).hasRole("ADMIN")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment