You are on page 1of 36

Department of Artificial Intelligence & Machine

Learning Academic Year 2021-22(Odd)

Mini Project Report(21AIM39)


On
“CAB SERVICE MANAGEMENT”
By

NAME USN
T.Pavan kumar 1NH20AI076
N.Lohith reddy 1NH20AI072
P.Sanjay reddy 1NH20AI143

Under the Guidance of

Mrs.C.kavyashree
Senior Assistant professor,
Dept. of Artificial Intelligence & Machine Learning,
New Horizon College of Engineering,
Bangalore-560103

Department of AIML,NHCE
Department of Artificial Intelligence & Machine Learning
CERTIFICATE

Certified that the Mini Project work entitled “Cab Service Management”
carried out by Mr. Pavan kumar USN 1NH20AI076. Mr. Lohith Reddy USN
1NH20AI072. Mr. Sanjay reddy USN 1NH20AI143. It is certified that all
corrections/suggestions indicated for Internal Assessment have been
incorporated in the Report deposited in the departmental library. The project
report has been approved as it satisfies the academic requirements in respect of
Mini Project work.

Signature of guide Signature of HOD


Prof. Mrs.C.Kavyashree Dr.N.V Uma Reddy
Guide Guide &Head of Department

External Viva
Examiner Signature with

date: 1.

2.

Department of AIML,NHCE
ABSTRACT

Our aim is to design and create a data management system for a car rental
company. This enables admin can rent a vehicle that can be used by a customer
This system increases customer retention and simplify vehicle and staff
Management in an efficient way.

Auto and bus travel agencies need an effective management platform to provide
adequate transportation services. Existing systems rely on manual data logging
for management, which is very tedious, time-consuming, and requires a lot of
manpower and paperwork. Therefore, existing systems must be computerized
and, if possible, network-based. The proposed taxi service management system is
a web application that can handle various branches and departments of general
car dealerships.

Department of AIML,NHCE
ACKNOWLEDGEMENT

The satisfaction and euphoria that accompany the successful completion of any task would be
impossible without the mention of the people who made it possible, whose constant guidance and
encouragement crowned our efforts with success.

I have great pleasure in expressing gratitude to Dr. Mohan Manghnani, Chairman, New
Horizon Educational Institutions, for providing necessary infrastructure and creating
good environment.

I take this opportunity to express my profound gratitude to Dr. Manjunatha, Principal,


New Horizon College of Engineering, for his constant support and encouragement.

I take this opportunity to express my profound gratitude to Dr.Amarjeet singh,dean,


New Horizon College of Engineering, for his constant support and encouragement.

I take this opportunity to express my profound gratitude to Mrs.C.Kavyashree Sr. Assistant


Professor, Department of AI & ML, New Horizon College of Engineering, for his constant
support and encouragement.

I would also like to thank Dr. N.V.Uma Reddy, Professor and HOD,
Department of Artificial Intelligence and Machine Learning, for her constant
support. I also express my gratitude to her my mini project reviewer, for
constantly monitoring the development of the project and setting up precise
deadlines. Her valuable suggestions were the motivating factors in
completing the work.

Department of AIML,NHCE
Table of Contents

Chapter
INTRODUCTION
1.1. Introduction
1.2. Objectives
1.3. Literature Survey
1.4. Existing system
1.5. Proposed system

2. SYSTEM REQUIREMENTS
2.1. Hardware requirements
2.2. Software requirements

3. SYSTEM DESIGN
3.1. System architecture
3.2. Algorithms/ Flow charts

4. IMPLEMENTATION AND RESULTS


4.1. Psuedocode
4.2. results

5. CONCLUSION AND FUTURE ENHANCEMENT

Department of AIML,NHCE
CHAPTER-1

1.1 INTRODUCTION:

Cab service management that specialize in Hiring cabs to clients. It is a web machine thru which
clients can view to be had cabs; sign in the cabs, view profile and ee-e book cabs. Cab reserving
carrier is a prime shipping carrier furnished via way of means of the diverse shipping operators
in a selected town. Mostly peoples use cab carrier for his or her every day transportations need.
The enterprise need to be a registered and fulfils all of the necessities and protection
requirements set via way of means of the shipping department. A Cab Booking/Hiring is a
machine that may be used briefly for a time period with a fee. The character who need to
hire/hire a vehicle need to first touch the cab hiring enterprise for the preference vehicle. This
may be performed online. Here the visitor can ee-e book a cab/ taxi/ vehicle via way of means of
viewing all of the cab information and pricing information to be had, in accordance to chose
town and area. It is the dependable carrier furnished to each clients and journey agencies. This
presents carrier with well-conditioned new vehicles, with enjoy drivers for a satisfied adventure
of the clients.
For vehicle rental services, those structures are taken into consideration dependable and
dependable via way of means of the journey business. This challenge goals to offer the high-
quality vehicle carrier to clients in need. We have a extensive variety of vehicles, from
widespread low-finances taxis to high-give up luxurious vehicles. The high-quality factor
approximately those community structures is they offer a web taxi apartment carrier for company
housing. This makes the paintings of vehicle carrier inexpensive and extra dependable.service
management specializing in Hiring cabs to customers.

Department of AIML,NHCE 1
Cab Service Management

1.2 OBJECTIVES

The main objectives of this project are:


1. It helps us to get quick cab at your place.
2. It makes easier so we can get quick services as soon as
possible 3.To keep the information of the customer
4. It is used to record the details of various activities of the user.

5. The main objective is to achieve high level of customer satisfaction by

providing efficient service.

The output of the system is displayed on the console during a formatted manner. The
output may attend a file (file style already explained).
1. Login page:
User name, password
2. Catch up cab details:
Customer details
Booking details
Receipt

Department of AIML,NHCE 2
Cab Service Management

1.3 Literature Survey


Ease of getting around is a headache for those who don’t have a private vehicle in Dhaka.
Today with just a few clicks we can have anything you want right at home. We are familiar
with online shopping online banking etc. Likewise, Cab Service Management is an online
car booking service with just a few clicks. Some people cannot afford to have a car for such
people this system becomes very useful. This system includes many different garages
depending on the order and convenience of customers ordering and delivering cars
according to locations in the area. For long-haul journeys, reservations can c via internet
service.

One more survey with the useful resource of the use of Mumbai Graham Panchayat5, 2017
concluded that 80% of respondents experience that Uber/Ola are presenting better
opportunity of excursion than traditional taxis services in Mumbai. This growth can be
seenmore in metropolitan cities of India (Rahman,2014) and there may be immoderate
competition among variousoperators like Ola, Uber, Radio cabs, Yellow cabs and Meru etc.

Department of AIML,NHCE 3
Cab Service Management

1.4 Existing system

Cab Service Managementis a novel idea for easing the transportation needs of an
organization's employees. within the present System, organizations do maintain an
individual for the allocating and proper functioning of transportation. The Person appointed
must take care of the assigning and movement of cabs. An authorized person maintains the
transportation details in papers, which could be a tedious task if any updations or changes
must be done.

1. Details are stored in Papers.

2. Maintenance could be a huge problem.

3. Update, changes in details could be a tedious task.

Department of AIML,NHCE 4
Cab Service Management

1.5 Proposed work

Rental cars are vehicles that will be used temporarily for a period of your time for a fee.
Renting a car helps people get around whether or not they do not have access to their own
vehicle or don't own one. Individuals who want to rent a car must first contact the youdrive
company to get the specified vehicle type. looking on the sort of auto renting. Car rentals are
categorized economy class compact class premium compact class premium class and luxury
class. And customers can freely choose the car of their choice supported by their wallet and
therefore the availability of that car at the time of booking. The rental system provides rental
services to foreign and native customers. This organization conducts its day-to-day business
providing; their services to customers using the system manually. The organization uses a
manual system to order rent save and maintain records of all rental activities and customer
information. The detailed functions of the prevailing system are listed as follows

When booking a car the customer orders a car by calling the organization; otherwise, he will
head to the institution to create a reservation.

When chartering a vehicle, the patron's individual statistics imbursement status and self-
driving contract are completed in the form of a lease contract to conclude a legal contract
between the customer and the autonomous driving organization.

Department of AIML,NHCE 5
Cab Service Management

CHAPTER-2 SYSTEM REQUIREMENTS

2.1 Hardware requirements


1.Computer processor core
i3 2.Hard disk 400GB or
more 3.RAM minimum 8GB

2.2 Software requirements


Frontend – Python IDE, Pycharm, Python with Tinker library
Backend – SQlite Q3, Db browser
Operating System-windows 10

Department of AIML,NHCE 6
Cab Service Management

CHAPTER 3:

3.1 System architecture


It represents our it consists of three major stages. The first stage of our architecture includes
android eligible software, which allows the app to run.
The next stage is booking the cab,where the passenger can book the cab. The results from the
second stage are taken and produces bill. after the ride completes the the payement will be done
In the previous system, details were stored manually in papers, and sharing the details between
employees was a financial burden. Updating details is a time-consuming task. However, a new
system was proposed to overcome the aforementioned drawbacks. The following are the
functionalities and advantages of the proposed system:
Data is centralized, which eliminates the sharing problem in the previous system.

As data is maintained electronically, it is simple for a person to update the details, which
eliminates the tedious updation in the previous system.

Maintenance is simple, and performance is good.

The Transportation Process has largely been automated by the system.

Department of AIML,NHCE 7
Cab Service Management

3.2 Flow chart

Enter Username and password

Submit username and password

Verify Username and password

Invalid
Login
Valid login

Redirect to user home page

Department of AIML,NHCE 8
Cab Service Management

3.3 Flow chart

PASSENGER PASSENGER PASSENGER


DETAILS LOCATION

PASSENGER DROP
RIDE TAXI NUMBER TOTAL COST LOCATION

TAX

RIDE END
PAYEMENT

EXTRA CHARGES

Department of AIML,NHCE 9
Cab Service Management

4.1 Psuedocode

from tkinter import *

from tkinter import ttk

import random

import time

import datetime

from tkinter import messagebox as ms

import sqlite3

Item4 = 0

with sqlite3.connect('pavan1.db') as db:

c = db.cursor()

c.execute('CREATE TABLE IF NOT EXISTS user (username TEXT NOT NULL ,password TEXT NOT
NULL)')

db.commit()

db.close()

class user:

def init (self,master):

self.master = master

self.username = StringVar()

self.password = StringVar()

self.n_username = StringVar()

self.n_password = StringVar()

self.widgets()

def login(self):

with sqlite3.connect('pavan1.db') as db:

c = db.cursor()

find_user = ('SELECT * FROM user WHERE username = ? and password = ?')

Department of AIML,NHCE 10
Cab Service Management

c.execute(find_user,[(self.username.get()),(self.password.get())])

result = c.fetchall()

if result:

self.logf.pack_forget()

self.head['text'] = "Welcome, " +

self.username.get() self.head.configure(fg="green")

self.head.pack(fill=X)

application = travel(root)

else:

ms.showerror('Oops!','Username Not Found.')

def new_user(self):

with sqlite3.connect('pavan1.db') as db:

c = db.cursor()

find_user = ('SELECT * FROM user WHERE username = ?')

c.execute(find_user,[(self.username.get())])

if c.fetchall():

ms.showerror('Error!','Username Already Taken!')

else:

ms.showinfo('Success!','Account Created!')

self.log()

insert = 'INSERT INTO user(username,password) VALUES(?,?)'

c.execute(insert,[(self.n_username.get()),(self.n_password.get())])

db.commit()

def log(self):

self.username.set('')

self.password.set('')

Department of AIML,NHCE 11
Cab Service Management

self.crf.pack_forget()

self.head['text'] = 'LOGIN'

self.logf.pack()

def cr(self):

self.n_username.set('')

self.n_password.set('')

self.logf.pack_forget()

self.head['text'] = 'Create Account'

self.crf.pack()

def widgets(self):

self.head = Label(self.master,text = 'LOGIN',font = ('',35),pady = 10)

self.head.pack()

self.logf = Frame(self.master,padx =10,pady = 10)

Label(self.logf,text = 'Username: ',font = ('',20),pady=5,padx=5).grid(sticky = W)

Entry(self.logf,textvariable = self.username,bd = 5,font = ('',15)).grid(row=0,column=1)

Label(self.logf,text = 'Password: ',font = ('',20),pady=5,padx=5).grid(sticky = W)

Entry(self.logf,textvariable = self.password,bd = 5,font = ('',15),show = '*').grid(row=1,column=1)

Button(self.logf,text = ' Login ',bd = 3 ,font = ('',15),padx=5,pady=5,command=self.login).grid()

Button(self.logf,text = ' Create Account ',bd = 3 ,font =


('',15),padx=5,pady=5,command=self.cr).grid(row=2,column=1)

self.logf.pack()

self.crf = Frame(self.master,padx =10,pady = 10)

Label(self.crf,text = 'Username: ',font = ('',20),pady=5,padx=5).grid(sticky = W)

Entry(self.crf,textvariable = self.n_username,bd = 5,font = ('',15)).grid(row=0,column=1)

Label(self.crf,text = 'Password: ',font = ('',20),pady=5,padx=5).grid(sticky = W)

Entry(self.crf,textvariable = self.n_password,bd = 5,font = ('',15),show = '*').grid(row=1,column=1)

Department of AIML,NHCE 12
Cab Service Management

Button(self.crf,text = 'Create Account',bd = 3 ,font =


('',15),padx=5,pady=5,command=self.new_user).grid()

Button(self.crf,text = 'Go to Login',bd = 3 ,font =


('',15),padx=5,pady=5,command=self.log).grid(row=2,column=1)

class travel:

def init (self,root):

self.root = root

self.root.title("Cab services Management ")

self.root.geometry(geometry)

self.root.configure(background='black')

DateofOrder=StringVar()

DateofOrder.set(time.strftime(" %d / %m / %Y "))

Receipt_Ref=StringVar()

PaidTax=StringVar()

SubTotal=StringVar()

TotalCost=StringVar()

var1=IntVar()

var2=IntVar()

var3=IntVar()

var4=IntVar()

journeyType=IntVar()

carType=IntVar()

varl1=StringVar()

varl2=StringVar()

varl3=StringVar()

Department of AIML,NHCE 13
Cab Service Management

reset_counter=0

Firstname=StringVar()

Surname=StringVar()

Address=StringVar()

Postcode=StringVar()

Mobile=StringVar()

Telephone=StringVar()

Email=StringVar()

TaxiTax=StringVar()

Km=StringVar()

Travel_Ins=StringVar()

Luggage=StringVar()

Receipt=StringVar()

Standard=StringVar()

PrimeSedan=StringVar()

PremiumSedan=StringVar()

TaxiTax.set("0")

Km.set("0")

Travel_Ins.set("0")

Luggage.set("0")

Standard.set("0")

PrimeSedan.set("0")

PremiumSedan.set("0")

def iExit():

iExit= ms.askyesno("Prompt!","Do you want to exit?")

if iExit > 0:

root.destroy()

return

Department of AIML,NHCE 14
Cab Service Management

def Reset():

TaxiTax.set("0")

Km.set("0")

Travel_Ins.set("0")

Luggage.set("0")

Standard.set("0")v

PrimeSedan.set("0")

PremiumSedan.set("0")

Firstname.set("")

Surname.set("")

Address.set("")

Postcode.set("")

Mobile.set("")

Telephone.set("")

Email.set("")

PaidTax.set("")

SubTotal.set("")

TotalCost.set("")

self.txtReceipt1.delete("1.0",END)

self.txtReceipt2.delete("1.0",END)

var1.set(0)

var2.set(0)

var3.set(0)

var4.set(0)

journeyType.set(0)

Department of AIML,NHCE 15
Cab Service Management

carType.set(0)

varl1.set("0")

varl2.set("0")

varl3.set("0")

self.cboPickup.current(0)

self.cboDrop.current(0)

self.cboPooling.current(0)

self.txtTaxiTax.configure(state=DISABLED)

self.txtKm.configure(state=DISABLED)

self.txtTravel_Ins.configure(state=DISABLED)

self.txtLuggage.configure(state=DISABLED)

self.txtStandard.configure(state=DISABLED)

self.txtPrimeSedan.configure(state=DISABLED)

self.txtPremiumSedan.configure(state=DISABLED)

self.reset_counter=1

def Receiptt():

if reset_counter is 0 and Firstname.get()!="" and Surname.get()!="" and Address.get()!="" and


Postcode.get()!="" and Mobile.get()!="" and Telephone.get()!="" and Email.get()!="":

self.txtReceipt1.delete("1.0",END)

self.txtReceipt2.delete("1.0",END)

x=random.randint(10853,500831)

randomRef = str(x)

Receipt_Ref.set(randomRef)

self.txtReceipt1.insert(END,"Receipt Ref:\n")

Department of AIML,NHCE 16
Cab Service Management

self.txtReceipt2.insert(END, Receipt_Ref.get() + "\n")

self.txtReceipt1.insert(END,'Date:\n')

self.txtReceipt2.insert(END, DateofOrder.get() + "\n")

self.txtReceipt1.insert(END,'Taxi No:\n')

self.txtReceipt2.insert(END, 'TR ' + Receipt_Ref.get() + " BW\n")

self.txtReceipt1.insert(END,'Firstname:\n')

self.txtReceipt2.insert(END, Firstname.get() + "\n")

self.txtReceipt1.insert(END,'Surname:\n')

self.txtReceipt2.insert(END, Surname.get() + "\n")

self.txtReceipt1.insert(END,'Address:\n')

self.txtReceipt2.insert(END, Address.get() + "\n")

self.txtReceipt1.insert(END,'Postal Code:\n')

self.txtReceipt2.insert(END, Postcode.get() + "\n")

self.txtReceipt1.insert(END,'Telephone:\n')

self.txtReceipt2.insert(END, Telephone.get() + "\n")

self.txtReceipt1.insert(END,'Mobile:\n')

self.txtReceipt2.insert(END, Mobile.get() + "\n")

self.txtReceipt1.insert(END,'Email:\n')

self.txtReceipt2.insert(END, Email.get() + "\n")

self.txtReceipt1.insert(END,'From:\n')

self.txtReceipt2.insert(END, varl1.get() + "\n")

self.txtReceipt1.insert(END,'To:\n')

self.txtReceipt2.insert(END, varl2.get() + "\n")

self.txtReceipt1.insert(END,'Pooling:\n')

self.txtReceipt2.insert(END, varl3.get() + "\n")

self.txtReceipt1.insert(END,'Standard:\n')

self.txtReceipt2.insert(END, Standard.get() + "\n")

self.txtReceipt1.insert(END,'Prime Sedan:\n')

self.txtReceipt2.insert(END, PrimeSedan.get() + "\n")

Department of AIML,NHCE 17
Cab Service Management

self.txtReceipt1.insert(END,'Premium Sedan:\n')

self.txtReceipt2.insert(END, PremiumSedan.get() + "\n")

self.txtReceipt1.insert(END,'Paid:\n')

self.txtReceipt2.insert(END, PaidTax.get() + "\n")

self.txtReceipt1.insert(END,'SubTotal:\n')

self.txtReceipt2.insert(END, str(SubTotal.get()) + "\n")

self.txtReceipt1.insert(END,'Total Cost:\n')

self.txtReceipt2.insert(END, str(TotalCost.get()))

else:

