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

Csproject Amusementpark

Uploaded by

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

Csproject Amusementpark

Uploaded by

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

AISSCE 2023-2024

AMUSEMENT PARK MANAGEMENT SYSTEM

Computer science(083)

Computer science project – synopsis

SUBMITTED BY:
HARINI K V XII D
AISSCE 2023-2024
Computer Science (803)
Computer Science Project
Amusement park management system

TEAM MEMBERS:
❖ Harini k v
❖ Vrithi shree v j
❖ Bavadharani p
Table of contents:
SNO DESCRIPTION PG NO

01 CERTIFICATE 4

02 ACKNOWLEDGEMENT 5

03 OBJECTIVES OF THE PROJECT 8

04 PROPOSED SYSTEM 11

05 ABOUT PYTHON 13

06 ABOUT MYSQL 16

07 SOURCE CODE 18

08 OUTPUT 40

09 HARDWARE AND SOFTWARE REQUIREMENTS 47

10 BIBLIOGRAPHY 48
Amusement Park Management is an application designed
for payment and other facilities provided to the visitors in
an amusement park. This project is developed using
Python and MYSQL.

This application will allow user to login as a visitor. The


visitor will be allowed to sign in or create a username and
login. After logging in successfully, the visitor can view all
the services and rides available in the amusement park.

This system can be used by any workers to provide visitors


easy payment of rides and access the services available in
the park.
Objectives of the project:

The main objective of the project on Amusement Park Management


System is to manage the details of visitors, rides and facilities. The
project is totally built at administrative end and thus only
administrator is guaranteed the access.
Functionalities provided by Amusement Park management system
are as follows:

• This project manages the registration details by collecting the


required information about the visitors.

• Providing the searching facility of rides based on various factors


such as Aadhar card number.

• It also displays the information of services provided by the park,


payment details of the visitors.

The objective of this project is also to let the students apply the
programming knowledge into a real-world situation and expose the
students how programming skills helps in developing a good
software.
The will be able to the following:
1.Write programs utilising modern software tools.

2.Apply object oriented programming principles effectively when


developing small to medium sized projects.

3.Write effective procedural code to solve small to medium sized


problem.

4. Students will demonstrate the ability to conduct a research or


applied Computer science project, requiring writing and presentation
skills which exemplify scholarly style in Computer science.
Proposed system:
Today one cannot afford to reply on the fallible human beings in
today’s competitive world. So, to keep pace with time, to bring about
the best result without malfunctioning and greater efficiency so to
replace the unending heaps of flies with a much sophisticated hard
disk of the computer.

One has to use the data management software. Software has been
an ascent in various organisations. Many software products working
are now in markets, which have helped in making the organisations
work easier and efficiently. Data management initially had to
maintain a lot of ledgers and a lot of paper work has to be done but
now software product on this organisation has made their work
faster and easier. Now only this software has to be loaded on the
computer and work can be done.

This prevents a lot of time and money. The work becomes fully
automated and any information regarding the organization can be
obtained by clicking a button.
About python:
Introduction :
Python is an interpreter, object-oriented, high-level programming
language with dynamic semantics.
Its high-level built-in data structures, combined with dynamic
typing and dynamic binding making it very attractive for rapid
application development.
It was developed by Guido Van Rossum in 1991.

Uses of python :
• Web development
• Game development
• Software development
• Language development

Features of Python:
1) Easy to use : Due to simple syntax
2) Interpreted language : Code execution and interpretation is
done line by line
3) Cross-Platform language : It can be run on Windows, Linux,
Macintosh etc. equally
4) Expressive language : Less code to be written as it itself
expresses the purpose of the code
5) Completeness : Supports wide range of libraries and modules
6) Free and open source : Can be downloaded freely and source
code can be modified for improvement
Shortcomings of Python:
1) Lesser libraries : Libraries of Python is not competent with
other languages like C++ , JAVA etc

2) Slow language : As an interpreted language, execution time is


more than fully compiled languages

3) Not strong on Type-Binding : It does not pin point error for the
use of single variable for different data types
ABOUT MySQL:
Introduction:
MySQL is currently the most popular open source database
software and It is multi-user, multithreaded database management
system.
MySQL is especially popular on the web. It is one of the parts of
the very popular LAMP platform.
MySQL was founded by Micheal Widenius (Monty), David
Axmark and Allan Larsson in Sweden in the year 1995.

