Implemented UI, fixed serialization inconsistency
This commit is contained in:
45
Lab2/src/main/java/org/lumijiez/managers/FacultyManager.java
Normal file
45
Lab2/src/main/java/org/lumijiez/managers/FacultyManager.java
Normal file
@@ -0,0 +1,45 @@
|
||||
package org.lumijiez.managers;
|
||||
|
||||
import org.lumijiez.base.Faculty;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class FacultyManager implements Serializable {
|
||||
|
||||
public FacultyManager(GroupManager gm, StudentManager sm) {
|
||||
this.gm = new GroupManager(sm);
|
||||
this.sm = sm;
|
||||
}
|
||||
private final GroupManager gm;
|
||||
private final StudentManager sm;
|
||||
private final List<Faculty> faculties = new ArrayList<>();
|
||||
|
||||
public Faculty getFaculty(String facultyName, GroupManager gm) {
|
||||
for (Faculty fc : faculties)
|
||||
if (fc.getName().equals(facultyName)) return fc;
|
||||
return null;
|
||||
}
|
||||
|
||||
public void addFaculty(Faculty faculty) {
|
||||
faculties.add(faculty);
|
||||
}
|
||||
|
||||
public void deleteFaculty(Faculty faculty) {
|
||||
faculties.remove(faculty);
|
||||
}
|
||||
|
||||
public List<Faculty> getFaculties() {
|
||||
return faculties;
|
||||
}
|
||||
|
||||
public String getFacultiesText() {
|
||||
StringBuilder builder = new StringBuilder();
|
||||
for (Faculty fc : faculties)
|
||||
builder.append(fc.getName()).append("\n");
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -7,26 +7,43 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class GroupManager implements Serializable {
|
||||
|
||||
public GroupManager(StudentManager sm) {
|
||||
this.sm = sm;
|
||||
}
|
||||
|
||||
private final StudentManager sm;
|
||||
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;
|
||||
return null;
|
||||
}
|
||||
|
||||
// public void addGroup(Group group) {
|
||||
// groups.add(group);
|
||||
// }
|
||||
public void addGroup(Group group) {
|
||||
groups.add(group);
|
||||
}
|
||||
|
||||
public void deleteGroup(Group group) {
|
||||
groups.remove(group);
|
||||
}
|
||||
|
||||
public List<Group> getGroups() {
|
||||
return groups;
|
||||
}
|
||||
|
||||
// public void deleteGroup(Group group) {
|
||||
// groups.remove(group);
|
||||
// }
|
||||
public String getGroupsText() {
|
||||
StringBuilder builder = new StringBuilder();
|
||||
for (Group gr : groups)
|
||||
builder.append(gr.getName()).append("\n");
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
public Group findGroup(String name) {
|
||||
for (Group gr : groups) {
|
||||
if (gr.getName().equals(name)) return gr;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
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 {
|
||||
private final GroupManager groupManager;
|
||||
|
||||
public Manager() {
|
||||
this.groupManager = new GroupManager();
|
||||
}
|
||||
|
||||
public String getStudentsText() {
|
||||
StringBuilder info = new StringBuilder();
|
||||
for (Group group : groupManager.getGroups()) {
|
||||
for (Student student : group.getStudents()) {
|
||||
info.append(student.getFullname()).append(" ").append(student.getGroup().getName()).append("\n");
|
||||
}
|
||||
}
|
||||
return info.toString();
|
||||
}
|
||||
|
||||
public String getGradesText(NameSurnameGroup NSG) {
|
||||
StringBuilder info = new StringBuilder();
|
||||
for (Grade grade : groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname()).getGrades()) {
|
||||
info.append(grade.getSubject()).append(" ").append(grade.getGrade());
|
||||
}
|
||||
return info.toString();
|
||||
}
|
||||
|
||||
public String getGroupsText() {
|
||||
StringBuilder info = new StringBuilder();
|
||||
for (Group group : groupManager.getGroups()) {
|
||||
info.append(group.getName()).append("\n");
|
||||
}
|
||||
return info.toString();
|
||||
}
|
||||
|
||||
// public Student getStudent(NameSurnameGroup NSG) {
|
||||
// return groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname());
|
||||
// }
|
||||
|
||||
public void changeGroup(NameSurnameGroup NSG, String groupName) {
|
||||
Group gr = groupManager.getGroup(groupName);
|
||||
groupManager.getGroup(groupName).getStudent(NSG.name(), NSG.surname()).setGroup(gr);
|
||||
}
|
||||
|
||||
// public void addGroup(String groupName) {
|
||||
// groupManager.addGroup(new Group(groupName));
|
||||
// }
|
||||
|
||||
// public void removeGroup(String groupName) {
|
||||
// groupManager.deleteGroup(groupManager.getGroup(groupName));
|
||||
// }
|
||||
|
||||
// public GroupManager getGroupManager() {
|
||||
// return groupManager;
|
||||
// }
|
||||
|
||||
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());
|
||||
}
|
||||
}
|
||||
}
|
||||
50
Lab2/src/main/java/org/lumijiez/managers/Supervisor.java
Normal file
50
Lab2/src/main/java/org/lumijiez/managers/Supervisor.java
Normal file
@@ -0,0 +1,50 @@
|
||||
package org.lumijiez.managers;
|
||||
|
||||
import org.lumijiez.base.Grade;
|
||||
import org.lumijiez.base.Group;
|
||||
import org.lumijiez.util.NameSurnameGroup;
|
||||
import org.lumijiez.base.Student;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class Supervisor implements Serializable {
|
||||
private final FacultyManager fm;
|
||||
|
||||
public Supervisor() {
|
||||
this.groupManager = new FacultyManager();
|
||||
}
|
||||
|
||||
public String getStudentsText() {
|
||||
StringBuilder info = new StringBuilder();
|
||||
for (Group group : groupManager.getGroups()) {
|
||||
for (Student student : group.getStudents()) {
|
||||
info.append(student.getFullname()).append(" ").append(student.getGroup().getName()).append("\n");
|
||||
}
|
||||
}
|
||||
return info.toString();
|
||||
}
|
||||
|
||||
public String getGradesText(NameSurnameGroup NSG) {
|
||||
StringBuilder info = new StringBuilder();
|
||||
for (Grade grade : groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname()).getGrades()) {
|
||||
info.append(grade.getSubject()).append(" ").append(grade.getGrade());
|
||||
}
|
||||
return info.toString();
|
||||
}
|
||||
|
||||
public void changeGroup(NameSurnameGroup NSG, String groupName) {
|
||||
Group gr = groupManager.findGroup(groupName);
|
||||
groupManager.getGroup(groupName).getStudent(NSG.name(), NSG.surname()).setGroup(gr);
|
||||
}
|
||||
|
||||
public void addStudent(NameSurnameGroup NSG) {
|
||||
Group currentGroup = groupManager.getGroup(NSG.group());
|
||||
currentGroup.addStudent(new Student(NSG.name(), NSG.surname(), currentGroup));
|
||||
}
|
||||
|
||||
public void addGrade(NameSurnameGroup NSG, Grade grade) {
|
||||
Student student = groupManager.getGroup(NSG.group()).getStudent(NSG.name(), NSG.surname());
|
||||
student.addGrade(grade);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user