Skip to content

A JavaFX application that manages appointments, customers, and generates reports. The data is pulled from a MySQL database using the Java Database Connectivity API. Dates and times are adjusted based on the location of the user.

Notifications You must be signed in to change notification settings

PcGamer25/scheduling-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scheduling Application

scheduling-app is an appointment scheduling program built using JavaFX that manages appointments, customers, and generates reports. It uses the Java Database Connectivity API to connect to a MySQL database where customer and appointment data is stored.

Features

Login Form

login
  • Accepts a username and password and provides an appropriate error message
  • Determines the user’s location and displays it on the form
  • Displays the form in English or French based on the user’s computer language setting
  • Translates error messages into English or French based on the user’s computer language setting
  • Records all user logins and login attempts with timestamps in login_activity.txt

Appointment Reminder

appointmentspopup
  • Provides an alert with the appointment ID, date, and time if there is an appointment within 15 minutes of the local time of the user’s login

Directory

directory
  • Presents navigation to the Appointments, Customers, and Reports windows
  • Allows the user to log out

Appointments

appointments
  • Displays all appointments in a table in the current time zone
  • Allows adding, updating, and deleting appointments
  • Enables the user to filter appointments by month or week

Add/Edit Appointments

addappointment
  • Performs input validation and blank field checks and displays an error message accordingly
  • Prevents scheduling an appointment outside of business hours (currently defined as 8:00 a.m. to 10:00 p.m. ET including weekends)
  • Prevents scheduling an overlapping appointment for customers
  • Auto-populates the form when modifying an appointment

Customers

customers
  • Displays all customer data in a table
  • Allows adding, updating, and deleting customers
  • Respects foreign key constraints by prompting the user to remove all the customer’s associated appointments first

Add/Edit Customers

addcustomer
  • Performs input validation and blank field checks and displays an error message accordingly
  • Auto-populates the form when modifying a customer

Reports

reports
  • Displays the appointment schedule of each contact, customer, or user in a table
  • Displays the number of customer appointments by type and month

About

A JavaFX application that manages appointments, customers, and generates reports. The data is pulled from a MySQL database using the Java Database Connectivity API. Dates and times are adjusted based on the location of the user.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages