- Project Overview
- Features
- Technologies Used
- Setup Instructions
- Database Schema
- Usage
- Contributing
- License
The Airport Management System is a web application designed to manage various operations at an airport. It facilitates the management of employees, flight schedules, passenger bookings, gate/runway assignments, and more.
This system ensures efficient and seamless airport operations by leveraging a robust database and an intuitive interface.
-
Employee Management:
- Add employees with either gate or runway assignments.
- Update gate/runway assignments dynamically.
-
Flight Management:
- View available flights based on the date and destination.
- Book tickets for passengers.
-
Validation:
- Ensures data integrity (e.g., employees cannot be assigned both a gate and a runway).
-
Dynamic Updates:
- Seamlessly update employee assignments and flight information via stored procedures.
-
Backend:
- Python (Flask)
- MySQL (Database)
-
Frontend:
- HTML, CSS (with responsive design)
- Jinja2 Templating
-
Stored Procedures:
- MySQL procedures for efficient database operations.
-
Clone the Repository:
git clone https://github.com/yourusername/airport-management-system.git cd airport-management-system -
Set Up the Database:
- Create a MySQL database named
airport_management. - Execute the provided SQL scripts to set up tables and procedures:
source Airport_tables.sql; source procedures.sql;
- Create a MySQL database named
-
Install Python Dependencies:
- Install the required packages using pip:
pip install flask mysql-connector-python
- Install the required packages using pip:
-
Configure the Application:
- Update the
config.pyfile with your database credentials:DB_HOST = "localhost" DB_USER = "root" DB_PASSWORD = "your_password" DB_NAME = "airport_management"
- Update the
-
Run the Application:
python app.py
-
Access the Application:
- Open your browser and navigate to
http://127.0.0.1:5000.
- Open your browser and navigate to
-
Employee Table:
- Tracks employees and their gate or runway assignments.
-
Flight Table:
- Maintains flight schedules and details.
-
Tickets Table:
- Records passenger bookings.
-
Gate and Runway Tables:
- Stores gate and runway information.
UpdateEmployeeGateRunway: Updates employee assignments for gate/runway.BookTicket: Handles ticket bookings.
- Add employees by specifying their gate or runway assignments.
- Update employee assignments dynamically through a simple form.
- View available flights for a specific destination and date.
- Book tickets for passengers while ensuring seat availability.
- The system prevents data conflicts (e.g., assigning both a gate and a runway).
Contributions are welcome! If you have ideas or improvements:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit your changes and push:
git commit -m "Add feature-name" git push origin feature-name - Open a pull request.