A
Project Report
on
HOTEL MANAGEMENT SYSTEM
Submitted in partial fulfilment of the Requirements for AISSCE EXAMINATION
Submitted by
Krish Kumar
Board Roll No :
Guided by
Pradeep Ch Mohanty
PGT, Computer Science
CERTIFICATE
ACKNOWLEDGEMENT
We have to express our thanks unreserved by towards Mr. Pradeep
handra Mohanty for the expert and valuable guidance lent to us in
completing this project work assigned to us. The tips provided by
them stood us to good stead in accomplishing our work to the best
of level form our side. Our heart goes out with deep gratitude to
them, for the perennial patronage in our studies and especially this
project work. We are sure to be largely helped by the experience of
the project worked in the time to come.
PREFACE
Computer Programming is an art. It is a way of explaining how a specific
task is to be performed by a given computer driven by speedy development
in the underlying hardware, compile programs have become considerably
complex and bigger.
Contrary to popular belief computer programming can be both fun and an
excellent opportunity to exercise your mind, creativity and imagination. It
gives us the power to instruct computers according to our will. With highly
powerful work horses at disposal, there is no limit to what we can do with
the help of programming languages. The only limit being our own
imagination.
Computer programming is that art which creates an artist in you and
increase the capability of imagination…
We again convey our thanks to Mr, Pradeep Chandra Mohanty for their
great guidance and precious time without this it is impossible for us to
complete the project.
Contents
Introduction
Objectives
Scope
H/W & S/W Requirements
System Development life cycle(SDLC)
Phases of SDL
Project category.
Analysis (DFDs, ER Diagrams, Class Diagrams etc.)
Coding
Screens(forms)
Implementation & testing
A complete structure which includes :
Number of modules and their description to provide an estimation of the
student’s effort on the project .
Data Structures as per the project requirements for all the modules.
Process Logic of each module.
Report generation.
Security and Validation Checks..
Conclusions
Bibliography
HOTEL MANAGEMENT SYSTEM
INTRODUCTION
This project is aimed at developing a system that is an easy to
operate user friendly,economically priced software that commited to
meet the all requirements to manage small,medium and big scale
hotels..I have tried
my best to make the complicated process of Hotel Management
System as simple
as possible using Structured & Modular technique & Menu oriented
interface. I have tried
to design the software in such a way that user may not have any
difficulty in using this
package & further expansion is possible without much effort. Even
though I cannot claim
that this work to be entirely exhaustive, the main purpose of my
exercise is perform each
Employee’s activity in computerized way rather than manually which
is time consuming.
I am confident that this software package can be readily used by
non-programming
personal avoiding human handled chance of error. This project is
used by two types of
users
i. Online Users.
ii. Administrator (management of the Hotel).
Online users can see the required articles or news
Administrator can maintain daily updates in the hotel records.
Administrator is must be
an authorized user. He can further change the password. There is the
facility for password
recovery, logout etc.
The main aim of the entire activity is to automate the process of day
to day activities of
Hotel like Room activities, Admission of a New Customer, Assign a
room according to
customer’s demand, checkout of a computer and releasing the room
and finally compute
the bill etc.
The limited time and resources have restricted us to incorporate, in
this project, only a
main activities that are performed in a HOTEL Management System,
but utmost care has
been taken to make the system efficient and user friendly. “HOTEL
Management
System” has been designed to computerized the following functions
that are performed
by the system:
Room Detail Functions
Opening a New Room
Modification to room assigned
Check-in and check-out Detail Functions
Admission of New customer
Check-out of customer
Room assigning related to customer’s need.
Statement of Customer Details
Check-in customer
Check-out customer
Room Details
Total number of Customers in the Hotel
Individual customer Report
OBJECTIVE
During the past several decades personnel function has been
transformed from a
relatively obscure record keeping staff to central and top level
management function.
There are many factors that have influenced this transformation like
technological
advances, professionalism, and general recognition of human beings
as most important
resources.
A computer based management system is designed to handle all
the primary
information required to calculate monthly statements. Separate
database is
maintained to handle all the details required for the correct
statement calculation
and generation.
This project intends to introduce more user friendliness in the
various activities
such as record updation, maintenance, and searching.
The searching of record has been made quite simple as all the
details of the
customer can be obtained by simply keying in the identification of
that customer.
Similarly, record maintenance and updation can also be
accomplished by using
the identification of the customer with all the details being
automatically
generated. These details are also being promptly automatically
updated in the
master file thus keeping the record absolutely up-to-date.
The entire information has maintained in the database or Files and
whoever wants
to retrieve can’t retrieve, only authorization user can retrieve the
necessary
information which can be easily be accessible from the file.
The main objective of the entire activity is to automate the process
of day to day
activities of Hotel like:
1. Room activities,
2. Admission of a New Customer,
3. Assign a room according to customer’s demand,
4. Checkout of a computer and releasing the room
5. Finally compute the bill etc.
6. Packages available.
7. Advance online bookings.
8. Online Cancellation.
9. List of Regular customers.
10. Email facility.
11. Feedbacks
This project have some more features:
System Connectivity
No data duplication
No Paper Work Required
Time Efficient
Cost Efficient
Automatic data validation
User friendly environment
Data security and reliability
Fast data insertion & retrieval
Easy performance check
SCOPE
I have designed the given proposed system in the JSP to automate
the process of Hotels.
This project is useful for the authorities which keep track of all the
users registered in a
particular state .The authority can add hotel packages, room details,
availability of rooms, online booking etc.
The following steps that give the detailed information of the need of
proposed system are:
Performance: During past several decades, the records are
supposed to be manually
handled for all activities. The manual handling of the record is time
consuming and
highly prone to error. To improve the performance of the Hotel
Management System, the computerized system is to be undertaken.
This project is fully computerized and user
friendly even that any of the members can see the report and status
of the company.
Efficiency: The basic need of this website is efficiency. The website
should be efficient
so that whenever a new user submits his/her details the website is
updated automatically.
This record will be useful for other users instantly.Control: The
complete control of the project is under the hands of authorized
person who has the password to access this project and illegal
access is not supposed to deal with. All the control is under the
administrator and the other members have the rights to just see the
records not to change any transaction or entry.
Security: Security is the main criteria for the proposed system.
Since illegal access may corrupt the database. So security has to be
given in this project.
Scope of Future Application
This project can be used in the hotel after adding some more useful
modules in the
project for which hotel are providing services.
Utmost care and back-up procedures must be established to ensure
100% successful
implementation of the computerized hotel system. In case of system
failure, the
organization should be in a position to process the transaction with
another organization
or if the worst comes to the worst, it should be in a position to
complete it manually.
Scope of Improvement
Now a days hotel are providing many other facilities, this project can
also be improved
with the improvement in the Hotels.
Utmost care and back-up procedures must be established to ensure
100% successful
implementation of the computerized banking system. In case of
system failure, the
organization should be in a position to process the transaction with
another organization
or if the worst comes to the worst, it should be in a position to
complete it manually.
.
Hardware Specification :
Processor : Intel Core i9-14900K (14th gen) desktop proces. …
Clock Speed : 2 GHz
RAM : 32GB
Hard disk Capacity : 1TB
Keyboard : 101 Keys
Mouse : Optical Mouse
Software Specification: -
Front End : Python 3.6 or above
Back End : SQL Database
Operating System : Windows 10 or above
SYSTEM DEVELOPMENT LIFE CYCLE
The systems development life cycle is a project management technique
that divides complex projects into smaller, more easily managed segments
or phases. Segmenting projects allows managers to verify the successful
completion of project phases before allocating resource to subsequent
phases. Software development projects typically include initiation, planning,
design, development, testing, implementation, and maintenance phases.
However, the phases may be divided differently depending on the organization
involved. For example, initial project activities might be designated as request,
requirements-definition, and planning phases, or initiation, concept-
development, and planning phases. End users of the system under
development should be involved in reviewing the output of each phase to
ensure the system is being built phase to ensure the system is being built to
deliver the needed functionality.
Phases Of System Development Life Cycle
Initiation Phase
The Initiation Phase begins when a business sponsor identifies a need or an
opportunity. The purpose of the Initiation Phase is to:
1>Identify and validate an opportunity to improve business accomplishments of
the organization or a deficiency related to a business need.
2>Identify significant assumptions and constraints on solutions to that need.
3>Recommend the exploration of alternative concepts and methods to satisfy
the need including questioning the need for technology, i.e., will a change in
the business process offer a solution?
4>Assure executive business and executive technical sponsorship.
The Sponsor designates a Project Manager and the business need is
documented in a Concept Proposal.
The Concept Proposal includes information about the business process and
the relationship to the Agency/Organization Infrastructure and the Strategic
Plan.
A successful Concept Proposal results in a Project Management Charter which
outlines the authority of the project manager to begin the project.
Careful oversight is required to ensure projects support strategic business
objectives and resources are effectively implemented into an organization's
enterprise architecture. The initiation phase begins when an opportunity to add,
improve, or correct a system is identified and formally requested through the
presentation of a business case. The business case should, at a minimum,
describe a proposal’s purpose, identify expected benefits, and explain how the
proposed system supports one of the organization’s business strategies.
The business case should also identify alternative solutions and detail as many
informational, functional, and network requirements as possible.
System Concept Development Phase
The System Concept Development Phase begins after a business need or
opportunity is validated by the Agency/Organization Program Leadership and
the Agency/Organization CIO.
The purpose of the System Concept Development Phase is to:
1>Determine the feasibility and appropriateness of the alternatives.
2>Identify system interfaces.
3>Identify basic functional and data requirements to satisfy the business need.
Establish system boundaries, identify goals, objectives, critical success factors,
and performance measures.
4>Evaluate costs and benefits of alternative approaches to satisfy the basic
functional requirements .
5>Assess project risks.
6>Identify and initiate risk mitigation actions, and
7>Develop high-level technical architecture, process models, data models, and
a concept of operations.
This phase explores potential ,technical solutions within the context of the
business need.
It may include several trade-off decisions such as the decision to use COTS
software products as opposed to developing custom software or reusing
software components, or the decision to use an incremental delivery versus a
complete, one- time deployment. Construction of executable prototypes is
encouraged to evaluate technology to support the business process.
The System Boundary Document serves as an important reference document
to support the Information Technology Project Request (ITPR) process. The
ITPR must be approved by the
State CIO before the project can move forward.
Planning Phase
The planning phase is the most critical step in completing development,
acquisition, and maintenance projects.
Careful planning, particularly in the early stages of a project, is necessary to
coordinate activities and manage project risks effectively. The depth and
formality of project plans should be commensurate with the characteristics and
risks of a given project.
Project plans refine the information gathered during the initiation phase by
further identifying the specific activities and resources required to complete a
project. A critical part of a project manager’s job is to coordinate discussions
between user, audit, security, design, development, and network personnel to
identify and document as many functional, security, and network
requirements as possible.
During this phase, a plan is developed that documents the approach to be
used and includes a discussion of methods, tools, tasks, resources, project
schedules, and user input.
Personnel assignments, costs, project schedule, and target dates are
established.
A Project Management Plan is created with components related to acquisition
planning, configuration management planning, quality assurance
planning, concept of operations, system security, verification and validation
and systems engineering management planning.
Requirements Analysis Phase
This phase formally defines the detailed functional user requirements using
high-level requirements identified in the Initiation, System Concept, and
Planning phases. It also delineates the requirements in terms of data, system
performance, security, and maintainability requirements for the system. The
requirements are defined in this phase to a level of detail sufficient for systems
design to proceed.
They need to be measurable, testable, and relate to the business need or
opportunity identified in the Initiation Phase. The requirements that will be used
to determine acceptance of the system are captured in the Test and Evaluation
Master Plan. The purposes of this phase are to:
1>Further define and refine the functional
and data requirements and document them
in the Requirements Document,
2>Complete business process reengineering of the functions to be supported
(i.e., verify what information drives the business process, what information is
generated,
who generates it, where does the information go, and who processes it),
3>Develop detailed data and process models (system inputs, outputs, and the
process.
4>Develop the test and evaluation requirements that will be used to determine
acceptable system performance.
Design Phase
The design phase involves converting the informational, functional, and
network requirements identified during the initiation and planning phases into
unified design specifications that developers use to script programs during the
development phase. Program designs are c onstructed in various ways. Using
a top-down approach, designers first identify and link major program
components and interfaces, then expand design layouts as they identify and
link smaller subsystems and connections. Using a bottom-up approach,
designers first identify and link minor program components and interfaces, then
expand design layouts as they identify and link larger systems and
connections.
Contemporary design techniques often use prototyping tools that build mock-
up designs of items such as application screens, database layouts, and system
architectures. End users, designers, developers, database managers, and
network administrators should review and refine the prototyped designs in an
iterative process until they agree on an acceptable design. Audit, security, and
quality assurance personnel should be involved in the review and approval
process.
During this phase, the system is designed to satisfy the functional
requirements identified in the previous phase. Since problems in the design
phase could be very expensive to solve in the later stage of the software
development, a variety of elements are considered in the design to mitigate
risk. These include:
Identifying potential risks and defining design features.
Performing a security risk assessment.
Developing a conversion plan to migrate current data to the new system.
Determining the operating environment.
Defining major subsystems and their inputs and outputs.
Allocating processes to resources.
Preparing detailed logic specifications for each software module.
The result is a draft System Design Document which captures the preliminary
design for the system. Everything requiring user input or approval is
documented and reviewed by the user.
Once these documents have been approved by the Agency CIO and Business
Sponsor, the final System Design Document is created to serve as the
Critical/Detailed Design for the system. This document receives a rigorous
review by Agency technical and functional representatives to ensure that it
satisfies the business requirements.
Concurrent with the development of the system design, the Agency Project
Manager begins development of the Implementation Plan, Operations and
Maintenance Manual, and the Training Plan.
Development Phase
The development phase involves converting design specifications
into executable programs. Effective development standards include
requirements that programmers and other project participants discuss design
specifications before programming begins. The procedures help ensure
programmers clearly understand program designs and functional requirements.
Programmers use various techniques to develop computer programs. The
large
transaction-oriented programs associated with financial institutions have
traditionally been developed using procedural programming
techniques.
Procedural programming involves the line-by-line scripting of logical
instructions that are combined to form a program.
Effective completion of the previous stages is a key factor in the success of the
Development phase. The Development phase consists of:
1>Translating the detailed requirements and
design into system components.
2>Testing individual elements (units) for
usability.
3>Preparing for integration and testing of the IT system.
PROJECT CATEGORY
This Project is coupled with material on how to use the various tool, subsets
available in JSP, SERVLETS AND MY SQL. The need of today’s software
development is competence in a GUI based front-end tool,
which can connect to Relational Database engines. This gives the programmer
the opportunity to develop client server based commercial applications.
These applications give users the power and ease of a GUI with the multi user
capabilities of Novell, UNIX or WinNT based RDBMS engines such as MY SQL
All the important coding techniques used by programmers, in OOPS based
coding is brought out in full and in great detail.
System Study & Analysis
PRINCIPLES OF SYSTEM ANALYSIS
1. Understand the problem before you begin to create the analysis model.
2. Develop prototypes that enable a user to understand how human machine
interaction
will occur.
3. Record the origin of and the reason for every requirement.
4. Use multiple views of requirements like building data, function and
behavioral models.
5. Work to eliminate ambiguity.
ENTITY RELATIONSHIP DIAGRAM (ERD)
Entity – Relationship Diagram: This depicts relationship between data objects.
The attribute of each data objects noted in the entity- relationship diagram can
be described using a data object description. Data flow diagram serves two
purposes: 1. To provide an indication of how data are transformed as they
move through the system. 2. To depict the functions that transformation the
data flow.
Data Objects: A data object is a representation of almost any composite
information that must be understood by the software. By composite
information,
we mean something that has a number of different properties or attributes. A
data object encapsulates data only there is no reference within a data object to
operations that act on the data. Attributes: Attributes define the properties of a
data object and take on one of three different characteristics. They can be used
to: Name an instance of data object.
Describe the instance.
Make reference to another instance in other table.
Relationships: Data objects are connected to one another in a variety of
different ways. We can define a set of object relationship pairs that define the
relevant relationships.
Python
High-level programming language
Description
Python is an interpreted high-level general-purpose programming language. Its
design philosophy emphasizes code readability with its use of significant
indentation. Its language constructs as well as its object-oriented approach aim
to help programmers write clear, logical code for small and large-scale
projects.
Python is a high-level, interpreted, interactive and object-oriented scripting
language. Python is designed to be highly readable. It uses English keywords
frequently where as other languages use punctuation, and it has fewer
syntactical constructions than other languages.
Python Features
Python's features include −
Easy-to-learn − Python has few keywords, simple structure, and a clearly
defined syntax. This allows the student to pick up the language quickly.
Easy-to-read − Python code is more clearly defined and visible to the eyes.
Easy-to-maintain − Python's source code is fairly easy-to-maintain.
A broad standard library − Python's bulk of the library is very portable and
cross-platform compatible on UNIX, Windows, and Macintosh.
Interactive Mode − Python has support for an interactive mode which allows
interactive testing and debugging of snippets of code.
Portable − Python can run on a wide variety of hardware platforms and has the
same interface on all platforms.
Extendable − You can add low-level modules to the Python interpreter. These
modules enable programmers to add to or customize their tools to be more
efficient.
Databases − Python provides interfaces to all major commercial databases.
GUI Programming − Python supports GUI applications that can be created and
ported to many system calls, libraries and windows systems, such as Windows
MFC, Macintosh, and the X Window system of Unix.
Scalable − Python provides a better structure and support for large programs
than shell scripting.
A function is a block of organized, reusable code that is used to perform a
single, related action. Functions provide better modularity for your application
and a high degree of code reusing. Simple rules to define a function in Python.
Function blocks begin with the keyword def followed by the function name and
parentheses ( ( ) ).
Any input parameters or arguments should be placed within these
parentheses. You can also define parameters inside these parentheses.
The first statement of a function can be an optional statement - the
documentation string of the function or docstring.
The code block within every function starts with a colon (:) and is indented.
The statement return [expression] exits a function, optionally passing back an
expression to the caller. A return statement with no arguments is the same as
return None
Features of using Functions:
The program is easier to understand. : Main block of program becomes
compact as the code of functions is not the part of it, thus is easier to read and
understand.
Redundant code is at one place, so making is easier. : Instead of writing code
again when we need to use it more than once, we can write the code in the
form of a function and call it more than once. If we later need to change the
code , we change it in one place only. Thus it saves our time also.
Reusable function can be put in a library in modules. : We can store the
reusable functions in the form of modules. These modules can be imported
and used when needed in other programs.
Microsoft Word
Microsoft Word is a widely used commercial word processor designed by
Microsoft. Microsoft Word is a component of the Microsoft Office suite of
productivity software, but can also be purchased as a stand-alone product.
Microsoft Word was initially launched in 1983, and has since been revised
numerous times. It is available for both Windows and Apple operating systems
Functions Created
Home()- Function to display the project’s main screen i.e. the home page of the
project or you can say the main menu for selecting the desired operation to
perform.
Date(str)- Function to validate date entered by the user/customer.
Booking()- Function for booking room in hotel by entering user/customer
details.
Room_Info()- Function to provide users/customers with hotel rooms
information(i.e. about room amenities).
Roomservie()- Function for room service which provides user/customer with
the restaurant’s menu card to order food at the room.
Payment()- Function for payment of hotel room and restaurant bill generation
at the time of check-out.
Record()- Function for keeping records of customers stayed in the hotel.
CODING
# PAYMENT FUNCTION
def Payment():
ph=str(input("import random"))
import datetime
# Global List Declaration
name = []
phno = []
add = []
checkin = []
checkout = []
room = []
price = []
rc = []
p = []
roomno = []
custid = []
day = []
# Global Variable Declaration
i=0
# Home Function
def Home():
print("\n\n\n\t\t\t\t\t\t WELCOME TO HOTEL SKYLINE\n")
print("\t\t\t\t\t____________________________________________________")
print("\n\t\t\t 1 Booking\n")
print("\t\t\t 2 Rooms Info\n")
print("\t\t\t 3 Room Service(Menu Card)\n")
print("\t\t\t 4 Payment\n")
print("\t\t\t 5 Record\n")
print("\t\t\t 0 Exit\n")
ch=int(input("->"))
if ch == 1:
print(" ")
Booking()
elif ch == 2:
print(" ")
Rooms_Info()
elif ch == 3:
print(" ")
restaurant()
elif ch == 4:
print(" ")
Payment()
elif ch == 5:
print(" ")
Record()
else:
exit()
# Function used in booking
def date(c):
if c[2] >= 2019 and c[2] <= 2030:
if c[1] != 0 and c[1] <= 12:
if c[1] == 2 and c[0] != 0 and c[0] <= 31:
if c[2]%4 == 0 and c[0] <= 29:
pass
elif c[0]<29:
pass
else:
print("Invalid date\n")
name.pop(i)
phno.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
# if month is odd & less than equal
# to 7th month
elif c[1] <= 7 and c[1]%2 != 0 and c[0] <= 31:
pass
# if month is even & less than equal to 7th
# month and not 2nd month
elif c[1] <= 7 and c[1]%2 == 0 and c[0] <= 30 and c[1] != 2:
pass
# if month is even & greater than equal
# to 8th month
elif c[1] >= 8 and c[1]%2 == 0 and c[0] <= 31:
pass
# if month is odd & greater than equal
# to 8th month
elif c[1]>=8 and c[1]%2!=0 and c[0]<=30:
pass
else:
print("Invalid date\n")
name.pop(i)
phno.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
else:
print("Invalid date\n")
name.pop(i)
phno.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
else:
print("Invalid date\n")
name.pop(i)
phno.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
# Booking function
def Booking():
# used global keyword to
# use global variable 'i'
global i
print(" BOOKING ROOMS")
print(" ")
while 1:
n = str(input("Name: "))
p1 = str(input("Phone No.: "))
a = str(input("Address: "))
# checks if any field is not empty
if n!="" and p1!="" and a!="":
name.append(n)
add.append(a)
break
else:
print("\tName, Phone no. & Address cannot be empty..!!")
cii=str(input("Check-In Date DD/MM/YYYY: "))
checkin.append(cii)
cii=cii.split('/')
ci=cii
ci[0]=int(ci[0])
ci[1]=int(ci[1])
ci[2]=int(ci[2])
date(ci)
coo=str(input("Check-Out Date DD/MM/YYYY: "))
checkout.append(coo)
coo=coo.split('/')
co=coo
co[0]=int(co[0])
co[1]=int(co[1])
co[2]=int(co[2])
# checks if check-out date falls after
# check-in date
if co[1]<ci[1] and co[2]<ci[2]:
print("\n\tErr..!!\n\tCheck-Out date must fall after Check-In\n")
name.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
elif co[1]==ci[1] and co[2]>=ci[2] and co[0]<=ci[0]:
print("\n\tErr..!!\n\tCheck-Out date must fall after Check-In\n")
name.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
else:
pass
date(co)
d1 = datetime.datetime(ci[2],ci[1],ci[0])
d2 = datetime.datetime(co[2],co[1],co[0])
d = (d2-d1).days
day.append(d)
print("----SELECT ROOM TYPE----")
print(" 1. Standard Non-AC")
print(" 2. Standard AC")
print(" 3. 3-Bed Non-AC")
print(" 4. 3-Bed AC")
print(("\t\tPress 0 for Room Prices"))
ch=int(input("->"))
# if-conditions to display alloted room
# type and it's price
if ch==0:
print(" 1. Standard Non-AC - Rs. 3500")
print(" 2. Standard AC - Rs. 4000")
print(" 3. 3-Bed Non-AC - Rs. 4500")
print(" 4. 3-Bed AC - Rs. 5000")
ch=int(input("->"))
if ch==1:
room.append('Standard Non-AC')
print("Room Type- Standard Non-AC")
price.append(3500)
print("Price- 3500")
elif ch==2:
room.append('Standard AC')
print("Room Type- Standard AC")
price.append(4000)
print("Price- 4000")
elif ch==3:
room.append('3-Bed Non-AC')
print("Room Type- 3-Bed Non-AC")
price.append(4500)
print("Price- 4500")
elif ch==4:
room.append('3-Bed AC')
print("Room Type- 3-Bed AC")
price.append(5000)
print("Price- 5000")
else:
print(" Wrong choice..!!")
# randomly generating room no. and customer
# id for customer
rn = random.randrange(40)+300
cid = random.randrange(40)+10
# checks if alloted room no. & customer
# id already not alloted
while rn in roomno or cid in custid:
rn = random.randrange(60)+300
cid = random.randrange(60)+10
rc.append(0)
p.append(0)
if p1 not in phno:
phno.append(p1)
elif p1 in phno:
for n in range(0,i):
if p1== phno[n]:
if p[n]==1:
phno.append(p1)
elif p1 in phno:
for n in range(0,i):
if p1== phno[n]:
if p[n]==0:
print("\tPhone no. already exists and payment yet not
done..!!")
name.pop(i)
add.pop(i)
checkin.pop(i)
checkout.pop(i)
Booking()
print("")
print("\t\t\t***ROOM BOOKED SUCCESSFULLY***\n")
print("Room No. - ",rn)
print("Customer Id - ",cid)
roomno.append(rn)
custid.append(cid)
i=i+1
n=int(input("0-BACK\n ->"))
if n==0:
Home()
else:
exit()
# ROOMS INFO
def Rooms_Info():
print(" ------ HOTEL ROOMS INFO ------")
print("")
print("STANDARD NON-AC")
print("---------------------------------------------------------------")
print("Room amenities include: 1 Double Bed, Television,
Telephone,")
print("Double-Door Cupboard, 1 Coffee table with 2 sofa, Balcony
and")
print("an attached washroom with hot/cold water.\n")
print("STANDARD NON-AC")
print("---------------------------------------------------------------")
print("Room amenities include: 1 Double Bed, Television,
Telephone,")
print("Double-Door Cupboard, 1 Coffee table with 2 sofa, Balcony
and")
print("an attached washroom with hot/cold water + Window/Split
AC.\n")
print("3-Bed NON-AC")
print("---------------------------------------------------------------")
print("Room amenities include: 1 Double Bed + 1 Single Bed,
Television,")
print("Telephone, a Triple-Door Cupboard, 1 Coffee table with 2
sofa, 1")
print("Side table, Balcony with an Accent table with 2 Chair and
an")
print("attached washroom with hot/cold water.\n")
print("3-Bed AC")
print("---------------------------------------------------------------")
print("Room amenities include: 1 Double Bed + 1 Single Bed,
Television,")
print("Telephone, a Triple-Door Cupboard, 1 Coffee table with 2
sofa, ")
print("1 Side table, Balcony with an Accent table with 2 Chair and
an")
print("attached washroom with hot/cold water + Window/Split AC.\
n\n")
print()
n=int(input("0-BACK\n ->"))
if n==0:
Home()
else:
exit()
# RESTAURANT FUNCTION
def restaurant():
ph=int(input("Customer Id: "))
global i
f=0
r=0
for n in range(0,i):
if custid[n]==ph and p[n]==0:
f=1
print("-------------------------------------------------------------------------")
print(" Hotel SKYLINE ")
print("-------------------------------------------------------------------------")
print(" Menu Card")
print("-------------------------------------------------------------------------")
print("\n BEVARAGES 26 Dal Fry................
140.00")
print("---------------------------------- 27 Dal Makhani............
150.00")
print(" 1 Regular Tea............. 20.00 28 Dal Tadka..............
150.00")
print(" 2 Masala Tea.............. 25.00")
print(" 3 Coffee.................. 25.00 ROTI")
print(" 4 Cold Drink.............. 25.00
----------------------------------")
print(" 5 Bread Butter............ 30.00 29 Plain Roti..............
15.00")
print(" 6 Bread Jam............... 30.00 30 Butter Roti.............
15.00")
print(" 7 Veg. Sandwich........... 50.00 31 Tandoori
Roti........... 20.00")
print(" 8 Veg. Toast Sandwich..... 50.00 32 Butter
Naan............. 20.00")
print(" 9 Cheese Toast Sandwich... 70.00")
print(" 10 Grilled Sandwich........ 70.00 RICE")
print(" ----------------------------------")
print(" SOUPS 33 Plain Rice..............
90.00")
print("---------------------------------- 34 Jeera Rice..............
90.00")
print(" 11 Tomato Soup............ 110.00 35 Veg
Pulao.............. 110.00")
print(" 12 Hot & Sour............. 110.00 36 Peas
Pulao............. 110.00")
print(" 13 Veg. Noodle Soup....... 110.00")
print(" 14 Sweet Corn............. 110.00 SOUTH INDIAN")
print(" 15 Veg. Munchow........... 110.00
----------------------------------")
print(" 37 Plain Dosa.............
100.00")
print(" MAIN COURSE 38 Onion Dosa.............
110.00")
print("---------------------------------- 39 Masala Dosa............
130.00")
print(" 16 Shahi Paneer........... 110.00 40 Paneer
Dosa............ 130.00")
print(" 17 Kadai Paneer........... 110.00 41 Rice Idli..............
130.00")
print(" 18 Handi Paneer........... 120.00 42 Sambhar
Vada........... 140.00")
print(" 19 Palak Paneer........... 120.00")
print(" 20 Chilli Paneer.......... 140.00 ICE CREAM")
print(" 21 Matar Mushroom......... 140.00
----------------------------------")
print(" 22 Mix Veg................ 140.00 43 Vanilla.................
60.00")
print(" 23 Jeera Aloo............. 140.00 44
Strawberry.............. 60.00")
print(" 24 Malai Kofta............ 140.00 45
Pineapple............... 60.00")
print(" 25 Aloo Matar............. 140.00 46 Butter
Scotch........... 60.00")
print("Press 0 -to end ")
ch=1
while(ch!=0):
ch=int(input(" -> "))
# if-elif-conditions to assign item
# prices listed in menu card
if ch==1 or ch==31 or ch==32:
rs=20
r=r+rs
elif ch<=4 and ch>=2:
rs=25
r=r+rs
elif ch<=6 and ch>=5:
rs=30
r=r+rs
elif ch<=8 and ch>=7:
rs=50
r=r+rs
elif ch<=10 and ch>=9:
rs=70
r=r+rs
elif (ch<=17 and ch>=11) or ch==35 or ch==36 or
ch==38:
rs=110
r=r+rs
elif ch<=19 and ch>=18:
rs=120
r=r+rs
elif (ch<=26 and ch>=20) or ch==42:
rs=140
r=r+rs
elif ch<=28 and ch>=27:
rs=150
r=r+rs
elif ch<=30 and ch>=29:
rs=15
r=r+rs
elif ch==33 or ch==34:
rs=90
r=r+rs
elif ch==37:
rs=100
r=r+rs
elif ch<=41 and ch>=39:
rs=130
r=r+rs
elif ch<=46 and ch>=43:
rs=60
r=r+rs
elif ch==0:
pass
else:
print("Wrong Choice..!!")
print("Total Bill: ",r)
# updates restaurant charges and then
# appends in 'rc' list
r=r+rc.pop(n)
rc.append(r)
else:
pass
if f == 0:
print("Invalid Customer Id")
n=int(input("Phone Number: "))
#global i
f=0
for n in range(0,i):
if ph==phno[n] :
# checks if payment is
# not already done
if p[n]==0:
f=1
print(" Payment")
print(" --------------------------------")
Home()
Conclusion:
The conclusion of this project is A Hotel management system is a computerized
management system. This system keeps the records of hardware assets
besides software of this organization. The proposed system will keep a track of
Workers, Residents, Accounts and generation of report regarding the present
status. This project has GUI based software that will help in storing, updating
and retrieving the information through various user-friendly menu-driven
modules. The project “Hotel Management System” is aimed to develop to
maintain the day-to-day state of admission/Vacation of Residents, List of
Workers, payment details etc. Main objective of this project is to provide
solution for hotel to manage most there work using computerized process. This
software application will help admin to handle customer’s information, room
allocation details, payment details, billing information.etc.
For designing the system we have used simple data flow
diagrams.
Overall the project teaches us the essential skills like:
Using system analysis and design techniques like data flow
diagram in designing the
system.
Understanding the database handling and query processing.
Bibliography
Faculty guidance: Mr, Pradeep Chandra Mohanty
Book Guidance:
Computer science in Python by Sumita Arora
Website Guidance:
www.google.co.in