From bb661cd80480c9dc6648a2983c62577bab848965 Mon Sep 17 00:00:00 2001 From: James Kollilon Barclay III Date: Fri, 20 Feb 2026 13:47:24 -0500 Subject: [PATCH 01/10] "Added Members class and declared variables " --- src/main/java/org/codedifferently/Members.java | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 src/main/java/org/codedifferently/Members.java diff --git a/src/main/java/org/codedifferently/Members.java b/src/main/java/org/codedifferently/Members.java new file mode 100644 index 0000000..b335c08 --- /dev/null +++ b/src/main/java/org/codedifferently/Members.java @@ -0,0 +1,8 @@ +package org.codedifferently; + +public class Members { + + String name; + String email; + +} From 101443b9862b46fc0d8d5569c39cf25a2d87a71d Mon Sep 17 00:00:00 2001 From: jamiird261-collab Date: Fri, 20 Feb 2026 15:23:52 -0500 Subject: [PATCH 02/10] created and declared variables for gym system class --- src/main/java/org/codedifferently/GymSystem.java | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 src/main/java/org/codedifferently/GymSystem.java diff --git a/src/main/java/org/codedifferently/GymSystem.java b/src/main/java/org/codedifferently/GymSystem.java new file mode 100644 index 0000000..3d8ace4 --- /dev/null +++ b/src/main/java/org/codedifferently/GymSystem.java @@ -0,0 +1,8 @@ +package org.codedifferently; + +public class GymSystem { + + private int memberCount = 0; + private int guestCount = 0; + private int completedAppointments = 0; + private final String gymName = "H2J GYM"; From ad085ec11e89d3c465eeef359115d07bc6c931a6 Mon Sep 17 00:00:00 2001 From: James Kollilon Barclay III Date: Fri, 20 Feb 2026 15:55:25 -0500 Subject: [PATCH 03/10] "Members class and declared variables " --- .../java/org/codedifferently/Members.java | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/codedifferently/Members.java b/src/main/java/org/codedifferently/Members.java index b335c08..7eb7cf1 100644 --- a/src/main/java/org/codedifferently/Members.java +++ b/src/main/java/org/codedifferently/Members.java @@ -1,8 +1,28 @@ package org.codedifferently; +import java.util.ArrayList; +import java.util.Scanner; + public class Members { - String name; - String email; + private ArrayList memberList = new ArrayList<>(); // Array + private final String gymName = "H2J GYM"; //Gym name declared and initialized + + // declared values + static class Member { + String name; + int age; + String gender; + String email; + + Member(String name, int age, String gender, String email) { + this.name = name; + this.age = age; + this.gender = gender; + this.email = email; + } + + } + } From a95e2d52b5c74826a4d8a7f0966fc1782335ee8b Mon Sep 17 00:00:00 2001 From: jamiird261-collab Date: Fri, 20 Feb 2026 16:00:49 -0500 Subject: [PATCH 04/10] "created member comfirmation boolean system class" --- src/main/java/org/codedifferently/GymSystem.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/codedifferently/GymSystem.java b/src/main/java/org/codedifferently/GymSystem.java index 3d8ace4..a7de57a 100644 --- a/src/main/java/org/codedifferently/GymSystem.java +++ b/src/main/java/org/codedifferently/GymSystem.java @@ -2,7 +2,13 @@ public class GymSystem { - private int memberCount = 0; - private int guestCount = 0; - private int completedAppointments = 0; - private final String gymName = "H2J GYM"; + private int memberCount = 0; + private int guestCount = 0; + private int completedAppointments = 0; + private final String gymName = "H2J GYM"; + + public void recordVisit(boolean isMember) { + if (isMember) memberCount++; + else guestCount++; + } +} \ No newline at end of file From d7b285d671612853c03f91c6d5d6814300bcf8f6 Mon Sep 17 00:00:00 2001 From: James Kollilon Barclay III Date: Sat, 21 Feb 2026 10:52:43 -0500 Subject: [PATCH 05/10] "Ask user if they are a member and search members by name" --- .../java/org/codedifferently/MainClass.java | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/main/java/org/codedifferently/MainClass.java diff --git a/src/main/java/org/codedifferently/MainClass.java b/src/main/java/org/codedifferently/MainClass.java new file mode 100644 index 0000000..c1ed235 --- /dev/null +++ b/src/main/java/org/codedifferently/MainClass.java @@ -0,0 +1,63 @@ +package org.codedifferently; + +import java.util.Scanner; + +public class MainClass { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + Members members = new Members(); + Appointments appointments = new Appointments(); + GymSystem gym = new GymSystem(); + + System.out.println("Welcome to " + gym.getGymName() + "!"); + + boolean isMember = members.checkMembership(scanner); + gym.recordVisit(isMember); + + boolean running = true; + while (running) { + System.out.println("\n--- " + gym.getGymName() + " Main Menu ---"); + System.out.println("1. Manage Appointments"); + System.out.println("2. Search Member"); + System.out.println("3. Complete Appointment"); + System.out.println("4. Daily Summary"); + System.out.println("5. Exit"); + System.out.print("Choose option: "); + + int choice = -1; + if (scanner.hasNextInt()) { + choice = scanner.nextInt(); + scanner.nextLine(); + } else { + System.out.println("Invalid input."); + scanner.nextLine(); + continue; + } + + switch (choice) { + case 1: + appointments.handleAppointments(scanner); + break; + case 2: + members.searchMember(scanner); + break; + case 3: + gym.appointmentCompleted(); + System.out.println("Appointment marked as completed at " + gym.getGymName() + "."); + break; + case 4: + gym.dailySummary(); + break; + case 5: + running = false; + break; + default: + System.out.println("Invalid option."); + } + } + + System.out.println("Thank you for visiting " + gym.getGymName() + "! Goodbye!"); + scanner.close(); + } +} From 672eb91b1731ceb5d5161b812c1f8fbf46a483e8 Mon Sep 17 00:00:00 2001 From: James Kollilon Barclay III Date: Sat, 21 Feb 2026 11:25:26 -0500 Subject: [PATCH 06/10] " Member Class done" --- .../java/org/codedifferently/Members.java | 69 ++++++++++++++++++- 1 file changed, 66 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/codedifferently/Members.java b/src/main/java/org/codedifferently/Members.java index 7eb7cf1..b39991a 100644 --- a/src/main/java/org/codedifferently/Members.java +++ b/src/main/java/org/codedifferently/Members.java @@ -5,10 +5,10 @@ public class Members { - private ArrayList memberList = new ArrayList<>(); // Array - private final String gymName = "H2J GYM"; //Gym name declared and initialized + private ArrayList memberList = new ArrayList<>(); + private final String gymName = "H2J GYM"; - // declared values + // declared variables static class Member { String name; int age; @@ -21,8 +21,71 @@ static class Member { this.gender = gender; this.email = email; } + } + + //Ask user if they are a member + public boolean checkMembership(Scanner scanner) { + System.out.print("Are you a member of " + gymName + "? (yes/no): "); + String answer = scanner.nextLine(); + + if (answer.equalsIgnoreCase("yes")) { + System.out.println("Have a great workout at " + gymName + "!"); + return true; + } else { + registerMember(scanner); + return false; + } + } + + // Register new member + public void registerMember(Scanner scanner) { + System.out.println("Welcome to " + gymName + "! Please register:"); + System.out.print("Enter your name: "); + String name = scanner.nextLine(); + + System.out.print("Enter your age: "); + int age = -1; + while (age <= 0) { + if (scanner.hasNextInt()) { + age = scanner.nextInt(); + if (age <= 0) System.out.print("Please enter a valid age: "); + } else { + System.out.print("Invalid input. Enter a number for age: "); + scanner.next(); + } + } + scanner.nextLine(); //created scanner for user input + System.out.print("Enter your gender: "); + String gender = scanner.nextLine(); + + System.out.print("Enter your email: "); + String email = scanner.nextLine(); + + memberList.add(new Member(name, age, gender, email)); + System.out.println("Thank you for registering, " + name + "! Enjoy your visit to " + gymName + "!"); } + // Search for members by name + public void searchMember(Scanner scanner) { + System.out.print("Enter member name to search in " + gymName + ": "); + String name = scanner.nextLine(); + boolean found = false; + + for (Member m : memberList) { + if (m.name.equalsIgnoreCase(name)) { + System.out.println("Member Found: " + m.name + ", Age: " + m.age + ", Gender: " + m.gender + ", Email: " + m.email); + found = true; + break; + } + } + + if (!found) { + System.out.println("Member not found in " + gymName + "."); + } + } + public ArrayList getMemberList() { + return memberList; + } } From 122afe4e05050beb6c0afc6d072cfb0e40aa0b06 Mon Sep 17 00:00:00 2001 From: jamiird261-collab Date: Sat, 21 Feb 2026 11:12:05 -0500 Subject: [PATCH 07/10] "created member comfirmation Daily summary class" --- src/main/java/org/codedifferently/GymSystem.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/codedifferently/GymSystem.java b/src/main/java/org/codedifferently/GymSystem.java index a7de57a..b8ab337 100644 --- a/src/main/java/org/codedifferently/GymSystem.java +++ b/src/main/java/org/codedifferently/GymSystem.java @@ -11,4 +11,16 @@ public void recordVisit(boolean isMember) { if (isMember) memberCount++; else guestCount++; } -} \ No newline at end of file + public void dailySummary() { + System.out.println("\n--- Daily Summary for " + gymName + " ---"); + System.out.println("Members visited: " + memberCount); + System.out.println("Guests visited: " + guestCount); + System.out.println("Appointments completed: " + completedAppointments); + } + + public String getGymName() { + return gymName; + } +} + + From f697fa74d11e6df7c7c1eade2a8b266bc3592f62 Mon Sep 17 00:00:00 2001 From: jamiird261-collab Date: Sat, 21 Feb 2026 12:01:46 -0500 Subject: [PATCH 08/10] gym system class created --- src/main/java/org/codedifferently/GymSystem.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/codedifferently/GymSystem.java b/src/main/java/org/codedifferently/GymSystem.java index b8ab337..81a2e7d 100644 --- a/src/main/java/org/codedifferently/GymSystem.java +++ b/src/main/java/org/codedifferently/GymSystem.java @@ -12,7 +12,7 @@ public void recordVisit(boolean isMember) { else guestCount++; } public void dailySummary() { - System.out.println("\n--- Daily Summary for " + gymName + " ---"); + System.out.println("\n-- Daily Summary for " + gymName + " --"); System.out.println("Members visited: " + memberCount); System.out.println("Guests visited: " + guestCount); System.out.println("Appointments completed: " + completedAppointments); From fdaf2a0397e65f90ef9dca109c9f863cc176aabd Mon Sep 17 00:00:00 2001 From: HeirJordan3 Date: Mon, 23 Feb 2026 12:58:27 -0500 Subject: [PATCH 09/10] fix:added completedappointment method and appointment class --- .../org/codedifferently/Appointments.java | 74 +++++++++++++++++++ .../java/org/codedifferently/GymSystem.java | 5 ++ src/main/java/org/codedifferently/Main.java | 17 ----- 3 files changed, 79 insertions(+), 17 deletions(-) create mode 100644 src/main/java/org/codedifferently/Appointments.java delete mode 100644 src/main/java/org/codedifferently/Main.java diff --git a/src/main/java/org/codedifferently/Appointments.java b/src/main/java/org/codedifferently/Appointments.java new file mode 100644 index 0000000..2f34025 --- /dev/null +++ b/src/main/java/org/codedifferently/Appointments.java @@ -0,0 +1,74 @@ +package org.codedifferently; + +import java.util.ArrayList; +import java.util.Scanner; + +public class Appointments { + //Creating an array list for scheduling and waitlist + private ArrayList schedule = new ArrayList<>(); + private ArrayList waitlist = new ArrayList<>(); + private String gymName = "H2J Gym"; + + + public Appointments(){ + gymName = this.gymName; + } + + public String getGymName() { + return gymName; + } + + public void setGymName(String name){ + this.gymName = gymName; + } + + //Daily Time Slots + private String[] timeSlots = {"9AM", "10AM", "11AM", "12PM", "1PM", "2PM", "3PM", "4PM", "5PM"}; + + public void appointmentHandling(String answer) { + if (answer.equals("no")) { + System.out.println("Ok, have a great day at " + gymName + "!"); + return; + } + + Scanner scan = new Scanner(System.in); + + boolean choice = true; + while (choice) { + int num = 0; + System.out.println("\n--- " + gymName + " Appointment Menu ---"); + System.out.println("Please enter a number to select an option: \n1: Book Appintment" + + "\n2. Cancel Appointment \n3. View Schedule\n4. Exit"); + num = scan.nextInt(); + + + switch(num){ + case 1: + System.out.println("Booking Appointment..."); + break; + case 2: + System.out.println("Cancelling Appointment..."); + break; + case 3: + System.out.println("Viewing Schedule..."); + break; + case 4: + System.out.println("Exiting..."); + default: + System.out.println("Invalid choice please try again"); + + } + } + } + + + + + + + + + + + +} diff --git a/src/main/java/org/codedifferently/GymSystem.java b/src/main/java/org/codedifferently/GymSystem.java index 81a2e7d..ae3962e 100644 --- a/src/main/java/org/codedifferently/GymSystem.java +++ b/src/main/java/org/codedifferently/GymSystem.java @@ -11,6 +11,11 @@ public void recordVisit(boolean isMember) { if (isMember) memberCount++; else guestCount++; } + + public void appointmentCompleted() { + completedAppointments++; + } + public void dailySummary() { System.out.println("\n-- Daily Summary for " + gymName + " --"); System.out.println("Members visited: " + memberCount); diff --git a/src/main/java/org/codedifferently/Main.java b/src/main/java/org/codedifferently/Main.java deleted file mode 100644 index 435139b..0000000 --- a/src/main/java/org/codedifferently/Main.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.codedifferently; - -//TIP To Run code, press or -// click the icon in the gutter. -public class Main { - public static void main(String[] args) { - //TIP Press with your caret at the highlighted text - // to see how IntelliJ IDEA suggests fixing it. - System.out.printf("Hello and welcome!"); - - for (int i = 1; i <= 5; i++) { - //TIP Press to start debugging your code. We have set one breakpoint - // for you, but you can always add more by pressing . - System.out.println("i = " + i); - } - } -} \ No newline at end of file From 120676b4163848295cb33e41d0c4656831de92b9 Mon Sep 17 00:00:00 2001 From: HeirJordan3 Date: Mon, 23 Feb 2026 13:04:23 -0500 Subject: [PATCH 10/10] updated the appointments class --- .../org/codedifferently/Appointments.java | 130 ++++++++++++------ 1 file changed, 90 insertions(+), 40 deletions(-) diff --git a/src/main/java/org/codedifferently/Appointments.java b/src/main/java/org/codedifferently/Appointments.java index 2f34025..97ae89a 100644 --- a/src/main/java/org/codedifferently/Appointments.java +++ b/src/main/java/org/codedifferently/Appointments.java @@ -4,71 +4,121 @@ import java.util.Scanner; public class Appointments { - //Creating an array list for scheduling and waitlist + private ArrayList schedule = new ArrayList<>(); private ArrayList waitlist = new ArrayList<>(); - private String gymName = "H2J Gym"; - - - public Appointments(){ - gymName = this.gymName; - } - - public String getGymName() { - return gymName; - } - - public void setGymName(String name){ - this.gymName = gymName; - } + private final String gymName = "H2J GYM"; - //Daily Time Slots + // Example daily time slots private String[] timeSlots = {"9AM", "10AM", "11AM", "12PM", "1PM", "2PM", "3PM", "4PM", "5PM"}; - public void appointmentHandling(String answer) { - if (answer.equals("no")) { + // Handle appointment menu + public void handleAppointments(Scanner scanner) { + System.out.print("Would you like to make an appointment at " + gymName + "? (yes/no): "); + String choice = scanner.nextLine(); + + if (choice.equalsIgnoreCase("no")) { System.out.println("Ok, have a great day at " + gymName + "!"); return; } - Scanner scan = new Scanner(System.in); - - boolean choice = true; - while (choice) { - int num = 0; + boolean answer = true; + while (answer) { System.out.println("\n--- " + gymName + " Appointment Menu ---"); - System.out.println("Please enter a number to select an option: \n1: Book Appintment" + - "\n2. Cancel Appointment \n3. View Schedule\n4. Exit"); - num = scan.nextInt(); - + System.out.println("1. Book Appointment"); + System.out.println("2. Cancel Appointment"); + System.out.println("3. View Schedule"); + System.out.println("4. Exit"); + System.out.print("Choose option: "); + + int option = -1; + if (scanner.hasNextInt()) { + option = scanner.nextInt(); + scanner.nextLine(); + } else { + System.out.println("Invalid input"); + scanner.nextLine(); + continue; + } - switch(num){ + switch (option) { case 1: - System.out.println("Booking Appointment..."); + bookAppointment(scanner); break; case 2: - System.out.println("Cancelling Appointment..."); + cancelAppointment(scanner); break; case 3: - System.out.println("Viewing Schedule..."); + viewSchedule(); break; case 4: - System.out.println("Exiting..."); + answer = false; + break; default: - System.out.println("Invalid choice please try again"); - + System.out.println("Invalid option."); } } } + private void bookAppointment(Scanner scanner) { + System.out.print("Enter date (MM/DD): "); + String date = scanner.nextLine(); + System.out.println("Available time slots at " + gymName + ":"); + for (String slot : timeSlots) { + if (!schedule.contains(date + " " + slot)) { + System.out.print(slot + " "); + } + } + System.out.println(); + + System.out.print("Enter time: "); + String time = scanner.nextLine(); + String appointment = date + " " + time; + + if (schedule.contains(appointment)) { + System.out.println("Time slot already booked at " + gymName + "! Adding to waitlist..."); + waitlist.add(appointment); + } else { + schedule.add(appointment); + System.out.println("Appointment booked at " + gymName + " for " + appointment); + } + } + private void cancelAppointment(Scanner scanner) { + System.out.print("Enter date and time to cancel (MM/DD TIME): "); + String appointment = scanner.nextLine(); + if (schedule.remove(appointment)) { + System.out.println("Appointment canceled at " + gymName + "."); + if (waitlist.contains(appointment)) { + System.out.println("Moving " + appointment + " from waitlist to schedule."); + schedule.add(appointment); + waitlist.remove(appointment); + } + } else { + System.out.println("Appointment not found at " + gymName + "."); + } + } + private void viewSchedule() { + System.out.println("\n--- Full Schedule at " + gymName + " ---"); + if (schedule.isEmpty()) { + System.out.println("No appointments scheduled."); + } else { + for (String slot : schedule) { + System.out.println(slot); + } + } + if (!waitlist.isEmpty()) { + System.out.println("\n--- Waitlist ---"); + for (String slot : waitlist) { + System.out.println(slot); + } + } + } - - - - - -} + public ArrayList getSchedule() { + return schedule; + } +} \ No newline at end of file