Skip to content
This repository was archived by the owner on Nov 27, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 11 additions & 9 deletions src/services/CommitteeReplyEnquiryService.java
Original file line number Diff line number Diff line change
Expand Up @@ -59,17 +59,18 @@ public class CommitteeReplyEnquiryService implements ReplyEnquiryServiceable {
* Allows a committee member to reply to an enquiry.
*/
public void reply() {

int i = 0, choice;
Enquiry selectedEnquiry;
String replyField;
CommitteeMember currentUser = (CommitteeMember)currentUserDao.getCurrentUser();
CommitteeMember currentUser = (CommitteeMember) currentUserDao.getCurrentUser();
String campName = currentUser.getFacilitatingCamp();
Camp camp = campDao.getCamps().get(campName);
ArrayList<Enquiry> validEnquiryList = new ArrayList<Enquiry>();

for (Enquiry enquiry : camp.getEnquiries().values()) {
if (enquiry.getEnquirer() == null) continue;
if (enquiry.getEnquirer() == null)
continue;

validEnquiryList.add(enquiry);
}
Expand All @@ -86,20 +87,21 @@ public void reply() {

System.out.printf("%2d : Back\n", i + 1);
choice = InputUtil.choice();
if (choice == i + 1) return;

if (choice == i + 1)
return;

if (choice >= 1 || choice <= i) {
selectedEnquiry = validEnquiryList.get(choice - 1);
break;
}
} while (true);


System.out.printf("%-10s: %s\n","Camp" , campName);
System.out.printf("%-10s: %s\n","Enquiry" , selectedEnquiry.getEnquiry());
System.out.printf("%-10s: %s\n", "Camp", campName);
System.out.printf("%-10s: %s\n", "Enquiry", selectedEnquiry.getEnquiry());
do {
replyField = InputUtil.nextString("Enter reply");
if (!replyField.isBlank()) break;
if (!replyField.isBlank())
break;

PrintUtil.invalid("input");
} while (true);
Expand Down
22 changes: 12 additions & 10 deletions src/views/CommitteeEnquiryView.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
import utils.PrintUtil;

/**
* The {@code CommitteeEnquiryView} class provides functionality to view enquiries related to a specific camp.
* The {@code CommitteeEnquiryView} class provides functionality to view
* enquiries related to a specific camp.
* It implements the {@link EnquiryViewable} interface.
*
* @author Chuan Shan Hong
Expand All @@ -37,7 +38,8 @@ public class CommitteeEnquiryView implements EnquiryViewable {
private static final StudentDao studentDao = new StudentDaoImpl();

/**
* Displays details of enquiries related to the camp facilitated by the current committee member.
* Displays details of enquiries related to the camp facilitated by the current
* committee member.
*/
public void view() {
CommitteeMember currentUser = (CommitteeMember) currentUserDao.getCurrentUser();
Expand All @@ -47,16 +49,16 @@ public void view() {
PrintUtil.header(String.format("%s Enquiries", camp.getName()));
for (Enquiry enquiry : camp.getEnquiries().values()) {
System.out.println("-".repeat(50));
System.out.printf("%-15s: %s\n","Enquiry ID" , enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n","Camp" , camp.getName());
System.out.printf("%-15s: %s\n","Enquired by" , studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n","Enquiry" , enquiry.getEnquiry());
System.out.printf("%-15s: %s\n", "Enquiry ID", enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n", "Camp", camp.getName());
System.out.printf("%-15s: %s\n", "Enquired by", studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n", "Enquiry", enquiry.getEnquiry());
if (enquiry.getReplier() == null || enquiry.getReplier().equals("#NULL!")) {
System.out.printf("%-15s: -\n","Replied by");
System.out.printf("%-15s: -\n","Reply");
System.out.printf("%-15s: -\n", "Replied by");
System.out.printf("%-15s: -\n", "Reply");
} else {
System.out.printf("%-15s: %s\n","Replied by" , enquiry.getReplier());
System.out.printf("%-15s: %s\n","Reply" , enquiry.getReply());
System.out.printf("%-15s: %s\n", "Replied by", enquiry.getReplier());
System.out.printf("%-15s: %s\n", "Reply", enquiry.getReply());
}

System.out.println();
Expand Down
25 changes: 13 additions & 12 deletions src/views/CreatedCampView.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ public void sortView(SortType sortType) {

int i = 1;
ArrayList<GregorianCalendar> dateList;
Staff currentUser = (Staff)currentUserDao.getCurrentUser();
Staff currentUser = (Staff) currentUserDao.getCurrentUser();
ArrayList<String> createdCampNameList = currentUser.getCreatedCamps();
Map<String, Camp> campsData = campDao.getCamps();
ArrayList<Camp> createdCampList = new ArrayList<Camp>();
Expand All @@ -58,17 +58,18 @@ public void sortView(SortType sortType) {
for (Camp camp : createdCampList) {
dateList = camp.getDates();
PrintUtil.header(String.format("Camp %d", i++));
System.out.printf("%-30s: %s\n","Name" , camp.getName());
System.out.printf("%-30s: %s -> %s\n","Duration",
DateUtil.toString(dateList.get(0)),
DateUtil.toString(dateList.get(dateList.size() - 1)));
System.out.printf("%-30s: %s\n","Registration Closing Date" ,DateUtil.toString(camp.getRegistrationClosingDate()));
System.out.printf("%-30s: %s\n","User group" , camp.getOpenTo());
System.out.printf("%-30s: %s\n","Location" , camp.getLocation());
System.out.printf("%-30s: %s\n","Total slots" , camp.getTotalSlots());
System.out.printf("%-30s: %s\n","Camp committee slots" , camp.getCommitteeSlots());
System.out.printf("%-30s: %s\n","Description" , camp.getDescription());
System.out.printf("%-30s: %s\n","Visibility" , Visibility.toString(camp.getVisibility()));
System.out.printf("%-30s: %s\n", "Name", camp.getName());
System.out.printf("%-30s: %s -> %s\n", "Duration",
DateUtil.toString(dateList.get(0)),
DateUtil.toString(dateList.get(dateList.size() - 1)));
System.out.printf("%-30s: %s\n", "Registration Closing Date",
DateUtil.toString(camp.getRegistrationClosingDate()));
System.out.printf("%-30s: %s\n", "User group", camp.getOpenTo());
System.out.printf("%-30s: %s\n", "Location", camp.getLocation());
System.out.printf("%-30s: %s\n", "Total slots", camp.getTotalSlots());
System.out.printf("%-30s: %s\n", "Camp committee slots", camp.getCommitteeSlots());
System.out.printf("%-30s: %s\n", "Description", camp.getDescription());
System.out.printf("%-30s: %s\n", "Visibility", Visibility.toString(camp.getVisibility()));
System.out.println();
}
}
Expand Down
19 changes: 10 additions & 9 deletions src/views/ProfileView.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,30 +13,31 @@
import utils.PrintUtil;

/**
* The {@code ProfileView} class provides a view to display the user profile information.
* The {@code ProfileView} class provides a view to display the user profile
* information.
* It implements the {@link ProfileViewable} interface.
*
* @author Chong Jiejun
* @version 1.0
* @since 1.0
*/
public class ProfileView implements ProfileViewable {
private static final CurrentUserDao currentUserDao = new CurrentUserDaoImpl();

private static final CurrentUserDao currentUserDao = new CurrentUserDaoImpl();

/**
* Displays the user profile information.
*/
*/
public void view() {
User currentUser = currentUserDao.getCurrentUser();
CommitteeMember committeeMember;

PrintUtil.header("User Profile");
System.out.printf("%-10s: %s\n","User ID" , currentUser.getUserID());
System.out.printf("%-10s: %s\n", "User ID", currentUser.getUserID());
System.out.printf("%-10s: %s\n", "Name", currentUser.getName());
System.out.printf("%-10s: %s\n", "Format", currentUser.getFaculty());
System.out.printf("%-10s: %s\n", "Faculty", currentUser.getFaculty());
System.out.printf("%-10s: %s", "Role", Role.toString(currentUser.getRole()));

if (currentUser.getRole() == Role.COMMITTEE) {
committeeMember = (CommitteeMember) currentUser;
System.out.printf(" of %s\n", committeeMember.getFacilitatingCamp());
Expand Down
28 changes: 15 additions & 13 deletions src/views/StaffEnquiryView.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
import utils.PrintUtil;

/**
* The {@code StaffEnquiryView} class provides functionality to view enquiries made for the camps created by the current staff member.
* The {@code StaffEnquiryView} class provides functionality to view enquiries
* made for the camps created by the current staff member.
* It implements the {@link EnquiryViewable} interface.
*
* @author Chuan Shan Hong
Expand All @@ -33,7 +34,7 @@ public class StaffEnquiryView implements EnquiryViewable {
* Represents the data access object for camp-related operations.
*/
public static final CampDao campDao = new CampDaoImpl();

/**
* Represents the data access object for the current user.
*/
Expand All @@ -43,9 +44,10 @@ public class StaffEnquiryView implements EnquiryViewable {
* Represents the data access object for student-related operations.
*/
public static final StudentDao studentDao = new StudentDaoImpl();

/**
* Displays details of enquiries made for the camps created by the current staff member.
* Displays details of enquiries made for the camps created by the current staff
* member.
*/
public void view() {

Expand All @@ -58,18 +60,18 @@ public void view() {
camp = campDao.getCamps().get(createdCampID);
for (Enquiry enquiry : camp.getEnquiries().values()) {
System.out.println("-".repeat(50));
System.out.printf("%-15s: %s\n","Enquiry ID" , enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n","Camp" , camp.getName());
System.out.printf("%-15s: %s\n","Enquired by" , studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n","Enquiry" , enquiry.getEnquiry());
System.out.printf("%-15s: %s\n", "Enquiry ID", enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n", "Camp", camp.getName());
System.out.printf("%-15s: %s\n", "Enquired by", studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n", "Enquiry", enquiry.getEnquiry());
if (enquiry.getReplier() == null || enquiry.getReplier().equals("#NULL!")) {
System.out.printf("%-15s: -\n","Replied by");
System.out.printf("%-15s: -\n","Reply");
System.out.printf("%-15s: -\n", "Replied by");
System.out.printf("%-15s: -\n", "Reply");
} else {
System.out.printf("%-15s: %s\n","Replied by" , enquiry.getReplier());
System.out.printf("%-15s: %s\n","Reply" , enquiry.getReply());
System.out.printf("%-15s: %s\n", "Replied by", enquiry.getReplier());
System.out.printf("%-15s: %s\n", "Reply", enquiry.getReply());
}

System.out.println();
}
}
Expand Down
29 changes: 15 additions & 14 deletions src/views/StudentEnquiryView.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
import utils.PrintUtil;

/**
* The {@code StudentEnquiryView} class provides a view for students to see their enquiries.
* The {@code StudentEnquiryView} class provides a view for students to see
* their enquiries.
* It implements the {@link EnquiryViewable} interface.
*
* @author Chong Jiejun
Expand All @@ -36,10 +37,10 @@ public class StudentEnquiryView implements EnquiryViewable {
* Represents the data access object for student-related operations.
*/
public static final StudentDao studentDao = new StudentDaoImpl();

/**
* Displays the enquiries made by the student.
*/
*/
public void view() {

String campName;
Expand All @@ -48,8 +49,8 @@ public void view() {
Map<Integer, Enquiry> campEnquiryData;
Map<String, Camp> campsData = campDao.getCamps();
Map<String, Student> studentData = studentDao.getStudents();
Student currentUser = (Student)currentUserDao.getCurrentUser();
Student currentUser = (Student) currentUserDao.getCurrentUser();

PrintUtil.header("My Enquiries");
for (Map.Entry<String, ArrayList<Integer>> entry : currentUser.getEnquiries().entrySet()) {
campName = entry.getKey();
Expand All @@ -58,18 +59,18 @@ public void view() {
for (Integer enquiryID : studentCampEnquiryIDList) {
enquiry = campEnquiryData.get(enquiryID);
System.out.println("-".repeat(50));
System.out.printf("%-15s: %s\n","Enquiry ID" , enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n","Camp" , campName);
System.out.printf("%-15s: %s\n","Enquired by" , studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n","Enquiry" , enquiry.getEnquiry());
System.out.printf("%-15s: %s\n", "Enquiry ID", enquiry.getEnquiryID());
System.out.printf("%-15s: %s\n", "Camp", campName);
System.out.printf("%-15s: %s\n", "Enquired by", studentData.get(enquiry.getEnquirer()).getName());
System.out.printf("%-15s: %s\n", "Enquiry", enquiry.getEnquiry());
if (enquiry.getReplier() == null || enquiry.getReplier().equals("#NULL!")) {
System.out.printf("%-15s: -\n","Replied by");
System.out.printf("%-15s: -\n","Reply");
System.out.printf("%-15s: -\n", "Replied by");
System.out.printf("%-15s: -\n", "Reply");
} else {
System.out.printf("%-15s: %s\n","Replied by" , enquiry.getReplier());
System.out.printf("%-15s: %s\n","Reply" , enquiry.getReply());
System.out.printf("%-15s: %s\n", "Replied by", enquiry.getReplier());
System.out.printf("%-15s: %s\n", "Reply", enquiry.getReply());
}

System.out.println();
}
}
Expand Down