Skip to content

Commit 4bf8975

Browse files
author
Hattinger04
committed
fixing
1 parent 865ef3a commit 4bf8975

File tree

7 files changed

+13
-16
lines changed

7 files changed

+13
-16
lines changed

src/main/java/io/github/Hattinger04/RestServices.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ public Object deserialize(Class<?> c, String json) {
3131
* Convert JSON-String with multiple different classes to multiple objects
3232
* Convention: list the classes in an alphabetic sequence
3333
*
34-
* @param <T>
3534
* @param c
3635
* @param json
3736
* @return

src/main/java/io/github/Hattinger04/course/CourseController.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import io.github.Hattinger04.course.model.exercise.Exercise;
2121
import io.github.Hattinger04.course.model.student.Student;
2222
import io.github.Hattinger04.course.model.teacher.Teacher;
23+
import io.github.Hattinger04.user.model.User;
2324

2425
@RestController
2526
@RequestMapping("/course")
@@ -62,7 +63,7 @@ public ResponseEntity<?> getStudentByID(@RequestBody String json) {
6263
@ResponseBody
6364
public ResponseEntity<?> getAllStudents(@RequestBody String json) {
6465
Course course = (Course) restServices.deserialize(Course.class, json);
65-
List<Student> students;
66+
List<User> students;
6667
if((students = courseService.getAllStudents(course)) == null) {
6768
return new ResponseEntity<>("Course not existing or no users in course!", HttpStatus.NOT_FOUND);
6869
}
@@ -81,7 +82,7 @@ public ResponseEntity<?> getAllStudents(@RequestBody String json) {
8182
@ResponseBody
8283
public ResponseEntity<?> getCourseTeacher(@RequestBody String json) {
8384
Course course = (Course) restServices.deserialize(Course.class, json);
84-
Teacher teacher;
85+
User teacher;
8586
if((teacher = courseService.getCourseTeacher(course)) == null) {
8687
return new ResponseEntity<>("Teacher is not in course!", HttpStatus.NOT_FOUND);
8788
}

src/main/java/io/github/Hattinger04/course/model/CourseService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,11 @@ public Student getStudent(Course course, Student student) {
6969
return s;
7070
}
7171

72-
public List<Student> getAllStudents(Course course) {
72+
public List<User> getAllStudents(Course course) {
7373
return courseRepository.getAllStudents(course.getId());
7474
}
7575

76-
public Teacher getCourseTeacher(Course course) {
76+
public User getCourseTeacher(Course course) {
7777
return courseRepository.getCourseTeacher(course.getId());
7878
}
7979

src/main/java/io/github/Hattinger04/course/model/course/CourseRepository.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,19 @@
1010
import org.springframework.data.repository.query.Param;
1111
import org.springframework.stereotype.Repository;
1212

13-
import io.github.Hattinger04.course.model.student.Student;
14-
import io.github.Hattinger04.course.model.teacher.Teacher;
13+
import io.github.Hattinger04.user.model.User;
1514

1615
@Repository
1716
public interface CourseRepository extends JpaRepository<Course, Long>{
1817
Course findById(int id);
1918
Course findByName(String name);
2019
// TODO: SQL not tested yet!
2120

22-
@Query(value = "SELECT * FROM TEACHER t JOIN USER u using(user_id) JOIN course c using(course_id, user_id) where c.course_id=:course_id", nativeQuery = true)
23-
Teacher getCourseTeacher(int course_id);
21+
@Query(value = "SELECT user_id, username FROM USER u JOIN TEACHER t using(user_id) JOIN course c using(course_id, user_id) where c.course_id=:course_id", nativeQuery = true)
22+
User getCourseTeacher(int course_id);
2423

25-
@Query(value = "SELECT * FROM STUDENT s JOIN USER u using(user_id) JOIN course c using(course_id, user_id) where c.course_id=:course_id", nativeQuery = true)
26-
List<Student> getAllStudents(int course_id);
24+
@Query(value = "SELECT user_id, username FROM USER u JOIN STUDENT s using(user_id) JOIN course c using(course_id, user_id) where c.course_id=:course_id", nativeQuery = true)
25+
List<User> getAllStudents(int course_id);
2726

2827
@Modifying
2928
@Query(value = "insert into user_course where user_id = :user_id and course_id=:course_id", nativeQuery = true)

src/main/java/io/github/Hattinger04/course/model/exercise/Exercise.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@
2828
@AllArgsConstructor
2929
@ToString
3030
@JsonTypeInfo(include=As.WRAPPER_OBJECT, use=com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, property="type")
31-
@JsonTypeName("course")
32-
31+
@JsonTypeName("exercise")
3332
public class Exercise {
3433

3534
public Exercise(Course course, String name) {

src/main/java/io/github/Hattinger04/course/model/solution/Solution.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,7 @@
2929
@AllArgsConstructor
3030
@ToString
3131
@JsonTypeInfo(include=As.WRAPPER_OBJECT, use=com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, property="type")
32-
@JsonTypeName("course")
33-
32+
@JsonTypeName("solution")
3433
public class Solution {
3534

3635
public Solution(Exercise exercise, String text) {

src/main/java/io/github/Hattinger04/course/model/teacher/Teacher.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
@AllArgsConstructor
2929
@ToString
3030
@JsonTypeInfo(include=As.WRAPPER_OBJECT, use=com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, property="type")
31-
@JsonTypeName("course")
31+
@JsonTypeName("teacher")
3232
public class Teacher {
3333

3434
@Id

0 commit comments

Comments
 (0)