Skip to content

Abdullahmohammadaref/AirlineManagementSystem

Repository files navigation

Airline Management System

Overview

This is a Java based UI desktop application is primarily focused on helping airline companies book flights and manage different aspects of their business like aircrafts (commercial and cargo), employees, passengers, flights (commercial and cargo), bookings, and Served airports.

Features

  • Adding, removing, updating, and viewing data.
  • Automatic saving of data into .txt files every 20 seconds, and loading the data when the application starts again.
  • Search bar for querying data records using unique attributes.

Requirements

  • Java version: JDK 25.
  • Swing Library: On Intellij IDEA Download the "Swing UI Designer"" plugin to edit GUI components(.form files).

Structure

  • Main class: The AirlineManagementSystem class contains the entry point for the application.

  • Classes:

    • Aircraft (Abstract)
      • CommercialAircraft (Concrete)
      • CargoAircraft (Concrete)
    • Flight (Abstract)
      • CommercialFlight (Concrete)
      • CargoFlight (Concrete)
    • FlightInstance (Abstract)
      • CommercialFlightInstance (Concrete)
      • CargoFlightInstance (Concrete)
    • Person (Abstract)
      • Passenger (Concrete)
      • Employee (Abstract)
        • Pilot (Concrete)
        • FlightAttendant (Concrete)
    • Airport (Concrete)
    • Country (Concrete)
    • City (Concrete)
    • Language (Concrete)
    • Cabin (Concrete)
    • Seat (Concrete)
    • Fare (Concrete)
    • Booking (Concrete)
    • Manufacturer (Concrete)
    • Model (Concrete)
    • AircraftType (Enum)
    • FlightInstanceType (Enum)
    • FlightType (Enum)
    • SubmitAction (Enum)
  • Compositions :

    • Country > City
    • Manufacturer > Model
    • CommercialAircraft > Cabin > Seat
    • CommercialFlight > CommercialFlightInstance > Fare
    • CargoFlight > CargoFlightInstance
    • Passenger > booking
  • UI Classes: Each of these classes contain a panel and have a dedicated .form file:

    • AirlineManagementSystem (Entry point)
    • Aircrafts
    • Airports
    • CargoAircrafts
    • CargoFlights
    • CommercialAircrafts
    • CommercialFlights
    • Countries
    • Employees
    • FlightAttendants
    • Flights
    • Languages
    • MainMenu
    • Manufacturers
    • Passengers
    • Pilots
  • Data files: Each concrete class have a .txt files. Each Abstract parent classes have a text file (except for the Employee class). These files are located in the project's main directory.

How to run

  1. Clone the project to your machine.
  2. Open the project using an IDE.
  3. Navigate to the AirlineManagementSystem.java file.
  4. Find the main method and run the file from there.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages