0% found this document useful (0 votes)
3 views

CS_PROJECT_REPORT- Arnav

The document outlines a Travel Agency System developed using Python and MySQL, aimed at streamlining booking, cancellation, and customer management processes. It includes features such as destination selection, accommodation booking, and real-time updates, ensuring secure data handling and user-friendly experience. Future enhancements include AI-based recommendations, multilingual support, and mobile application development.

Uploaded by

kanakchhajer99
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

CS_PROJECT_REPORT- Arnav

The document outlines a Travel Agency System developed using Python and MySQL, aimed at streamlining booking, cancellation, and customer management processes. It includes features such as destination selection, accommodation booking, and real-time updates, ensuring secure data handling and user-friendly experience. Future enhancements include AI-based recommendations, multilingual support, and mobile application development.

Uploaded by

kanakchhajer99
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Computer Science Project Report

TRAVEL AGENCY SYSTEM

Arnav Bhardwaj
INDEX

1. PROBLEM DEFINITION
2. PROBLEM ANALYSIS
3. HARDWARE AND SOFTWARE REQUIREMENT
4. FUTURE ENHANCEMENT
5. SOURCE CODE
6. OUTPUT
7. BIBLIOGRAPHY
PROBLEM DEFINITION

The problem is to develop a travel agency system using


Python and MySQL connectivity to streamline booking,
cancellation, and customer management processes. The
system should ensure secure data handling, real-time
updates, and efficient database interactions to enhance user
experience and reduce operational complexities for airlines
and travel agencies. It ensures efficient handling of user
preferences, budgets, and bookings.
PROJECT ANALYSIS

The Travel Agency Program is designed to provide users with an


efficient and user-friendly platform for planning their trips. It
streamlines the entire process by integrating destination selection,
accommodation booking, and personal preference management into
one system. Developed using Python and MySQL, the program
utilizes the mysql.connector module to handle database
interactions, ensuring smooth and secure data management. This
system is highly customizable, catering to user preferences and
offering a seamless trip-planning experience.

Key Modules Used

 Python mysql.connector: This module is the backbone of the


program's database operations. It allows Python to interact
with the MySQL database, enabling features like data insertion,
deletion, updating, and retrieval. With mysql.connector, the
program ensures:
o Efficient handling of user information, including personal
data and preferences.
o Real-time querying and updating of bookings and hotel
availability.
o Secure storage of sensitive data, ensuring user privacy
and preventing data loss.

Features of the Program

The Travel Agency Program provides the following functionalities for


users:
1. Book a New Destination

 Users can select their desired destination from a list of available


options.
 The program captures user information, preferences, and
budget constraints to suggest the best travel and
accommodation choices.
 Users can choose starting locations and receive travel
recommendations based on proximity and convenience.

2. Delete a Booking

 Users have the ability to cancel an existing booking with ease.


 Upon cancellation, the program updates the database,
releasing the reserved spots or rooms for others to book.
 This ensures a real-time update of availability and prevents
double bookings.

3. Show Current Bookings

 Users can view a detailed list of their active bookings, including


information such as:
o Destination
o Hotel name and type
o Room details (type, number of nights, and amenities)
o Total cost
 This feature provides transparency and allows users to manage
their trips efficiently.

4. Show Available Bookings

 Users can explore available booking options for their chosen


destination.
 This includes:
o Accommodation types (boutique hotels, resorts, 7-star, 5-
star, or 4-star hotels)
o Room categories (single, double, suite, family)
o Pricing details
o Duration of stay options

User Input Requirements

To ensure personalized and accurate recommendations, the program


requires the user to input specific information:

Personal Information

 Name: The user's full name for identification and booking


purposes.
 Email ID: Used for communication, booking confirmations, and
updates.
 Number of Persons: Specifies the group size to recommend
suitable accommodations.

Travel Details

 Destination: Users can select their preferred travel destination


from the available options.
 Starting Place: The location from where the user intends to
begin their journey.

Personal Preferences

To further tailor the trip, users are asked to provide additional


preferences:

 Comfortable Language: Ensures users can communicate


effectively with hotel staff or guides during their stay.
 Room Type: Options include:
o Single Room
o Double Room
o Suite
o Family Room
 Number of Nights of Stay: Determines the length of the trip,
helping the program calculate total costs and availability.
Accommodation Options

Once the user provides the required information and preferences,


the program presents a curated list of hotel choices. These options
are categorized by type and budget, including:

1. Boutique Hotels

 Small, stylish hotels offering personalized service.


 Ideal for users seeking unique and intimate accommodations.
 Moderate pricing, balancing luxury and affordability.

2. Resorts

 Designed for leisure and relaxation, often with recreational


facilities.
 Suitable for family vacations or users looking for an all-inclusive
experience.

3. 7-Star Hotels

 Ultra-luxurious properties offering unparalleled amenities and


services.
 Recommended for high-budget users seeking the ultimate
travel experience.

4. 5-Star Hotels

 Luxurious accommodations with excellent service and a wide


range of amenities.
 Offers a balance of comfort and prestige for upper-mid-range
budgets.

5. 4-Star Hotels

 High-quality properties at more affordable rates.


 Ideal for budget-conscious users who still want a comfortable
stay.
Database Design

The MySQL database is structured to support the program's


functionalities efficiently. Key tables include:

 Users: Stores user details like name, email, and preferences.


 Destinations: Contains information on available destinations,
starting places, and travel modes.
 Hotels: Includes data on hotel types, room availability, pricing,
and amenities.
 Bookings: Tracks user bookings, including personal details,
selected options, and costs.

Conclusion

The Travel Agency Program is a comprehensive solution for modern


travelers, addressing the complexities of trip planning with a simple
and effective platform. By leveraging Python and MySQL, the
program ensures secure data management and an intuitive interface.
With features like destination booking, personalized preferences,
and flexible management, it caters to the needs of both individual
users and travel agencies, making it a valuable tool for hassle-free
travel planning.
HARDWARE AND SOFTWARE REQUIRED HARDWARE

OS - Microsoft Windows 10

System type - X86-64 bit based processor

Processor - Intel(R) core(TM) i5-8250U

CPU - 2.4 GHz

Memory (RAM) - 8.00 GB

Front End - Python v3.8.2:7b3ab59, MSC v.1916 64 bit


(AMD64)]

Back End - MySQL Version 8.0


FUTURE ENHANCEMENTS

Here are some future enhancement ideas for the flight booking
management system:

1. Integration with Flight and Transport Booking: Add real-time


flight, train, and car rental booking options to provide a
comprehensive travel planning experience.

2. AI-Based Recommendations: Implement machine learning


algorithms to analyze user preferences, past bookings, and ratings to
suggest personalized travel plans and destinations.

3. Multilingual Support: Expand the language options to


accommodate a global audience, making the program accessible to
users from different regions.

4. Mobile Application Development: Create a mobile app version for


easier access and a better user experience on smartphones and
tablets.

5. Dynamic Pricing and Offers: Include real-time price updates,


discounts, and special offers from travel and hospitality partners to
enhance user engagement.

6. Social Media Integration: Allow users to share their travel plans


on social media, gather recommendations, or collaborate with
friends on group bookings.

7. Feedback and Reviews System: Introduce a module where users


can leave reviews and ratings for destinations, hotels, and services to
guide future travelers.

8. Enhanced Security Features: Add advanced security measures like


two-factor authentication and encrypted payment gateways to
protect user data and transactions.
SOURCE CODE

import mysql.connector
print('''----------------------------------------------------------
WELCOME TO EPIC TRAVEL AGENCY
------------------------------------------------------------''')
mydb = mysql.connector.connect(host = 'localhost',user = 'root',password = 'Flat@115')
mycursor = mydb.cursor()
mycursor.execute('create database if not exists travels')
mycursor.execute('use travels')
mycursor.execute('''create table if not exists destination(name varchar(50) not null, email
varchar(80) unique,location1 varchar(30) not null,location2 varchar(30) not null,language
varchar(15),persons integer(50), cost integer(50))''')

#function to add a new booking

def add_destination ():


name = input('Enter Your Name: ')
email = input('Enter Your Email: ')
location1 = input('Enter Your Beginning Destination: ')
location2 = input('Enter Your Dream Destination: ')
language = input('The Language You Are Comfortable With: ')
persons = int( input('No Of Persons For Travel: '))
query = f"INSERT INTO destination
(name,email,location1,location2,language,persons)VALUES( '{name}','{email}','{location1}','{l
ocation2}','{language}',{persons} )"
mycursor.execute(query)
mydb.commit()
print(f"your destination {location2} has been added to the list")
print('''
''')
rcost = cost()
query = f"Update destination set cost = {rcost} where name='{name}'"
mycursor.execute(query)
mydb.commit()
print("\nYOUR ACCOMANDATION COST IS ",rcost)
print("\nCOST UPDATED !!!\n\n")

