You are on page 1of 62

Get Professional

A Major Project Report Submitted to

Rajiv Gandhi Proudyogiki Vishwavidyalaya, Bhopal


Towards partial fulfillment for the award of
Bachelor of Technology
Computer Science & Engineering

Submitted by

1. Himanshu Mande (0818CS191066)


2. Kunal Sharma (0818CS191087)
3. Nikhil Sahu (0818CS191111)
4. Piyush Mahajan (0818CS191124)

Under the supervision of

Mr. Pradeep Baniya


Assistant Professor

Department of Computer Science & Engineering


Indore Institute of Science and Technology, Indore
Session 2022-2023
INDORE INSTITURE OF SCIENCE AND TECHNOLOGY,

INDORE (M.P.) (Department of Computer Science Engineering)

DECLARATION
We, Himanshu Mande , Piyush Mahajan, Kunal Sharma and Nikhil Sahu student of
“Bachelor of Technology ” in Indore Institute of Science & Technology” , session 2023,
Indore (M.P.) here by informed that the work presented in this dissertation entitle “Get
Professional is the outcome of my own work, is Bonafede and correct to the best of my
knowledge and this work has been carried out taking care of Engineering Ethics. The work
presented does not infringe any patented work and has not been submitted to any other
University or anywhere else for the award of any degree or any professional diploma.

Name of Scholar Enroll No.

Himanshu Mande 0818CS191066


Piyush Mahajan 0818CS191124
Nikhil Sahu 0818CS191111
Kunal Sharma 0818CS191087

1
INDORE INSTITURE OF SCIENCE AND TECHNOLOGY,
INDORE (M.P.) (Department of Computer Science Engineering)

CERTIFICATE OF APPROVAL

The undersigned certify that they have read and recommended to the Department of
Computer Science Engineering for acceptance, a project report entitled “Get Professional”
submitted by Piyush Mahajan, Himanshu Mande, Kunal Sharma and Nikhil Sahu in partial
fulfilment for the degree of Bachelor of Computer Science Engineering.

Mr. Pradeep Baniya


(Project Guide)
CSE Department

Dr. Satish Kumar Penchala


Head of Department
CSE Department

2
INDORE INSTITURE OF SCIENCE AND TECHNOLOGY,
INDORE (M.P.) (Department of Computer Science Engineering)

ACKNOWLEDGEMENT
We take an opportunity to acknowledge and extend my heartfelt gratitude to my guide and
the pivot of this enterprise, Mr. Pradeep Baniya who is most responsible for helping us to
complete this work. He showed us different ways to approach the problems and the need to
be persistent to accomplish our goal. His discernment in the choice of topic, his confidence
in us when we doubted ourself and his admirable guidance are some cogent reasons that
make us over that without his support this thesis would be a chimera.

Name of Scholar Enroll No.

Himanshu Mande 0818CS191066


Piyush Mahajan 0818CS191124
Nikhil Sahu 0818CS191111
Kunal Sharma 0818CS191087

3
INDORE INSTITURE OF SCIENCE AND TECHNOLOGY,
INDORE (M.P.) (Department of Computer Science Engineering)

ABSTRACT

Get Professional is a web application that provides an online platform to connect users with
verified professionals who can provide personalized services to meet their needs. With a
user-friendly interface, users can easily browse through various services such as cleaning,
plumbing, electrical repairs, and many more, and choose a professional who fits their budget
and requirements. The application not only provides convenience in booking appointments
but also maintains a record of the user's booking history, making it easy to keep track of
previous appointments. Additionally, users can communicate with the professionals through
the app's messaging and call feature, which stores all conversations for future reference.
The app's primary focus is on delivering a hassle-free experience to its users, allowing them
to accomplish their tasks without any hassle. With the assurance of verified professionals
and seamless booking, users can trust the application to cater to their personal needs
efficiently.

4
TABLE OF CONTENTS

CHAPTER NO. TITLE PAGE NO.

ABSTRACT 4

LIST OF TABLES 6

LIST OF FIGURES 7

LIST OF ABBREVATION 8

1. INTRODUCTION 9

2 LITERATURE SURVEY 10

3 DETAILED DESIGN OF THE PROJECT 14

3.1 Architecture Diagram 15

3.2 UML Diagrams 17

3.3 Database tables 22

3.4 Requirement Specification 25

3.4.1 Functional Requirements 26

3.4.2 Non- Functional Requirements 33

3.5 System Requirements 34

4 IMPLEMENTATION 35

5 TESTING 52

6 SCREENSHOTS 54

7 CONCLUSION & FUTURE WORK 64

8 REFERENCES 64

5
LIST OF TABLES

Table No Title Page No

1.1 Technology used 57

1.2 Abbreviations 8

1.3 References 62

6
LIST OF FIGURES

Figure No Title Page No

3.1 Architecture 16
Diagram
3.2 Use case Diagram 21

3.3 Sequence Diagram 22-23

3.4 Activity Diagram 24

3.5 Class Diagram 25

3.6 ER Diagram 26

7
LIST OF ABBREVIATIONS

ACRONYM EXPANSION

HTML Hypertext Mark-up Language

JSP Java Server Pages

CSS Cascading Style Sheets

8
1. INTRODUCTION

1.1 OBJECTIVE

The objective of this project is

• Build a user-friendly software that customers and Professionals can


easily understand.

• Application must respond to the changes quickly.

• In a heavy use, the software must perform well.

• The application should provide the services at the reasonable prices to


the customers.

• To Make Professional available 24/7 to the customers.

1.2 PROJECT SCOPE

The Aim of the project is to design and develop an online application that will help the customers to search
for the Professional for their personal activities/needs at their door step.

MODULES OF THE PROJECT:

• Customer
• Professional
• Admin
Customer Sub Modules:

• Register & Login


• Search for Professional.
• View Details of Professional.
• Contact Professional.
• Rate a Professional.
• View the Invoice
• Pay The Bill

9
Professional Sub Modules:

• Register.
• Login.
• Update Profile.
• Service to the Customer
• Generate Invoice

Admin Sub Modules:

• Login
• Activate Professional

10
2. LITERATURE SURVEY

Industrial services designed for people who are professionals who provide services
that are not clear or goods to consumers. And different sectors of manufacturing,
that produce physical products are sold to the public, industry services provide
services to serve the needs of the customer. People who make this industry can
provide a professional to do the tasks.

The company uses the mode service establishment is different; One of them is the
electronic trading. Electronic commerce, which is also called electronic commerce,
is the process of purchase and sell goods and services, or transfer funds or data,
through an electronic network, especially through the Internet. There is a
commercial transaction, as well as private transactions that happened from both
businesses to business, from business to consumer, the consumer or the consumer
or the consumer. In all these transactions, such as B2B, B2C or C2C, hope, and
customer satisfaction is very important. Because many of the competitors in the
industry, all must understand the needs and expectations of its customers.

A research study about the expected level of customer satisfaction and Urban Clap
on beauty services.

Quality of service: service quality, customer satisfaction, and customer value is a


primary concern in all sectors, including personal care. According to Kumar, Kee
and Manshor (2011) The customer is a high level is one of the important
consequences of the activities of marketing, "is a response to the satisfaction of
the consumer. The only assessment that the products or services, or products or
services itself, provide the palm is pleasant and consumers.
Guthrie, M. and J. Jung (2012) in the study, women's perception of care services
by household personal care means a lot of confidence and professionalism.
As we move into the world of the little time that women with the same
responsibility in such earth, everything is a concept that you have to wait forever
before you have to turn.
According to research conducted by Jai Vardhan on 8 September 2015, in addition
to food and health care, the provision of services in the beauty outside the door
connected with one of the longest opportunity.
Women who take the professional path that busy that some tend to use services
such as on Earth. Similarly, kicking Urban, who earlier promised that since Belita
(discovered in 2010) about 1,300 orders in the past (according to the survey and
research conducted by Jai Vardhan in September 2015).
Additional research by Jai Vardhan said that (Seen), which is a test of IIT-KGP
Gaurav Maheshwari and Ronak Sharda, that Get Look offers beauty services
clients in the door in two hours. Through these results, we can say that beauty

11
provides services of high quality is a blessing for women who are professionals
and housewives.

Project Profile on Repair & Servicing of Electrical App

In almost every home, there are a variety of tools that remain almost every day to
provide comfort and simplicity is worthy. We are very grateful to these tools are
needed for each of the earth. Distribution of household devices cannot be removed
since engines tend to break. Sometimes changing the start because of improper or
excessive. Equipment, such as mixers/manufacturer, geysers, water heaters, fans,
iron, etc., are commonly used in almost every house. Usha is the largest
manufacturer, Bajaj, Crompton, Onida, Videocon, LG, etc. This tool will need
maintenance, repair, and improvement regularly. Although there are several
centers and repair services provided by a network of dealers who are legitimate,
there are still a variety of repair centers and service centers to meet the needs of
repair and operations services to these tools, especially in semi-urban areas.

In India, every household uses at least 10 to 15 electronic devices and instruments


of different ages and brands, and every day people face every small problem or as
important. The main reason behind the Man is to solve the problem is consumers
and act is a provider of solutions to stop when it comes to decisions of customers
about technology selection, size, installation, maintenance, repair, replacement,
recycling and much more for audio, video, software, mobile devices,
telecommunications equipment, computer products, and tools that are not. Our
Professionals are trained and very often experience improvement programs and
skills to keep the technical progress.

Innovative services, call center, web consulting services, security, and safety
market research is complete to introduce new technology services that are the
strength of the people who make our mark in the presence of all the parties at the
same time.

Our passion for customer service, we have to see in the long-term cooperation with
the largest retail chain in India with companies such as Metro Cash & carry, Aditya
Birla Group, Bajaj, Murphy Richards, Kelvinator and a number of leading brands
of consumer goods.

12
Benefits Of Choosing Professional Booking Application For Your Services

Electronic appliances are sensitive and must be maintained properly so that no


damage. Without proper maintenance, they will probably be damaged in a short
time after installation. This means more money needs to purchase and install a new
electronic device.
Damage can occur and, when this happens, only the professionals who must take
care of the problem and repair of electronic equipment. There are many DIY repair
jobs online and this can be tempting since the object is to convince employers that
they save money. This is only true if it is very minimal and will not need to
experience it. However, trying to repair the damaged appliance without the correct
or skills can be slightly dangerous. It causes personal injury or damages the device
even more, sometimes without any improvement.

That is why professionals are the best option if there are several tools that are
damaged in the earth. There are also other reasons why a professional is the best
choice. There are;

Efficiency Of The Electronic Appliance


Hiring an electronic repair professional near me confirm that the damage was
repaired and restored efficiency. Only a professional can fix an inefficient tool to
advance the destruction there. This is because they can observe the damaged parts
and determine whether it was needed or must be replaced. Professionals who have
the skills necessary to perform the right job.

Prevent Future Damage


When the electronics repaired by trained and qualified professionals, they will not
be at great risk of damage any time soon. Professionals have the experience needed
to do the work and total efficiency. They will make sure that the devices do not
experience the same problem again. This saves money because you do not need to
pay for more improvements. It also does not guarantee that the device does not
retain breaking down.

They Have The Right Tools


Repair companies specialize in the repair of damaged electronic equipment, which
means they have to invest in equipment that is compatible to work it. That is why
it is important to get a professional. They will use a device that fits in the problem
corrected, because it is, the device is not damaged. Do not use the right tools to do
the job can lead to some parts of the tool that is sensitive.

13
If you have an electronic repair tool, to check if they have features that are better.
Make sure they have a valid license to prove that they are indeed experts in the
repairing electronic devices. Service was not a problem and the customer who asks
for permission. It is recommended to choose the service that offers emergency
repairs to all the customers that need it.

14
3. DETAILED DESIGN OF THE PROJECT

3.1 SYSTEM ARCHITECTURE

An architecture diagram is a graphical representation of a set of concepts, that are part of an


architecture, including their principles, elements and components.

Below architecture diagram of online Professional Booking system represents mainly flow of
request from the users to database through servers. In this scenario overall project system is
designed in three tiers separately using three layers called presentation layer, business layer,
data link layer. This online Professional Booking system project was developed using 3-tier
architecture.

Figure 3.1: Architecture diagram

15
3.2 Flow Charts:

3.2.1 Admin Flow Chart:

Figure 3.2: Admin Flow Chart

16
3.2.2 Customer Flow Chart:

Figure 3.3: Customer Flow Chart

17
3.2.3 Professional Flow Chart

Figure 3.4: Professional Flow Chart

18
3.3 UML DIAGRAMS

The Unified Modeling Language allows software engineers to express an analysis model using
text model which states the rules by synthetic semantics and pragmatics.
UML system represented by five different views that reflect the viewpoints of different. Each
view is defined by a set of diagrams, as follows.

User Model View

This view represents the system from the user's point of view. The representative analysis
describes the scenario of a user viewpoint of the end-user.

Structural Model view

In this model, the data and functionality of the system come from. The model was watching a
static model structure.

Behavioral Model View

It describes the dynamics of behavior as part of the system and shows the interaction
between the different structural elements described in the user model and the structural
model view.

Implementation Model View


In this model, the strength and structural parts of the system that was presented when we
made.

3.3.1 USE CASE DIAGRAM


A Use case diagram is more likely to reflect the user's interaction with the system indicates
the specification of the case registered. Diagram of cases that can be demonstrated using a
variety of systems and applications in several ways in which they interact with the system.
Images of this type are commonly used together with the text of the case and often also
accompanied by other types of diagrams.

19
Figure 3.5 Use Case Diagram

20
3.3.2 SEQUENCE DIAGRAM

A sequence diagram is a type of interaction diagram that shows how the process of working
with each other and what order. This is a construction diagram message. A sequence diagram
showing the interaction of objects are arranged in a sequence of time. That suggests objects and
classes involved in the scenario and the messages exchanged between the objects that are needed
for the functionality of the scenario. Sequence diagrams are generally related to the use and
understanding of the case in view of the logic of the system is growing. Order position is
sometimes called charts, graphs and scenarios show time.

Admin:

Professional:

21
Customer:

Figure 3.6: Sequence diagram

22
3.3.3 ACTIVITY DIAGRAM

activity Diagram is a graphical representation for activities like steps and activities that support
the selection, iteration and contracting. In the modeling language, an activity diagram can be
used to describe the operational and operational steps for the components of a system. This
Diagram showing the flow of control.

Figure 3.7: Activity Diagram

23
3.3.4 CLASS DIAGRAM

The class diagram is static. It Represents the views of a static application. The class diagram is
used not only to describe, document and describe various aspects of the system, but also to
build the executable code for software.

The class diagram describes the attributes and operations of the class and also the ban imposed
on the system. Class diagrams are often used in object-oriented model system because it is the
only UML diagram that can be mapped directly and object-oriented language.

Class diagrams show the classes, between, associations, collaboration with the ban. It was also
known as a structure diagram.

Figure 3.8: Class Diagram

3.3.5 ENTITY RELATIONSHIPS DIAGRAM

The entity-relationship (ER) Diagram allows us to describe the data that is involved in the
business of real objects and related terms, and is often used for the initial design of the database
design.
The ER model is important for their role in the design of the database. The concept that provides
benefits that allows us to move from the description that is not an official of the desired database
of the description is more detailed and accurate that it can be implemented in a DBMS. The ER
model is used in a phase called "conceptual design" database. Note that many variations of the
ER chart is used and there is no standard that is generally accepted.
.

24
Username

Admin
Bill

Usernam
e Professional Get
Professional

emai
l

Booking
email
username

mobil
e

Figure 3.9: ER Diagram

25
3.4 TABLE SPECIFICATION

Admin Table :

Fields Datatype
Username varchar
password varchar

Bill Table:

Fields Datatype

tusername Varchar

tlocation varbinary

email Varchar

mobile Varchar

bookingid varchar

amount Varchar

device Varchar

status varbinary

Professional Booking Table:

Fields Datatype
device Varchar
email Varchar
address Varchar
mobile Varchar
latitude Varchar
longitude Varchar
Status Varchar

26
Customer Table:

Fields Datatype

username Varchar
password Varchar
gender Varchar
email Varchar
address Varchar

mobile Varchar

latitude Varchar

longitude Varchar

Response Table:

Fields Datatype

tusername Varchar
tlocation Varchar
device Varchar
email Varchar
address Varchar

mobile Varchar

bookingid Varchar

rating Varchar

27
Professional Table:

Fields Datatype

username Varchar
password Varchar
ttype Varchar
email Varchar
gender Varchar

dob Varchar

address Varchar

mobile Varchar

latitude Varchar

longitude Varchar

status Varchar

28
3.5REQUIREMENT SPECIFICATION

3.5.1 Functional Requirements

Online Professional Booking System project is a web application which is


developed in Java platform by using Html, Css, JavaScript, Jsp and Servlets.
This project contain three modules
1. Admin
2. Professional
3. Customer

Admin:
In this project Admin Is the owner of this web application. Admin maintains the
web application. We have Admin login form, admin login to web application with
respective username and password. Admin view and check the Professional’s
details. After verification, Admin activate the Professionals.

Professional:
A Professional is a professional worker in appropriate technology. In this Project
Professional fill the registration form with valid information. Admin decides
(activate) the Professional for web application. A Professional can login to web
application after activation only. Professional can view the customer bookings and
accept the customer booking requests. Professional can accept the customer
requests when customer from same location request for service. Professional
generate a online bill with unique booking id, with that unique booking id
Professional collects the payment from customers. A Professional can view the
customer ratings for his work.

Customer:
The main module of in this project is a customer. A customer has to register for
booking a Professional for his/her home services. A customer login to web
application with belonging username and password. A customer book the
Professional for his/her work. A customer can enter the exact location (latitude and
longitude) with the help of Google map. A customer have an option to view the
ratings of a Professional before comes to work. A customer check the status
whether a Professional accepts booking request or not. A customer views the
generated bill and pays the amount through online service. A customer can view
their booking history by clicking on history. After Completion of a Professional
work a customer wants, he/her can give rating to a booking Professional.

29
3.5.2 Non-Functional Requirements:

This section defines some of the terms that the user's system is not specifically
defined or experience. This requirement generally would limit the requirement to
achieve functional..

• Compatibility Requirements:

UI technology that will be used must be compatible with browsers that are, the user
should be able to access this document in IE6 and higher and Firefox without errors.

• Security Requirements:

Because there are two parts of the application (internal and external),
internal systems must be safe.
• Performance Requirements:

Web clients must not take more than 3-4 seconds to be processed. The
portal should be able to take care of 1000 registered at the same time.

• Extendibility Requirements:
We need to develop the terms of this at the time of the next if the client
hopes to expand the functionality of the new business, the application must
be extensible in terms of configuration and code updates.

30
3.6 SYSTEM REQUIREMENTS:

3.6.1 Hardware Requirements

The recommended set of system specifications are:

RAM >= 2GB

Hard drive space >= 5GB

Processor Dual-core AMD64 or EM64T

3.6.2 Software Requirements

Programming Languages HTML, CSS, Java script, JSP

Development Tools NetBeans8.1, JDK 1.7, SQLYog

Web Browser Chrome, IE10+

Operating System Windows 10

Database MySQL 5.5

31
4 IMPLEMENTATION PHASE

The main activity in this phase is to develop the source code is based on the
detailed design documents.
The unit test plan was developed to describe the procedure to test the function
of each component or module in the project.
In this phase of coding, we will use the network point with a few examples of
HTML, JSP, CSS, etc.

Home page
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>
</head>

<body class="home-bg">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="index.html" class="active">Home</a>
</li>
<li>
<a href="admin.jsp">Admin</a>
</li>
<li>
<a href="Professional.jsp">Professional</a>
</li>
<li>
<a href="customer.jsp">Customer</a>
</li>
</ul>
</nav>

<!-- Main Footer -->


<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
32
</a>
</p>
</footer> -->

</body>

</html>

Admin Page
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="index.html">Home</a>
</li>
<li>
<a href="admin.jsp" class="active">Admin</a>
</li>
<li>
<a href="Professional.jsp">Professional</a>
</li>
<li>
<a href="customer.jsp">Customer</a>
</li>
</ul>
</nav>
<br><br><br>
<div class="login" style="margin-top:100px;">
<h2>Sign In</h2>
<form action="adminact.jsp" method="post">
<div class="input-group">
<input type="text" name="username" required="">
<span>Username</span>
33
</div>
<div class="input-group">
<input type="password" name="password" required="" />
<span>Password</span>
</div>
<div class="input-group">
<button class="btn-hover color-2">Login</button>
</div>
</form>
<br>

</div>
<!-- Main Footer -->
<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

Admin Home Page


<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="customerhome.jsp" class="active">Home</a>
</li>
34
<li>
<a href="viewtech.jsp" >View Professional</a>
</li>
<li>
<a href="index.html" >Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<br><br><br><br><br><br>

<br>
<marquee direction="scroll" scrollamount="10"><h1
style="color:purple;">Welcome Admin </h1></marquee>
<!-- Main Footer -->
<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

Customer Home Page


<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
35
<li>
<a href="customerhome.jsp" class="active">Home</a>
</li>
<li>
<a href="book.jsp" >Book</a>
</li>
<li>
<a href="status.jsp" >Status</a>
</li>
<li>
<a href="viewbill.jsp" >View Bill</a>
</li>
<li>
<a href="history.jsp" >History</a>
</li>

<li>
<a href="index.html" >Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<br><br><br><br><br><br>
<%
String username = session.getAttribute("username").toString();
%>
<br>
<marquee direction="scroll" scrollamount="10"><h1
style="color:purple;">Welcome <%=username%> </h1></marquee>
<!-- Main Footer -->
<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

Professional Home Page


<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
36
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="customerhome.jsp" class="active">Home</a>
</li>
<li>
<a href="viewbooking.jsp" >View Bookings</a>
</li>
<li>
<a href="generatebill.jsp" >Generate Bill</a>
</li>
<li>
<a href="index.html" >Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<br><br><br><br><br><br>
<%
String username = session.getAttribute("username").toString();
%>
<br>
<marquee direction="scroll" scrollamount="10"><h1
style="color:purple;">Welcome <%=username%> </h1></marquee>
<!-- Main Footer -->
<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>
Booking a Professional Page
<!DOCTYPE html>
<html>

37
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>
<script
src="http://maps.google.com/maps/api/js?libraries=places&region=uk&lan
guage=en&sensor=true"></script>
<script
src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></sc
ript>
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"
></script>
<script
src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.
js"></script>
<link
href="https://fonts.googleapis.com/css?family=Poppins:100,200,400,300,
500,600,700" rel="stylesheet">

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="customerhome.jsp" class="active">Home</a>
</li>
<li>
<a href="book.jsp" >Book</a>
</li>
<li>
<a href="status.jsp" >Status</a>
</li>
<li>
<a href="viewbill.jsp" >View Bill</a>
</li>
<li>
<a href="history.jsp" >History</a>
</li>
<li>
<a href="index.html" >Logout</a>
</li>

</ul>
38
</nav>
<br><br><br>
<div class="login" style="width: 560px; margin-top: 100px;">
<form action="bookact.jsp" method="post">
<table>
<tr>
<td style="padding-right: 20px">
<div class="input-group">
<select name="device" required="">
<option>Select Device</option>
<option value="Laptop">Laptop</option>
<option value="Desktop">Desktop</option>
<option value="Mobile">Mobile</option>
<option value="AC">AC</option>
<option value="Washing Machine">Washing
Machine</option>

</select>
</div>
</td>
<td>
<div class="input-group">
<input type="email" name="email"
required="">
<span>Email</span>
</div>
</td>
</tr>

<tr>

</tr>
<tr>
<td style="padding-right: 20px">
<div class="input-group">
<select name="Address" required="">
<option>Select Area</option>
<option value="Ameerpet">Ameerpet</option>
<option value="Begumpet">Begumpet</option>
<option
value="SanathNagar">SanathNagar</option>
</select>
</div>
</td>
<td>
<div class="input-group">
<input type="text" name="mobile" id=""
pattern="[0-9]{10}" required>
<span>Mobile Number</span>
</div>
</td>
</tr>
<tr>
<tr>

<td style="padding-right: 20px" >


39
<div class="input-group">
<input name="latitude" class="MapLat"
value="" type="text">
<span>Latitude</span>
</div>
</td>
<td>
<div class="input-group">
<input name="longitude" class="MapLon"
value="" type="text">
<span>Longitude</span>
</div>
</td>
</tr>

</table>
<div class="input-group">
<button class="btn-hover color-9">Book</button>
</div>
</form>
</div>
<!-- Main Footer -->
<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->
<div id="map_canvas" style="height: 350px;width: 550px;margin:
0.6cm;"></div>
<script>
$(function () {
var lat = 17.4375,
lng = 78.4483,
latlng = new google.maps.LatLng(lat, lng),
image =
'http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png';
//zoomControl: true,
//zoomControlOptions: google.maps.ZoomControlStyle.LARGE,
var mapOptions = {
center: new google.maps.LatLng(lat, lng),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP,
panControl: true,
panControlOptions: {
position: google.maps.ControlPosition.TOP_RIGHT
},
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.TOP_left
}
40
},
map = new
google.maps.Map(document.getElementById('map_canvas'), mapOptions),
marker = new google.maps.Marker({
position: latlng,
map: map,
icon: image
});
var input = document.getElementById('searchTextField');
var autocomplete = new google.maps.places.Autocomplete(input,
{
types: ["geocode"]
});
autocomplete.bindTo('bounds', map);
var infowindow = new google.maps.InfoWindow();
google.maps.event.addListener(autocomplete, 'place_changed',
function (event) {
infowindow.close();
var place = autocomplete.getPlace();
if (place.geometry.viewport) {
map.fitBounds(place.geometry.viewport);
} else {
map.setCenter(place.geometry.location);
map.setZoom(17);
}
moveMarker(place.name, place.geometry.location);
$('.MapLat').val(place.geometry.location.lat());
$('.MapLon').val(place.geometry.location.lng());
});
google.maps.event.addListener(map, 'click', function (event)
{
$('.MapLat').val(event.latLng.lat());
$('.MapLon').val(event.latLng.lng());
infowindow.close();
var geocoder = new google.maps.Geocoder();
geocoder.geocode({
"latLng":event.latLng
}, function (results, status) {
console.log(results, status);
if (status == google.maps.GeocoderStatus.OK)
{
console.log(results);
var lat =
results[0].geometry.location.lat(),
lng =
results[0].geometry.location.lng(),
placeName =
results[0].address_components[0].long_name,
latlng = new google.maps.LatLng(lat,
lng);
moveMarker(placeName, latlng);

$("#searchTextField").val(results[0].formatted_address);
}
});
});

41
function moveMarker(placeName, latlng) {
marker.setIcon(image);
marker.setPosition(latlng);
infowindow.setContent(placeName);
//infowindow.open(map, marker);
}
});
</script>
<script
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAEGQITyiWHrfQlk
guvuJVAywlGcUv2r8k&callback=myMap"></script>
</body>

</html>

View Professional page


<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="databaseconnection.databasecon"%>
<%@page import="java.sql.Connection"%>
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="customerhome.jsp">Home</a>
</li>
<li>
<a href="viewtech.jsp" class="active">View
Professional</a>
</li>

42
<li>
<a href="index.html">Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<%
// String category =
request.getParameter("category");

try{

Connection co = databasecon.getconnection();
PreparedStatement pst=co.prepareStatement("select * from
tech");
ResultSet rs=pst.executeQuery();
%>
<center>
<table class="table table-dark table-striped">
<thead>
<tr>

<th>Username</th>
<th>Ttype</th>
<th>Email</th>
<th>Gender</th>
<th>DOB</th>
<th>Address</th>
<th>Mobile</th>
<th>Status</th>
<th>Active</th>

</tr>
</thead>
<%
while(rs.next()){

%>
<tbody>
<tr>

<td><%=rs.getString(1)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(4)%></td>
<td><%=rs.getString(5)%></td>
<td><%=rs.getString(6)%></td>
<td><%=rs.getString(7)%></td>
<td><%=rs.getString(8)%></td>
<td><%=rs.getString(11)%></td>
<td><button style="color:black"><a
href="active.jsp?username=<%=rs.getString(1)%>&ttype=<%=rs.getString(3
)%>&email=<%=rs.getString(4)%>&address=<%=rs.getString(6)%>">active</a
></button> </td>
</tr>
</tbody>
<%
43
}
%>
</table>
</center>
<% }
catch(Exception e)
{
System.out.println(e);
}
%>

<!-- Main Footer -->


<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

View Booking Page


<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="databaseconnection.databasecon"%>
<%@page import="java.sql.Connection"%>
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
</header>
<!-- Navbar -->
<nav>
44
<ul>
<li>
<a href="customerhome.jsp">Home</a>
</li>
<li>
<a href="viewbooking.jsp" class="active">View
Bookings</a>
</li>
<li>
<a href="index.html" >Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<%
String tlocation =
session.getAttribute("location").toString();

try{

Connection co = databasecon.getconnection();
PreparedStatement pst=co.prepareStatement("select * from
booking");
ResultSet rs=pst.executeQuery();
%>
<center>
<table class="table table-dark table-striped">
<thead>
<tr>

<th>Device</th>
<th>Email</th>
<th>Address</th>
<th>Mobile</th>
<th>Status</th>
<th>Book</th>

</tr>
</thead>
<%
while(rs.next()){

%>
<tbody>
<tr>

<td><%=rs.getString(1)%></td>
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(4)%></td>
<td><%=rs.getString(7)%></td>
<td><button style="color:black"><a
href="bookres.jsp?device=<%=rs.getString(1)%>&email=<%=rs.getString(2)
%>&address=<%=rs.getString(3)%>&mobile=<%=rs.getString(4)%>">book</a><
/button> </td>
</tr>
45
</tbody>
<%
}
%>
</table>
</center>
<% }
catch(Exception e)
{
System.out.println(e);
}
%>

<!-- Main Footer -->


<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

Customer View Recent History Page


<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="databaseconnection.databasecon"%>
<%@page import="java.sql.Connection"%>
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Professional Booking System</title>
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="stylesheet" type="text/css" media="screen"
href="css/style.css">
<script src="main.js"></script>

</head>

<body style="background: linear-gradient(to right, rgb(198, 255, 221),


rgb(251, 215, 134), rgb(247, 121, 125));">
<!-- Main Header -->
<header class="main-header">
<h1>Professional Booking System</h1>
46
</header>
<!-- Navbar -->
<nav>
<ul>
<li>
<a href="customerhome.jsp" class="active">Home</a>
</li>
<li>
<a href="book.jsp" >Book</a>
</li>
<li>
<a href="status.jsp" >Status</a>
</li>
<li>
<a href="viewbill.jsp" >View Bill</a>
</li>
<li>
<a href="history.jsp" >History</a>
</li>

<li>
<a href="index.html" >Logout</a>
</li>

</ul>
</nav>
<br><br><br>
<%
// String category =
request.getParameter("category");
String email = session.getAttribute("email").toString();
String username = session.getAttribute("username").toString();
try{

Connection co = databasecon.getconnection();
PreparedStatement pst=co.prepareStatement("select * from
response where email='"+email+"'");
ResultSet rs=pst.executeQuery();
%>
<center>
<table class="table table-dark table-striped">
<thead>
<tr>

<th>Professional</th>
<th>Professional Location</th>
<th>Device</th>

<th>Booking ID</th>

</tr>
</thead>
<%
while(rs.next()){

%>
47
<tbody>
<tr>

<td><%=rs.getString(1)%></td>
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(7)%></td>

</tr>
</tbody>
<%
}
%>
</table>
</center>
<% }
catch(Exception e)
{
System.out.println(e);
}
%>

<!-- Main Footer -->


<!-- <footer class="main-footer" style="background-color:
transparent; background-image: none;">
<p>Developed & Maintained by
<a href="https://www.1000projects.com/" target="_blank">
<i class="fa fa-user-circle"></i> 1000 Projects
</a>
</p>
</footer> -->

</body>

</html>

48
5. TEST CASE

5.1 Unit Testing & Unit Testing Plan

The scope of testing to test the functionality of all subsystems against


individual conditions are needed in the analysis of the requirements and
design documents. All tested subsystems respectively. Test data are necessary
for the individual subsystem will be prepared in advance and be ready to test
the unit subsystem. Test units will be made when you have finished coding.

5.2 Functionality to be tested

The following sub-systems/modules will be tested for their functionality:

➢ Ability to make the information stored available to all modules


including: Admin, Customer, Professional.
➢ OEER Portal will be divided into two parts: One will be used by
Customer and Other will be Professional.
➢ Admin will login via Login Page and Customers, Professionals need
to register first to login.
➢ Admin can able to accept the Professionals after verifying their details.

➢ Ability for users to provide their specific problems and the location by using
longitude and latitude.

➢ Ability for users to select a new top rated Professional for the better
service.

49
5.3 Unit Test Cases

Scenario 1: Ability to make the information stored available to all channels


including Email & Web Chat

S. Actual Result
Action Expected Result
No

Login should be
1 Admin Login Login Successful
successful

Professional Should be able to Registration


2 Registration Register First on the process successful
web portal by giving
their complete details
Customer Registration Should be able to Registration
3
Register First on the process successful
web portal by giving
their personal and
repair problem details
Professional
Admin Activate Able to activate or
4 profile activates.
Professional deactivate the
Professional for the
further process

50
6. SCREENSHOTS

6.1 Home Page

6.2 Login Page

51
6.3 Professional Registration Page

6.2 Professional Login Page

52
6.3 Professional Home Page

6.4 Admin Login Page

53
6.5 Admin Home Page

6.6 View & Activate Professional

54
6.7 Customer Registration Page

6.8 Customer Home Page

55
6.9 Book page with the help of map

6.10 View Booking Page

56
6.11 Status Page

6.12 Generate Bill Page

57
6.13 Generate Form

6.14 View Bill Page

58
6.15 View History Page

6.16 Give Rating Form page

59
6.17 View Rating Page

60
7. Conclusion & Future Work

The project Online Professional Booking System has been completed


as per the plan.

8. References

• https://en.wikipedia.org/wiki/E-services
• https://www.eff.org/wp/osp
• https://www.theoperationsmanagement.com
• https://en.wikipedia.org/wiki/Category:Online_services

61

You might also like