self.txtReceipt1.delete("1.0",END)

self.txtReceipt2.delete("1.0",END)

self.txtReceipt1.insert(END,"\nNo Input")

def Taxi_Tax():

global Item1

if var1.get() == 1:

self.txtTaxiTax.configure(state = NORMAL)

Item1=float(50)

TaxiTax.set("Rs " + str(Item1))

elif var1.get() == 0:

self.txtTaxiTax.configure(state=DISABLED)

TaxiTax.set("0")

Item1=0

def Kilo():

if var2.get() == 0:

self.txtKm.configure(state=DISABLED)

Km.set("0")

elif var2.get() == 1 and varl1.get() != "" and varl2.get() != "":

self.txtKm.configure(state=NORMAL)

Department of AIML,NHCE 18
Cab Service Management

if varl1.get() == "CampusCafe":

switch ={"BoysHostel": 10,"GirlsHostel": 8,"AdmissionBlock":6,"CampusCafe":

0} Km.set(switch[varl2.get()])

elif varl1.get() == "BoysHostel":

switch ={"BoysHostel": 0,"GirlsHostel": 2,"AdmissionBlock":5,"CampusCafe": 10}

Km.set(switch[varl2.get()])

elif varl1.get() == "GirlsHostel":

switch ={"BoysHostel": 2,"GirlsHostel": 0,"AdmissionBlock":3,"CampusCafe": 8}

Km.set(switch[varl2.get()])

elif varl1.get() == "AdmissionBlock":

switch ={"BoysHostel": 5,"GirlsHostel": 3,"AdmissionBlock":0,"CampusCafe": 6}

Km.set(switch[varl2.get()])

def Travelling():

global Item3

if var3.get() == 1:

self.txtTravel_Ins.configure(state = NORMAL)

Item3=float(10)

Travel_Ins.set("Rs " + str(Item3))

elif var3.get() == 0:

self.txtTravel_Ins.configure(state = DISABLED)

Travel_Ins.set("0")

Item3=0

def Lug():

global Item4

if (var4.get()==1):

self.txtLuggage.configure(state = NORMAL)

Item4=float(30)

Luggage.set("Rs "+ str(Item4))

Department of AIML,NHCE 19
Cab Service Management

elif var4.get()== 0:

self.txtLuggage.configure(state = DISABLED)

Luggage.set("0")

Item4=0

def selectCar():

global Item5

if carType.get() == 1:

self.txtPrimeSedan.configure(state = DISABLED)

PrimeSedan.set("0")

self.txtPremiumSedan.configure(state = DISABLED)

PremiumSedan.set("0")

self.txtStandard.configure(state = NORMAL)

Item5 = float(8)

Standard.set("Rs "+ str(Item5))

elif carType.get() == 2:

self.txtStandard.configure(state =DISABLED)

Standard.set("0")

self.txtPremiumSedan.configure(state = DISABLED)

PremiumSedan.set("0")

self.txtPrimeSedan.configure(state = NORMAL)

Item5 = float(10)

PrimeSedan.set("Rs "+ str(Item5))

else:

self.txtStandard.configure(state =DISABLED)

Standard.set("0")

self.txtPrimeSedan.configure(state = DISABLED)

PrimeSedan.set("0")

Department of AIML,NHCE 20
Cab Service Management

self.txtPremiumSedan.configure(state = NORMAL)

Item5 = float(15)

PremiumSedan.set("Rs "+ str(Item5))

def Total_Paid():

if ((var1.get() == 1 and var2.get() == 1 and var3.get() == 1 or var4.get() == 1) and carType.get() !


= 0 and journeyType.get() != 0 and (varl1.get() != "" and varl2.get() !="")):

if journeyType.get()==1:

Item2=Km.get()

Cost_of_fare = (Item1+(float(Item2)*Item5)+Item3+Item4)

Tax = "Rs " + str('%.2f'%((Cost_of_fare) *0.09))

ST = "Rs " + str('%.2f'%((Cost_of_fare)))

TT = "Rs " + str('%.2f'%(Cost_of_fare+((Cost_of_fare)*0.9)))

elif journeyType.get()==2:

Item2=Km.get()

Cost_of_fare = (Item1+(float(Item2)*Item5)*1.5+Item3+Item4)

Tax = "Rs " + str('%.2f'%((Cost_of_fare) *0.09))

ST = "Rs " + str('%.2f'%((Cost_of_fare)))

TT = "Rs " + str('%.2f'%(Cost_of_fare+((Cost_of_fare)*0.9)))

else:

Item2=Km.get()

Cost_of_fare = (Item1+(float(Item2)*Item5)*2+Item3+Item4)

Tax = "Rs " + str('%.2f'%((Cost_of_fare) *0.09))

ST = "Rs " + str('%.2f'%((Cost_of_fare)))

TT = "Rs " + str('%.2f'%(Cost_of_fare+((Cost_of_fare)*0.9)))

Department of AIML,NHCE 21
Cab Service Management

