📄 booking.java
字号:
System.out.print(" (" + rs.getString(5));
System.out.print(" - " + rs.getString(6));
System.out.println(", Fee: $" + rs.getInt(7) + ", Duration: " + rs.getInt(8) + "hrs)");
System.out.print("FlightID " + rs.getInt(1));
System.out.println(" (" + rs.getString(3) + " - " + rs.getString(4) + ")");
single(rs.getInt(1));
}
else {
System.out.print("Itinerary " + ino);
System.out.print(" (" + rs.getString(5));
System.out.print(" - " + rs.getString(6));
System.out.println(", Fee: $" + rs.getInt(7) + ", Duration: " + rs.getInt(8) + "hrs)");
transit(rs.getInt(1), 1);
System.out.println();
transit(rs.getInt(2), 2);
}
System.out.println();
System.out.println();
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
}
if (num2==2) {
try {
String query4 = ("SELECT FlightID, FlightID2, DepartCity, ArrivalCity, to_char(DepartTime, ('yyyy-mm-dd hh24:mi')) as DepartTime, to_char(ArrivalTime, ('yyyy-mm-dd hh24:mi')) as ArrivalTime, price , (ArrivalTime-departtime)*24 as duration from(" +
"SELECT A.FlightID, B.FlightID as FlightID2, A.DepartCity, A.ArrivalCity, A.DepartTime, A.ArrivalTime, A.price" +
" FROM Flight A, Flight B WHERE A.DepartCity = '" + DepartCity + "' AND A.ArrivalCity = '" + ArrivalCity+"' AND A.DepartTime between to_date('" + DepartTime + "', 'yyyy-mm-dd hh24:mi') AND to_date('"+ ArrivalTime + "', 'yyyy-mm-dd hh24:mi') AND A.ArrivalTime between to_date('" + DepartTime + "', 'yyyy-mm-dd hh24:mi') AND to_date('"+ ArrivalTime + "', 'yyyy-mm-dd hh24:mi') " +
"AND A.FlightID = B.FlightID UNION \n" +
"SELECT A.FlightID, B.FlightID as FlightID2, A.DepartCity, B.ArrivalCity, A.DepartTime, \n"+
"B.ArrivalTime, (A.price + B.price) as price FROM Flight A, Flight B WHERE A.Arrivalcity = B.DepartCity \n" +
"AND A.DepartCity = '" + DepartCity + "' AND B.ArrivalCity = '" + ArrivalCity +"' AND A.DepartTime between to_date('" + DepartTime + "', 'yyyy-mm-dd hh24:mi') AND to_date('" + ArrivalTime + "', 'yyyy-mm-dd hh24:mi')" +
"AND B.ArrivalTime between to_date('2007-12-01 16:00', 'yyyy-mm-dd hh24:mi') AND to_date('2007-12-03 16:00', 'yyyy-mm-dd hh24:mi')" +
"AND A.ArrivalTime Between A.Departtime AND B.Departtime) ORDER BY duration");
ResultSet rs4 = Admin_Database.exeQuery(query4);
System.out.println();
while (rs4.next()) {
if (rs4.getInt(1) == rs4.getInt(2)) {
System.out.print("Itinerary " + ino);
System.out.print(" (" + rs4.getString(5));
System.out.print(" - " + rs4.getString(6));
System.out.println(", Fee: $" + rs4.getInt(7) + ", Duration: " + rs4.getInt(8) + "hrs)");
System.out.print("FlightID " + rs4.getInt(1));
System.out.println(" (" + rs4.getString(3) + " - " + rs4.getString(4) + ")");
single(rs4.getInt(1));
}
else {
System.out.print("Itinerary " + ino);
System.out.print(" (" + rs4.getString(5));
System.out.print(" - " + rs4.getString(6));
System.out.println(", Fee: $" + rs4.getInt(7) + ", Duration: " + rs4.getInt(8) + "hrs)");
transit(rs4.getInt(1), 1);
System.out.println();
transit(rs4.getInt(2), 2);
}
System.out.println();
System.out.println();
ino++;
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
}
if (ino!=1) {
Scanner in3 = new Scanner(System.in);
System.out.println();
System.out.print("Create booking (1:yes 2:no)? ");
int ans = in3.nextInt();
if (ans==1) {
Scanner in5 = new Scanner(System.in);
System.out.println();
System.out.print("Please enter your personal information:\n");
System.out.print("Name: ");
String pname = in5.next();
System.out.print("Phone No: ");
String pphoneno = in5.next();
System.out.print("Credit Card No: ");
String pcardno = in5.next();
System.out.print("Depart City: ");
String enter = in5.nextLine();
String FromCity = in5.nextLine();
System.out.print("Arrival City: ");
String ToCity = in5.nextLine();
System.out.print("Depart After(YYYY-MM-DD HH:mm): ");
String DepartAfter = in5.nextLine();
System.out.print("Arrive Before(YYYY-MM-DD HH:mm): ");
String ArrivalBefore = in5.nextLine();
int i=1;
try {
ResultSet rs5 = Admin_Database.exeQuery("SELECT BookingID FROM Booking");
while (rs5.next()) {
i++;
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
String BookingID = String.valueOf(i);
PreparedStatement pstmt = Admin_Database.con.prepareStatement("INSERT INTO Booking VALUES (?, ?, ?, ?, to_date(?, 'yyyy-mm-dd hh24:mi'), to_date(?, 'yyyy-mm-dd hh24:mi'), ?, ?)");
pstmt.setString(1, BookingID);
pstmt.setString(2, pname);
pstmt.setString(3, FromCity);
pstmt.setString(4, ToCity);
pstmt.setString(5, DepartAfter);
pstmt.setString(6, ArrivalBefore);
pstmt.setString(7, pphoneno);
pstmt.setString(8, pcardno);
pstmt.executeUpdate();
pstmt.close();
System.out.println("Your Booking ID is " + BookingID);
} else {
}
Scanner in4 = new Scanner(System.in);
System.out.println();
System.out.print("Issue tickets (1:yes 2:no)? ");
int ans2 = in4.nextInt();
if (ans2==1) {
System.out.println("1. Direct Flight");
System.out.println("2. Transit Flight");
System.out.print("Please select your choice: ");
int num22 = in4.nextInt();
if (num22==1) {
System.out.print("Please enter the following information:\n");
System.out.print("Booking ID: ");
String BookingID = in4.next();
System.out.print("Flight ID: ");
String FlightID = in4.next();
int seatno = 0;
String fee = null;
try {
ResultSet rs6 = Admin_Database.exeQuery("SELECT No_of_Seats, Price FROM Flight WHERE FlightID =" + FlightID);
while (rs6.next())
{
seatno = rs6.getInt(1);
fee = rs6.getString(2);
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
if (seatno > 0) {
System.out.println();
System.out.println("A ticket is issued!");
System.out.println("Ticket: ");
System.out.println("Booking ID: " + BookingID);
PreparedStatement pstmt2 = Admin_Database.con.prepareStatement("INSERT INTO Ticket VALUES (?, ?, SYSDATE, ?)");
pstmt2.setString(1, BookingID);
pstmt2.setString(2, FlightID);
pstmt2.setString(3, fee);
pstmt2.executeUpdate();
pstmt2.close();
PreparedStatement pstmt3 = Admin_Database.con.prepareStatement("UPDATE Flight SET No_of_Seats = No_of_Seats - 1 WHERE FlightID = ?");
pstmt3.setString(1, FlightID);
pstmt3.executeUpdate();
pstmt3.close();
try{
String query5 = "SELECT FlightID, Airline, DepartCity, ArrivalCity, to_char(DepartTime, ('yyyy-mm-dd hh24:mi')) as DepartTime, to_char(ArrivalTime, ('yyyy-mm-dd hh24:mi')) as ArrivalTime, " +
"Price, PassengerName, PassengerPhone, CreditCardNo FROM Flight, Booking WHERE FlightID = " + FlightID + " AND BookingID =" + BookingID;
ResultSet rs7 = Admin_Database.exeQuery(query5);
while (rs7.next())
{
System.out.println("FlightID: " + rs7.getString(1));
System.out.println("Airline: " + rs7.getString(2));
System.out.println("From City: " + rs7.getString(3));
System.out.println("To City: " + rs7.getString(4));
System.out.println("Depart After: " + rs7.getString(5));
System.out.println("Arrival Before: " + rs7.getString(6));
System.out.println("Fee: $" + rs7.getString(7));
System.out.println("Passenger name: " + rs7.getString(8));
System.out.println("Passenger phone no.: " + rs7.getString(9));
System.out.println("Passenger cerdit card no.: " + rs7.getString(10));
System.out.println();
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
} else
{
System.out.println();
System.out.println("Ticket is not issued!");
System.out.println("There is not enough seats in Flight " + FlightID);
System.out.println("Please select the other Flight");
System.out.println();
}
}
if (num22==2){
System.out.println();
System.out.print("Please enter the following information:\n");
System.out.print("Booking ID: ");
String BookingID = in4.next();
System.out.print("1st Flight ID: ");
String FlightID1 = in4.next();
System.out.print("2nd Flight ID: ");
String FlightID2 = in4.next();
int seatno1 = 0;
int seatno2 = 0;
String fee1 = null;
String fee2 = null;
try {
ResultSet rs8 = Admin_Database.exeQuery("SELECT No_of_Seats, price FROM Flight WHERE FlightID =" + FlightID1);
while (rs8.next())
{
seatno1 = rs8.getInt(1);
fee1 = rs8.getString(2);
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
try {
ResultSet rs8 = Admin_Database.exeQuery("SELECT No_of_Seats, price FROM Flight WHERE FlightID =" + FlightID2);
while (rs8.next())
{
seatno2 = rs8.getInt(1);
fee2 = rs8.getString(2);
}
} catch(SQLException e) {
System.out.println("SQL Exception\n"+e);
}
if (seatno1 > 0 && seatno2 > 0)
{
System.out.println();
System.out.println("A ticket is issued!");
System.out.println("Ticket 1: ");
System.out.println("Booking ID: " + BookingID);
PreparedStatement pstmt2 = Admin_Database.con.prepareStatement("INSERT INTO Ticket VALUES (?, ?, SYSDATE, ?)");
pstmt2.setString(1, BookingID);
pstmt2.setString(2, FlightID1);
pstmt2.setString(3, fee1);
pstmt2.executeUpdate();
pstmt2.close();
PreparedStatement pstmt3 = Admin_Database.con.prepareStatement("UPDATE Flight SET No_of_Seats = No_of_Seats - 1 WHERE FlightID = ?");
pstmt3.setString(1, FlightID1);
pstmt3.executeUpdate();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -