First Commit

This commit is contained in:
2023-09-19 22:07:16 +03:00
commit 5e4b81c90d
35 changed files with 1092 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
package org.lumijiez.managers;
import org.lumijiez.base.Group;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
public class GroupManager implements Serializable {
private final List<Group> groups = new ArrayList<>();
public Group getGroup(String groupName) {
for (Group group : groups) {
if (group.getName().equals(groupName)) {
return group;
}
}
Group newGroup = new Group(groupName);
groups.add(newGroup);
return newGroup;
}
public void addGroup(Group group) {
groups.add(group);
}
public List<Group> getGroups() {
return groups;
}
public void deleteGroup(Group group) {
groups.remove(group);
}
}

View File

@@ -0,0 +1,59 @@
package org.lumijiez.managers;
import org.lumijiez.base.Grade;
import org.lumijiez.base.Group;
import org.lumijiez.base.NameSurnameGroup;
import org.lumijiez.base.Student;
import java.io.Serializable;
public class Manager implements Serializable {
GroupManager groupManager;
public Manager() {
this.groupManager = new GroupManager();
}
public void addGroup(String groupName) {
groupManager.addGroup(new Group(groupName));
}
public void addStudent(NameSurnameGroup NSG) {
Group currentGroup = groupManager.getGroup(NSG.group());
currentGroup.addStudent(new Student(NSG.name(), NSG.surname(), currentGroup));
}
public void printStudents() {
for (Group group : groupManager.getGroups()) {
for (Student student : group.getStudents()) {
System.out.println(student.getFullname() + " " + student.getGroup().getName());
}
}
}
public void printGroups() {
for (Group group : groupManager.getGroups()) {
System.out.println(group.getName());
}
}
public void printGrades(NameSurnameGroup NSG) {
Student student = groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname());
for (Grade grade : student.getGrades()) {
System.out.println(grade.getSubject() + " " + grade.getGrade());
}
}
public void addGrade(NameSurnameGroup NSG, Grade grade) {
Student student = groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname());
student.addGrade(grade);
}
public void removeStudent(NameSurnameGroup NSG) {
Student student = groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname());
groupManager.getGroup(NSG.group()).deleteStudent(student);
if (student.getGroup().getStudents().isEmpty()) {
groupManager.getGroups().remove(student.getGroup());
}
}
}