PaidTax.set(Tax)

SubTotal.set(ST)

TotalCost.set(TT)

else:

w = ms.showwarning("Error !","Invalid Input\nPlease try again !!!")

MainFrame=Frame(self.root)

MainFrame.pack(fill=BOTH,expand=True)

Tops = Frame(MainFrame, bd=20, width=1350,relief=RIDGE)

Tops.pack(side=TOP,fill=BOTH,expand=True)

self.lblTitle=Label(Tops,font=('arial',40,'bold'),text=" Cab Services Management ")

self.lblTitle.grid()

CustomerDetailsFrame=LabelFrame(MainFrame, width=1350,height=500,bd=20, pady=5,


relief=RIDGE)

CustomerDetailsFrame.pack(side=BOTTOM,fill=BOTH,expand=True)

FrameDetails=Frame(CustomerDetailsFrame, width=880,height=400,bd=10, relief=RIDGE)

FrameDetails.pack(side=LEFT,fill=BOTH,expand=True)

CustomerName=LabelFrame(FrameDetails, width=150,height=250,bd=10,
font=('arial',12,'bold'),text="Customer Name", relief=RIDGE)

CustomerName.grid(row=0,column=0)

TravelFrame = LabelFrame(FrameDetails,bd=10, width=300,height=250,


font=('arial',12,'bold'),text="Booking Detail", relief=RIDGE)

TravelFrame.grid(row=0,column=1)

Book_Frame=LabelFrame(FrameDetails,width=300,height=150,relief=FLAT)

Book_Frame.grid(row=1,column=0)

CostFrame = LabelFrame(FrameDetails,width=150,height=150,bd=5,relief=FLAT)

CostFrame.grid(row=1,column=1)

Receipt_BottonFrame=LabelFrame(CustomerDetailsFrame,bd=10, width=450,height=400,
relief=RIDGE)

Receipt_BottonFrame.pack(side=RIGHT,fill=BOTH,expand=True)

Department of AIML,NHCE 22
Cab Service Management

ReceiptFrame=LabelFrame(Receipt_BottonFrame, width=350,height=300,
font=('arial',12,'bold'),text="Receipt", relief=RIDGE)

ReceiptFrame.grid(row=0,column=0)

ButtonFrame=LabelFrame(Receipt_BottonFrame, width=350,height=100, relief=RIDGE)

ButtonFrame.grid(row=1,column=0)

self.lblFirstname=Label(CustomerName,font=('arial',14,'bold'),text="Firstname",bd=7)

self.lblFirstname.grid(row=0,column=0,sticky=W)

self.txtFirstname=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Firstname,bd=7,insertwidth=
2,justify=RIGHT)

self.txtFirstname.grid(row=0,column=1)

self.lblSurname=Label(CustomerName,font=('arial',14,'bold'),text="Surname",bd=7)

self.lblSurname.grid(row=1,column=0,sticky=W)

self.txtSurname=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Surname,bd=7,insertwidth=2,j
ustify=RIGHT)

self.txtSurname.grid(row=1,column=1,sticky=W)

self.lblAddress=Label(CustomerName,font=('arial',14,'bold'),text="Address",bd=7)

self.lblAddress.grid(row=2,column=0,sticky=W)

self.txtAddress=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Address,bd=7,insertwidth=2,ju
stify=RIGHT)

self.txtAddress.grid(row=2,column=1)

self.lblPostcode=Label(CustomerName,font=('arial',14,'bold'),text="Postcode",bd=7)

self.lblPostcode.grid(row=3,column=0,sticky=W)

self.txtPostcode=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Postcode,bd=7,insertwidth=2,j
ustify=RIGHT)

self.txtPostcode.grid(row=3,column=1)

Department of AIML,NHCE 23
Cab Service Management

self.lblTelephone=Label(CustomerName,font=('arial',14,'bold'),text="Telephone",bd=7)

self.lblTelephone.grid(row=4,column=0,sticky=W)

self.txtTelephone=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Telephone,bd=7,insertwidth
=2,justify=RIGHT)

self.txtTelephone.grid(row=4,column=1)

self.lblMobile=Label(CustomerName,font=('arial',14,'bold'),text="Mobile",bd=7)

self.lblMobile.grid(row=5,column=0,sticky=W)

self.txtMobile=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Mobile,bd=7,insertwidth=2,justi
fy=RIGHT)

self.txtMobile.grid(row=5,column=1)

self.lblEmail=Label(CustomerName,font=('arial',14,'bold'),text="Email",bd=7)

self.lblEmail.grid(row=6,column=0,sticky=W)

self.txtEmail=Entry(CustomerName,font=('arial',14,'bold'),textvariable=Email,bd=7,insertwidth=2,justify
=RIGHT)

self.txtEmail.grid(row=6,column=1)

self.lblPickup=Label(TravelFrame,font=('arial',14,'bold'),text="Pickup",bd=7)

self.lblPickup.grid(row=0,column=0,sticky=W)

