Skip to content

BalGovindB/ebts

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ETBS - Event Ticket Booking System

A modern, Java-based Event Ticket Booking System featuring a polymorphic domain model, CSV-based persistence, and a clean JavaFX graphical user interface.

Features

  • Modern GUI: Clean and aesthetic user interface built with JavaFX.
  • Polymorphic Events: Supports different event types including Movies, Tours, and Concerts using OOP inheritance.
  • CSV Persistence: All data for events and bookings is stored in flat CSV files for easy portability.
  • Seat Management: Real-time tracking of seat availability with automatic updates to the data store.
  • OOP Principles: Demonstrates key concepts including Inheritance, Composition, Aggregation, and Encapsulation.

Prerequisites

  • Java Development Kit (JDK) 11 or higher.
  • JavaFX SDK (expected at C:\javafx-sdk).

Project Structure

  • src/etbs/: Core domain models and data management logic.
  • src/gui/: Presentation layer and JavaFX application.
  • events.csv: The database for available events.
  • bookings.csv: Persistent log of all successful bookings.

Compilation and Execution

1. Compile the Program

Run the following command from the project root to compile all source files:

javac --module-path "C:\javafx-sdk\lib" --add-modules javafx.controls,javafx.fxml -d out src/etbs/*.java src/gui/*.java

2. Run the GUI Application

To launch the modern graphical interface:

java --module-path "C:\javafx-sdk\lib" --add-modules javafx.controls,javafx.fxml -cp out gui.BookingUI

3. Run the CLI Application (Legacy)

To run the original console-based version:

java -cp out etbs.BookingApplication

Data Management

  • To add new events, edit events.csv following the header format: id,type,name,date,venue,seats,price.
  • Bookings are appended to bookings.csv in real-time.

Screenshots

Home Screen

Home

Booking Screen

Booking

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 88.1%
  • CSS 11.9%