diff --git a/CHANGELOG.md b/CHANGELOG.md index 2bb4491ff40ed6d66ea3f7a903a02a59f26a2acf..1ce8fdaea6170400c2025f44f34c51b4dadd1f68 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Added +- Teachers can now create their own courses, if they are the associated teacher on study guide. [@cedricwilleken](https://gitlab.ewi.tudelft.nl/cedricwilleken) + ### Changed + ### Fixed - Fix the copying of labs [@mmadara](https://gitlab.ewi.tudelft.nl/mmadara) diff --git a/build.gradle.kts b/build.gradle.kts index e9b0012fc225b0d62322bc71e3851121cbed392c..d8005907f565acc577ed49a91409b1519dc9b9e6 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -35,6 +35,10 @@ repositories { name = "GitLab ChihuahUI repository" url = uri("https://gitlab.ewi.tudelft.nl/api/v4/projects/8633/packages/maven") } + maven { + name = "GitLab TU Delft API repository" + url = uri("https://gitlab.ewi.tudelft.nl/api/v4/projects/10478/packages/maven") + } } // The plugins used by Gradle to generate files, start Spring boot, perform static analysis etc. @@ -313,6 +317,7 @@ dependencies { } implementation("nl.tudelft.labrador:labradoor:$labradoorVersion") implementation("nl.tudelft.labrador:chihuahui:$chihuahUIVersion") + implementation("nl.tudelft.labrador:tudelft-api:0.0.3-preview") // Java assist dependency implementation("org.javassist:javassist:3.29.2-GA") diff --git a/importorder.txt b/importorder.txt index c123c415c055a62ee23a3c12c21e9110527d673d..02bfa6e263a69fe8ca2d5b82df27aa1924461cf7 100644 --- a/importorder.txt +++ b/importorder.txt @@ -2,5 +2,5 @@ #Fri Aug 23 16:13:26 CEST 2019 3=com 2=org -1=javax +1=jakarta 0=java diff --git a/src/main/java/nl/tudelft/queue/DevDatabaseLoader.java b/src/main/java/nl/tudelft/queue/DevDatabaseLoader.java index 80face868603d033ed747d364c661dae3756c47a..ea167f359bd4f7a96677d83bf40b62a7b5003928 100644 --- a/src/main/java/nl/tudelft/queue/DevDatabaseLoader.java +++ b/src/main/java/nl/tudelft/queue/DevDatabaseLoader.java @@ -26,14 +26,15 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; +import jakarta.annotation.PostConstruct; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Profile; import org.springframework.stereotype.Service; -import jakarta.annotation.PostConstruct; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.*; import nl.tudelft.labracore.api.DbLoaderControllerApi; import nl.tudelft.labracore.api.EditionControllerApi; diff --git a/src/main/java/nl/tudelft/queue/QueueApplication.java b/src/main/java/nl/tudelft/queue/QueueApplication.java index 73c3f71c5ee63e107b04dc57eaca8105f5c3864b..e679dcdc57f22057db73e6afff9449e0f66056a9 100644 --- a/src/main/java/nl/tudelft/queue/QueueApplication.java +++ b/src/main/java/nl/tudelft/queue/QueueApplication.java @@ -22,13 +22,14 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Import; import org.springframework.scheduling.annotation.EnableScheduling; +import nl.tudelft.api.TuDelftApiConfig; import nl.tudelft.labracore.app.LabracoreAppConfig; import nl.tudelft.labracore.lib.LabracoreApiConfig; import nl.tudelft.librador.EnableLibrador; @EnableScheduling @SpringBootApplication(scanBasePackageClasses = QueueApplication.class) -@Import({ LabracoreApiConfig.class, LabracoreAppConfig.class }) +@Import({ LabracoreApiConfig.class, TuDelftApiConfig.class, LabracoreAppConfig.class }) @EnableLibrador public class QueueApplication { public static void main(String[] args) { diff --git a/src/main/java/nl/tudelft/queue/controller/AdminController.java b/src/main/java/nl/tudelft/queue/controller/AdminController.java index 9946d5c53c3f2047ee8005b4c47335deb8173184..66f203dc12b91ded10036ad7ed6e29de80fb8e99 100644 --- a/src/main/java/nl/tudelft/queue/controller/AdminController.java +++ b/src/main/java/nl/tudelft/queue/controller/AdminController.java @@ -24,6 +24,8 @@ import java.util.List; import java.util.Objects; import java.util.stream.Collectors; +import jakarta.validation.Valid; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.security.access.prepost.PreAuthorize; @@ -35,7 +37,6 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartFile; -import jakarta.validation.Valid; import nl.tudelft.labracore.api.CourseControllerApi; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; diff --git a/src/main/java/nl/tudelft/queue/controller/AnnouncementController.java b/src/main/java/nl/tudelft/queue/controller/AnnouncementController.java index 724d4b476bc1b29a229aa0c569823bc157d9f271..d4e2513bf6e3ec88549310fdc4944de1213a9c70 100644 --- a/src/main/java/nl/tudelft/queue/controller/AnnouncementController.java +++ b/src/main/java/nl/tudelft/queue/controller/AnnouncementController.java @@ -19,6 +19,8 @@ package nl.tudelft.queue.controller; import java.time.LocalDateTime; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; @@ -28,7 +30,6 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; -import jakarta.transaction.Transactional; import nl.tudelft.librador.dto.DTOConverter; import nl.tudelft.librador.resolver.annotations.PathEntity; import nl.tudelft.queue.dto.create.misc.AnnouncementCreateDTO; diff --git a/src/main/java/nl/tudelft/queue/controller/AssignmentController.java b/src/main/java/nl/tudelft/queue/controller/AssignmentController.java index 1dad49b091bad3d5a076c5ef5652a7ad85eacbc0..1e8b5651d3dfe88446cb0c46c514fcf7af5ee55e 100644 --- a/src/main/java/nl/tudelft/queue/controller/AssignmentController.java +++ b/src/main/java/nl/tudelft/queue/controller/AssignmentController.java @@ -17,13 +17,14 @@ */ package nl.tudelft.queue.controller; +import jakarta.validation.Valid; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; -import jakarta.validation.Valid; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/main/java/nl/tudelft/queue/controller/CourseController.java b/src/main/java/nl/tudelft/queue/controller/CourseController.java new file mode 100644 index 0000000000000000000000000000000000000000..6ddf9486f4cff5f5b39bc7a293722ad64b5d3758 --- /dev/null +++ b/src/main/java/nl/tudelft/queue/controller/CourseController.java @@ -0,0 +1,85 @@ +/* + * Queue - A Queueing system that can be used to handle labs in higher education + * Copyright (C) 2016-2024 Delft University of Technology + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <https://www.gnu.org/licenses/>. + */ +package nl.tudelft.queue.controller; + +import java.util.stream.Collectors; + +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import lombok.RequiredArgsConstructor; +import nl.tudelft.labracore.api.CourseControllerApi; +import nl.tudelft.labracore.api.dto.CourseSummaryDTO; +import nl.tudelft.labracore.api.dto.CourseWithManagerCreateDTO; +import nl.tudelft.labracore.api.dto.PersonIdDTO; +import nl.tudelft.labracore.lib.security.user.AuthenticatedPerson; +import nl.tudelft.labracore.lib.security.user.Person; +import nl.tudelft.queue.service.CourseService; +import nl.tudelft.queue.service.TuDelftApiService; + +@Controller +@RequestMapping("course") +@RequiredArgsConstructor +public class CourseController { + + private final TuDelftApiService tuDelftApiService; + + private final CourseService courseService; + + private final CourseControllerApi courseControllerApi; + + /** + * Endpoint to show the teacher his/her courses that don't have a corresponding labrador course. + * + * @param person The teacher + * @param model The model + * @return View responsible for displaying the qualifying courses. + */ + @GetMapping("my-courses") + @PreAuthorize("@permissionService.isAdminOrTeacher()") + public String showMyCourses(@AuthenticatedPerson Person person, Model model) { + var managedCourses = courseControllerApi.getAllCoursesByManager(person.getId()).collectList().block() + .stream().map(CourseSummaryDTO::getCode).collect(Collectors.toSet()); + model.addAttribute("courses", + tuDelftApiService.getCoursesForInstructor(person) + .stream().filter((dto) -> !managedCourses.contains(dto.getCode())).distinct() + .toList()); + model.addAttribute("create", new CourseWithManagerCreateDTO()); + return "course/my-courses"; + } + + /** + * POST endpoint to allow a teacher to create a labracore course based off information from studiegids. + * + * @param person The teacher + * @param courseCreateDTO The DTO corresponding to the submitted form + * @return The view where the teacher can add editions of new courses. + */ + @PostMapping("create") + @PreAuthorize("@permissionService.isAdminOrTeacher()") + public String createCourse(@AuthenticatedPerson Person person, + CourseWithManagerCreateDTO courseCreateDTO) { + courseService.setupCourseWithManagerLabracore( + courseCreateDTO.manager(new PersonIdDTO().id(person.getId()))); + return "redirect:/edition/add"; + } +} diff --git a/src/main/java/nl/tudelft/queue/controller/EditionController.java b/src/main/java/nl/tudelft/queue/controller/EditionController.java index 8de26f391cc1a4f37d1ce17cdb02627120817be6..3bdb35fa79603435bbd7cef9dfb72e79c0bbcfc3 100644 --- a/src/main/java/nl/tudelft/queue/controller/EditionController.java +++ b/src/main/java/nl/tudelft/queue/controller/EditionController.java @@ -28,6 +28,10 @@ import java.util.Objects; import java.util.function.Predicate; import java.util.stream.Collectors; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.transaction.Transactional; +import jakarta.validation.Valid; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.Resource; import org.springframework.data.domain.Pageable; @@ -45,9 +49,6 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.reactive.function.client.WebClientResponseException; import org.springframework.web.servlet.mvc.support.RedirectAttributes; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.transaction.Transactional; -import jakarta.validation.Valid; import nl.tudelft.labracore.api.*; import nl.tudelft.labracore.api.dto.*; import nl.tudelft.labracore.lib.security.user.AuthenticatedPerson; diff --git a/src/main/java/nl/tudelft/queue/controller/ErrorControllerAdvice.java b/src/main/java/nl/tudelft/queue/controller/ErrorControllerAdvice.java index f9c2b53ccd78bd8be8108c15420eb0521e311c8d..72af10534d66eb1f57a07744b2ca30bfdb2496e7 100644 --- a/src/main/java/nl/tudelft/queue/controller/ErrorControllerAdvice.java +++ b/src/main/java/nl/tudelft/queue/controller/ErrorControllerAdvice.java @@ -19,6 +19,10 @@ package nl.tudelft.queue.controller; import static org.springframework.http.HttpStatus.*; +import jakarta.persistence.EntityNotFoundException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.annotation.AnnotationUtils; @@ -34,9 +38,6 @@ import org.springframework.web.reactive.function.client.WebClientResponseExcepti import org.springframework.web.server.ResponseStatusException; import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler; -import jakarta.persistence.EntityNotFoundException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; import nl.tudelft.librador.exception.DTOValidationException; /** diff --git a/src/main/java/nl/tudelft/queue/controller/HistoryController.java b/src/main/java/nl/tudelft/queue/controller/HistoryController.java index 7122b6399e579b9b6a38d6570fd17fc3ae862d66..b0ff9b038d60439b79c3ecd1cc6a6a40d5698ff5 100644 --- a/src/main/java/nl/tudelft/queue/controller/HistoryController.java +++ b/src/main/java/nl/tudelft/queue/controller/HistoryController.java @@ -20,6 +20,8 @@ package nl.tudelft.queue.controller; import java.util.List; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; @@ -30,7 +32,6 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.EditionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/controller/LabController.java b/src/main/java/nl/tudelft/queue/controller/LabController.java index e0381cfeb49ae89c977ef4ba80786935771e655d..2980b9f236d325c6d31602ac73904c9263a066dc 100644 --- a/src/main/java/nl/tudelft/queue/controller/LabController.java +++ b/src/main/java/nl/tudelft/queue/controller/LabController.java @@ -28,6 +28,10 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpSession; +import jakarta.transaction.Transactional; + import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.Resource; @@ -42,9 +46,6 @@ import org.springframework.web.multipart.MultipartFile; import com.google.common.collect.Maps; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpSession; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.*; import nl.tudelft.labracore.lib.security.user.AuthenticatedPerson; diff --git a/src/main/java/nl/tudelft/queue/controller/RequestController.java b/src/main/java/nl/tudelft/queue/controller/RequestController.java index 2e49ecc304f86b9fe76feb14f050b647e8bb51b2..25d1ff54fbf737b1b484f448ff94277cfc7b9967 100644 --- a/src/main/java/nl/tudelft/queue/controller/RequestController.java +++ b/src/main/java/nl/tudelft/queue/controller/RequestController.java @@ -26,6 +26,8 @@ import java.util.Set; import java.util.function.Predicate; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; @@ -36,7 +38,6 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.mvc.support.RedirectAttributes; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; diff --git a/src/main/java/nl/tudelft/queue/controller/SessionStatusController.java b/src/main/java/nl/tudelft/queue/controller/SessionStatusController.java index 771e8b162abd2926e47d0b575b616996533c4dee..20e915ba6b3648370e5af82ee0f9f58e960c9773 100644 --- a/src/main/java/nl/tudelft/queue/controller/SessionStatusController.java +++ b/src/main/java/nl/tudelft/queue/controller/SessionStatusController.java @@ -22,13 +22,14 @@ import java.util.Map; import java.util.Objects; import java.util.Set; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import jakarta.transaction.Transactional; import lombok.RequiredArgsConstructor; import nl.tudelft.librador.resolver.annotations.PathEntity; import nl.tudelft.queue.cache.AssignmentCacheManager; diff --git a/src/main/java/nl/tudelft/queue/controller/SharedEditionController.java b/src/main/java/nl/tudelft/queue/controller/SharedEditionController.java index d29ef49ac6d608666094d47f76fd6ed3980a6b36..a20b7f6b52a1b1cf9a69a14cd9221dfc79adbb1b 100644 --- a/src/main/java/nl/tudelft/queue/controller/SharedEditionController.java +++ b/src/main/java/nl/tudelft/queue/controller/SharedEditionController.java @@ -22,13 +22,14 @@ import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; +import jakarta.validation.Valid; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; -import jakarta.validation.Valid; import nl.tudelft.labracore.api.EditionCollectionControllerApi; import nl.tudelft.labracore.api.RoleControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/main/java/nl/tudelft/queue/controller/TimeSlotController.java b/src/main/java/nl/tudelft/queue/controller/TimeSlotController.java index 2d3a402c606c0de064c2f6c39bba1f191905eb70..e073076e52524afe50399e38214193c25e1922cd 100644 --- a/src/main/java/nl/tudelft/queue/controller/TimeSlotController.java +++ b/src/main/java/nl/tudelft/queue/controller/TimeSlotController.java @@ -19,12 +19,13 @@ package nl.tudelft.queue.controller; import java.util.Optional; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.lib.security.user.AuthenticatedPerson; import nl.tudelft.labracore.lib.security.user.Person; import nl.tudelft.librador.resolver.annotations.PathEntity; diff --git a/src/main/java/nl/tudelft/queue/cqsr/Event.java b/src/main/java/nl/tudelft/queue/cqsr/Event.java index 7c1c4f55c6b4427d1770baeb3cc7d615c1a590d8..83258e8755b65e364710e287a8b0a56a59d170cc 100644 --- a/src/main/java/nl/tudelft/queue/cqsr/Event.java +++ b/src/main/java/nl/tudelft/queue/cqsr/Event.java @@ -24,6 +24,7 @@ import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.MappedSuperclass; import jakarta.validation.constraints.NotNull; + import lombok.Data; @Data diff --git a/src/main/java/nl/tudelft/queue/dto/create/CustomSlideCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/CustomSlideCreateDTO.java index 1822eb9481084c1d7e12c17f0ced4816130997e3..9dce736af971c2ee50a81a402d0f18a738eb3856 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/CustomSlideCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/CustomSlideCreateDTO.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.dto.create; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.librador.dto.create.Create; import nl.tudelft.queue.model.misc.CustomSlide; diff --git a/src/main/java/nl/tudelft/queue/dto/create/QueueAssignmentCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/QueueAssignmentCreateDTO.java index e6833b2e586bd2277bfa47473ce21b517c2ec526..70737a948e2ca68fd628ac3b08c2795e4f108747 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/QueueAssignmentCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/QueueAssignmentCreateDTO.java @@ -19,10 +19,11 @@ package nl.tudelft.queue.dto.create; import java.time.LocalDateTime; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.*; import nl.tudelft.labracore.api.dto.AssignmentCreateDTO; import nl.tudelft.labracore.api.dto.Description; diff --git a/src/main/java/nl/tudelft/queue/dto/create/QueueCourseCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/QueueCourseCreateDTO.java index d80b65d2f776cb29c4dc827f1ffcec687bca24b0..103db5e7ea0dc21188821f97a6e53f9093aa7440 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/QueueCourseCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/QueueCourseCreateDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.create; import jakarta.validation.constraints.NotBlank; + import lombok.*; import nl.tudelft.labracore.api.dto.CourseCreateDTO; import nl.tudelft.labracore.api.dto.ProgramIdDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCollectionCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCollectionCreateDTO.java index 3fca9755fd65cbbd624244e38ada0b228fc609f3..f90ad6c2f5c0d68e1fa5aa4cecfca29e2b5963c0 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCollectionCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCollectionCreateDTO.java @@ -23,6 +23,7 @@ import java.util.stream.Collectors; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.Size; + import lombok.*; import nl.tudelft.labracore.api.dto.*; import nl.tudelft.librador.dto.create.Create; diff --git a/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCreateDTO.java index b863486741163474b2513427f87022d1ba14106a..a262ba1767ed0497574f02734371c2b24940f8c8 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/QueueEditionCreateDTO.java @@ -19,10 +19,11 @@ package nl.tudelft.queue.dto.create; import java.time.LocalDateTime; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.*; import nl.tudelft.labracore.api.dto.CohortIdDTO; import nl.tudelft.labracore.api.dto.CourseIdDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/create/QueueModuleCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/QueueModuleCreateDTO.java index 907a9b2ff45917b6fd2dd2d9e28ee290ff4d981d..eea621befa196f3ceaab0c616789363cba217f87 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/QueueModuleCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/QueueModuleCreateDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.create; import jakarta.validation.constraints.NotBlank; + import lombok.*; import nl.tudelft.labracore.api.dto.EditionIdDTO; import nl.tudelft.labracore.api.dto.ModuleCreateDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/create/SubscriptionCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/SubscriptionCreateDTO.java index e30c2110a619fe2bde74f6b10ce510a7b12a3e24..91d5cdf106cca3077477ecdee66121680dab2f00 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/SubscriptionCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/SubscriptionCreateDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.create; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/nl/tudelft/queue/dto/create/TimeSlotCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/TimeSlotCreateDTO.java index 229b078cd099f3be54a5a5de29e1b3b697e2d598..8ca153549adc0f481446ff1e1bcbe1c7002f662b 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/TimeSlotCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/TimeSlotCreateDTO.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.dto.create; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.librador.dto.create.Create; import nl.tudelft.queue.model.TimeSlot; diff --git a/src/main/java/nl/tudelft/queue/dto/create/embeddables/CapacitySessionConfigCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/embeddables/CapacitySessionConfigCreateDTO.java index 07b4f46177ce59e9bdba1177d6831f60aa48e6ff..be10e8dd4fbfa6a2422b35b1cf45fe5d24dd29ec 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/embeddables/CapacitySessionConfigCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/embeddables/CapacitySessionConfigCreateDTO.java @@ -19,9 +19,10 @@ package nl.tudelft.queue.dto.create.embeddables; import java.time.LocalDateTime; +import jakarta.validation.constraints.NotNull; + import org.springframework.format.annotation.DateTimeFormat; -import jakarta.validation.constraints.NotNull; import lombok.*; import nl.tudelft.librador.dto.create.Create; import nl.tudelft.queue.model.embeddables.CapacitySessionConfig; diff --git a/src/main/java/nl/tudelft/queue/dto/create/embeddables/ExamLabConfigCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/embeddables/ExamLabConfigCreateDTO.java index 9e4e127553dca61df87daab6b69faabab6be62e7..e794271847c38a197228ad213cec440fbad38f0b 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/embeddables/ExamLabConfigCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/embeddables/ExamLabConfigCreateDTO.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.dto.create.embeddables; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; + import lombok.*; import nl.tudelft.librador.dto.create.Create; import nl.tudelft.queue.model.embeddables.ExamLabConfig; diff --git a/src/main/java/nl/tudelft/queue/dto/create/embeddables/SlottedLabConfigCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/embeddables/SlottedLabConfigCreateDTO.java index ab46a8121757bc8fe3f091d93b2b17d9b3f6794e..70d26b820639ae7d4c704bb596f84ec0b23d1dab 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/embeddables/SlottedLabConfigCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/embeddables/SlottedLabConfigCreateDTO.java @@ -19,11 +19,12 @@ package nl.tudelft.queue.dto.create.embeddables; import java.time.LocalDateTime; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.*; import nl.tudelft.librador.dto.create.Create; import nl.tudelft.queue.model.embeddables.SlottedLabConfig; diff --git a/src/main/java/nl/tudelft/queue/dto/create/labs/LabCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/labs/LabCreateDTO.java index 6e07e7ca0eeab490a9492bbae2fb907ce771b624..80be74651f6eb9e8f94e8820ae457604f69f5a7d 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/labs/LabCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/labs/LabCreateDTO.java @@ -24,10 +24,11 @@ import java.util.Map; import java.util.Set; import java.util.stream.Collectors; -import org.springframework.util.CollectionUtils; - import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; + +import org.springframework.util.CollectionUtils; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.AssignmentIdDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/create/misc/AnnouncementCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/misc/AnnouncementCreateDTO.java index 4e7308eeaea296eb9b90d44863784decab465248..c04f4387fdfdcdaa902aa0da76bf1b43aabf4ad7 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/misc/AnnouncementCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/misc/AnnouncementCreateDTO.java @@ -19,11 +19,12 @@ package nl.tudelft.queue.dto.create.misc; import java.time.LocalDateTime; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; + import org.hibernate.validator.constraints.Length; import org.springframework.format.annotation.DateTimeFormat; -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.librador.dto.create.Create; diff --git a/src/main/java/nl/tudelft/queue/dto/create/requests/LabRequestCreateDTO.java b/src/main/java/nl/tudelft/queue/dto/create/requests/LabRequestCreateDTO.java index 2ca9d3fc60ca2104f1247059f0ff5dd0d3b6b6d0..703c3cfa20f7b949db653b3d51881ecfc0a4501c 100644 --- a/src/main/java/nl/tudelft/queue/dto/create/requests/LabRequestCreateDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/create/requests/LabRequestCreateDTO.java @@ -22,6 +22,7 @@ import java.util.Objects; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.librador.dto.DTOConverter; diff --git a/src/main/java/nl/tudelft/queue/dto/patch/LabPatchDTO.java b/src/main/java/nl/tudelft/queue/dto/patch/LabPatchDTO.java index 690368ae93551acf3d8294409e238b0f0773600d..a6e65cbcd8c1c8d4cd99e518d0af8107ffd0b763 100644 --- a/src/main/java/nl/tudelft/queue/dto/patch/LabPatchDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/patch/LabPatchDTO.java @@ -22,6 +22,7 @@ import java.util.stream.Collectors; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.AssignmentIdDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/patch/QueueAssignmentPatchDTO.java b/src/main/java/nl/tudelft/queue/dto/patch/QueueAssignmentPatchDTO.java index 1a03f462ff39a55829378ee5ca42f743662152ea..423041e3ac590343665baba3e4167296e015cec2 100644 --- a/src/main/java/nl/tudelft/queue/dto/patch/QueueAssignmentPatchDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/patch/QueueAssignmentPatchDTO.java @@ -19,9 +19,10 @@ package nl.tudelft.queue.dto.patch; import java.time.LocalDateTime; +import jakarta.validation.constraints.NotBlank; + import org.springframework.format.annotation.DateTimeFormat; -import jakarta.validation.constraints.NotBlank; import lombok.*; import nl.tudelft.labracore.api.dto.Description; diff --git a/src/main/java/nl/tudelft/queue/dto/patch/labs/AbstractSlottedLabPatchDTO.java b/src/main/java/nl/tudelft/queue/dto/patch/labs/AbstractSlottedLabPatchDTO.java index b58c396ec1dd20d1aadabebbed29968bd83e6ea6..893d48faa30ac98de04d7083a07df003e13a0b01 100644 --- a/src/main/java/nl/tudelft/queue/dto/patch/labs/AbstractSlottedLabPatchDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/patch/labs/AbstractSlottedLabPatchDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.patch.labs; import jakarta.validation.constraints.NotNull; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.queue.dto.patch.LabPatchDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/patch/labs/ExamLabPatchDTO.java b/src/main/java/nl/tudelft/queue/dto/patch/labs/ExamLabPatchDTO.java index bd488bedf1c542cdd3d0313a432e4f61cb46ad8f..c8df77aaa89e73aa90fde83a74733b2d39f76b15 100644 --- a/src/main/java/nl/tudelft/queue/dto/patch/labs/ExamLabPatchDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/patch/labs/ExamLabPatchDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.patch.labs; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.queue.dto.patch.ExamLabConfigPatchDTO; import nl.tudelft.queue.model.labs.ExamLab; diff --git a/src/main/java/nl/tudelft/queue/dto/util/RequestTableFilterDTO.java b/src/main/java/nl/tudelft/queue/dto/util/RequestTableFilterDTO.java index 91793802fec25a326aa40a31968de60fa6d2934d..1348ac2c875b10814db92078fcaa437e99620c33 100644 --- a/src/main/java/nl/tudelft/queue/dto/util/RequestTableFilterDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/util/RequestTableFilterDTO.java @@ -23,6 +23,7 @@ import java.util.Set; import java.util.stream.Stream; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/nl/tudelft/queue/dto/view/QueueEditionDetailsDTO.java b/src/main/java/nl/tudelft/queue/dto/view/QueueEditionDetailsDTO.java index c8e6d3585a68e2919cb9c98177786c49a3a2ef80..548b44e1acf7ee5e838818a273a8fa0dd3138bd4 100644 --- a/src/main/java/nl/tudelft/queue/dto/view/QueueEditionDetailsDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/view/QueueEditionDetailsDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.view; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.labracore.api.dto.*; diff --git a/src/main/java/nl/tudelft/queue/dto/view/QueueEditionSummaryDTO.java b/src/main/java/nl/tudelft/queue/dto/view/QueueEditionSummaryDTO.java index 6d9b89300a0339642151fa0640828d018d85fb63..4689bda40436288980a446ec90f82b1015380e9f 100644 --- a/src/main/java/nl/tudelft/queue/dto/view/QueueEditionSummaryDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/view/QueueEditionSummaryDTO.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.dto.view; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.labracore.api.dto.EditionSummaryDTO; diff --git a/src/main/java/nl/tudelft/queue/dto/view/labs/AbstractSlottedLabViewDTO.java b/src/main/java/nl/tudelft/queue/dto/view/labs/AbstractSlottedLabViewDTO.java index 5882f21c315d26c9b7f016fd7c3370ac15720a84..255d81d268803216642bee89b1f1733fdec7d571 100644 --- a/src/main/java/nl/tudelft/queue/dto/view/labs/AbstractSlottedLabViewDTO.java +++ b/src/main/java/nl/tudelft/queue/dto/view/labs/AbstractSlottedLabViewDTO.java @@ -22,6 +22,7 @@ import java.util.List; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/nl/tudelft/queue/model/ClosableTimeSlot.java b/src/main/java/nl/tudelft/queue/model/ClosableTimeSlot.java index ff068f349de22e444ad21135d5269410cc55c38b..a0f6988031ba7f97a9d852c1061afd58f5218357 100644 --- a/src/main/java/nl/tudelft/queue/model/ClosableTimeSlot.java +++ b/src/main/java/nl/tudelft/queue/model/ClosableTimeSlot.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model; import jakarta.persistence.Entity; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/nl/tudelft/queue/model/Feedback.java b/src/main/java/nl/tudelft/queue/model/Feedback.java index a78290d2c48cac030fc19da77f5ce51efbb14378..8d8900c404cf015c7a13f7bb89a3962b5a379ec0 100644 --- a/src/main/java/nl/tudelft/queue/model/Feedback.java +++ b/src/main/java/nl/tudelft/queue/model/Feedback.java @@ -20,14 +20,15 @@ package nl.tudelft.queue.model; import java.io.Serializable; import java.time.LocalDateTime; -import org.hibernate.annotations.*; - import jakarta.persistence.*; import jakarta.persistence.Entity; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + +import org.hibernate.annotations.*; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/LabRequest.java b/src/main/java/nl/tudelft/queue/model/LabRequest.java index 34ad99392cb849b4ea1d812a61e149c6e83f77d7..810cc3555c6b145bee9823b5ffdb454eb77bfed3 100644 --- a/src/main/java/nl/tudelft/queue/model/LabRequest.java +++ b/src/main/java/nl/tudelft/queue/model/LabRequest.java @@ -25,11 +25,12 @@ import java.util.ArrayList; import java.util.List; import java.util.OptionalDouble; -import com.fasterxml.jackson.annotation.JsonIgnore; - import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + +import com.fasterxml.jackson.annotation.JsonIgnore; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.queue.dto.view.requests.LabRequestViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/LabRequestConstraint.java b/src/main/java/nl/tudelft/queue/model/LabRequestConstraint.java index 17f578de4e211a853e39aac31ea5ed77636b645b..e217f56d020507ec4e0b4ace991270494884eb09 100644 --- a/src/main/java/nl/tudelft/queue/model/LabRequestConstraint.java +++ b/src/main/java/nl/tudelft/queue/model/LabRequestConstraint.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.model; import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/Profile.java b/src/main/java/nl/tudelft/queue/model/Profile.java index 0a788a9e8a5c586dc41260afe18bc64f43f4f226..526b3bc648da73fb7efd2288a660a430919dabf7 100644 --- a/src/main/java/nl/tudelft/queue/model/Profile.java +++ b/src/main/java/nl/tudelft/queue/model/Profile.java @@ -22,6 +22,7 @@ import java.time.LocalDateTime; import jakarta.annotation.Nullable; import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/QueueEdition.java b/src/main/java/nl/tudelft/queue/model/QueueEdition.java index 475aaee28519ff9e50590f103663abff75854423..e85df8b60ea4e090e963ca7e5c81378f5bcff6db 100644 --- a/src/main/java/nl/tudelft/queue/model/QueueEdition.java +++ b/src/main/java/nl/tudelft/queue/model/QueueEdition.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model; import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/QueueSession.java b/src/main/java/nl/tudelft/queue/model/QueueSession.java index 5943ead6e0dcd571f9008ff350c68106a47fb875..0d03d3d6722dfb33853474bc1607a20c86d382cb 100644 --- a/src/main/java/nl/tudelft/queue/model/QueueSession.java +++ b/src/main/java/nl/tudelft/queue/model/QueueSession.java @@ -21,15 +21,16 @@ import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; +import jakarta.persistence.*; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; + import org.hibernate.annotations.Cascade; import org.hibernate.annotations.SQLDelete; import org.hibernate.annotations.Where; import org.hibernate.validator.constraints.UniqueElements; -import jakarta.persistence.*; -import jakarta.validation.constraints.NotEmpty; -import jakarta.validation.constraints.NotNull; -import jakarta.validation.constraints.Size; import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/model/Request.java b/src/main/java/nl/tudelft/queue/model/Request.java index 5b4f1a4fe9a2dabbd1ee74a1497432042e4d2f75..7b3a0869fc63e6203970d907e0e590d5c7ac85c1 100644 --- a/src/main/java/nl/tudelft/queue/model/Request.java +++ b/src/main/java/nl/tudelft/queue/model/Request.java @@ -20,14 +20,15 @@ package nl.tudelft.queue.model; import java.time.LocalDateTime; import java.util.List; +import jakarta.persistence.*; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; + import org.hibernate.annotations.SQLDelete; import org.hibernate.annotations.Where; import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; -import jakarta.validation.constraints.NotNull; -import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/RequestEvent.java b/src/main/java/nl/tudelft/queue/model/RequestEvent.java index 00d94057f952ea87ed74f8dac2b7ceb54d7090dc..d4c47ef2a9bca36223265cb2df7825acb91ff80c 100644 --- a/src/main/java/nl/tudelft/queue/model/RequestEvent.java +++ b/src/main/java/nl/tudelft/queue/model/RequestEvent.java @@ -21,6 +21,7 @@ import jakarta.persistence.Entity; import jakarta.persistence.Inheritance; import jakarta.persistence.InheritanceType; import jakarta.persistence.ManyToOne; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/SelectionRequest.java b/src/main/java/nl/tudelft/queue/model/SelectionRequest.java index 7e84bbf2b65692b2a67914c68050d97a865457d4..b28a04ca2d38f81c4d60960789c3a4f295bc6c05 100644 --- a/src/main/java/nl/tudelft/queue/model/SelectionRequest.java +++ b/src/main/java/nl/tudelft/queue/model/SelectionRequest.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.model; import jakarta.persistence.Entity; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/TimeSlot.java b/src/main/java/nl/tudelft/queue/model/TimeSlot.java index 1d745e1bed8ea6f0e8242d4c602e8f863e129a00..688bcadfa737044d503eb9481f46ee88581377b2 100644 --- a/src/main/java/nl/tudelft/queue/model/TimeSlot.java +++ b/src/main/java/nl/tudelft/queue/model/TimeSlot.java @@ -21,11 +21,12 @@ import java.time.LocalDateTime; import java.util.HashSet; import java.util.Set; -import com.fasterxml.jackson.annotation.JsonIgnore; - import jakarta.persistence.*; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + +import com.fasterxml.jackson.annotation.JsonIgnore; + import lombok.*; import nl.tudelft.queue.model.embeddables.Slot; import nl.tudelft.queue.model.enums.RequestStatus; diff --git a/src/main/java/nl/tudelft/queue/model/constraints/ClusterConstraint.java b/src/main/java/nl/tudelft/queue/model/constraints/ClusterConstraint.java index 8639d4458625d4024f7a80514e716d90b12013e1..a4dbfa1ab21f2e3004e6f87e996dfa106c4f0aac 100644 --- a/src/main/java/nl/tudelft/queue/model/constraints/ClusterConstraint.java +++ b/src/main/java/nl/tudelft/queue/model/constraints/ClusterConstraint.java @@ -24,6 +24,7 @@ import jakarta.persistence.ElementCollection; import jakarta.persistence.Entity; import jakarta.persistence.OneToOne; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/nl/tudelft/queue/model/constraints/ModuleDivisionConstraint.java b/src/main/java/nl/tudelft/queue/model/constraints/ModuleDivisionConstraint.java index 876ccdd1d8083683f2ccf6b3a1ed10e010b9edc4..c10fde6217e586e34bf848e316d5577aff2ca58c 100644 --- a/src/main/java/nl/tudelft/queue/model/constraints/ModuleDivisionConstraint.java +++ b/src/main/java/nl/tudelft/queue/model/constraints/ModuleDivisionConstraint.java @@ -24,6 +24,7 @@ import jakarta.persistence.ElementCollection; import jakarta.persistence.Entity; import jakarta.persistence.OneToOne; import jakarta.validation.constraints.NotNull; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.queue.dto.create.constraints.ModuleDivisionConstraintCreateDTO; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/AllowedRequest.java b/src/main/java/nl/tudelft/queue/model/embeddables/AllowedRequest.java index 49623f7fe4d46740ddddaa34efe0fc0134ac98f3..ad5b2279e559bdb73a0a22415a6d6caea629455e 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/AllowedRequest.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/AllowedRequest.java @@ -21,6 +21,7 @@ import jakarta.persistence.Embeddable; import jakarta.persistence.EnumType; import jakarta.persistence.Enumerated; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/CapacitySessionConfig.java b/src/main/java/nl/tudelft/queue/model/embeddables/CapacitySessionConfig.java index 58a30b1502b63e7f580ea641552fb99c7d289161..1f1f874f756d8764843116bbb0aae9585f9b1a6c 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/CapacitySessionConfig.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/CapacitySessionConfig.java @@ -19,10 +19,11 @@ package nl.tudelft.queue.model.embeddables; import java.time.LocalDateTime; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.persistence.Embeddable; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/DefaultSlides.java b/src/main/java/nl/tudelft/queue/model/embeddables/DefaultSlides.java index 183738539fc360f6bc2b462f32cf8e4dc76662b1..fa366a4aa6e0935a50ed1cf8848c53dc72299c05 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/DefaultSlides.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/DefaultSlides.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.model.embeddables; import jakarta.persistence.Embeddable; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/ExamLabConfig.java b/src/main/java/nl/tudelft/queue/model/embeddables/ExamLabConfig.java index 24acfb7a980a8d78ff28cf28b8fe2b70e7b8f4e4..dc8bcb3cc4515ac2868db098e47cb79582e32f6a 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/ExamLabConfig.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/ExamLabConfig.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model.embeddables; import jakarta.persistence.Embeddable; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/LabRequestConstraints.java b/src/main/java/nl/tudelft/queue/model/embeddables/LabRequestConstraints.java index 5183fb71852a4d00edbf2ae5c46e65345b11cbd3..2759f7052975e7911ecce7ac13daacb1b7fd8705 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/LabRequestConstraints.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/LabRequestConstraints.java @@ -24,6 +24,7 @@ import java.util.stream.Stream; import jakarta.persistence.CascadeType; import jakarta.persistence.Embeddable; import jakarta.persistence.OneToOne; + import lombok.*; import nl.tudelft.queue.model.LabRequestConstraint; import nl.tudelft.queue.model.QueueSession; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/RequestEventInfo.java b/src/main/java/nl/tudelft/queue/model/embeddables/RequestEventInfo.java index b0fa1c7a9d551ea07d7c9b26b6725e7141d89b13..916e827b66db40ea3bdb0ba4b50a497b6256d836 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/RequestEventInfo.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/RequestEventInfo.java @@ -26,6 +26,7 @@ import java.util.stream.Collectors; import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.queue.cqsr.Aggregate; import nl.tudelft.queue.model.RequestEvent; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/Slot.java b/src/main/java/nl/tudelft/queue/model/embeddables/Slot.java index 1bac3b39c82b78f49856eb19fafc192c0f85d243..de5d3efbec98598c9417c37ee1207251e91dd3f5 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/Slot.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/Slot.java @@ -23,10 +23,11 @@ import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.persistence.Embeddable; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/embeddables/SlottedLabConfig.java b/src/main/java/nl/tudelft/queue/model/embeddables/SlottedLabConfig.java index af0d6d80871541ad1de8b2dd9eb606d777192995..915c5b71c7d81267fef61941f8c953fd76b2be6f 100644 --- a/src/main/java/nl/tudelft/queue/model/embeddables/SlottedLabConfig.java +++ b/src/main/java/nl/tudelft/queue/model/embeddables/SlottedLabConfig.java @@ -19,13 +19,14 @@ package nl.tudelft.queue.model.embeddables; import java.time.LocalDateTime; -import org.springframework.format.annotation.DateTimeFormat; - import jakarta.persistence.Basic; import jakarta.persistence.Embeddable; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + +import org.springframework.format.annotation.DateTimeFormat; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestApprovedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestApprovedEvent.java index 2615944c4237d4152d4035b5a4882e199dc2bbf5..64fbfb1515566f49faf397cfd024b3e59ba4e97e 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestApprovedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestApprovedEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.APPROVED; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.RequestApprovedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestCreatedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestCreatedEvent.java index 4a433cd2f5a841c74c0d502977d64f61a15d4a88..034eb161d91ec1925fd88e5d69822dd846c3c405 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestCreatedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestCreatedEvent.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model.events; import static nl.tudelft.queue.model.enums.RequestStatus.PENDING; import jakarta.persistence.Entity; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.RequestCreatedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToAnyEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToAnyEvent.java index c922f957e62a71ffc684a507a803b5e3dc611e6d..75b24778a5cbde926d93354c1bf5272562c76581 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToAnyEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToAnyEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.FORWARDED; import jakarta.persistence.Entity; import jakarta.validation.constraints.Size; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToPersonEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToPersonEvent.java index d20ee10aaee25ee8824267d93e23dbe988ccdb53..cd527fd62135a0ecacd2cd41396dfb2fc4585171 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToPersonEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestForwardedToPersonEvent.java @@ -22,6 +22,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.FORWARDED; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestHandledEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestHandledEvent.java index be81de5c2e71ffa2dd37254154659208a573501e..7fa651ca0c4103f1214c1c24a2f1c69b8a36c48e 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestHandledEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestHandledEvent.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model.events; import jakarta.persistence.MappedSuperclass; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestNotPickedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestNotPickedEvent.java index 4cf00d8386feb8c8b446ff27aa24796c02e8e536..ce28ff10770ffd48e90a6388b9ee3c6220b0087d 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestNotPickedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestNotPickedEvent.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.model.events; import jakarta.persistence.Entity; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.RequestNotPickedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestNotSelectedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestNotSelectedEvent.java index 17e702d4bc1cf5f39a268147dd10ce9548a2b356..73dae1c15b05b45531a0b0120cb5388852aeaeb9 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestNotSelectedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestNotSelectedEvent.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.model.events; import jakarta.persistence.Entity; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.RequestNotSelectedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestPickedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestPickedEvent.java index 5533d6b534ff4a7d0799eb1ccbd50c7b38a55a5a..3324263e97bc7424f49f00ac26e2a9f88d212eaf 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestPickedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestPickedEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.PROCESSING; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestRejectedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestRejectedEvent.java index 1ddad69f993793f301f89a921269554361e42d04..0f71c78880ce1e91b224199855d2a39b9bfa5659 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestRejectedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestRejectedEvent.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model.events; import static nl.tudelft.queue.model.enums.RequestStatus.REJECTED; import jakarta.persistence.Entity; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestRevokedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestRevokedEvent.java index ab6e95c9851da73ed7f5674de20beb25673f217a..f2e109b36a32b8526e80d0fa3b7a8fdc934f730a 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestRevokedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestRevokedEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.REVOKED; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestSelectedEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestSelectedEvent.java index f881a7bcec2433564762d6554ba82e12e5928b02..87e26d44f5b7b111824818427c52d40b4bae1615 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestSelectedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestSelectedEvent.java @@ -18,6 +18,7 @@ package nl.tudelft.queue.model.events; import jakarta.persistence.Entity; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.RequestSelectedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/RequestTakenEvent.java b/src/main/java/nl/tudelft/queue/model/events/RequestTakenEvent.java index 207c704fdb44139b9e6fde8b1dd4bf60db5d1780..915c7c7fc81d4660f92e0a8fa95f072fe50d1341 100644 --- a/src/main/java/nl/tudelft/queue/model/events/RequestTakenEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/RequestTakenEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.PROCESSING; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/events/SelectionRequestRejectedEvent.java b/src/main/java/nl/tudelft/queue/model/events/SelectionRequestRejectedEvent.java index 10c9d06c8aa71ce5c64b6b2c2c8cd036aa3485d5..b2be44092e07ed2042e0339e207841e00bf5efd9 100644 --- a/src/main/java/nl/tudelft/queue/model/events/SelectionRequestRejectedEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/SelectionRequestRejectedEvent.java @@ -20,6 +20,7 @@ package nl.tudelft.queue.model.events; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + import lombok.NoArgsConstructor; import nl.tudelft.queue.dto.view.RequestEventViewDTO; import nl.tudelft.queue.dto.view.events.SelectionRequestRejectedEventViewDTO; diff --git a/src/main/java/nl/tudelft/queue/model/events/StudentNotFoundEvent.java b/src/main/java/nl/tudelft/queue/model/events/StudentNotFoundEvent.java index 410890721bb5e01af91557044ac37c3caa178059..2829b0b8fba9ef2a19a35bcd5685b40c9f901b68 100644 --- a/src/main/java/nl/tudelft/queue/model/events/StudentNotFoundEvent.java +++ b/src/main/java/nl/tudelft/queue/model/events/StudentNotFoundEvent.java @@ -21,6 +21,7 @@ import static nl.tudelft.queue.model.enums.RequestStatus.NOTFOUND; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/labs/AbstractSlottedLab.java b/src/main/java/nl/tudelft/queue/model/labs/AbstractSlottedLab.java index 82dd24bf48298b9ba9c5744768afa1ad28a92e05..c043a159e01619099390658a137080b0266ac1e8 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/AbstractSlottedLab.java +++ b/src/main/java/nl/tudelft/queue/model/labs/AbstractSlottedLab.java @@ -26,6 +26,7 @@ import jakarta.persistence.Embedded; import jakarta.persistence.MappedSuperclass; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.queue.model.LabRequest; diff --git a/src/main/java/nl/tudelft/queue/model/labs/CapacitySession.java b/src/main/java/nl/tudelft/queue/model/labs/CapacitySession.java index f28aee0c18ee15d4915f09c604bd4e29d282976e..363676e94ba38ec03355d943fd8dce46229918e5 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/CapacitySession.java +++ b/src/main/java/nl/tudelft/queue/model/labs/CapacitySession.java @@ -26,6 +26,7 @@ import jakarta.persistence.DiscriminatorValue; import jakarta.persistence.Embedded; import jakarta.persistence.Entity; import jakarta.validation.constraints.NotNull; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.RoomDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/model/labs/ExamLab.java b/src/main/java/nl/tudelft/queue/model/labs/ExamLab.java index c85c85918a63b577bbd6e75b66763ff1481ba0db..4d3f18b841900fcc94f54df86f5f9ca9f612522a 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/ExamLab.java +++ b/src/main/java/nl/tudelft/queue/model/labs/ExamLab.java @@ -24,6 +24,7 @@ import java.util.Set; import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/model/labs/Lab.java b/src/main/java/nl/tudelft/queue/model/labs/Lab.java index d5be18fd5d41dcc9ec976fbe5abf5001b0b8c484..f359921f5e1ff941548aa6fb600e0fc23b180f4f 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/Lab.java +++ b/src/main/java/nl/tudelft/queue/model/labs/Lab.java @@ -21,13 +21,14 @@ import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; -import org.hibernate.validator.constraints.UniqueElements; - import jakarta.persistence.*; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; + +import org.hibernate.validator.constraints.UniqueElements; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.queue.model.LabRequest; diff --git a/src/main/java/nl/tudelft/queue/model/labs/RegularLab.java b/src/main/java/nl/tudelft/queue/model/labs/RegularLab.java index a372942a9fa3d5974d3362358f9ff728ffaca06e..a089c9ae4b7f5a0c94e7fe17d6e8e02a163b72f2 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/RegularLab.java +++ b/src/main/java/nl/tudelft/queue/model/labs/RegularLab.java @@ -19,6 +19,7 @@ package nl.tudelft.queue.model.labs; import jakarta.persistence.DiscriminatorValue; import jakarta.persistence.Entity; + import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; diff --git a/src/main/java/nl/tudelft/queue/model/labs/SlottedLab.java b/src/main/java/nl/tudelft/queue/model/labs/SlottedLab.java index 871531fd6c117724425b7ecb03a84b29af653095..29744ecdb144d9a15f8e9a7de48cd440b45ed0cb 100644 --- a/src/main/java/nl/tudelft/queue/model/labs/SlottedLab.java +++ b/src/main/java/nl/tudelft/queue/model/labs/SlottedLab.java @@ -21,6 +21,7 @@ import java.util.ArrayList; import java.util.List; import jakarta.persistence.*; + import lombok.*; import lombok.experimental.SuperBuilder; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/model/misc/Announcement.java b/src/main/java/nl/tudelft/queue/model/misc/Announcement.java index 3474268c20eef16c49061116167499a76a80976c..871b2f3aa319af26e9700a7fa472511235bac47b 100644 --- a/src/main/java/nl/tudelft/queue/model/misc/Announcement.java +++ b/src/main/java/nl/tudelft/queue/model/misc/Announcement.java @@ -24,6 +24,7 @@ import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/misc/CustomSlide.java b/src/main/java/nl/tudelft/queue/model/misc/CustomSlide.java index 727d51cc4789fd02147ee3fe06590e971d803ff3..d4f05eb15e0038443cd22351242f3abc3d36be92 100644 --- a/src/main/java/nl/tudelft/queue/model/misc/CustomSlide.java +++ b/src/main/java/nl/tudelft/queue/model/misc/CustomSlide.java @@ -21,6 +21,7 @@ import jakarta.persistence.*; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/model/misc/Presentation.java b/src/main/java/nl/tudelft/queue/model/misc/Presentation.java index d58d046158ababe08f1a5cff42f4b374621cbce8..4638e8f3eee7d8ac0ffb2accae4b97245ee67531 100644 --- a/src/main/java/nl/tudelft/queue/model/misc/Presentation.java +++ b/src/main/java/nl/tudelft/queue/model/misc/Presentation.java @@ -22,6 +22,7 @@ import java.util.List; import jakarta.persistence.*; import jakarta.validation.constraints.NotNull; + import lombok.*; import nl.tudelft.queue.model.embeddables.DefaultSlides; import nl.tudelft.queue.model.labs.Lab; diff --git a/src/main/java/nl/tudelft/queue/properties/PushProperties.java b/src/main/java/nl/tudelft/queue/properties/PushProperties.java index 49299dc3bfdbdfcdc1a90dce865b0f8fd7c19c58..9fc419e9a65fce00ab364ca200f1564aefe05992 100644 --- a/src/main/java/nl/tudelft/queue/properties/PushProperties.java +++ b/src/main/java/nl/tudelft/queue/properties/PushProperties.java @@ -17,9 +17,10 @@ */ package nl.tudelft.queue.properties; +import jakarta.validation.constraints.Max; + import org.springframework.boot.context.properties.ConfigurationProperties; -import jakarta.validation.constraints.Max; import lombok.Data; @Data diff --git a/src/main/java/nl/tudelft/queue/properties/QueueProperties.java b/src/main/java/nl/tudelft/queue/properties/QueueProperties.java index af6aab707a00516566a3b22157281104b53549ac..680af890df231ab8f5a7c5403d7a94dbb0ce91e3 100644 --- a/src/main/java/nl/tudelft/queue/properties/QueueProperties.java +++ b/src/main/java/nl/tudelft/queue/properties/QueueProperties.java @@ -17,9 +17,10 @@ */ package nl.tudelft.queue.properties; +import jakarta.validation.constraints.NotNull; + import org.springframework.boot.context.properties.ConfigurationProperties; -import jakarta.validation.constraints.NotNull; import lombok.Data; @Data diff --git a/src/main/java/nl/tudelft/queue/realtime/Subscription.java b/src/main/java/nl/tudelft/queue/realtime/Subscription.java index ab5aef99a291aac96de6fde6d2c5b9124054ede0..cc87446662625a67d1ba0c40d532c19a6944cdce 100644 --- a/src/main/java/nl/tudelft/queue/realtime/Subscription.java +++ b/src/main/java/nl/tudelft/queue/realtime/Subscription.java @@ -21,6 +21,7 @@ import java.io.Serializable; import java.time.LocalDateTime; import jakarta.validation.constraints.NotNull; + import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/src/main/java/nl/tudelft/queue/security/DevUserDetailsProvider.java b/src/main/java/nl/tudelft/queue/security/DevUserDetailsProvider.java index cd5bb366ad8bde8f16e27c66146b8e240d02e373..e0d34465931fac8aa3806d3932374683e91bd654 100644 --- a/src/main/java/nl/tudelft/queue/security/DevUserDetailsProvider.java +++ b/src/main/java/nl/tudelft/queue/security/DevUserDetailsProvider.java @@ -17,6 +17,8 @@ */ package nl.tudelft.queue.security; +import jakarta.transaction.Transactional; + import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Profile; @@ -24,7 +26,6 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.lib.security.memory.InMemoryUserProvider; import nl.tudelft.labracore.lib.security.user.Person; diff --git a/src/main/java/nl/tudelft/queue/service/CapacitySessionService.java b/src/main/java/nl/tudelft/queue/service/CapacitySessionService.java index 8851c8ee2f2b5c922606f152abdebb74f3ba1900..d2b053733da709e08f3c14bf24b07b765bbef69c 100644 --- a/src/main/java/nl/tudelft/queue/service/CapacitySessionService.java +++ b/src/main/java/nl/tudelft/queue/service/CapacitySessionService.java @@ -22,6 +22,8 @@ import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -29,7 +31,6 @@ import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.SessionControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.RolePersonLayer1DTO; diff --git a/src/main/java/nl/tudelft/queue/service/CodeOfConductService.java b/src/main/java/nl/tudelft/queue/service/CodeOfConductService.java index c91e2ce51ec538bf88d36ce63cfec180808ea2ca..3ef77b7445b3d91e74e84cdf25dba4183f53f7f4 100644 --- a/src/main/java/nl/tudelft/queue/service/CodeOfConductService.java +++ b/src/main/java/nl/tudelft/queue/service/CodeOfConductService.java @@ -22,11 +22,12 @@ import java.net.URL; import java.time.LocalDateTime; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import lombok.AllArgsConstructor; import nl.tudelft.labracore.lib.security.user.Person; import nl.tudelft.queue.dto.view.CodeOfConductDTO; diff --git a/src/main/java/nl/tudelft/queue/service/CourseService.java b/src/main/java/nl/tudelft/queue/service/CourseService.java new file mode 100644 index 0000000000000000000000000000000000000000..c5db78e60f2ecfa0c940e3bb05c2b7fc2c985c6c --- /dev/null +++ b/src/main/java/nl/tudelft/queue/service/CourseService.java @@ -0,0 +1,40 @@ +/* + * Queue - A Queueing system that can be used to handle labs in higher education + * Copyright (C) 2016-2024 Delft University of Technology + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <https://www.gnu.org/licenses/>. + */ +package nl.tudelft.queue.service; + +import org.springframework.stereotype.Service; + +import lombok.RequiredArgsConstructor; +import nl.tudelft.labracore.api.CourseControllerApi; +import nl.tudelft.labracore.api.dto.CourseWithManagerCreateDTO; + +@Service +@RequiredArgsConstructor +public class CourseService { + + private final CourseControllerApi courseApi; + + /** + * Tell labracore to add manager in dto to the course or setup a new course if it doesn't exist. + * + * @param dto The dto with all the infor about the course. + */ + public void setupCourseWithManagerLabracore(CourseWithManagerCreateDTO dto) { + courseApi.setupCourseWithManager(dto).block(); + } +} diff --git a/src/main/java/nl/tudelft/queue/service/EditionService.java b/src/main/java/nl/tudelft/queue/service/EditionService.java index 44a63db7eaaf5320094b29e2a839ccda785e911c..390e8bbf37d2423ac84fdf5d5197a5849cc9070c 100644 --- a/src/main/java/nl/tudelft/queue/service/EditionService.java +++ b/src/main/java/nl/tudelft/queue/service/EditionService.java @@ -29,6 +29,10 @@ import java.util.stream.Stream; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpSession; +import jakarta.transaction.Transactional; + import org.apache.commons.lang3.StringUtils; import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; @@ -38,9 +42,6 @@ import org.springframework.stereotype.Service; import org.springframework.util.StreamUtils; import org.springframework.web.multipart.MultipartFile; -import jakarta.servlet.http.HttpServletResponse; -import jakarta.servlet.http.HttpSession; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.RoleControllerApi; diff --git a/src/main/java/nl/tudelft/queue/service/EditionStatusService.java b/src/main/java/nl/tudelft/queue/service/EditionStatusService.java index 9bc1f6ef0866cc7ade0e45a4b01a174dbd1c04af..db79b007d9e0c12b5f2240fe0f78680e1e7b2fd9 100644 --- a/src/main/java/nl/tudelft/queue/service/EditionStatusService.java +++ b/src/main/java/nl/tudelft/queue/service/EditionStatusService.java @@ -27,10 +27,11 @@ import java.util.function.Predicate; import java.util.stream.Collectors; import java.util.stream.Stream; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import lombok.RequiredArgsConstructor; import nl.tudelft.labracore.api.dto.AssignmentDetailsDTO; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; diff --git a/src/main/java/nl/tudelft/queue/service/FeedbackService.java b/src/main/java/nl/tudelft/queue/service/FeedbackService.java index 8f6ee59e7e0a5c4626cd5383746541ded1b2908b..737c19641148d43ee6c4c4f024532886d86f8b43 100644 --- a/src/main/java/nl/tudelft/queue/service/FeedbackService.java +++ b/src/main/java/nl/tudelft/queue/service/FeedbackService.java @@ -27,14 +27,15 @@ import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; +import jakarta.validation.ValidationException; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import com.beust.jcommander.Strings; -import jakarta.transaction.Transactional; -import jakarta.validation.ValidationException; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; import nl.tudelft.labracore.api.dto.RolePersonLayer1DTO; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/service/LabService.java b/src/main/java/nl/tudelft/queue/service/LabService.java index b5c10313245c8b01e98dee130c10762e1948cea9..4be5042ac7335906f3813954266777c768ea926f 100644 --- a/src/main/java/nl/tudelft/queue/service/LabService.java +++ b/src/main/java/nl/tudelft/queue/service/LabService.java @@ -25,6 +25,8 @@ import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.Resource; import org.springframework.stereotype.Service; @@ -32,7 +34,6 @@ import org.springframework.ui.Model; import org.springframework.util.CollectionUtils; import org.springframework.web.multipart.MultipartFile; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.ModuleControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; diff --git a/src/main/java/nl/tudelft/queue/service/ReportService.java b/src/main/java/nl/tudelft/queue/service/ReportService.java index 094f8def0e28990663cfbb8ecb73c0edf15e4af8..e7506445b8e7e8a59522369cdaa3ecb598592107 100644 --- a/src/main/java/nl/tudelft/queue/service/ReportService.java +++ b/src/main/java/nl/tudelft/queue/service/ReportService.java @@ -19,10 +19,11 @@ package nl.tudelft.queue.service; import java.util.List; +import jakarta.persistence.EntityNotFoundException; + import org.springframework.stereotype.Service; import org.springframework.ui.Model; -import jakarta.persistence.EntityNotFoundException; import lombok.AllArgsConstructor; import nl.tudelft.labracore.api.ProgramControllerApi; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; diff --git a/src/main/java/nl/tudelft/queue/service/RequestService.java b/src/main/java/nl/tudelft/queue/service/RequestService.java index 1b7cf5340c24f619637403c446a7f77eaed3ec01..f7e5fcd5a7557b32900f979fbae7bb9292e89d9a 100644 --- a/src/main/java/nl/tudelft/queue/service/RequestService.java +++ b/src/main/java/nl/tudelft/queue/service/RequestService.java @@ -23,12 +23,13 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.locks.ReentrantLock; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.security.access.AccessDeniedException; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.ModuleControllerApi; import nl.tudelft.labracore.api.QuestionControllerApi; diff --git a/src/main/java/nl/tudelft/queue/service/RequestTableService.java b/src/main/java/nl/tudelft/queue/service/RequestTableService.java index 26cccea2695012f9666ecf122c1cc73c8995198b..9dcdf40dc1d33cf44c5fb590738965ed7b842681 100644 --- a/src/main/java/nl/tudelft/queue/service/RequestTableService.java +++ b/src/main/java/nl/tudelft/queue/service/RequestTableService.java @@ -25,6 +25,9 @@ import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; +import jakarta.servlet.http.HttpSession; +import jakarta.transaction.Transactional; + import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; @@ -34,8 +37,6 @@ import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.ui.Model; -import jakarta.servlet.http.HttpSession; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.SessionControllerApi; diff --git a/src/main/java/nl/tudelft/queue/service/SessionService.java b/src/main/java/nl/tudelft/queue/service/SessionService.java index 83d4f4062be3e019e7104fb342bd2b42180af9fb..1cf3849cb3b4c0442e610c92e9dce2e6689e0f47 100644 --- a/src/main/java/nl/tudelft/queue/service/SessionService.java +++ b/src/main/java/nl/tudelft/queue/service/SessionService.java @@ -19,9 +19,10 @@ package nl.tudelft.queue.service; import java.util.*; +import jakarta.transaction.Transactional; + import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import lombok.AllArgsConstructor; import nl.tudelft.labracore.api.dto.RoomDetailsDTO; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; diff --git a/src/main/java/nl/tudelft/queue/service/TimeSlotService.java b/src/main/java/nl/tudelft/queue/service/TimeSlotService.java index aaa8e4a6597fbe987a0a95752556472b777c348e..a019a15fd4e429da88cd6937358499953ba1e8cf 100644 --- a/src/main/java/nl/tudelft/queue/service/TimeSlotService.java +++ b/src/main/java/nl/tudelft/queue/service/TimeSlotService.java @@ -22,12 +22,13 @@ import java.time.temporal.ChronoUnit; import java.util.Comparator; import java.util.List; +import jakarta.transaction.Transactional; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.sql.init.dependency.DependsOnDatabaseInitialization; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.SessionControllerApi; import nl.tudelft.labracore.api.dto.SessionDetailsDTO; import nl.tudelft.labracore.api.dto.SessionPatchDTO; diff --git a/src/main/java/nl/tudelft/queue/service/TuDelftApiService.java b/src/main/java/nl/tudelft/queue/service/TuDelftApiService.java new file mode 100644 index 0000000000000000000000000000000000000000..d30ec264480d026311b2c1c5adc3c3193f8b374a --- /dev/null +++ b/src/main/java/nl/tudelft/queue/service/TuDelftApiService.java @@ -0,0 +1,44 @@ +/* + * Queue - A Queueing system that can be used to handle labs in higher education + * Copyright (C) 2016-2024 Delft University of Technology + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <https://www.gnu.org/licenses/>. + */ +package nl.tudelft.queue.service; + +import java.util.List; + +import org.springframework.stereotype.Service; + +import lombok.RequiredArgsConstructor; +import nl.tudelft.api.TuInstructorControllerApi; +import nl.tudelft.api.dto.CourseViewApiDTO; +import nl.tudelft.labracore.lib.security.user.Person; + +@Service +@RequiredArgsConstructor +public class TuDelftApiService { + + private final TuInstructorControllerApi instructorApi; + + /** + * Fetches courses for an instructor from studiegids using their email. + * + * @param person The person to look up the taught courses for. + * @return The courses they are an instructor for. + */ + public List<CourseViewApiDTO> getCoursesForInstructor(Person person) { + return instructorApi.getCoursesTaughtBy(person.getEmail()).collectList().block(); + } +} diff --git a/src/main/java/nl/tudelft/queue/startup/RequestRepairStartupService.java b/src/main/java/nl/tudelft/queue/startup/RequestRepairStartupService.java index 5970744c33de6f56286d92f588bd11af86968c05..a30693f84d26a06040e93db76f3b5651a5ada2d2 100644 --- a/src/main/java/nl/tudelft/queue/startup/RequestRepairStartupService.java +++ b/src/main/java/nl/tudelft/queue/startup/RequestRepairStartupService.java @@ -17,6 +17,8 @@ */ package nl.tudelft.queue.startup; +import jakarta.transaction.Transactional; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -25,7 +27,6 @@ import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.queue.model.QueueSession; import nl.tudelft.queue.model.Request; import nl.tudelft.queue.repository.QueueSessionRepository; diff --git a/src/main/java/nl/tudelft/queue/startup/UnhideEditionsService.java b/src/main/java/nl/tudelft/queue/startup/UnhideEditionsService.java index 51e9037ed72255194bf06559f4743451d576b92a..9bd30a6a7f48e66a3952db82f2e8c4f22394c7f0 100644 --- a/src/main/java/nl/tudelft/queue/startup/UnhideEditionsService.java +++ b/src/main/java/nl/tudelft/queue/startup/UnhideEditionsService.java @@ -17,6 +17,8 @@ */ package nl.tudelft.queue.startup; +import jakarta.transaction.Transactional; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -25,7 +27,6 @@ import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Service; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.CourseControllerApi; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.ProgramControllerApi; diff --git a/src/main/resources/templates/course/my-courses.html b/src/main/resources/templates/course/my-courses.html new file mode 100644 index 0000000000000000000000000000000000000000..0342c038827e344abbaf4e5946c57442fc3a51a7 --- /dev/null +++ b/src/main/resources/templates/course/my-courses.html @@ -0,0 +1,82 @@ +<!-- + + Queue - A Queueing system that can be used to handle labs in higher education + Copyright (C) 2016-2024 Delft University of Technology + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + +--> + +<!--@thymesVar id="courses" type="java.util.ArrayList<nl.tudelft.api.dto.CourseViewDTO>"--> + +<!DOCTYPE html> +<html lang="en" xmlns:th="http://www.thymeleaf.org" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorate="~{container}"> + <head> + <title>My Courses</title> + </head> + + <body> + <main layout:fragment="content"> + <h1 class="font-800 mb-5">My Courses</h1> + <p class="mb-3" th:if="${#lists.isEmpty(courses)}"> + We did not manage to find any new courses in studiegids for you. If you believe this is a mistake, + <a class="link" th:href="@{/editions/request-course}">request a course here</a> + </p> + <div class="flex vertical" th:unless="${#lists.isEmpty(courses)}"> + <p class="mb-3"> + We identified you as a teacher for the following courses. Click on manage to become a manager of any of these courses. This will + allow you to create new editions + <a class="link" th:href="@{/edition/add}">here</a> + . + </p> + <form + th:each="course: ${courses}" + method="post" + th:object="${create}" + th:action="@{/course/create}" + th:id="${course.name}+'_form'"></form> + <table class="table" data-style="surface"> + <thead> + <tr class="table__header"> + <th>Course Code</th> + <th>Course name</th> + <th></th> + </tr> + </thead> + <tbody> + <tr th:each="course: ${courses}"> + <td> + <input type="text" name="code" th:value="${course.code}" th:form="${course.name}+'_form'" hidden /> + <p th:text="${course.code}"></p> + </td> + <td th:unless="${course.name == null}"> + <input + type="text" + name="name" + th:value="${course.name}" + placeholder="Add course name" + th:form="${course.name}+'_form'" + th:hidden="${course.name != null}" /> + <p th:text="${course.name}" th:if="${course.name != null}"></p> + </td> + <td class="flex justify-end"> + <button class="button p-min" th:form="${course.name}+'_form'">Manage course</button> + </td> + </tr> + </tbody> + </table> + </div> + </main> + </body> +</html> diff --git a/src/main/resources/templates/edition/create.html b/src/main/resources/templates/edition/create.html index d9d75252dc5ed5cfa775b886f9aa8694a5beb598..9613c470485ee93af102364f18733921806d9596 100644 --- a/src/main/resources/templates/edition/create.html +++ b/src/main/resources/templates/edition/create.html @@ -37,15 +37,14 @@ <p class="mb-3" th:if="${#lists.isEmpty(courses)}"> You are not the manager of any course, please - <a class="link" th:href="@{/editions/request-course}">request a course first</a> + <a class="link" th:href="@{/course/my-courses}">find your course here</a> . </p> <p class="mb-3" th:unless="${#lists.isEmpty(courses)}"> Select the course under which you want to create a course edition. If your course is not in the list, or has a different code, please - <a class="link" th:href="@{/editions/request-course}">request a course first</a> - . + <a class="link" th:href="@{/course/my-courses}">find your course here</a> </p> <div class="flex gap-3 align-center mb-5"> diff --git a/src/test/java/dummy/DummyEntity.java b/src/test/java/dummy/DummyEntity.java index 9844a9d1ad2169236ccaa33863ba183136be46de..c37d248e958a6dcce2dd0bd47ed1bb7ce458c20d 100644 --- a/src/test/java/dummy/DummyEntity.java +++ b/src/test/java/dummy/DummyEntity.java @@ -20,6 +20,7 @@ package dummy; import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; + import lombok.Data; @Data diff --git a/src/test/java/nl/tudelft/queue/controller/AdminControllerTest.java b/src/test/java/nl/tudelft/queue/controller/AdminControllerTest.java index 17d27e5340eed82a45fb77ba664032beb981b4bc..2aad9fd63b2819a744900ec045f427d2c68408cf 100644 --- a/src/test/java/nl/tudelft/queue/controller/AdminControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/AdminControllerTest.java @@ -24,6 +24,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.Comparator; import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -33,7 +35,6 @@ import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.dto.EditionDetailsDTO; import nl.tudelft.labracore.api.dto.RoomDetailsDTO; diff --git a/src/test/java/nl/tudelft/queue/controller/AnnouncementControllerTest.java b/src/test/java/nl/tudelft/queue/controller/AnnouncementControllerTest.java index 2235e00683d507308aa2c8a5f9820c5bc7788067..a57b5986ebcb7637d4804fb0b3e6c3d14bde8446 100644 --- a/src/test/java/nl/tudelft/queue/controller/AnnouncementControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/AnnouncementControllerTest.java @@ -28,6 +28,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.time.LocalDateTime; import java.util.List; +import jakarta.transaction.Transactional; + import org.hamcrest.core.IsNot; import org.hamcrest.core.StringContains; import org.junit.jupiter.api.BeforeEach; @@ -41,7 +43,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AuthorizationControllerApi; import nl.tudelft.queue.model.misc.Announcement; import nl.tudelft.queue.repository.AnnouncementRepository; diff --git a/src/test/java/nl/tudelft/queue/controller/AssignmentControllerTest.java b/src/test/java/nl/tudelft/queue/controller/AssignmentControllerTest.java index 0771e45ce6829564e5163be47404117ec86f7ca2..feaddf34ac8827a084fd34eef14c61e4294dc1cd 100644 --- a/src/test/java/nl/tudelft/queue/controller/AssignmentControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/AssignmentControllerTest.java @@ -28,6 +28,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.time.LocalDateTime; import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -39,7 +41,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.dto.*; import reactor.core.publisher.Mono; diff --git a/src/test/java/nl/tudelft/queue/controller/AuthControllerTest.java b/src/test/java/nl/tudelft/queue/controller/AuthControllerTest.java index bd18046546a8e8830a100863b2a2a7e16032fcb8..56f8c3714612a999a5410649ee969f1e09fc0b74 100644 --- a/src/test/java/nl/tudelft/queue/controller/AuthControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/AuthControllerTest.java @@ -20,13 +20,14 @@ package nl.tudelft.queue.controller; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.web.servlet.MockMvc; -import jakarta.transaction.Transactional; import test.test.TestQueueApplication; @Transactional diff --git a/src/test/java/nl/tudelft/queue/controller/EditionControllerTest.java b/src/test/java/nl/tudelft/queue/controller/EditionControllerTest.java index a02343be5c6a24c6542ca01d3ccc6ee0bc41ac5b..4e92f3cbfe8867d4bb1ede1109e09e719c20ffe1 100644 --- a/src/test/java/nl/tudelft/queue/controller/EditionControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/EditionControllerTest.java @@ -29,6 +29,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.List; +import jakarta.transaction.Transactional; + import org.hamcrest.Matchers; import org.hamcrest.core.StringContains; import org.junit.jupiter.api.BeforeEach; @@ -46,7 +48,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.RoleControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/test/java/nl/tudelft/queue/controller/EditionStatusControllerTest.java b/src/test/java/nl/tudelft/queue/controller/EditionStatusControllerTest.java index eb915d707b38dd2f3058e0a9f26f260208c967a4..1c672a3255734d05ccb5eca098df9c8587b62599 100644 --- a/src/test/java/nl/tudelft/queue/controller/EditionStatusControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/EditionStatusControllerTest.java @@ -27,6 +27,8 @@ import static test.JsonContentMatcher.jsonContent; import java.util.List; import java.util.TreeMap; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -40,7 +42,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.dto.EditionDetailsDTO; import nl.tudelft.queue.dto.view.statistics.RequestFrequencyViewDto; import test.TestDatabaseLoader; diff --git a/src/test/java/nl/tudelft/queue/controller/FeedbackControllerTest.java b/src/test/java/nl/tudelft/queue/controller/FeedbackControllerTest.java index 09b99d890b6031b9e02a1e59146af03b1bc4ce99..6bff12f56f8876148b27b2eeb77ca605bbe0215a 100644 --- a/src/test/java/nl/tudelft/queue/controller/FeedbackControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/FeedbackControllerTest.java @@ -31,6 +31,8 @@ import java.time.LocalDateTime; import java.util.List; import java.util.Objects; +import jakarta.transaction.Transactional; + import org.hamcrest.BaseMatcher; import org.hamcrest.Description; import org.hamcrest.Matcher; @@ -44,7 +46,6 @@ import org.springframework.data.domain.Page; import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; -import jakarta.transaction.Transactional; import lombok.SneakyThrows; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; diff --git a/src/test/java/nl/tudelft/queue/controller/HistoryControllerTest.java b/src/test/java/nl/tudelft/queue/controller/HistoryControllerTest.java index d38394413d15aa2d7a41786c691d4f2512b3089b..11bfcfe988dc094c094a73116c345f6023cbe398 100644 --- a/src/test/java/nl/tudelft/queue/controller/HistoryControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/HistoryControllerTest.java @@ -27,6 +27,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -40,7 +42,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/test/java/nl/tudelft/queue/controller/HomeControllerTest.java b/src/test/java/nl/tudelft/queue/controller/HomeControllerTest.java index 22f3a06e3daada449b40e807da42d6f79fd59b94..48b5938d46feb9b5cd1cedcc83c9d3e8d458729c 100644 --- a/src/test/java/nl/tudelft/queue/controller/HomeControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/HomeControllerTest.java @@ -29,6 +29,8 @@ import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.hamcrest.BaseMatcher; import org.hamcrest.Description; import org.hamcrest.Matcher; @@ -45,7 +47,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; -import jakarta.transaction.Transactional; import lombok.SneakyThrows; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; diff --git a/src/test/java/nl/tudelft/queue/controller/LabControllerTest.java b/src/test/java/nl/tudelft/queue/controller/LabControllerTest.java index 74077bbbfda4aafbfbb28671945c7c8efdf9e6b6..c45de6a5e236550d14cb64c00a465a30688102c8 100644 --- a/src/test/java/nl/tudelft/queue/controller/LabControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/LabControllerTest.java @@ -28,6 +28,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.Arrays; import java.util.List; +import jakarta.transaction.Transactional; + import org.hamcrest.Matchers; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -46,7 +48,6 @@ import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilde import com.fasterxml.jackson.databind.ObjectMapper; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.SessionControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/test/java/nl/tudelft/queue/controller/LabRequestControllerTest.java b/src/test/java/nl/tudelft/queue/controller/LabRequestControllerTest.java index 66f646e097732be51f70d1c75d459537f86c7c43..d2516ca37255230d20a23eb6d7b842aad7b66349 100644 --- a/src/test/java/nl/tudelft/queue/controller/LabRequestControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/LabRequestControllerTest.java @@ -28,6 +28,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.*; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -44,7 +46,6 @@ import org.springframework.test.web.servlet.MvcResult; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; import org.springframework.ui.Model; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.ModuleControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/test/java/nl/tudelft/queue/controller/MailControllerTest.java b/src/test/java/nl/tudelft/queue/controller/MailControllerTest.java index e90ff44a8893f07c7af26750f59d98b1e6442ea8..959764a6954bbaf829c3468dc70847ce7aad463a 100644 --- a/src/test/java/nl/tudelft/queue/controller/MailControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/MailControllerTest.java @@ -26,6 +26,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.MethodSource; @@ -37,7 +39,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.queue.dto.create.CourseRequestCreateDTO; import nl.tudelft.queue.service.mail.MailServiceProdImpl; import test.test.TestQueueApplication; diff --git a/src/test/java/nl/tudelft/queue/controller/ModuleControllerTest.java b/src/test/java/nl/tudelft/queue/controller/ModuleControllerTest.java index fdc393404bf386dc4da2e58e37c057c5d3843c3b..d856f0412ac4011d7206c7df590c23bb6ad98a9d 100644 --- a/src/test/java/nl/tudelft/queue/controller/ModuleControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/ModuleControllerTest.java @@ -28,6 +28,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -39,7 +41,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.ModuleControllerApi; import nl.tudelft.labracore.api.dto.*; import reactor.core.publisher.Mono; diff --git a/src/test/java/nl/tudelft/queue/controller/ProfileControllerTest.java b/src/test/java/nl/tudelft/queue/controller/ProfileControllerTest.java index 4dd113fc625fe7d543b82ea7196d2b93b370a640..1b0c81db218611845035f51b38912cb108d8fa74 100644 --- a/src/test/java/nl/tudelft/queue/controller/ProfileControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/ProfileControllerTest.java @@ -25,6 +25,8 @@ import static org.springframework.test.web.servlet.request.MockMvcRequestBuilder import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; +import jakarta.transaction.Transactional; + import org.hamcrest.CoreMatchers; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -35,7 +37,6 @@ import org.springframework.http.MediaType; import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; import nl.tudelft.librador.dto.DTOConverter; import nl.tudelft.queue.model.enums.Language; diff --git a/src/test/java/nl/tudelft/queue/controller/RequestFilterControllerTest.java b/src/test/java/nl/tudelft/queue/controller/RequestFilterControllerTest.java index 520505b4e4a6fb69756624a1a7973bc91d08552b..de76a75cc0624db206dcb0b668ef4baa5b6500f0 100644 --- a/src/test/java/nl/tudelft/queue/controller/RequestFilterControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/RequestFilterControllerTest.java @@ -27,6 +27,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.MethodSource; @@ -39,7 +41,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.queue.dto.util.RequestTableFilterDTO; import nl.tudelft.queue.service.RequestTableService; import test.test.TestQueueApplication; diff --git a/src/test/java/nl/tudelft/queue/controller/SessionStatusControllerTest.java b/src/test/java/nl/tudelft/queue/controller/SessionStatusControllerTest.java index 79b662981ce1aeed284779e74fbb7371e85e7d3e..853d3d6d96c9878135811ef2c583b7c0fc864255 100644 --- a/src/test/java/nl/tudelft/queue/controller/SessionStatusControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/SessionStatusControllerTest.java @@ -25,6 +25,8 @@ import static test.JsonContentMatcher.jsonContent; import java.util.List; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; @@ -37,7 +39,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.queue.dto.view.statistics.AssistantSessionStatisticsViewDto; import nl.tudelft.queue.dto.view.statistics.session.GeneralSessionStatisticsViewDto; import nl.tudelft.queue.model.labs.RegularLab; diff --git a/src/test/java/nl/tudelft/queue/controller/SharedEditionControllerTest.java b/src/test/java/nl/tudelft/queue/controller/SharedEditionControllerTest.java index e080847367a188b6e7746654b28e81489321f72e..442ff044f78e8f6025d23299457b05e77fd4589e 100644 --- a/src/test/java/nl/tudelft/queue/controller/SharedEditionControllerTest.java +++ b/src/test/java/nl/tudelft/queue/controller/SharedEditionControllerTest.java @@ -27,6 +27,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.Arrays; import java.util.List; +import jakarta.transaction.Transactional; + import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; @@ -42,7 +44,6 @@ import org.springframework.security.test.context.support.WithUserDetails; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.RoleControllerApi; import nl.tudelft.labracore.api.dto.EditionCollectionDetailsDTO; import nl.tudelft.labracore.api.dto.EditionDetailsDTO; diff --git a/src/test/java/nl/tudelft/queue/dto/create/CreateTest.java b/src/test/java/nl/tudelft/queue/dto/create/CreateTest.java index 70d5ff303bc68cd0343fd35ab7615fc626c237be..79ba65fe6a0816dd6b7b7e1dac9982c85a7f836f 100644 --- a/src/test/java/nl/tudelft/queue/dto/create/CreateTest.java +++ b/src/test/java/nl/tudelft/queue/dto/create/CreateTest.java @@ -25,6 +25,8 @@ import java.util.List; import java.util.function.Function; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.junit.jupiter.params.ParameterizedTest; @@ -35,7 +37,6 @@ import org.springframework.boot.test.context.SpringBootTest; import dummy.DummyEntity; import dummy.DummyIdDTO; -import jakarta.transaction.Transactional; import lombok.Getter; import nl.tudelft.librador.dto.DTOConverter; import nl.tudelft.librador.dto.create.Create; diff --git a/src/test/java/nl/tudelft/queue/model/LabTest.java b/src/test/java/nl/tudelft/queue/model/LabTest.java index 1726f34ebfa33000752f17a4842551d932b93865..04c49a92ca62b1c42677e98a20d8a01c7d80ae44 100644 --- a/src/test/java/nl/tudelft/queue/model/LabTest.java +++ b/src/test/java/nl/tudelft/queue/model/LabTest.java @@ -24,6 +24,8 @@ import static org.assertj.core.api.Assertions.assertThat; import java.time.LocalDateTime; import java.util.*; +import jakarta.transaction.Transactional; + import org.assertj.core.data.Offset; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -32,7 +34,6 @@ import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMock import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.ApplicationContext; -import jakarta.transaction.Transactional; import nl.tudelft.queue.model.embeddables.AllowedRequest; import nl.tudelft.queue.model.embeddables.RequestEventInfo; import nl.tudelft.queue.model.enums.CommunicationMethod; diff --git a/src/test/java/nl/tudelft/queue/service/CapacitySessionServiceTest.java b/src/test/java/nl/tudelft/queue/service/CapacitySessionServiceTest.java index dff515d7ef3f04a81eec63955b4de3ba9a0a5d32..0716cffd64fd8d0773da03bec8626f3500aadee8 100644 --- a/src/test/java/nl/tudelft/queue/service/CapacitySessionServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/CapacitySessionServiceTest.java @@ -24,6 +24,8 @@ import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -31,7 +33,6 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.security.access.AccessDeniedException; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.dto.*; import nl.tudelft.queue.cache.RoomCacheManager; import nl.tudelft.queue.model.Request; diff --git a/src/test/java/nl/tudelft/queue/service/EditionServiceTest.java b/src/test/java/nl/tudelft/queue/service/EditionServiceTest.java index 8ab16a73cf71a9f7b472b822c3489d1d2954b470..55a795833f6a6ca77d14218706cd6dcf76a5e4b9 100644 --- a/src/test/java/nl/tudelft/queue/service/EditionServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/EditionServiceTest.java @@ -30,6 +30,8 @@ import java.util.Collections; import java.util.List; import java.util.Set; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; @@ -39,7 +41,6 @@ import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.mock.web.MockMultipartFile; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.RoleControllerApi; diff --git a/src/test/java/nl/tudelft/queue/service/EditionStatusServiceTest.java b/src/test/java/nl/tudelft/queue/service/EditionStatusServiceTest.java index 71be45e54d85a953a68325dd308ec2144d049250..a37b69e7ce0ccc3730849a672ad099ed9885d9dd 100644 --- a/src/test/java/nl/tudelft/queue/service/EditionStatusServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/EditionStatusServiceTest.java @@ -24,6 +24,8 @@ import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Stream; +import jakarta.transaction.Transactional; + import org.assertj.core.data.Percentage; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -31,7 +33,6 @@ import org.junit.jupiter.api.TestInstance; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.RoomControllerApi; diff --git a/src/test/java/nl/tudelft/queue/service/FeedbackServiceTest.java b/src/test/java/nl/tudelft/queue/service/FeedbackServiceTest.java index 2f7b1f597d6960cb2af6c82fc1fa3c55311b4a6a..f06c84353a1eaa7e91d256a32a10c777a80e4152 100644 --- a/src/test/java/nl/tudelft/queue/service/FeedbackServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/FeedbackServiceTest.java @@ -29,13 +29,14 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; import nl.tudelft.queue.dto.patch.FeedbackPatchDTO; diff --git a/src/test/java/nl/tudelft/queue/service/LabServiceTest.java b/src/test/java/nl/tudelft/queue/service/LabServiceTest.java index 6e003351b6ab58511e1bb23f5fdb99c57d100325..4c8883d5389553fd11e307796a16d7ee17e8cf9d 100644 --- a/src/test/java/nl/tudelft/queue/service/LabServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/LabServiceTest.java @@ -32,6 +32,8 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.atomic.AtomicLong; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.modelmapper.ModelMapper; @@ -41,7 +43,6 @@ import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.core.io.Resource; import org.springframework.ui.Model; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.SessionControllerApi; import nl.tudelft.labracore.api.dto.*; import nl.tudelft.queue.cache.SessionCacheManager; diff --git a/src/test/java/nl/tudelft/queue/service/PermissionServiceTest.java b/src/test/java/nl/tudelft/queue/service/PermissionServiceTest.java index 2eebbc3b281b06a60207f2a9946fedf3d4cc79e0..f9fa872069d46ceac318cac0a9610a3b9ed87b97 100644 --- a/src/test/java/nl/tudelft/queue/service/PermissionServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/PermissionServiceTest.java @@ -26,6 +26,8 @@ import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; @@ -34,7 +36,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Lazy; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AuthorizationControllerApi; import nl.tudelft.labracore.api.CourseControllerApi; import nl.tudelft.labracore.api.dto.*; diff --git a/src/test/java/nl/tudelft/queue/service/RequestServiceTest.java b/src/test/java/nl/tudelft/queue/service/RequestServiceTest.java index 65396c5e23ac797d065e3b38f143b21a879a86a4..344137baab3d2fefe129517661712f05f6ef5ac0 100644 --- a/src/test/java/nl/tudelft/queue/service/RequestServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/RequestServiceTest.java @@ -28,6 +28,8 @@ import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -36,7 +38,6 @@ import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.security.access.AccessDeniedException; import org.springframework.security.test.context.support.WithUserDetails; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.RoleControllerApi; import nl.tudelft.labracore.api.StudentGroupControllerApi; diff --git a/src/test/java/nl/tudelft/queue/service/SessionStatusServiceTest.java b/src/test/java/nl/tudelft/queue/service/SessionStatusServiceTest.java index f452e3c04d3761648ab5475e72f4ee74677eea02..915511992b3460050c41278973148cda6816b83a 100644 --- a/src/test/java/nl/tudelft/queue/service/SessionStatusServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/SessionStatusServiceTest.java @@ -24,13 +24,14 @@ import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; import java.util.*; +import jakarta.transaction.Transactional; + import org.assertj.core.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.dto.AssignmentDetailsDTO; import nl.tudelft.labracore.api.dto.EditionDetailsDTO; import nl.tudelft.labracore.api.dto.PersonSummaryDTO; diff --git a/src/test/java/nl/tudelft/queue/service/WebSocketServiceTest.java b/src/test/java/nl/tudelft/queue/service/WebSocketServiceTest.java index d402cd7bcc3492c020bad15c2d208cda805ba4a0..99b2c30d244cd71d6e9fada8160ce5561ecfaa15 100644 --- a/src/test/java/nl/tudelft/queue/service/WebSocketServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/WebSocketServiceTest.java @@ -25,6 +25,8 @@ import static org.mockito.Mockito.*; import java.util.List; import java.util.Set; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; @@ -33,7 +35,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.SpyBean; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.AssignmentControllerApi; import nl.tudelft.labracore.api.EditionControllerApi; import nl.tudelft.labracore.api.SessionControllerApi; diff --git a/src/test/java/nl/tudelft/queue/service/mail/MailServiceTest.java b/src/test/java/nl/tudelft/queue/service/mail/MailServiceTest.java index 045eb9f8bb35c9fa488cfa27287798444ed34694..95de0b7eabdb2905ee2d438c15bea12fa941df96 100644 --- a/src/test/java/nl/tudelft/queue/service/mail/MailServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/mail/MailServiceTest.java @@ -22,6 +22,8 @@ import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +import jakarta.transaction.Transactional; + import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; @@ -31,7 +33,6 @@ import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.mail.MailSender; import org.springframework.mail.SimpleMailMessage; -import jakarta.transaction.Transactional; import nl.tudelft.labracore.api.PersonControllerApi; import nl.tudelft.labracore.api.dto.PersonDetailsDTO; import nl.tudelft.labracore.lib.security.user.DefaultRole; diff --git a/src/test/java/test/TestDatabaseLoader.java b/src/test/java/test/TestDatabaseLoader.java index 3ba279dbd3994996b29505e8942ca8a0afcb47e4..689db4479ad4a313985b91ce4b1a658d6cc5b219 100644 --- a/src/test/java/test/TestDatabaseLoader.java +++ b/src/test/java/test/TestDatabaseLoader.java @@ -24,13 +24,14 @@ import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; +import jakarta.annotation.PostConstruct; +import jakarta.transaction.Transactional; + import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.ComponentScan; import org.springframework.stereotype.Service; -import jakarta.annotation.PostConstruct; -import jakarta.transaction.Transactional; import lombok.AllArgsConstructor; import lombok.Data; import nl.tudelft.labracore.api.*;