self.cboPickup =ttk.Combobox(TravelFrame, textvariable = varl1 , state='readonly',


font=('arial',20,'bold'), width=14)

self.cboPickup['value']=('','CampusCafe','AdmissionBlock','GirlsHostel','BoysHostel')

self.cboPickup.current(0)

self.cboPickup.grid(row=0,column=1)

self.lblDrop=Label(TravelFrame,font=('arial',14,'bold'),text="Drop",bd=7)

self.lblDrop.grid(row=1,column=0,sticky=W)

self.cboDrop =ttk.Combobox(TravelFrame, textvariable = varl2 , state='readonly', font=('arial',20,'bold'),


width=14)

self.cboDrop['value']=('','BoysHostel','GirlsHostel','CampusCafe','AdmissionBlock')

self.cboDrop.current(0)

Department of AIML,NHCE 24
Cab Service Management

self.cboDrop.grid(row=1,column=1)

self.lblPooling=Label(TravelFrame,font=('arial',14,'bold'),text="Pooling",bd=7)

self.lblPooling.grid(row=2,column=0,sticky=W)

self.cboPooling =ttk.Combobox(TravelFrame, textvariable = varl3 , state='readonly',


font=('arial',20,'bold'), width=14)

self.cboPooling['value']=('','1','2','3','4')

self.cboPooling.current(1)

self.cboPooling.grid(row=2,column=1)

self.chkTaxiTax=Checkbutton(TravelFrame,text="Taxi Tax(Base Charge) *",variable = var1, onvalue=1,


offvalue=0,font=('arial',16,'bold'),command=Taxi_Tax).grid(row=3, column=0, sticky=W)