Features of MySQL:
1) Portability : Can be run in any types of Hardware and
OS like Linux, MS Windows etc.
2) Security : Databases are well protected by passwords.
3) Connectivity : Various APIs are developed to connect it
with many programming languages .

Advantages of MySQL:
• High performance
• Flexibility of open source
• Data redundancy
• Data security
Source code:
import tkinter.messagebox
from tkinter import *
import mysql.connector as sqlcon
import random as rd
con=sqlcon.connect(host='localhost',user='root',password='har@123
')
cur=con.cursor()
cur=con.cursor(buffered=True)
if (con):
print('connection successful')
else:
print ("Connection unsuccessful")

cur.execute("create database if not exists Hospital")


cur.execute("use Hospital")
cur.execute("create table if not exists appointment"
"("
"idno varchar(12) primary key,"
"name char(50),"
"age char(3),"
"gender char(1),"
"phone varchar(10),"
"bg varchar(3))")
cur.execute("create table if not exists appointment_details"
"("
"idno int(50) PRIMARY KEY,"
"doctor varchar(50),"
"date varchar(50),"
"time varchar(50),"
"appointment_no varchar(50))")

#message for registration


def entry():
global e1,e2,e3,e4,e5,e6
p1=e1.get()
p2=e2.get()
p3=e3.get()
p4=e4.get()
p5=e5.get()
p6=e6.get()
query='insert into appointment
values("{}","{}","{}","{}","{}","{}")'.format(p1,p2,p3,p4,p5,p6)
con.commit()
cur.execute(query)
tkinter.messagebox.showinfo("DONE","YOU HAVE BEEN
REGISTERED")
#FOR REGISTRATION
def register():
global e1,e2,e3,e4,e5,e6
root1=Tk()
label=Label(root1,text="REGISTER YOURSELF",font='arial 25 bold')
label.pack()
frame=Frame(root1,height=500,width=200)
frame.pack()
l1=Label(root1,text='AADHAR CARD NO.')
l1.place(x=20,y=130)
e1=tkinter.Entry(root1)
e1.place(x=150,y=130)
l2=Label(root1,text="NAME")
l2.place(x=20,y=170)
e2=tkinter.Entry(root1)
e2.place(x=150,y=170)
l3=Label(root1,text='AGE')
l3.place(x=20,y=210)
e3=tkinter.Entry(root1)
e3.place(x=150,y=210)
l4=Label(root1,text='GENDER M/F')
l4.place(x=20,y=250)
e4=tkinter.Entry(root1)
e4.place(x=150,y=250)
l5=Label(root1,text='PHONE')
l5.place(x=20,y=290)
e5=tkinter.Entry(root1)
e5.place(x=150,y=290)
l6=Label(root1,text='HEALTH ISSUES(Y/N)')
l6.place(x=20,y=330)
e6=tkinter.Entry(root1)
e6.place(x=150,y=330)
b1=Button(root1,text='SUBMIT',command=entry)
b1.place(x=150,y=370)
root.resizable(False,False)
root1.mainloop()
#message for appointment
def apo_details():
global x1,x2,p1,p2,p3,o,x4,x3
p1=x2.get()
p2=x3.get()
p3=x4.get()
if int(p1)==1:
rs=110
p4=rs*int(p3)
det=("YOUR BOOKING IS CONFIRMED!!","5D RIDES",
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{}","{}")'.format(1,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
elif int(p1)==2:
rs=120
p4=rs*int(p3)
det=('YOUR BOOKING IS CONFIRMED!!','MUSICAL
FOUNDATION',
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{}","{}")'.format(2,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
elif int(p1)==3:
rs=150
p4=rs*int(p3)
det=('YOUR BOOKING IS CONFIRMED!!','HAUNTED HOUSE 3D',
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{}","{}")'.format(3,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
elif int(p1)==4:
rs=130
p4=rs*int(p3)
det=('YOUR BOOKING IS CONFIRMED!!','MR BEAN ANIMATED
SERIES',
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{},"{}")'.format(4,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
elif int(p1)==5:
rs=120
p4=rs*int(p3)
det=('YOUR BOOKING IS CONFIRMED!!','ASTROPHYSICS',
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{}","{}")'.format(5,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
elif int(p1)==6:
rs=120
p4=rs*int(p3)
det=('YOUR BOOKING IS CONFIRMED!!','SELF RELIANT INDIA'
"\\NDate:-",p2,
"\nno.of tickets:-",p3,
"\ntotal amount:-",p4)
query='insert into appointment_details
values("{}","{}","{}","{}","{}")'.format(6,p1,p2,p3,p4)
cur.execute(query)
tkinter.messagebox.showinfo('PAYMENT DETAILS',det)
else:
tkinter.messagebox.showwarning('WRONG INPUT','PLEASE
ENTER VALID VALUE')
#for appointment
def get_apoint():
global x1,x2,x3,x4
p1=x1.get()
cur.execute('select * from appointment where idno=(%s)',(p1,))
dat=cur.fetchall()
a=[]
for i in dat:
a.append(i)
if len(a)==0:
tkinter.messagebox.showwarning("ERROR"," NO DATA
FOUND!!")
else:
root3=Tk()
label=Label(root3,text='PAYMENT',font='arial 25 bold')
label.pack()
frame=Frame(root3,height=500,width=300)
frame.pack()
if i[3]=='M' or i[3]=='m':
x="Mr."
name2=Label(root3,text=i[1])
name2.place(x=140,y=80)
else:
x="Mrs\Ms."
name2=Label(root3,text=i[1])
name2.place(x=170,y=80)
for i in dat:
name=Label(root3,text='WELCOME')
name.place(x=50,y=80)
name1=Label(root3,text=x)
name1.place(x=120,y=80)
age=Label(root3,text='AGE:-')
age.place(x=50,y=100)
age1=Label(root3,text=i[2])
age1.place(x=100,y=100)
phone=Label(root3,text='PHONE:-')
phone.place(x=50,y=120)
phone1=Label(root3,text=i[4])
phone1.place(x=100,y=120)
bg=Label(root3,text='HEALTH ISSUES(Y/N):-')
bg.place(x=50,y=140)
bg1=Label(root3,text=i[5])
bg1.place(x=200,y=140)
L=Label(root3,text='SHOWS')
L.place(x=50,y=220)
L1=Label(root3,text='1.5D RIDES')
L1.place(x=50,y=250)
L2=Label(root3,text='2.MUSICAL FOUNDATION')
L2.place(x=50,y=270)
L3=Label(root3,text='3.HAUNTED HOUSE(3D)')
L3.place(x=50,y=290)
L4=Label(root3,text='4.MR BEAN ANIMATED SERIES')
L4.place(x=50,y=310)
L5=Label(root3,text='5.ASTROPHYSICS')
L5.place(x=50,y=330)
L6=Label(root3,text='6.SELF RELIANT INDIA')
L6.place(x=50,y=350)
L7=Label(root3,text='enter your choice')
L7.place(x=100,y=370)
x2=tkinter.Entry(root3)
x2.place(x=200,y=370)
L7=Label(root3,text=('enter date')).place(x=100,y=400)
x3=tkinter.Entry(root3)
x3.place(x=200,y=400)
L8=Label(root3,text=('enter total no. of
tickets')).place(x=48,y=430)
x4=tkinter.Entry(root3)
x4.place(x=200,y=430)
B1=Button(root3,text='Submit',command=apo_details)
B1.place(x=120,y=480)
root3.resizable(False,False)
root3.mainloop()
# For AADHAAR no input
def apoint():
global x1
root2=Tk()
label=Label(root2,text="PAYMENT",font='arial 25 bold')
label.pack()
frame=Frame(root2,height=200,width=200)
frame.pack()
l1=Label(root2,text="AADHAAR NO.")
l1.place(x=10,y=130)
x1=tkinter.Entry(root2)
x1.place(x=100,y=130)
b1=Button(root2,text='Submit',command=get_apoint)
b1.place(x=100,y=160)
root2.resizable(False,False)
root2.mainloop()

# List of doctors
def lst_doc():
root4=Tk()
l=['Alibaba Aur Chalis Chorr','D2 Dare Drop','Deep Space','Gold
Rush Express','Happy Wheelss','Motion Box Theatre','Mr. India- The
Ride','Rajasaurus River Adventure','Save the Pirate']
m=['Must be: 1.07m (3ft 6in) or taller.','Must be: 1.19m (3ft 11in)
or taller','Adults are not allowed.','Must be: 1.32m (4ft 4in) or
taller.','None','Must be: 1.32m (4ft 4in) or taller.','Adults are not
allowed.','Must be: 1.37m (4ft 4in) or taller','Must be: 1.19m (3ft
11in) or taller.']
n=[20,21,15,14,20,15,25,15,30]
frame=Frame(root4,height=500,width=500)
frame.pack()
l1=Label(root4,text='NAME OF RIDES')
l1.place(x=20,y=10)
count=20
for i in l:
count=count+20
l=Label(root4,text=i)
l.place(x=20,y=count)
l2=Label(root4,text='RESTRICTIONS')
l2.place(x=200,y=10)
count1=20
for i in m:
count1=count1+20
l3=Label(root4,text=i)
l3.place(x=200,y=count1)
l4=Label(root4,text='MAX. NO. OF PERSONS')
l4.place(x=400,y=10)
count2=20
for i in n:
count2=count2+20
l5=Label(root4,text=i)
l5.place(x=400,y=count2)
root.resizable(False,False)
root4.mainloop()
def ser_avail():
root5=Tk()
frame=Frame(root5,height=500,width=500)
frame.pack()
l1=Label(root5,text='SERVICES AVAILABLE')
l1.place(x=20,y=10)
f=["ADMINISTRATION ROOM","SECURITY ROOM","VISITOR's
ROOM","CANTEEN","RESTROOM(GENTS)","RESTROOM(LADIES)","E
MERGENCY CENTRE"]
count1=20
for i in f:
count1=count1+20
l3=Label(root5,text=i)
l3.place(x=20,y=count1)
l2=Label(root5,text='ROOM NO.')
l2.place(x=200,y=10)
g=[1,2,3,4,5,6,7]
count2=20
for i in g:
count2=count2+20
l4=Label(root5,text=i)
l4.place(x=200,y=count2)
l5=Label(root5,text='To avail any of these please contact on our
no.:- 7042****55')
l5.place(x=20,y=240)
root5.resizable(False,False)
root5.mainloop()
def modify():
global x3,x4,choice,new,x5,root6
p1=x3.get()
cur.execute('select * from appointment where idno=(%s)',(p1,))
dat=cur.fetchall()
a=[]
for i in dat:
a.append(i)
if len(a)==0:
tkinter.messagebox.showwarning("ERROR", "NO DATA
FOUND!!")
else:
root6=Tk()
frame=Frame(root6,height=500,width=500)
frame.pack()
l1=Label(root6,text='DATA MODIFICATION',font="arial 15 bold")
l1.place(x=75,y=10)
l2=Label(root6,text='WHAT YOU WANT TO CHANGE')
l2.place(x=50,y=200)
l3=Label(root6,text='1.NAME')
l3.place(x=50,y=220)
l4=Label(root6,text='2.AGE')
l4.place(x=50,y=240)
l5=Label(root6,text='3.GENDER')
l5.place(x=50,y=260)
l6=Label(root6,text='4.PHONE')
l6.place(x=50,y=280)
l7=Label(root6,text='5.HEALTH ISSUES(Y/N)')
l7.place(x=50,y=300)
x2=Label(root6,text='Enter NEW DETAIL')
x2.place(x=50,y=330)
x4=tkinter.Entry(root6)
choice=x4.get()
x4.place(x=100,y=330)
for i in dat:
name=Label(root6,text='NAME:-')
name.place(x=50,y=80)
name1=Label(root6,text=i[1])
name1.place(x=150,y=80)
age=Label(root6,text='AGE:-')
age.place(x=50,y=100)
age1=Label(root6,text=i[2])
age1.place(x=150,y=100)
gen=Label(root6,text='GENDER:-')
gen.place(x=50,y=120)
gen1=Label(root6,text=i[3])
gen1.place(x=150,y=120)
pho=Label(root6,text='PHONE:-')
pho.place(x=50,y=140)
pho1=Label(root6,text=i[4])
pho1.place(x=150,y=140)
bg=Label(root6,text='HEALTH ISSUES(Y/N):-')
bg.place(x=50,y=160)
bg1=Label(root6,text=i[5])
bg1.place(x=150,y=160)
b=Button(root6,text='Submit',command=do_modify)
b.place(x=50,y=400)
L1=Label(root6,text='OLD DETAILS')
L1.place(x=50,y=50)
L2=Label(root6,text='ENTER')
L2.place(x=50,y=360)
x5=tkinter.Entry(root6)
new=x5.get()
x5.place(x=160,y=360)
root6.resizable(False,False)
root6.mainloop()
def do_modify():
global ad,x3,x4,x5
ad=x3.get()
choice=x4.get()
new=x5.get()
if choice=='1':
cur.execute('update appointment set name={} where
idno={}'.format(new,ad))
elif choice=='2':
cur.execute('update appointment set age={}) where
idno={}'.format(new,ad))
elif choice=='3':
cur.execute('update appointment set gender={} where
idno={}'.format(new,ad))
elif choice=='4':
cur.execute('update appointment set phone={} where
idno={}'.format(new,ad))
elif choice=='5':
cur.execute('update appointment set bg={} where
idno={}'.format(new,ad))
else:
pass
root6.destroy()
tkinter.messagebox.showinfo("DONE", "YOUR DATA HAS BEEN
MODIFIED")

choice=None
new=None
ad=None
def mod_sub():
global x3,ad
root7=Tk()
label=Label(root7,text="MODIFICATION",font='arial 25 bold')
label.pack()
frame=Frame(root7,height=200,width=200)
frame.pack()
l1=Label(root7,text="AADHAAR NO.")
l1.place(x=10,y=130)
x3=tkinter.Entry(root7)
x3.place(x=100,y=130)
ad=x3.get()
b1=Button(root7,text='Submit',command=modify)
b1.place(x=100,y=160)
root7.resizable(False,False)
root7.mainloop()
def search_data():
global x3,ad
root7=Tk()
label=Label(root7,text="SEARCH DATA",font='arial 25 bold')
label.pack()
frame=Frame(root7,height=200,width=200)
frame.pack()
l1=Label(root7,text="AADHAAR NO.")
l1.place(x=10,y=130)
x3=tkinter.Entry(root7)
x3.place(x=100,y=130)
ad=x3.get()
b1=Button(root7,text='Submit',command=view_data)
b1.place(x=100,y=160)
root7.resizable(False,False)
root7.mainloop()
def view_data():
global p1
p1=x3.get()
cur.execute('select * from appointment where idno=(%s)',(p1,))
dat=cur.fetchall()
print(dat)
a=[]
for i in dat:
a.append(i)
if len(a)==0:
tkinter.messagebox.showwarning("ERROR", "NO DATA
FOUND!!")
else:
det=a
tkinter.messagebox.showinfo("PERSON DETAILS",det)

from tkinter import *


root=Tk()
root.configure(bg='light blue')
bg=PhotoImage(file='am.PNG')
lbg=Label(root,image=bg).place(x=30,y=10)
root.title('apms')
l1=Label(root,text='AMUSEMENT PARK MANAGEMENT
SYSTEM',bg='yellow',font='arial 20 bold').place(x=160,y=90)
b1=Button(text="Registration",font="arial 20
bold",bg='yellow',command=register)
b2=Button(text="Payment",font="arial 20
bold",bg='yellow',command=apoint)
b3=Button(text="List of Rides",font="arial 20
bold",bg='yellow',command=lst_doc)
b4=Button(text="Services available",font='arial 20
bold',bg='yellow',command=ser_avail)
b7=Button(text="View data",font='arial 20
bold',bg='yellow',command=search_data)
b5=Button(text="Modify existing data",font='arial 20
bold',bg='yellow',command=mod_sub)
b6=Button(text="Exit",font='arial 20
bold',bg='violet',command=root.destroy)
b1.pack(side=LEFT,padx=10)
b3.pack(side=LEFT,padx=10)
b4.pack(side=LEFT,padx=10)
b2.place(x=25,y=500)
b7.pack(side=LEFT,padx=10)
b5.place(x=350,y=500)
b6.place(x=800,y=500)
frame=Frame(root,height=600,width=50)
frame.pack()
root.resizable(False,False)
root.mainloop()
OUTPUT:
Interface python with MySQL:

STEPS FOR CREATING DATABASE CONNECTIVITY APPLICATIONS:

Step1: Start python.


Step2: Import the packages required for database programming.
Step3: Open a connection to database. Use the
mysql.connector.connect() method of MySQL connector python
with required parameters to connect MySQL.
Step4: Create a cursor instance. Use the connection Object returned
by a connect() method to create a cursor.
Step5: Execute a query. Use cursor.execute() to execute SQL queries
from python.
Step6: Extract data from result set.
Step7: Clean up the environment
• Software requirement
 Operating system : Windows 10
 Python 3.9.6 : for execution of program
 MySQL : for storing data in the database
 Python – MySQL connector : for database
connectivity
 Microsoft word : for presentation of output
• Hardware requirement
 Computer, for coding and typing the required
documents of the project.
 Printer, to print the required documents of the
project.
 Compact drive
 Processor: Intel core
 RAM : 4 GB
 Hard disk : 256 GB
BIBILOGRAPHY

Computer science with python


-by Sumita arora

You might also like