CS Project
CS Project
Certificate
This is to certify that Mr. Subham Rout a student of class XII
(Science), CBSE Roll No: __________ has successfully
completed the project work entitled “ Hotel Management
System” in the subject Computer Science (083) laid down in
the regulations of CBSE for the purpose of Practical
Examination in Class XII to be held in Carmel English
Medium School, Jatni, Khordha.
_____________ _____________
Teacher-In-Charge External Examiner
(Computer Science Department)
______________
Principal
Pag
e-2
Acknowledgement
Apart from the efforts of me, the success of any project depends largely on the
encouragement and guidelines of many others. I take this opportunity to express
my gratitude to the people who have been instrumental in the successful
completion of this project.
I express deep sense of gratitude to almighty God for giving me strength for the
successful completion of the project.
I express my heartfelt gratitude to my parents for constant encouragement while
carrying out this project.
I gratefully acknowledge the contribution of the individuals who contributed in
bringing this project up to this level, who continues to look after me despite my
flaws.
I express my deep sense of gratitude to the luminary The Principal, Carmel
English Medium School, Khordha, who has been continuously motivating and
extending their helping hand to us.
Page
–3
TABLE OF CONTENTS
SL No DESCRIPTION PAGE NO
01 INTRODUCTION 5
03 PROPOSED SYSTEM 7
04 FLOW CHART 8
05 SOURCE CODE 9
06 OUTPUT 14
08 BIBLIOGRAPHY 17
Page – 4
Introduction
The Hotel Management System is an advanced
software application designed to automate and
streamline various hotel operations. The hospitality
industry often faces challenges such as inefficient room
allocation, manual errors in billing, difficulty in
tracking customer details, and managing staff
schedules. These challenges can lead to poor customer
experiences and revenue loss.
This system aims to address such issues by offering a
centralized platform to handle all key hotel activities.
The application is equipped with features to manage
room bookings, maintain customer information, process
payments, and generate reports, ensuring a seamless
operation for hotel administrators and staff.
The system is scalable and can cater to small hotels as
well as large resorts, enabling adaptability as per
business needs. By reducing the dependency on manual
efforts, it not only saves time but also minimizes errors,
thereby enhancing the hotel's productivity and
profitability.
Page – 5
Page – 6
Proposed System :
The proposed system offers the following features:
Room Booking and Availability Check: Allows customers to
book rooms and check room availability in real-time.
Customer Management: Stores and manages customer details.
Billing and Payment: Automates the billing process and
supports multiple payment modes.
Check-In and Check-Out Management:
Check-In:
Check-Out:
Page - 7
Flow Chart
Page – 8
Source Code
Language: Python (with Tkinter for GUI)
1. Room Boking and Availability Check:
from tkinter import *
from tkinter import messagebox
class HotelManagement:
def __init__(self, root):
self.root = root
self.root.title("Hotel Management System")
self.root.geometry("600x400")
# Display Rooms
self.display_label = Label(root, text="", font=("Arial", 12))
self.display_label.pack()
Page - 9
def check_availability(self):
room = self.room_no.get()
if room in self.rooms:
if self.rooms[room] == "Available":
messagebox.showinfo("Availability", f"Room {room} is available.")
else:
messagebox.showinfo("Availability", f"Room {room} is booked.")
else:
messagebox.showerror("Error", "Invalid Room Number.")
def book_room(self):
room = self.room_no.get()
if room in self.rooms:
if self.rooms[room] == "Available":
self.rooms[room] = "Booked"
messagebox.showinfo("Success", f"Room {room} has been booked.")
else:
messagebox.showerror("Error", "Room already booked.")
else:
messagebox.showerror("Error", "Invalid Room Number.")
if __name__ == "__main__":
root = Tk()
app = HotelManagement(root)
root.mainloop()
Page – 10
class CustomerManagement:
def __init__(self, root):
self.root = root
self.customers = {}
Page – 11
class HotelCheckInOut:
def __init__(self, root):
self.root = root
self.root.title("Hotel Management System - Check-In/Check-Out")
self.root.geometry("600x500")
# Check-In Frame
Label(self.root, text="Customer Check-In", font=("Arial", 16)).pack(pady=10)
Label(self.root, text="Customer Name:").pack()
self.checkin_name = Entry(self.root)
self.checkin_name.pack()
Label(self.root, text="Room Number:").pack()
self.checkin_room = Entry(self.root)
self.checkin_room.pack()
Button(self.root, text="Check-In", command=self.check_in).pack(pady=10)
# Check-Out Frame
Label(self.root, text="Customer Check-Out", font=("Arial", 16)).pack(pady=20)
Label(self.root, text="Room Number:").pack()
self.checkout_room = Entry(self.root)
self.checkout_room.pack()
Button(self.root, text="Check-Out", command=self.check_out).pack(pady=10)
Page – 12
# Display Message
self.display_label = Label(self.root, text="", font=("Arial", 12), fg="green")
self.display_label.pack(pady=20)
def check_in(self):
name = self.checkin_name.get().strip()
room = self.checkin_room.get().strip()
def check_out(self):
room = self.checkout_room.get().strip()
if room:
if room in self.customers:
customer_name = self.customers.pop(room)
messagebox.showinfo("Success", f"Check-Out Successful for {customer_name}
from Room {room}.")
Page - 13
if __name__ == "__main__":
root = Tk()
app = HotelCheckInOut(root)
root.mainloop()
Output :
1. Room Booking and Availability Check:
- Room 101 is available.
- Room 102 is booked.
2. Customer Management:
- Added Customer: XYZ, Room: 101.
3. Billing:
- Total bill for 3 days: $450.
Page – 14
4. Check-In Success:
Input:
o Customer Name: XYZ
o Room Number: 101
Message: "Check-In Successful for XYZ in Room 101."
Display: "Room 101 is now occupied by XYZ.
5. Check-Out Success:
Input:
o Room Number: 101
Message: "Check-Out Successful for XYZ from Room 101."
Display: "Room 101 is now available."
Page – 15
Software requirements:
I. Windows / OS / Linux
II. Python
III. MySQL or Tkinter
IV. Word processor
V. Editor : PyCharm / VS code
Page - 16
Bibliography
Page - 17