#function for transportation


def transport():
print("TRANSPORTATION FACILITIES")

print("1 --> Roadways")


print("2 --> Railways")
print("3 --> Airways")
print("4 --> Waterways")

choice = input ( ' Enter your choice : ' )

if choice == '1':
print('For details about roadways contact us on : 9042538884')
elif choice == '2':
print('For details about Railways contact us on : 9045248883')
elif choice == '3':
print('For details about Airways contact us on : 7299007882')
elif choice == '4':
print('For deatils about Waterways contact us on : 7299228773')
else:
print('Invalid Choice, PLEASE Try Again')

print('''
''')

#function for accomodation cost


def accomodation_cost ():

room = input('Enter the room type (single,double,suite or family) : ')


nights = int(input('No of nights you want to stay : '))
print('''Prices for one night stay -->
BOUTIQUE(1) -- Rs.27,000
RESORT(2) -- Rs.25,000
7 STAR(3) -- Rs.20,000
5 STAR(4) -- Rs.15,000
4 STAR(5) -- Rs.12,000 ''')

hotel = input('The type of hotels you want ((1),(2),(3),(4),(5)) : ')


if hotel == '1':
roomcost = 27000 * nights
elif hotel == '2':
roomcost = 25000 * nights
elif hotel == '3':
roomcost = 20000 * nights
elif hotel == '4':
roomcost = 15000 * nights
elif hotel == '5':
roomcost = 12000 * nights
else:
roomcost = 0

return roomcost

#function for cost


def cost():
print('DETAILS FOR ACCOMODATION COST')

roomcost = accomodation_cost()

print('''
''')
return roomcost

#function to view destinations


def view_destinations():
mycursor.execute('SELECT * FROM destination')
results = mycursor.fetchall()
if results:
print('THE LIST OF DESTINATIONS')
for row in results:
print(f"name:{row[0]}")
print(f"email:{row[1]}")
print(f"location1:{row[2]}")
print(f"location2:{row[3]}")
print(f"language:{row[4]}")
print(f"persons:{row[5]}")
print(f"roomcost:{row[6]}")

print("-" * 40)
else:
print(' ')

def search_destinations():
location = input("Enter the Destination to Search : ")
mycursor.execute(f"SELECT * FROM destination where location2='{location}'")
results = mycursor.fetchall()
if results:
print('MATCHING DESTINATIONS')
for row in results:
print(f"name:{row[0]}")
print(f"email:{row[1]}")
print(f"location1:{row[2]}")
print(f"location2:{row[3]}")
print(f"language:{row[4]}")
print(f"persons:{row[5]}")

print("-" * 40)
else:
print('NO MATCHING DESTINATION FOUND ')

#function for deleting a destination


def delete_destinations():
view_destinations()
print('''
''')
print('DO YOU WANT TO DELETE A DESTINATION')
print('1 --> YES')
print('2 --> NO')

choice = int(input('Enter your choice : '))

if choice == 1:

location2 = input('Enter the dream destination that need to be deleted: ')


mycursor.execute(f"delete from destination where location2 = '{location2}' ")
mydb.commit()

print(f"Your Dream Destination {location2} has been deleted.")


else:
print('''****************************************
THANK YOU
*******************************************************''')
print('''
''')

print(''' COLLECT MOMENTS WHILE TRAVELING NOT THINGS !!!! ''')

while True:
print("Press 1 - Add a New Destination")
print("Press 2 - Display All Destinations")
print("Press 3 - Delete a Destination")
print("Press 4 - Search by Destination")
print("Press 5- Exit")
ch = int(input("Enter your choice : "))
if ch == 1:
add_destination()
transport()

elif ch == 2:
view_destinations()
elif ch == 3:
delete_destinations()
elif ch == 4:
search_destinations()
else:
break
SAMPLE OUTPUT
BIBLIOGRAPHY

● The Complete Reference Python by Martin C. Brown from


Mc. GrawHill publications
● Computer Science with Python by Sumita Arora from
Dhanpat Rai & Co. publications
● www.geeksforgeeks.org
● www.python.org

You might also like