Skip to content
Snippets Groups Projects
Commit 7e212552 authored by Dennis Toth's avatar Dennis Toth
Browse files

grades can now be added for every course

parent fe10b979
No related branches found
No related tags found
No related merge requests found
...@@ -4,12 +4,11 @@ ...@@ -4,12 +4,11 @@
<option name="autoReloadType" value="SELECTIVE" /> <option name="autoReloadType" value="SELECTIVE" />
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="ce56effb-683b-43e9-9335-7e3aa5d26c29" name="Changes" comment="clean up"> <list default="true" id="ce56effb-683b-43e9-9335-7e3aa5d26c29" name="Changes" comment="new window for grades">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentCoursesController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentCoursesController.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentCoursesController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentCoursesController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentGradesController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentGradesController.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentGradesController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/gui/StudentGradesController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/de/thdeg/grademanager/gui/student-courses.fxml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/de/thdeg/grademanager/gui/student-courses.fxml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/model/Student.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/de/thdeg/grademanager/model/Student.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/de/thdeg/grademanager/gui/student-grades.fxml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/de/thdeg/grademanager/gui/student-grades.fxml" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
...@@ -173,7 +172,14 @@ ...@@ -173,7 +172,14 @@
<option name="project" value="LOCAL" /> <option name="project" value="LOCAL" />
<updated>1655900828972</updated> <updated>1655900828972</updated>
</task> </task>
<option name="localTasksCounter" value="13" /> <task id="LOCAL-00013" summary="new window for grades">
<created>1655904634462</created>
<option name="number" value="00013" />
<option name="presentableId" value="LOCAL-00013" />
<option name="project" value="LOCAL" />
<updated>1655904634462</updated>
</task>
<option name="localTasksCounter" value="14" />
<servers /> <servers />
</component> </component>
<component name="Vcs.Log.Tabs.Properties"> <component name="Vcs.Log.Tabs.Properties">
...@@ -213,6 +219,7 @@ ...@@ -213,6 +219,7 @@
<MESSAGE value="add logic (average + median)" /> <MESSAGE value="add logic (average + median)" />
<MESSAGE value="update for student courses and grades" /> <MESSAGE value="update for student courses and grades" />
<MESSAGE value="clean up" /> <MESSAGE value="clean up" />
<option name="LAST_COMMIT_MESSAGE" value="clean up" /> <MESSAGE value="new window for grades" />
<option name="LAST_COMMIT_MESSAGE" value="new window for grades" />
</component> </component>
</project> </project>
\ No newline at end of file
...@@ -44,6 +44,7 @@ public class StudentCoursesController { ...@@ -44,6 +44,7 @@ public class StudentCoursesController {
@FXML @FXML
protected void onCourseClick(MouseEvent event) throws IOException { protected void onCourseClick(MouseEvent event) throws IOException {
StudentGradesController.setStudent(student); StudentGradesController.setStudent(student);
StudentGradesController.setCourse(coursesListView.getSelectionModel().getSelectedItem());
SwitchWindowHelper.switchTo("Student Grades", event); SwitchWindowHelper.switchTo("Student Grades", event);
} }
......
package de.thdeg.grademanager.gui; package de.thdeg.grademanager.gui;
import de.thdeg.grademanager.JpaService;
import de.thdeg.grademanager.model.Course; import de.thdeg.grademanager.model.Course;
import de.thdeg.grademanager.model.Enrollment;
import de.thdeg.grademanager.model.Student; import de.thdeg.grademanager.model.Student;
import de.thdeg.grademanager.model.enumeration.Mark; import de.thdeg.grademanager.model.enumeration.Mark;
import javafx.collections.FXCollections; import javafx.collections.FXCollections;
...@@ -13,6 +15,7 @@ import javafx.scene.control.ComboBox; ...@@ -13,6 +15,7 @@ import javafx.scene.control.ComboBox;
import java.io.IOException; import java.io.IOException;
import java.util.Optional; import java.util.Optional;
import java.util.Set;
public class StudentGradesController { public class StudentGradesController {
...@@ -34,6 +37,15 @@ public class StudentGradesController { ...@@ -34,6 +37,15 @@ public class StudentGradesController {
@FXML @FXML
protected void initialize() { protected void initialize() {
markComboBox.setItems(markList); markComboBox.setItems(markList);
Set<Enrollment> enrollments = student.getEnrollments();
for (Enrollment e: enrollments) {
if(course.getId() == e.getCourse().getId()){
if(e.getGrade() != null){
markComboBox.setPromptText(String.valueOf(e.getGrade()));
}
}
}
} }
@FXML @FXML
...@@ -41,6 +53,17 @@ public class StudentGradesController { ...@@ -41,6 +53,17 @@ public class StudentGradesController {
if (markComboBox.getValue() != null) { if (markComboBox.getValue() != null) {
mark = markComboBox.getValue(); mark = markComboBox.getValue();
Set<Enrollment> enrollments = student.getEnrollments();
for (Enrollment e: enrollments) {
if(course.getId() == e.getCourse().getId()){
e.setGrade(mark.getMark());
JpaService jpaService = JpaService.getInstance();
jpaService.runInTransaction(entityManager -> {entityManager.merge(e); return null;});
initialize();
}
}
SwitchWindowHelper.switchTo("Student Courses", event); SwitchWindowHelper.switchTo("Student Courses", event);
} else { } else {
Alert alert = new Alert(Alert.AlertType.ERROR); Alert alert = new Alert(Alert.AlertType.ERROR);
......
...@@ -117,7 +117,6 @@ public class Student extends UniversityMember implements Calculable ...@@ -117,7 +117,6 @@ public class Student extends UniversityMember implements Calculable
public void initEnrollments(List<Course> courses){ public void initEnrollments(List<Course> courses){
for (Course course: courses) { for (Course course: courses) {
System.out.println(course);
enrollments.add(new Enrollment(this, course)); enrollments.add(new Enrollment(this, course));
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment