HOTEL MANGEMENT SYSTEM
Project submitted to the
SRM University – AP, Andhra Pradesh
for the partial fulfillment of the requirements to award the degree of
Bachelor of Technology/Master of Technology
In
Computer Science and Engineering
School of Engineering and Sciences
Submitted by
Narayana Devu
Sowmya Tupakula
Under the Guidance of
Mohammad Miskeen Ali
SRM University–AP
Neerukonda, Mangalagiri, Guntur
Andhra Pradesh – 522 240
[December, 2022]
Certificate
Date: 6-Dec-22
This is to certify that the work present in this Project entitled “Hotel management”
has been carried out by Narayana Devu under my/our supervision. The work is
genuine, original, and suitable for submission to the SRM University – AP for the
award of Bachelor of Technology/Master of Technology in School of Engineering
and Sciences.
Supervisor
(Signature)
Prof. / Dr. Mohammad Miskeen Ali
Lecturer,
SRM University AP.
i
Acknowledgements
With a deep sense of gratitude, we wish to express my sincere thanks to my guides,
Dr.Mohammad Miskeen Ali C.S.E Department for giving us the opportunity to work
under them on the project. We truly appreciate and value their esteemed guidance
and encouragement from the beginning to end of this project. We are extremely
grateful to him. We want to thank to my lecturers for providing a solid background
for our studies and research thereafter. They have been great source of inspiration to
us .We also want to thank our parents, who taught us the value of hard work by their
own example. we would like to thank our department for giving us the opportunity
and platform to make our effort a successful one
ii
Table of Contents
Certificate .................................................................................................................................................................... i
Acknowledgements..............................................................................................................ii
Table of Content ................................................................................................................. iii
Abstract ............................................................................................................................... iv
Introduction… .................................................................................................................. v
Listof Tables ............................................................................................................................................................ vi
1.1 Flow Chart .................................................................................................... vi
Objective… ........................................................................................................................ vii
Source Code… ................................................................................................................... viii
List of Figures .............................................................................................................. xxiii
2.1 Code… ..........................................................................................................xxii
Conclusion........................................................................................................................... 3
3.1 Refernces ......................................................................................................... 3
iii
Abstract
The Project HOTEL MANAGEMENT SYSTEM is a web Based application that
allows the hotel manager to handle all hotel activities online. Interactive GUI and the
ability to manage various hotel bookings and rooms make this system very flexible
and convenient. The hotel manager is a very busy person and does not have the time
to sit and manage the entire activities manually on paper. This application gives him
the power and flexibility to manage the entire system from a single online system.
Hotel Management project provides room booking, staff management and other
necessary hotel management features. The system allows the manager to post
available rooms in the system. Customers can view and book room online. Admin has
the power of either approving or disapproving the customer's booking request. Other
hotel services can also be viewed by the customers and can book them too. The system
is hence useful for both customers and managers to portably manage the hotel
activities.
iv
Introduction
The hotel Management is a system that provides us to reserving rooms, check
whether the rooms are vacant are or not by using online browsing. This system is
very useful to all especially for business people. For Business people they don't have
sufficient time for these then they can use these type of online Hotel Management
Systems. By this project we will reduce the faults in bills of their expenditure and
decrease time of delay to give the bills to the customers. By this project we can also
include all the taxes on the bills according to their expenditures. It has a scope to
reduce the errors in making the bills. Computerized bill can be printed within
fraction of seconds. Online ordering of Booking is possible by using this software.
v
List of Tables
Flow Chart
vi
Objective
he main purpose of hotel management is to ensure a constant influx of visitors and
guests to the hotel throughout the year, showcase the wide variety of services and
USPs and how it benefits the visiting guests through marketing initiatives. One that
knows Hotel Management will be able to develop it as an ecosystem that not just
stays in business profit but will grow over time. It covers major aspects of hotel
management; it could perform the following operations- Hotel Booking, Provide you
with Hotel Rooms Info, Room Service, Billing and Record-Keeping.
vii
Source Code
import time
import os
from datetime import date
from random import randint
def calculate_daysbetween(start_day:str,end_day:str):
s_day = [int(i) for i in start_day.split("/")]
e_day = [int(i) for i in end_day.split("/")]
s_day = date(s_day[2],s_day[1],s_day[0])
e_day = date(e_day[2],e_day[1],e_day[0])
difference = e_day - s_day
return difference.days
class Customer:
coupons =
("XX0Y13","XX0Z14","XX0G15","XXZ985","XXU73","XZ999YT","BGA597Y","OO9032",
"UT750087","RT8UPP64")
discount_coupons = ("XX0Y13","XX0Z14","XX0G15","OO9032","UT750087")
def init (self,room_rent = 0,restaurant_bill = 0,laundry_bill = 0,game_bill = 0,a
= 1800,name = "",address = "", cin_date = "",cout_date = "",room_no = 101):
self.name = name
self.address = address
self.cin_date = cin_date
self.cout_date = cout_date
self.room_no = room_no
self.room_rent = room_rent
self.restaurant_bill = restaurant_bill
viii
self.restaurant_bills = []
self.laundry_bill = laundry_bill
self.laundry_bills = []
self.game_bill = game_bill
self.game_bills = []
self.additional_charges = a
self.total_cost = 0
self.coupon = ""
self.coupon_count = 0
self.discount = False
def enter_data(self):
x = ""
x = input("Enter customer name : ")
self.name = x
x = input("Enter customer address: ")
self.address = x
x = input("Enter check-in date : ")
self.cin_date = x
x = input("Enter check-out date : ")
self.cout_date = x
print("Your room no.:",self.room_no,"\n")
self.roomrent()
def roomrent(self):
print ("\nWe have the following rooms for you:-")
print("=========================================")
print("| |")
print("| 1. A1 Class Room ---- >Rs 6000 PN\- |")
ix
print("| 2. A Class Room----- >rs 5000 PN\- |")
print("| 3. B Class Room ----- >rs 4000 PN\- |")
print("| 4. C Class Room ---- >rs 3000 PN\- |")
print("| |")
print("=========================================")
x = int(input("\nEnter your room choice: "))
if(x == 1):
print ("\nYou have opted for A1 Class Room .... ")
n = calculate_daysbetween(self.cin_date,self.cout_date)
self.room_rent = 6000*n
elif(x == 2):
print ("\nYou have opted for A Class Room.... ")
n = calculate_daysbetween(self.cin_date,self.cout_date)
self.room_rent = 5000*n
elif(x == 3):
print ("\nYou have opted for B Class Room ... ")
n = calculate_daysbetween(self.cin_date,self.cout_date)
self.room_rent = 4000*n
elif(x == 4):
print ("\nYou have opted for C Class Room .... ")
n = calculate_daysbetween(self.cin_date,self.cout_date)
self.room_rent = 3000*n
else:
print ("<-- PLEASE CHOOSE A ROOM -->")
print ("your room rent is =",self.room_rent,"\n")
x = input("Press Enter .. ")
def restaurantbill(self):
x
os.system('cls')
items = {1:["Water Bottle",20],2:["Tea",10],3:["BreakFast
Combo",90],4:["Lunch",110],5:["Dinner",150]}
print("\n****** RESTAURENT MENU ******")
print("===================================")
for i in items:
print(f"{i}. {items[i][0]}\n\t--->: {items[i][1]} Rs. Per")
print("6. ---> Calculate Bill")
print("===================================")
print()
items_selected = {1:[0,False],2:[0,False],3:[0,False],4:[0,False],5:[0,False]}
while (1):
choice = int(input("Enter your choice: "))
if choice in items:
print(f"\nItem: {items[choice][0]}")
q = int(input(f"Enter the quantity: "))
items_selected[choice][0] += q
items_selected[choice][1] = True
if q == 1:
print(f"1 {items[choice][0]} Ordered.\n")
else:
print(f"{q} {items[choice][0]} Ordered.\n")
elif choice == 6:
print("Calculating bill amount...")
for i in range(4):
for j in range(i):
print(".",end="")
time.sleep(1)
print()
xi
break
else:
print("INVALID OPTION")
os.system('cls')
amount = 0
print("\nRESTAURANT BILL: ")
print("==============================================")
for item in items_selected:
if(items_selected[item][1]== True):
print(f"{items[item][0]}\n\t--->: Quantity: {items_selected[item][0]} \t Price
{items[item][1] * items_selected[item][0]} Rs.")
amount += items[item][1] * items_selected[item][0]
print("==============================================")
self.restaurant_bill += amount
print (f"Total Bill = {amount} Rs.")
print("==============================================\n")
if len(self.restaurant_bills) != 0:
bill_no = 1
for amt in self.restaurant_bills:
print("\n======================================")
print(f"PREVIOUS BILL NO. {bill_no} : {amt}")
print("======================================\n")
bill_no = bill_no + 1
self.restaurant_bills.append(amount)
x = input("Press Enter...")
def laundrybill(self):
os.system('cls')
xii
cloths = {1:["Shorts",3],2:["Trousers",4],3:["Shirts",5],4:["Jeans",6],5:["Girl suit",8]}
print("\n****** LAUNDRY MENU ******")
print("=================================")
for i in cloths:
print(f"{i}. {cloths[i][0]}\n\t--->: {cloths[i][1]} Rs. Per Peice")
print("6. ---> Calculate Bill")
print("=================================")
print()
cloths_selected = {1:[0,False],2:[0,False],3:[0,False],4:[0,False],5:[0,False]}
while (1):
choice = int(input("Enter your choice: "))
if choice in cloths:
print(f"\nCloth: {cloths[choice][0]}")
q = int(input(f"Enter number of {cloths[choice][0]}: "))
cloths_selected[choice][0] += q
cloths_selected[choice][1] = True
if q == 1:
print(f"1 {cloths[choice][0]} added.\n")
else:
print(f"{q} {cloths[choice][0]} added.\n")
elif choice == 6:
print("Calculating bill amount...")
for i in range(4):
for j in range(i):
print(".",end="")
time.sleep(1)
print()
break
else:
xiii
print("INVALID OPTION")
os.system('cls')
amount = 0
print("\nLAUNDRY BILL: ")
print("==============================================")
for cloth in cloths_selected:
if(cloths_selected[cloth][1] == True):
print(f"{cloths[cloth][0]}\n\t--->: Quantity: {cloths_selected[cloth][0]} \t
Price {cloths[cloth][1] * cloths_selected[cloth][0]} Rs.")
amount += cloths[cloth][1] * cloths_selected[cloth][0]
print("==============================================")
self.laundry_bill += amount
print (f"Total Laundry Cost = {amount} Rs.")
print("==============================================\n")
if len(self.laundry_bills) != 0:
bill_no = 1
for amt in self.laundry_bills:
print("\n======================================")
print(f"PREVIOUS BILL NO. {bill_no} : {amt}")
print("======================================\n")
bill_no = bill_no + 1
self.laundry_bills.append(amount)
x = input("Press Enter...")
def gamebill(self):
os.system('cls')
xiv
sports = {1:["Table tennis",60],2:["Bowling",80],3:["Snooker",70],4:["Video
games",90],5:["Pool",50]}
print("\n******** GAMING MENU ********")
print("=================================")
for i in sports:
print(f"{i}. {sports[i][0]}\n\t--->: {sports[i][1]} Rs. Per Game")
print("6. ---> Calculate Bill")
print("=================================")
print()
sports_played = {1:[0,False],2:[0,False],3:[0,False],4:[0,False],5:[0,False]}
while (1):
choice = int(input("Enter your choice: "))
if choice in sports:
print(f"\nSport: {sports[choice][0]}")
q = int(input(f"Enter number of Hours: "))
sports_played[choice][0] += q
sports_played[choice][1] = True
if q == 1:
print(f"You can play {sports[choice][0]} for next {q} hour.\n")
else:
print(f"You can play {sports[choice][0]} for next {q} hours.\n")
elif choice == 6:
print("Calculating bill amount...")
for i in range(4):
for j in range(i):
print(".",end="")
time.sleep(1)
print()
break
xv
else:
print("INVALID OPTION")
os.system('cls')
amount = 0
print("\nGAMING BILL: ")
print("==============================================")
for sport in sports_played:
if(sports_played[sport][1] == True):
print(f"{sports[sport][0]}\n\t--->: Quantity: {sports_played[sport][0]} \t
Price {sports[sport][1] * sports_played[sport][0]} Rs.")
amount += sports[sport][1] * sports_played[sport][0]
print("==============================================")
self.game_bill = amount
print(f"Total Gaming Cost = {amount} Rs.")
print("==============================================\n")
if len(self.game_bills) != 0:
bill_no = 1
for amt in self.game_bills:
print("\n======================================")
print(f"PREVIOUS BILL NO. {bill_no} : {amt}")
print("======================================\n")
bill_no = bill_no + 1
self.gaming_bills.append(amount)
x = input("Press Enter...")
def play_coupongame(self):
os.system('cls')
xvi
if self.coupon_count == 0:
x = input("Press Enter to get a coupon...")
self.coupon = self.coupons[randint(0,len(self.coupons) - 1)]
self.coupon_count += 1
if self.coupon in self.discount_coupons:
print("Your coupon code is:",self.coupon)
print("Congrats!!! You availed discount of 1000.")
self.discount = True
else:
print("Your coupon code is:",self.coupon)
print("Oops!!! Can't avail discount.")
self.discount = False
else:
print("You can't play coupongame twice...")
x = input("Press Enter...")
def display(self):
os.system('cls')
print("\n\n\t***********************************************")
print("\t*********** WELCOME TO ANDHRA HOTEL ***********")
print("\t***********************************************")
print("===== Customer details ==========================")
print("Customer Name :",self.name)
print("Customer Address :",self.address)
print("Check in date :",self.cin_date)
print("Check out date :",self.cout_date)
print("Room no. :",self.room_no)
print("Your Room rent is :",self.room_rent)
xvii
print("Your Food bill is :",self.restaurant_bill)
print("Your laundary bill is :",self.laundry_bill)
print("Your Game bill is :",self.game_bill)
print("=================================================")
self.total_cost=self.room_rent + self.restaurant_bill + self.laundry_bill +
self.game_bill
print("=================================================")
print ("Your sub total bill is :",self.total_cost)
print ("Additional Service Charges is :",self.additional_charges)
if self.discount == True:
print ("Coupon Discount :",1000)
self.total_cost -= 1000
print ("Your grandtotal bill is :",self.total_cost+self.additional_charges,"\n")
print("=================================================")
self.room_no += 1
x = input("Press Enter...")
class HotelManagement:
def init (self):
self.customers = []
def add_person(self):
x = Customer()
x.enter_data()
self.customers.append(x)
def calculate_restaurantbill(self):
found = 0
c_name = input("Enter customer name: ")
xviii
for c in self.customers:
if c_name == c.name:
c.restaurantbill()
found = 1
if found == 0:
print("No customer with name",c_name)
x = input("Press Enter...")
def calculate_laundrybill(self):
found = 0
c_name = input("Enter customer name: ")
for c in self.customers:
if c_name == c.name:
c.laundrybill()
found = 1
if found == 0:
print("No customer with name",c_name)
x = input("Press Enter...")
def calculate_gamebill(self):
found = 0
c_name = input("Enter customer name: ")
for c in self.customers:
if c_name == c.name:
c.gamebill()
found = 1
if found == 0:
print("No customer with name",c_name)
x = input("Press Enter...")
xix
def calculate_totalcost(self):
found = 0
c_name = input("Enter customer name: ")
for c in self.customers:
if c_name == c.name:
c.display()
found = 1
if found == 0:
print("No customer with name",c_name)
x = input("Press Enter...")
def show_coupon(self):
found = 0
c_name = input("Enter customer name: ")
for c in self.customers:
if c_name == c.name:
print(f"Allowing {c_name} to play coupon game...")
time.sleep(1)
c.play_coupongame()
found = 1
if found == 0:
print("No customer with name",c_name)
x = input("Press Enter...")
def main():
a = HotelManagement()
xx
while (1):
os.system('cls')
print("\n\n\t***********************************************")
print("\t*********** WELCOME TO ANDHRA HOTEL ***********")
print("\t***********************************************")
print("\n=======================================")
print("1.Enter Customer Data")
print("2.Calculate restaurant bill")
print("3.Calculate laundry bill")
print("4.Calculate gamebill")
print("5.Show coupon")
print("6.Show total cost")
print("7.EXIT")
print("=======================================")
choice = int(input("Enter your choice\n>"))
if (choice == 1):
a.add_person()
if (choice == 2):
a.calculate_restaurantbill()
if (choice == 3):
a.calculate_laundrybill()
if (choice == 4):
a.calculate_gamebill()
if (choice == 5):
a.show_coupon()
if (choice == 6):
xxi
a.calculate_totalcost()
if (choice == 7):
quit()
main()
xxii
List of Figures
Code:
xxiii
xxiv
xxv
xxvi
1
2
Conclusion:
References :
Websites reffered :
1.Google for problem solving
2.www.tutorialspoint.com
3.www.pythonprogramming.net
4.www.oracle.com
5.www.geeksforgeeks.com
6.www.w3schools.com
• The conclusion of this project is A Hotel management system is a
computerized management system. This system keeps the records of all
customers entering and leaving dates, costs of their requirements etc.
• Hotel Management System provides room bookings, and bill generation
features. The system will be so simple and attractive which will make the
customer comfortable to use and choose their ideal rooms Customers can
view and book an available room online and the system will automatically
generate the bill according to the number of days the type of room is booked.
and order food from their rooms and for games we are providing coupons.