SOURCE CODE
import mysql.connector
import os
import platform
pnr = 1024
mydb = mysql.connector.connect(host="localhost", user="root",
passwd="Prachikhinchi2007", database="project")
mycursor = mydb.cursor()
def railresmenu():
print("Railway Reservation")
print("1.Train Detail")
print("2.Reservation of Ticket")
print("3.Cancellation of ticket")
print("4.Display PNR status")
print("5.Quit")
n = int(input("Enter your choice: "))
if(n == 1):
traindetail()
elif(n == 2):
reservation()
elif(n == 3):
cancel()
elif(n == 4):
displayPNR()
elif(n == 5):
exit(0)
else:
print("Wrong choice")
def traindetail():
print("Train Details")
ch = 'y'
while (ch == 'y'):
l = []
name = input("Enter train name: ")
l.append(name)
tnum = int(input("Enter train number: "))
l.append(tnum)
ac1 = int(input("Enter number of AC 1 class seats: "))
l.append(ac1)
ac2 = int(input("Enter number of AC 2 class seats: "))
l.append(ac2)
ac3 = int(input("Enter number of AC 3 class seats: "))
l.append(ac3)
slp = int(input("Enter number of sleeper class seats: "))
l.append(slp)
train = (l[0], l[1], l[2], l[3], l[4], l[5])
sql = "insert into traindetail(tname, tnum, ac1, ac2, ac3, slp)
values(%s, %s, %s, %s, %s, %s)"
mycursor.execute(sql, train)
mydb.commit()
print("Insertion completed")
print("Do you want to insert more train details?")
ch = input("Enter yes/no: ")
print('\n' * 10)
print("===============================================================
==============================================================================
=============================")
railresmenu()
def reservation():
global pnr
l1 = []
pname = input("Enter passenger name: ")
l1.append(pname)
age = input("Enter age of passenger: ")
l1.append(age)
trainno = input("Enter train number: ")
l1.append(trainno)
np = int(input("Enter number of passengers: "))
l1.append(np)
print("Select a class you would like to travel in:")
print("1. AC FIRST CLASS")
print("2. AC SECOND CLASS")
print("3. AC THIRD CLASS")
print("4. AC SLEEPER CLASS")
cp = int(input("Enter your choice: "))
if(cp == 1):
amount = np * 1000
cls = 'ac1'
elif(cp == 2):
amount = np * 800
cls = 'ac2'
elif(cp == 3):
amount = np * 350
cls = 'ac3'
else:
amount = np * 350
cls = 'lp'
l1.append(cls)
print("Total amount to be paid: ", amount)
l1.append(amount)
pnr += 1
print("PNR Number: ", pnr)
print("Status: Confirmed")
sts = 'conf'
l1.append(sts)
l1.append(pnr)
train1 = (l1[0], l1[1], l1[2], l1[3], l1[4], l1[5], l1[6], l1[7])
sql = "insert into passengers(pname, age, trainno, noofpas, cls, amt,
status, pnrno) values(%s, %s, %s, %s, %s, %s, %s, %s)"
mycursor.execute(sql, train1)
mydb.commit()
print("Insertion completed")
print("Go back to menu")
print('\n' * 10)
print("===================================================================
==============================================================================
======================")
railresmenu()
def cancel():
print("Ticket cancel window")
pnr = input("Enter PNR for cancellation of Ticket: ")
pn = (pnr,)
sql = "update passengers set status = 'deleted' where pnrno = %s"
mycursor.execute(sql, pn)
mydb.commit()
print("Deletion completed")
print("Go back to menu")
print('\n' * 10)
print("===================================================================
==============================================================================
===============")
railresmenu()
railresmenu()
def displayPNR():
print("PNR STATUS window")
pnr=input("enter PNR NUMBER")
pn=(pnr,)
sql="SELECT* from passengers where pnrno=%s"
mycursor.execute(sql,pn)
res=mycursor.fetchall()
print("PNR STATUS are as follows:")
print("(pname,age,trainno,noofpas,cls,amt,status,pnrno)")
for x in res:
print(x)
#print("Deletion completed")
print("Go back to menu")
print('\n'*10)
print("===================================================================
==============================================================================
===================")
railresmenu()
railresmenu()