self.txtTaxiTax=Label(TravelFrame,font=('arial',14,'bold'),textvariable=TaxiTax,bd=6,width=18,bg="whi
te",state= DISABLED,justify=RIGHT,relief=SUNKEN)

self.txtTaxiTax.grid(row=3,column=1)

self.chkKm=Checkbutton(TravelFrame,text="Distance(KMs) *",variable = var2, onvalue=1,


offvalue=0,font=('arial',16,'bold'),command=Kilo).grid(row=4, column=0, sticky=W)

self.txtKm=Label(TravelFrame,font=('arial',14,'bold'),textvariable=Km,bd=6,width=18,bg="white",state=
DISABLED,justify=RIGHT,relief=SUNKEN,highlightthickness=0)

self.txtKm.grid(row=4,column=1)

self.chkTravel_Ins=Checkbutton(TravelFrame,text="Travelling Insurance *",variable = var3,


onvalue=1, offvalue=0,font=('arial',16,'bold'),command=Travelling).grid(row=5, column=0, sticky=W)

self.txtTravel_Ins=Label(TravelFrame,font=('arial',14,'bold'),textvariable=Travel_Ins,bd=6,width=18,bg=
"white",state= DISABLED,justify=RIGHT,relief=SUNKEN)

self.txtTravel_Ins.grid(row=5,column=1)

self.chkLuggage=Checkbutton(TravelFrame,text="Extra Luggage",variable = var4, onvalue=1,


offvalue=0,font=('arial',16,'bold'),command=Lug).grid(row=6, column=0, sticky=W)

self.txtLuggage=Label(TravelFrame,font=('arial',14,'bold'),textvariable=Luggage,bd=6,width=18,bg="wh
ite",state= DISABLED,justify=RIGHT,relief=SUNKEN)

self.txtLuggage.grid(row=6,column=1)

Department of AIML,NHCE 25
Cab Service Management

self.lblPaidTax=Label(CostFrame,font=('arial',14,'bold'),text="Paid Tax\t\t",bd=7)

self.lblPaidTax.grid(row=0,column=2,sticky=W)

self.txtPaidTax = Label(CostFrame,font=('arial',14,'bold'),textvariable=PaidTax,bd=7, width=26,


justify=RIGHT,bg="white",relief=SUNKEN)

self.txtPaidTax.grid(row=0,column=3)

self.lblSubTotal=Label(CostFrame,font=('arial',14,'bold'),text="Sub Total",bd=7)

self.lblSubTotal.grid(row=1,column=2,sticky=W)

self.txtSubTotal = Label(CostFrame,font=('arial',14,'bold'),textvariable=SubTotal,bd=7, width=26,


justify=RIGHT,bg="white",relief=SUNKEN)

self.txtSubTotal.grid(row=1,column=3)

self.lblTotalCost=Label(CostFrame,font=('arial',14,'bold'),text="Total Cost",bd=7)

self.lblTotalCost.grid(row=2,column=2,sticky=W)

self.txtTotalCost = Label(CostFrame,font=('arial',14,'bold'),textvariable=TotalCost,bd=7, width=26,


justify=RIGHT,bg="white",relief=SUNKEN)

self.txtTotalCost.grid(row=2,column=3)

self.chkStandard=Radiobutton(Book_Frame,text="Standard",value=1,variable =
carType,font=('arial',14,'bold'),command=selectCar).grid(row=0, column=0, sticky=W)

self.txtStandard = Label(Book_Frame,font=('arial',14,'bold'),width =7,textvariable=Standard,bd=5,


state= DISABLED, justify=RIGHT,bg="white",relief=SUNKEN)

self.txtStandard.grid(row=0,column=1)self.chkPrimeSedand=Radiobutton(Book_Frame,text="PrimeSeda
n",value=2,variable = carType,font=('arial',14,'bold'),command=selectCar).grid(row=1, column=0,
sticky=W)

self.txtPrimeSedan= Label(Book_Frame,font=('arial',14,'bold'),width
=7,textvariable=PrimeSedan,bd=5, state= DISABLED, justify=RIGHT,bg="white",relief=SUNKEN)

self.txtPrimeSedan.grid(row=1,column=1)

self.chkPremiumSedan = Radiobutton(Book_Frame,text="PremiumSedan",value=3,variable =
carType,font=('arial',14,'bold'),command=selectCar).grid(row=2, column=0)

self.txtPremiumSedan = Label(Book_Frame,font=('arial',14,'bold'),width
=7,textvariable=PremiumSedan,bd=5, state= DISABLED, justify=RIGHT,bg="white",relief=SUNKEN)

self.txtPremiumSedan.grid(row=2,column=1)

self.chkSingle =Radiobutton(Book_Frame,text="Single",value=1,variable =
journeyType,font=('arial',14,'bold')).grid(row=0, column=2, sticky=W)

Department of AIML,NHCE 26
Cab Service Management

self.chkReturn =Radiobutton(Book_Frame,text="Return",value=2,variable =
journeyType,font=('arial',14,'bold')).grid(row=1, column=2, sticky=W)

self.chkSpecialsNeeds =Radiobutton(Book_Frame,text="SpecialNeeds",value=3,variable =
journeyType,font=('arial',14,'bold')).grid(row=2, column=2, sticky=W)

self.txtReceipt1 = Text(ReceiptFrame,width = 22, height = 21,font=('arial',10,'bold'),borderwidth=0)

self.txtReceipt1.grid(row=0,column=0,columnspan=2)

self.txtReceipt2 = Text(ReceiptFrame,width = 22, height = 21,font=('arial',10,'bold'),borderwidth=0)

self.txtReceipt2.grid(row=0,column=2,columnspan=2)

self.btnTotal = Button(ButtonFrame,padx=18,bd=7,font=('arial',11,'bold'),width =
2,text='Total',command=Total_Paid).grid(row=0,column=0)

self.btnReceipt = Button(ButtonFrame,padx=18,bd=7,font=('arial',11,'bold'),width =
2,text='Receipt',command=Receiptt).grid(row=0,column=1)

self.btnReset = Button(ButtonFrame,padx=18,bd=7,font=('arial',11,'bold'),width =
2,text='Reset',command=Reset).grid(row=0,column=2)

self.btnExit = Button(ButtonFrame,padx=18,bd=7,font=('arial',11,'bold'),width = 2,text='Exit',


command=iExit).grid(row=0,column=3)

if name ==' main ':

root = Tk()

w = root.winfo_screenwidth()

h = root.winfo_screenheight()

geometry="%dx%d+%d+%d"%(w,h,0,0)

root.geometry("500x300+320+200")

root.title('Login Form')

application = user(root)

root.mainloop()

4.2 Results

Department of AIML,NHCE 27
Cab Service Management

Department of AIML,NHCE 28
Cab Service Management

Department of AIML,NHCE 29
Cab Service Management

CONCLUSION:

Ride hail Services is a web application and is limited to users. In this application,
different types of administrators are granted access and access to these features is
restricted for security and data details. Data rejected. Data is stored electronically, so a
computer is required. Network connection to access the application. Related to the past,
when all activities related to the car charge occupational were narrowed to a physical
location, the car charge professional has new rewards. Although the physical place was
not completely destroyed; The control of virtual reality has changed the nature of
functions and the way functions are performed. Currently, clients can book a car online,
rent a car online, have the car delivered to their doorstep at the same time as signing up
for involvement or go directly to the office to best up the car. The working charge car
classification has been useful to both customers and rental car companies by enabling
efficient and effective business running and purchaser fulfillment. Here is information
about the staff, drivers and taxis. Accounts were not created for these people despite
administration. Use this app manager to assign or update batches and redeploy taxis to
drivers and employees.

Department of AIML,NHCE 30
Cab Service Management

REFERENCES

[1] https://www.programiz.com/

[2] https://www.geeksforgeeks.org/

[3] https://www.jpython.com/

[4] https://anzeljg.github.io/

[5] https://www.tutorialspoint.com/

[6] https://docs.python.org/

[7] https://realpython.com/

[8] https://www.edureka.co/

[9] https://pythonprogramming.net/

[10] https://www.tutorialsteacher.com/

Department of AIML,NHCE 31

You might also like