Skip to content

Tamiyo22/AppointmentSchedulingApplication

Repository files navigation

AppointmentSchedulingApplication

• CRUD based console application in Java and JavaFX.

• Identity and role-based access/rendering for consultant, customer, and administrator.

• Object-relational mapping with JDBC and MySQL database.

• Adjustments for time zone and daylight savings time.

• Multi-language log-in support in English and French.

• Appointment Scheduler for Employees, The purpose is to help employees of a global consulting organization organize their meetings, and customers while providing their data analyst reports to analyze in order to help the organization focus which areas need additional focus.

• application version: 3, and 11.16.21

• IntelliJ Community 2020.01, Java SE 11.0.10), and JavaFX-SDK-11.0.2)

• You will need mysql-connector to contact this project to a database. An IDE, I highly recommend IntelliJ. Java 11.0.10, and JavaFX 11.0.2. Make sure that you include JavaFX as a library, and connect to your MySQL database to fully enjoy and use the project. The log in username is "test" and the password is also "test"

• For the appointment type by month report, I created a specialized AppointmentType class for the report. When the user clicks their month of choice the number associated with that month gets filled into the proper method for the month. The method then calls back to the loadMonthTable. The load month table then iterates through all of the appointments, when we see our inputted month, we then grab the types for that month and their counts and store them into a HashMap for a O(1) retrieval and insert time. After our HashMap has all of the key value pairs, I used the for each lambda method to access each pair, and create Appointment type objects. I choose the lambda expression forEach because I thought it was the cleaner and less bulky way to instantiate the implementation of the AppointmentType class objects. The objects which are then input into the types Observable List, which I then used to set the table for the user to view.

• mysql-connector-java-8.1.23

Login Screen image

Login Screen for French language speakers image

Exception handling in both English and French depending on user location and language preferences. image

Multi Language Confirmation image

Main screen image

Appointments image

In all time zones. world wide.

EST Example image

HST Example image

GMT Example image

Exception handling when adding an appointment. All fields need to be filled image

Upcoming Appointment Message image

Adding appointment with a customer that already has an appointment image

Error image

Contact Appointment Reports image

Location Appointment Reports image

Appointment Type By Month Report image

Customers image

Exception Handling when removing a customer image

Database

ERD image

Used MySQL workbench. All times were converted to UTC image

About

•CRUD based console application in Java and JavaFX. Identity and role-based access/rendering for consultant, customer, and administrator. Object-relational mapping with JDBC and MySQL database. Adjustments for time zone and daylight savings time. Multi-language log-in support in English and French. speakers.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors