1 Commits
Author SHA1 Message Date
kimiamoosavi e34965a81a ws4 2026-07-11 17:56:02 +04:30
4 changed files with 41 additions and 81 deletions
+4 -28
View File
@@ -70,12 +70,7 @@ public class Main {
boolean success; boolean success;
switch (choice) { switch (choice) {
case 1: case 1:
success = school.registerStudent(username, password); //TODO
if (success) {
System.out.println(" Student registered successfully!");
} else {
System.out.println(" Username already exists!");
}
break; break;
case 2: case 2:
success = school.registerTeacher(username, password); success = school.registerTeacher(username, password);
@@ -108,12 +103,7 @@ public class Main {
switch (choice) { switch (choice) {
case 1: case 1:
Student student = school.loginStudent(username, password); //TODO
if (student != null) {
studentMenu(student);
} else {
System.out.println(" Invalid username or password!");
}
break; break;
case 2: case 2:
Teacher teacher = school.loginTeacher(username, password); Teacher teacher = school.loginTeacher(username, password);
@@ -151,7 +141,7 @@ public class Main {
enrollInCourse(student); enrollInCourse(student);
break; break;
case 3: case 3:
System.out.print(student.getMyCoursesDisplay()); //System.out.print(student.getMyCoursesDisplay());
break; break;
case 4: case 4:
System.out.println(" Goodbye, " + student.getUsername() + "!"); System.out.println(" Goodbye, " + student.getUsername() + "!");
@@ -163,21 +153,7 @@ public class Main {
} }
private static void enrollInCourse(Student student) { private static void enrollInCourse(Student student) {
System.out.print(school.getAllCoursesDisplay()); //TODO
System.out.print("\nEnter Course ID to enroll: ");
int courseId = getIntInput();
Course course = school.findCourseById(courseId);
if (course == null) {
System.out.println(" Course not found! Please enter a valid ID.");
return;
}
if (student.enrollInCourse(course)) {
System.out.println(" Successfully enrolled in " + course.getName());
} else {
System.out.println(" You are already enrolled in this course!");
}
} }
// ==================== TEACHER MENU ==================== // ==================== TEACHER MENU ====================
+11 -19
View File
@@ -11,28 +11,20 @@ public class Student extends User {
this.enrolledCourses = new ArrayList<>(); this.enrolledCourses = new ArrayList<>();
} }
public boolean enrollInCourse(Course course) { public void enrollCourse(Course course) {
if (enrolledCourses.contains(course)) { this.enrolledCourses.add(course);
return false; }
public void showMyCourses() {
for (Course course : this.enrolledCourses) {
System.out.println(course);
} }
enrolledCourses.add(course);
course.addStudent(this);
return true;
} }
public Course getEnrolledCourses(int id) {
public List<Course> getEnrolledCourses() { for (Course course : this.enrolledCourses) {
return enrolledCourses; if (course.getId() == id) {
} return course;
public String getMyCoursesDisplay() {
if (enrolledCourses.isEmpty()) {
return " You are not enrolled in any course yet.";
} else {
StringBuilder sb = new StringBuilder("\n My Courses:\n");
for (int i = 0; i < enrolledCourses.size(); i++) {
sb.append(" ").append(i+1).append(". ").append(enrolledCourses.get(i)).append("\n");
} }
return sb.toString();
} }
return null;
} }
} }
+8 -12
View File
@@ -32,26 +32,22 @@ public class Teacher extends User {
return myCourses; return myCourses;
} }
public String getMyCoursesDisplay() { public void showMyCourses() {
if (myCourses.isEmpty()) { if (myCourses.isEmpty()) {
return " You don't teach any course yet."; System.out.println(" You don't teach any course yet.");
} else { } else {
StringBuilder sb = new StringBuilder("\n My Courses:\n"); System.out.println("\n My Courses:");
for (int i = 0; i < myCourses.size(); i++) { for (int i = 0; i < myCourses.size(); i++) {
sb.append(" ").append(i+1).append(". ").append(myCourses.get(i)).append("\n"); System.out.println(" " + (i+1) + ". " + myCourses.get(i));
} }
return sb.toString();
} }
} }
public boolean checkCourseOwnership(Course course) { public void showStudentsInCourse(Course course) {
return myCourses.contains(course);
}
public String getStudentsDisplayForCourse(Course course) {
if (!myCourses.contains(course)) { if (!myCourses.contains(course)) {
return "You don't teach this course!"; System.out.println(" You don't teach this course!");
return;
} }
return course.getStudentsDisplay(); course.showStudents();
} }
} }
+18 -22
View File
@@ -16,25 +16,23 @@ public class SchoolSystem {
} }
// ========== Student Management ========== // ========== Student Management ==========
public boolean registerStudent(String username, String password) { public void registerStudent(String username, String password) {
if (findStudent(username) != null) { Student student = new Student(username, password);
return false; this.students.add(student);
}
students.add(new Student(username, password));
return true;
} }
public Student loginStudent(String username, String password) { public Student loginStudent(String username, String password) {
Student student = findStudent(username); for (Student student : this.students) {
if (student != null && student.checkPassword(password)) { if (student.getUsername().equals(username) && student.checkPassword(password)) {
return student; return student;
}
} }
return null; return null;
} }
private Student findStudent(String username) { private Student findStudent(String username) {
for (Student s : students) { for (Student student : this.students) {
if (s.getUsername().equals(username)) return s; if (student.getUsername().equals(username)) {
return student;
}
} }
return null; return null;
} }
@@ -65,19 +63,17 @@ public class SchoolSystem {
// ========== Course Management ========== // ========== Course Management ==========
public boolean addCourseToSystem(String courseName) { public boolean addCourseToSystem(String courseName) {
for (Course c : allCourses) { Course course = new Course(courseName);
if (c.getName().equals(courseName)) { this.allCourses.add(course);
return false;
}
}
allCourses.add(new Course(courseName));
return true; return true;
} }
public Course findCourseById(int id) { public Course findCourseById(int id) {
for (Course c : allCourses) { for (Course course : this.allCourses) {
if (c.getId() == id) return c; if(course.getId() == id) {
} return course;
}
}
return null; return null;
} }