Index: Studio Reservation System
Index: Studio Reservation System
1. Introduction
2. Project overview and summary
2.1 Purpose of Project
2.2 Scope of Project
2.3 Overview of Project
3. System Specification
3.1 Hardware Requirements
3.2 Software Requirements
4. System Analysis
4.1 Existing System
4.2 Proposed System
5. Project Modules
5.1 Buying ticket
5.2 Administrative Staff
5.3 My Modules
6. Coding part with screen shots
7. Conclusion
8. Bibliography
1. INTRODUCTION
What is a system? A system is simply a group of activities and elements, which have been arranged to
achieve a certain objective. An information system is a combination of hardware, software and
telecommunication systems, which can support business operations to increase productivity, and help
managers make decisions.
Following is a list of functionalities of the system. More functionality that you find
appropriate can be added to this list. And, in places where the description of functionality is
not adequate, you can make appropriate assumptions and proceed.
The Cinema hall has a web site and any user of internet can access this. The cinema hall is a
multiplex which has 2 or more screens. Each screen has 3 different types of seats/classes viz
Platinum, Gold & Silver depending on the rate of the class/seat. Only 100% of the seats are
available for online reservation.
Query the films on show for one weeks (Only one weeks advance reservation
is available) should be there.
Able to choose the seats which are available for a certain class.
Can select seats from different classes as well for same show and screen also.
Give details about the credit card or debit card through which he is doing
payment.
Able collect tickets at the counter presenting the unique id send to him/her
through email.
2. A mail should be send to the concerned person about the confirmation of the ticket to
the specified email address.
3. The system should automatically show the fare for the corresponding shows and
amount of money needs to be pay for selected seats.
Admin:
One of the main purpose of our system is to allow customers to book anytime saving his
time on transportation in a well-organized procedure. So, most of the job is done by the
system automatically. And so staff has only to take pictures of the customer and get
cashed.
Customer:
To make the system more user-friendly, customer need not to enter lots of data. An order
will be commit step by step with guideline.
Our Studio Reservation is a web-based system. The customers can book online and cancel
the seat at a suitable time (2 days before the show to 1hour before the show)by visiting the
cinema hall. To enhance the refund function, all the customers have to present the unique
Staff can use the system to insert and delete data (e.g. film description, time table) which
will update the webpage (webpage are dynamic page, changing according to the data in
database). Also, staff can check the statistic information from the system.
2.3.1 Features :
The website lists all of the major theaters, the movies that are showing and the movie times,
along with the information of available seats.
Movie Synopsis
The online movie ticket site provides a short summary of each movie plot to help you decide
if you want to see that movie.
Trailers
The online movie ticket site has short movie clips that you can view to get an idea of the plot
and genre of the movie.
Consumer Review
The movie ticket service offers consumer movie reviews posted and generated by different
critics and media.
You can search for a certain movie on the online movie ticket website.
Message Board/Forum
The website provides an area for clients to post comments or questions for other consumers
to view.
Upcoming Movie
The service posts a list of movies that will be in the theaters soon.
3. SYSTEM SPECIFICATIONS
256 MB Ram
Hard disk 10 GB
Scripting: JAVASCRIPTING
Front-End: JSP,HTML
In the existing system, the Customer has to visit cinema hall for booking seats.
Further they do not even have the information about the Movie which is in the
cinema hall, it's show time and different rates of the ticket.
Even the customer may not be able to get information about different cinema hall
available in the city. So, if he wish to see a Movie on a particular day he has to first
roam around the city to find out where it is being shown at the specific time.
Further cinema hall owner has to hire large number of staff at the counter for selling
current scenario.
In order to overcome the existing problem we are making this system as online where
every information about any cinema hall, movie, theater and rates can get online which helps
Query the films on show for one weeks (Only one weeks advance reservation
is available) should be there.
Able to choose the seats which are available for a certain class.
Can select seats from different classes as well for same show and screen also.
Give details about the credit card or debit card through which he is doing
payment.
Able collect tickets at the counter presenting the unique id send to him/her
through email.
5.PROJECT MODULE
Since the Administrative Staff and the user are the main target group of our software, we will
only concern about some important functions for the Administrative Staff and the user. The
user can start the buy ticket process after checking the movie detail.
process in detail.
4. Enter data like ticket type and payment method if the user pay by credit card, credit card
5. Validation the data entered by the user.(e.g. credit card number) (by system)
Administrative Staff to perform any operation, he/she must login to the system first. Once the
Administrative Staff login to the system, the statistic information will be shown. And the
Administrative Staff can choose function by clicking the button on left hand side. The
functions are:
5.3 My modules:
About us
Contact Us
Home
Timings
Total
Seats
6. Coding part with screen shots:
/* first code is for about us. It gives the information about the
company*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
Container con;
aboutus()
{
con=getContentPane();
add(l1);
add(b1);
l1.setBounds(5,0,1300,500);
b1.setBounds(0,0,75,25);
con.setBackground(Color.black);
l1.setForeground(Color.white);
b1.addActionListener(this);
setLayout(null);
setLocation(15,15);
setSize(1300,500);
setVisible(true);
}
public void actionPerformed(ActionEvent ae)
{
Object o= ae.getSource();
if(o==b1)
{
setVisible(false);
new home();
}
}
contact()
{
c = getContentPane();
col = new Color(253,212,0);
im = new ImageIcon("cont.jpg");
l1 = new JLabel(im);
b1 = new JButton("BACK");
add(l1);
add(b1);
b1.addActionListener(this);
setLayout(null);
l1.setBounds(0,25,650,350);
b1.setBounds(0,0,70,25);
c.setBackground(col);
setLocation(100,100);
setSize(600,350);
setVisible(true);
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
JLabel l2,k1,k2,k3,k4;
JComboBox j1,j2,j3,j4,j5;
JButton b1,b2,b3,b4,b5;
ImageIcon i1,im,i2,i3,i4;
Font f;
Container con1;
home()
{
super("Pvr cinemas");
con1=getContentPane();
k1 = new JLabel(i1);
k2 = new JLabel(i2);
k3 = new JLabel(i3);
k4 = new JLabel(i4);
l2 = new JLabel(im);
j1 = new JComboBox();
j2 = new JComboBox();
j3 = new JComboBox();
j4 = new JComboBox();
j5 = new JComboBox();
b1 = new JButton("Submit");
b2 = new JButton("Contact Us");
b3 = new JButton("About Us");
b4 = new JButton("Site Map");
b5 = new JButton("Logout");
j1.addItem("PVR Chandigarh");
j1.addItem("PVR Chennai");
j1.addItem("PVR Bangalore");
j2.addItem("Ready");
j2.addItem("Pyar Ka Punchnama");
j2.addItem("Kung Fu Panda 2");
j4.addItem("Double Dhamaal");
j4.addItem("Delhi Belly");
j4.addItem("Ready");
j4.addItem("Pyar Ka Punchnama");
j5.addItem("Double Dhamaal");
j5.addItem("Pyar Ka Punchnama");
j5.addItem("Delhi Belly");
j3.addItem("17 June");
j3.addItem("18 June");
j3.addItem("19 June");
j3.addItem("20 June");
j3.addItem("21 June");
j3.addItem("22 June");
j3.addItem("23 June");
setLayout(null);
add(j1);
add(j2);
add(j3);
add(b1);
add(j4);
add(j5);
add(k1);
add(k2);
add(k3);
add(b2);
add(b3);
add(k4);
add(b4);
add(b5);
add(l2);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
j1.addActionListener(this);
b5.addActionListener(this);
j1.setBounds(600,350,140,20);
j2.setBounds(780,350,140,20);
j4.setBounds(780,350,140,20);
j4.setVisible(false);
j5.setBounds(780,350,140,20);
j5.setVisible(false);
j3.setBounds(950,350,140,20);
b1.setBounds(750,500,110,20);
b2.setBounds(1000,120,110,20);
b3.setBounds(1150,120,110,20);
l2.setBounds(500,60,253,160);
b4.setBounds(840,120,110,20);
b5.setBounds(900,500,110,20);
k1.setBounds(30,200,491,364);
k2.setBounds(1020,50,66,63);
k3.setBounds(1165,50,66,62);
k4.setBounds(880,50,62,68);
con1.setBackground(Color.black);
setLocation(0,0);
setSize(1300,750);
setVisible(true);
if(j1.getSelectedItem()=="PVR Chandigarh")
{
j4.setVisible(false);
j5.setVisible(false);
j2.setVisible(true);
if(o==b1)
{
setVisible(false);
new timing((String)j1.getSelectedItem(),
(String)j2.getSelectedItem(),(String)j3.getSelectedItem());
}
if(j1.getSelectedItem()=="PVR Chennai")
{
j2.setVisible(false);
j5.setVisible(false);
j4.setVisible(true);
if(o==b1)
{
setVisible(false);
new timing((String)j1.getSelectedItem(),
(String)j4.getSelectedItem(),(String)j3.getSelectedItem());
}
}
if(j1.getSelectedItem()=="PVR Bangalore")
{
j2.setVisible(false);
j4.setVisible(false);
j5.setVisible(true);
if(o==b1)
{
setVisible(false);
new timing((String)j1.getSelectedItem(),
(String)j5.getSelectedItem(),(String)j3.getSelectedItem());
}
}
im = new ImageIcon("paa.gif");
con = getContentPane();
con.setBackground(Color.black);
if(movi=="Ready")
{
im1 = new ImageIcon("r.jpg");
l8 = new JLabel(im1);
l8.setBounds(150,280,374,336);
l6 = new JLabel("<html>Name: READY<br><br>
Genre: COMEDY<br><br> Censor: U/A <br><br> Duration: 2hrs
29mins<br><br> Actors: SALMAN KHAN, ASIN<br> Directors: ANEES
BAZMEE<br><br> Description: Set amidst the appealing locales of
Thailand, 'Ready' revolves a round Prem(Salman Khan), the sole heir
to a sprawling empire owned by his father and uncles. Prem's father
desires that he gets married and settle down, though Prem intends to
enjoy h.</html>");
}
if(movi=="Delhi Belly")
{
im1 = new ImageIcon("db.jpg");
l8 = new JLabel(im1);
l8.setBounds(150,280,374,336);
l6 = new JLabel("<html>Name: Delhi
Belly(Hinglish)<br> Genre: DRAMA<br><br> Censor: (A)<br><br>
Duration: 1hr 50mins<br><br> Actors: Imran Khan, Kunal Roy
Kapoor<br><br> Directors: Abinay Deo<br><br> Description: Tashi,
Arun, Nitin - flat mates, buddies and partners in crime. Tashiis to
get married in a month but still doesn't know if his fiancee is the
one! Arun can't make up his mind who he wants to kill first his
girlfriend (who has dumped him) or hi</html> ");
}
if(movi=="Double Dhamaal")
{
im1 = new ImageIcon("dd.jpg");
l8 = new JLabel(im1);
l8.setBounds(150,280,374,336);
l7 = new JLabel(im);
j1 = new JComboBox();
j1.addItem("9am-12pm");
j1.addItem("1pm-3pm");
j1.addItem("3pm-6pm");
j1.addItem("6pm-9pm");
j1.addItem("9pm-12am");
b8= new JButton("Submit");
line = new LineBorder(Color.BLACK,1);
l1.setBorder(line);
l2.setBorder(line);
l3.setBorder(line);
l1.setFont(f2);
l2.setFont(f2);
l3.setFont(f2);
l4.setFont(f2);
l5.setFont(f2);
l6.setFont(f1);
l1.setForeground(Color.white);
l2.setForeground(Color.white);
l3.setForeground(Color.white);
l4.setForeground(Color.white);
l5.setForeground(Color.white);
l6.setForeground(Color.white);
l7.setForeground(Color.white);
add(l1);
add(l2);
add(l3);
add(l4);
add(l5);
add(l6);
add(b1);
add(j1);
add(b8);
add(l7);
add(l8);
t=(String)j1.getSelectedItem();
setLayout(null);
l1.setBounds(100,200,200,30);
l2.setBounds(350,200,200,30);
l3.setBounds(600,200,140,30);
l4.setBounds(1050,200,140,30);
l5.setBounds(650,250,140,30);
l6.setBounds(650,260,450,400);
l7.setBounds(500,60,253,160);
b1.setBounds(50,50,110,20);
j1.setBounds(1050,250,110,20);
b8.setBounds(1050,50,110,20);
b1.addActionListener(this);
b8.addActionListener(this);
setLocation(10,10);
setSize(1300,710);
setVisible(true);
}
if(o==b1)
{
setVisible(false);
new home();
}
}*/
}
/* ---------------------------------end ---------------------------------------------*/
/*----------------------------------- total ----------------------------------------*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.*;
import java.sql.*;
class total extends JFrame implements ActionListener
{
JLabel l1,l2,l3,l4,l5,l7,l8,l9;
JTextField t1,t2,t3,t4,t5;
JButton b1,b2,b3;
ImageIcon e,f,g;
Container con1;
ResultSet rs;
String s,s1,p,q,r;
Connection con;
PreparedStatement ps;
t1=new JTextField(20);
t2=new JTextField(20);
t3=new JTextField(20);
t4=new JTextField(20);
t5=new JTextField(20);
t1.setText(a);
t2.setText(b);
t3.setText(s);
t4.setText(c);
t5.setText(s1);
b1=new JButton("Cancel");
b2=new JButton("Proceed To be Payment");
b3=new JButton("back");
setLayout(null);
add(l1);
add(l2);
add(l3);
add(l4);
add(l5);
add(t1);
add(t2);
add(t3);
add(t4);
add(t5);
add(l7);
add(l8);
add(l9);
add(b1);
add(b2);
add(b3);
l1.setBounds(250,40,120,20);
t1.setBounds(355,40,140,20);
l2.setBounds(250,80,120,20);
t2.setBounds(355,80,140,20);
l3.setBounds(250,120,120,20);
t3.setBounds(355,120,140,20);
l4.setBounds(250,160,120,20);
t4.setBounds(355,160,140,20);
l5.setBounds(250,200,120,20);
t5.setBounds(355,200,140,20);
b1.setBounds(200,300,100,20);
b2.setBounds(320,300,100,20);
b3.setBounds(440,300,100,20);
l7.setBounds(0,0,150,120);
l8.setBounds(0,140,150,120);
l9.setBounds(0,280,150,120);
b2.addActionListener(this);
b3.addActionListener(this);
con1.setBackground(Color.black);
setUndecorated(true);
setLocation(400,100);
setSize(550,400);
setVisible(true);
if(o==b3)
{
setVisible(false);
new seat(p,q,r);
}
/*--------------------------------------end --------------------------------------*/
/* --------------------------------------seat ----------------------------------------*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
class seat extends JFrame implements ActionListener
{
JLabel l1, l2,l3,l4,l5,l6;
JButton b1,b2;
JPanel p;
JButton b[] = new JButton[100];
int select[] = new int[100];
int i,j,k,sl;
ImageIcon im,im1,im2;
Container con;
Connection con1;
PreparedStatement ps;
ResultSet rs;
String a,d,c,w;
int count=0;
//int save=0;
im = new ImageIcon("white.png");
im1 = new ImageIcon("red.png");
im2 = new ImageIcon("green.png");
l1 = new JLabel("Booked");
l2 = new JLabel(im1);
l3 = new JLabel("Vacant");
l4 = new JLabel(im);
l5 = new JLabel("Your current location");
l6 = new JLabel(im2);
p.setFont(new Font("SansSerif",Font.BOLD,20));
k=0;
for(i=0;i<100;i++)
{
b[i].addActionListener(this);
}
add(l6);
add(b1);
add(b2);
add(p);
add(l1);
add(l3);
add(l5);
add(l2);
add(l4);
b1.addActionListener(this);
b2.addActionListener(this);
l1.setBounds(85,50,110,30);
l2.setBounds(25,50,50,40);
l3.setBounds(260,50,100,30);
l4.setBounds(200,50,50,40);
l5.setBounds(430,50,130,30);
l6.setBounds(370,50,50,40);
b1.setBounds(600,400,190,20);
b2.setBounds(650,100,100,20);
p.setBounds(50,150,500,400);
setLayout(null);
setLocation(100,100);
setSize(850,650);
setVisible(true);
j=0;
k=0;
sl=0;
}
if(o==b1)
{ System.out.println("total no of seats"+count);
setVisible(false);
new total(count,a,d,c);
if(o==b2)
{
setVisible(false);
new home();
}
for(int x=0;x<100;x++)
{
if(o==b[x])
{
String s = (String)ae.getActionCommand();
i=Integer.parseInt(s);
try
{
String seat_no=b[i].getText();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con1=DriverManager.getConnection("Jdbc:Odbc:tracker","system","abc")
;
ps=con1.prepareStatement("select * from seat where
seat_no=? and dt=? and tim=? and movi=? ");
ps.setString(1,b[i].getText());
ps.setString(2,c);
ps.setString(3,w);
ps.setString(4, d );
rs=ps.executeQuery();
b[i].setIcon(im1);
if(rs.next())
{
//b[i].setIcon(im1);
System.out.println("can't be allocated ...");
JOptionPane.showMessageDialog(this," Already Booked", "sorry
",JOptionPane.ERROR_MESSAGE);
}
else
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con1=DriverManager.getConnection("Jdbc:Odbc:tracker","system","abc")
;
ps=con1.prepareStatement("insert into seat
values(?,?,?,?)");
ps.setString(1,seat_no);
ps.setString(2,c);
ps.setString(3,w);
ps.setString(4,d);
ps.executeUpdate();
count++;
//save=save+count;
System.out.println(count);
//new total(save);
}
}//end of try
catch(Exception e)
{
System.out.println("Exception Caught :"+e);
}
}//end if
}//ending for
}
7. CONCLUSION
The project was designed in such a way that future modifications can be done easily. The
following conclusions can be deduced from the development of the project.
8. BIBILIOGRAPHY
www.w3schools.com
www.coderanch.com
www.apache.org
www.javasoft.com