Browse Source

Merge branch 'master' of gitlab.cs.hs-fulda.de:fdai7600/PWN_Alpha_Dogs into fdai7600

# Conflicts:
#	src/main/java/org/example/Administration.java
#	src/main/java/org/example/Main.java
#	src/main/java/org/example/Student.java
remotes/origin/fdai7780
fdai7600 11 months ago
parent
commit
6785825c43
  1. 89
      src/main/java/org/example/Administration.java
  2. 20
      src/main/java/org/example/Main.java
  3. 8
      src/main/java/org/example/Student.java
  4. 27
      src/test/java/org/example/AdministrationTest.java

89
src/main/java/org/example/Administration.java

@ -1,6 +1,9 @@
package org.example; package org.example;
import java.util.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;
public class Administration { public class Administration {
/** /**
@ -405,38 +408,6 @@ public class Administration {
} }
public void createCourse(String courseName, String courseID, int credits) {
// Check if a course with the given ID already exists
if (findCourseByID(courseID) != null) {
System.out.println("A course with ID " + courseID + " already exists.");
} else {
Course newCourse = new Course(courseName, courseID, credits);
courses.add(newCourse);
System.out.println("Course " + courseName + " (" + courseID + ") created successfully.");
}
}
public boolean enrollStudentInCourse(String studentId, String courseId) {
Student student = findStudentById(studentId);
Course course = findCourseByID(courseId);
if (student != null && course != null) {
// If the course is not already enrolled
if (!student.getCourseGrades().containsKey(course)) {
student.getCourseGrades().put(course, "Not Graded");
System.out.println("Student " + studentId + " enrolled in course " + courseId + ".");
return true;
} else {
System.out.println("Student " + studentId + " is already enrolled in course " + courseId + ".");
return false;
}
} else {
if (student == null) System.out.println("Student ID not found.");
if (course == null) System.out.println("Course ID not found.");
return false;
}
}
public void enrollProfInCourse(){ public void enrollProfInCourse(){
System.out.println("Please enter Professor ID"); System.out.println("Please enter Professor ID");
@ -507,24 +478,35 @@ public class Administration {
} }
public boolean assignGradeToStudent(String studentId, String courseId, String grade) {
public void createCourse(String courseName, String courseID, int credits) {
// Check if a course with the given ID already exists
if (findCourseByID(courseID) != null) {
System.out.println("A course with ID " + courseID + " already exists.");
} else {
Course newCourse = new Course(courseName, courseID, credits);
courses.add(newCourse);
System.out.println("Course " + courseName + " (" + courseID + ") created successfully.");
}
}
public boolean enrollStudentInCourse(String studentId, String courseId) {
Student student = findStudentById(studentId); Student student = findStudentById(studentId);
// First, find the course by ID to ensure it exists in the system.
Course course = findCourseByID(courseId); Course course = findCourseByID(courseId);
if (student != null && course != null) { if (student != null && course != null) {
// Check if the student is enrolled in the specified course.
if (student.getCourseGrades().containsKey(course)) {
// Student is enrolled in the course, proceed to assign the grade.
student.getCourseGrades().put(course, grade);
// If the course is not already enrolled
if (!student.getCourseGrades().containsKey(course)) {
student.getCourseGrades().put(course, "Not Graded");
System.out.println("Student " + studentId + " enrolled in course " + courseId + ".");
return true; return true;
} else { } else {
// Student is not enrolled in the specified course.
System.out.println("Student is not enrolled in the specified course.");
System.out.println("Student " + studentId + " is already enrolled in course " + courseId + ".");
return false; return false;
} }
} else {
if (student == null) System.out.println("Student ID not found.");
if (course == null) System.out.println("Course ID not found.");
return false;
} }
return false;
} }
public void viewCourses() { public void viewCourses() {
@ -538,6 +520,27 @@ public class Administration {
} }
} }
public boolean assignGradeToStudent(String studentId, String courseId, String grade) {
Student student = findStudentById(studentId);
// First, find the course by ID to ensure it exists in the system.
Course course = findCourseByID(courseId);
if (student != null && course != null) {
// Check if the student is enrolled in the specified course.
if (student.getCourseGrades().containsKey(course)) {
// Student is enrolled in the course, proceed to assign the grade.
student.getCourseGrades().put(course, grade);
return true;
} else {
// Student is not enrolled in the specified course.
System.out.println("Student is not enrolled in the specified course.");
return false;
}
}
return false;
}
} }

20
src/main/java/org/example/Main.java

@ -80,36 +80,26 @@ public class Main {
} }
break; break;
case 8: case 8:
// View Courses
administration.viewCourses(); administration.viewCourses();
break; break;
case 9:
case 9:{
// Assign Grade to Student // Assign Grade to Student
System.out.println("Assign Grade to Student selected"); System.out.println("Assign Grade to Student selected");
System.out.print("Enter Student ID: "); System.out.print("Enter Student ID: ");
String toBeGradedstudentId = scanner.next();
String toBeGradedStudentId = scanner.next();
System.out.print("Enter Course ID: "); System.out.print("Enter Course ID: ");
String toBeGradedcourseId = scanner.next();
String toBeGradedCourseId = scanner.next();
System.out.print("Enter Grade: "); System.out.print("Enter Grade: ");
String grade = scanner.next(); String grade = scanner.next();
boolean success = administration.assignGradeToStudent(toBeGradedstudentId, toBeGradedcourseId, grade);
boolean success = administration.assignGradeToStudent(toBeGradedStudentId, toBeGradedCourseId, grade);
if (success) { if (success) {
System.out.println("Grade assigned successfully."); System.out.println("Grade assigned successfully.");
} else { } else {
System.out.println("Failed to assign grade. Ensure the student and course IDs are correct."); System.out.println("Failed to assign grade. Ensure the student and course IDs are correct.");
}
}}
break; break;
case 10: case 10:
// View Grades from Student // View Grades from Student
System.out.print("Enter Student ID to view grades: ");
String GradedstudentId = scanner.next();
Student student = administration.findStudentById(GradedstudentId);
if (student != null) {
student.printGrades();
} else {
System.out.println("Student not found.");
}
break; break;
case 11: case 11:

8
src/main/java/org/example/Student.java

@ -108,15 +108,9 @@ public class Student {
} }
public void assignGrade(Course course, String grade) { public void assignGrade(Course course, String grade) {
// Assuming courseGrades is a Map<Course, String> where the course is the key and the grade is the value
this.courseGrades.put(course, grade); this.courseGrades.put(course, grade);
} }
public void printGrades() {
System.out.println("Grades for Student ID: " + this.studentId);
for (Map.Entry<Course, String> entry : courseGrades.entrySet()) {
System.out.println("Course: " + entry.getKey().getCourseName() + ", Grade: " + entry.getValue());
}
}
} }

27
src/test/java/org/example/AdministrationTest.java

@ -324,6 +324,33 @@ class AdministrationTest {
} }
@Test
void dropProfFromCourse(){
Professor prof = sampleProf;
Course course = sampleCourse;
List<Course> courseList = prof.getCoursesTaught();
courseList.add(course);
prof.setCoursesTaught(courseList);
//The "User input" to determine the professor
String profID = prof.getProfessorID();
//Grabs the coursesTaught List from the Professor the user wants to enroll
List<Course> courseList2 = prof.getCoursesTaught();
//Assigning the course to the Prof by adding it the to the courseList
courseList2.remove(course);
//The Professor gets the updated courseList
prof.setCoursesTaught(courseList);
//Checks if the course got removed
assertEquals(0,prof.getCoursesTaught().size() );
}
@Test @Test
void registerUser() { void registerUser() {
Administration administration = new Administration(); Administration administration = new Administration();

Loading…
Cancel
Save