Post on 11-Nov-2014
transcript
Main Java :
import java.awt.EventQueue;
import javax.swing.JFrame;
public class Main implements Runnable{
private final JFrame frame;
public Main(JFrame frm){
this.frame=frm;
}//constructor closed
public void run(){
frame.setVisible(true);
}//run method closed
public static void main(String args[]){
new frmSplash(3000);
EventQueue.invokeLater(new Main(new LoginScreen()));
}//main method closed
}//class closed
Login Screen :
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class LoginScreen extends JFrame {
private JLabel lblUsername, lblPasswd, lblCat;
public JTextField txtUser;
private JPasswordField txtPasswd;
private JButton btnLogin, btnCancel;
private JComboBox cmbCat;
private Connection con;
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
public LoginScreen() {
super("System Login");
this.getContentPane().setLayout(null);
this.setSize(370, 250);
this.setResizable(false);
this.setLocation((screen.width - 500) / 2, ((screen.height - 350) / 2));
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
lblUsername = new JLabel("Username");
lblPasswd = new JLabel("Password");
txtUser = new JTextField();
txtPasswd = new JPasswordField();
lblCat = new JLabel("Login As");
cmbCat = new JComboBox();
cmbCat.addItem("Manager");
cmbCat.addItem("Supervisor");
cmbCat.addItem("Booking Clerk");
btnLogin = new JButton("Login", new ImageIcon(ClassLoader.getSystemResource("images\\Login.png")));
btnCancel = new JButton("Cancel", new ImageIcon(ClassLoader.getSystemResource("images\\Cancel.png")));
lblUsername.setBounds(40, 30, 100, 25);
lblPasswd.setBounds(40, 65, 100, 25);
lblCat.setBounds(40, 100, 100, 25);
txtUser.setBounds(150, 30, 160, 25);
txtPasswd.setBounds(150, 65, 160, 25);
cmbCat.setBounds(150, 100, 160, 25);
btnLogin.setBounds(70, 150, 100, 25);
btnCancel.setBounds(190, 150, 100, 25);
lblUsername.setFont(new Font("monospaced", Font.BOLD, 16));
lblPasswd.setFont(new Font("monospaced", Font.BOLD, 16));
lblCat.setFont(new Font("monospaced", Font.BOLD, 16));
cmbCat.setFont(new Font("monospaced", Font.BOLD, 16));
txtUser.setFont(new Font("monospaced", Font.CENTER_BASELINE, 16));
txtPasswd.setFont(new Font("monospaced", Font.CENTER_BASELINE, 16));
this.add(lblUsername);
this.add(txtUser);
this.add(lblPasswd);
this.add(txtPasswd);
this.add(btnLogin);
this.add(btnCancel);
this.add(lblCat);
this.add(cmbCat);
this.add(btnLogin);
this.add(btnCancel);
ButtonListener listener = new ButtonListener();
btnLogin.addActionListener(listener);
btnCancel.addActionListener(listener);
con = DBConnection.getDBConnection();
if (con == null) {
JOptionPane.showMessageDialog(null, "Error on establishing database connection", "Error", JOptionPane.ERROR_MESSAGE);
this.dispose();
}
}//constructor closed
public void login() {
String username = txtUser.getText();
String password = txtPasswd.getText();
String SQL;
String category = cmbCat.getSelectedItem().toString();
SQL = "SELECT * FROM users WHERE username='" + username + "' AND password='" +
password + "'AND Category='" + category + "'";
try {
Statement stmt = con.createStatement();
stmt.execute(SQL);
ResultSet rs = stmt.getResultSet();
boolean recordfound = rs.next();
if (recordfound) {
LoadMDIWindow();
this.dispose();
} else {
JOptionPane.showMessageDialog(null, "The system could not log you in.\n" +
" Please make sure your username and password are correct", "Login Failure", JOptionPane.INFORMATION_MESSAGE);
txtUser.setText("");
txtPasswd.setText("");
txtUser.requestFocus();
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Error on login operation", "Login Error", JOptionPane.ERROR_MESSAGE);
}//try catch closed
}//Login() closed
public void LoadMDIWindow() {
if (cmbCat.getSelectedItem().equals("Manager")) {
new MDIWindow().LoginManager();
} else if (cmbCat.getSelectedItem().equals("Supervisor")) {
new MDIWindow().LoginSupervisor();
} else {
new MDIWindow().LoginClerk();
}
}//LoginValidity() closed
private class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnLogin) {
if (txtUser.getText() == null || txtUser.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter username", "Missing field", JOptionPane.DEFAULT_OPTION);
txtUser.requestFocus();
return;
}
if (txtPasswd.getText() == null || txtPasswd.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter password", "Missing field", JOptionPane.DEFAULT_OPTION);
txtPasswd.requestFocus();
return;
}
login();
} else if (e.getSource() == btnCancel) {
System.exit(0);
}//if else closed
}//actionPerformed() closed
}//ButtonListner class closed
}//LoginScreen class closed
Bus Details :
import java.sql.*;
import javax.swing.*;
import java.text.*;
import java.awt.*;
import java.awt.event.*;
class Bus_Details extends JInternalFrame {
public Container content;
public JPanel reportingPanel;
public JTabbedPane listsTabs;
public JTextArea listPane;
public JPanel reportPanel;
public static final int SET_SIZE = 0, PRINT = 1, CLOSE = 2;
public JPanel statusPanel;
public JComboBox graphTypesCombo;
public Color skyblue = new Color(150, 190, 255);
public final ImageIcon imageIcon = new ImageIcon(ClassLoader.getSystemResource("Images/appicon.png"));
private static Connection dbcon = null;
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
Statement stmt = null;
private JButton print, cancel;
private JPanel panel;
public Bus_Details() {
super("Buses Report", true, true, true, true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
content = getContentPane();
content.setBackground(skyblue);
listsTabs = new JTabbedPane();
print = new JButton("Print ", new ImageIcon(ClassLoader.getSystemResource("Images/print.png")));
cancel = new JButton("Cancel", new ImageIcon(ClassLoader.getSystemResource("Images/exit.png")));
panel = new JPanel();
panel.add(print);
panel.add(cancel);
reportingPanel = new JPanel();
reportingPanel.setLayout(new BorderLayout());
reportingPanel.setBorder(BorderFactory.createEtchedBorder());
reportingPanel.add(new JLabel("Bus Report"), BorderLayout.NORTH);
reportingPanel.add(panel, BorderLayout.SOUTH);
reportPanel = new JPanel();
reportPanel.setLayout(new GridLayout(1, 1));
reportPanel.setBorder(BorderFactory.createMatteBorder(4, 4, 4, 4, Color.blue));
reportPanel.setBackground(Color.white);
reportingPanel.add(new JScrollPane(reportPanel), BorderLayout.CENTER);
listsTabs.add(reportingPanel);
setLocation((screen.width - 1270) / 2, ((screen.height - 740) / 2));
setResizable(false);
listPane = new JTextArea() {
Image image = imageIcon.getImage();
{
setOpaque(false);
}
public void paint(Graphics g) {
super.paint(g);
}
};
listPane.setEditable(false);
listPane.setFont(new Font("Serif", Font.BOLD, 12));
listPane.setForeground(Color.black);
listPane.setLineWrap(true);
listPane.setWrapStyleWord(true);
reportPanel.add(listPane);
try {
Statement s = DBConnection.getDBConnection().createStatement();
} catch (Exception excp) {
excp.printStackTrace();
}
printList();
content.add(listsTabs, BorderLayout.CENTER);
cancel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
dispose();
}
});
print.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Printer Not Found", "PRINT ERROR", JOptionPane.DEFAULT_OPTION);
}
});
setSize(1000, 720);
}//constructor closed
private void printList() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("select Bus_RegNo,Model,Capacity,insurance_Status,Insurance_Expiry from Buses");
listPane.append("\n");
listPane.append(" ");
listPane.append("Bus RegNo" + "\t\t" + "Model" + "\t\t" + "Capacity" + "\t\t" + "Insurance_Status\t" + "Expiry Date\n");
listPane.append("\n");
while (rst.next()) {
listPane.append(" ");
listPane.append(rst.getString(1).trim());
listPane.append("\t\t");
listPane.append(rst.getString(2).trim());
listPane.append("\t\t");
listPane.append(rst.getString(3).trim());
listPane.append("\t\t");
listPane.append(rst.getString(4).trim());
listPane.append("\t\t");
listPane.append(rst.getString(5).trim());
listPane.append("\n\n");
}
if (rst != null) {
rst.close();
}
} catch (SQLException sqle) {
JOptionPane.showMessageDialog(null, " No Records found" + sqle.getMessage());
return;
}
}
}//class closed
Booking :
import java.awt.*;
import java.text.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.sql.*;
import javax.swing.plaf.metal.*;
public class Booking extends JInternalFrame {
private JPanel contents, controls, general, pane;
private JLabel label, label1, label2, label3, label10, label4, label5, label6, label7, label8, label9;
private JTextField text1;
private JComboBox combo1, combo2, combo3, combo4, combo5, combo6, combo7, combo8, combo9;
private JButton button1, button2, button3, button4, button5, button6, button7, ok, next;
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
String bookNo, pasNo, passName, seatNo, busNo, dte, time, frm, to, amount;
private DateButton t_date;
public Booking() {
super("Booking Process",false,true,false,true);
label = new JLabel("Booking Number");
label1 = new JLabel("Passenger Number");
label2 = new JLabel("Passenger Name");
label3 = new JLabel("Seat Number");
label4 = new JLabel("Bus RegNo");
label5 = new JLabel("Date_of_Travel");
label6 = new JLabel("Time_of_Travel");
label7 = new JLabel("From");
label8 = new JLabel("Destination");
label9 = new JLabel("Amount Paid");
label10 = new JLabel("Select passenger route");
text1 = new JTextField(15);
t_date = new DateButton();
t_date.setForeground(Color.red);
combo1 = new JComboBox();
combo2 = new JComboBox();
combo3 = new JComboBox();
combo4 = new JComboBox();
combo5 = new JComboBox();
combo6 = new JComboBox();
combo7 = new JComboBox();
combo8 = new JComboBox();
combo9 = new JComboBox();
//combo7.addItem("Select");
for (int i = 1; i <= 45; i++) {
combo6.addItem(Integer.toString(i));
}
button1 = new JButton("Add New", new ImageIcon(ClassLoader.getSystemResource("Images/addnew.png")));
button3 = new JButton("Search", new ImageIcon(ClassLoader.getSystemResource("Images/search.png")));
button4 = new JButton("Cancel", new ImageIcon(ClassLoader.getSystemResource("Images/exit.png")));
button5 = new JButton("Clear", new ImageIcon(ClassLoader.getSystemResource("Images/clear.png")));
button6 = new JButton("Show Booked", new ImageIcon(ClassLoader.getSystemResource("Images/atten.png")));
button7 = new JButton("Print", new ImageIcon(ClassLoader.getSystemResource("Images/print.png")));
ok = new JButton("OK", new ImageIcon(ClassLoader.getSystemResource("Images/ok.png")));
next = new JButton("Next", new ImageIcon(ClassLoader.getSystemResource("Images/next.png")));
button1.setEnabled(false);
button5.setEnabled(false);
next.setEnabled(false);
text1.setEnabled(false);
contents = new JPanel(new GridLayout(10, 2));
contents.add(label);
contents.add(text1);
contents.add(label1);
contents.add(combo2);
contents.add(label2);
contents.add(combo3);
contents.add(label6);
contents.add(combo8);
contents.add(label4);
contents.add(combo1);
contents.add(label3);
contents.add(combo6);
contents.add(label5);
contents.add(t_date);
contents.add(label7);
contents.add(combo4);
contents.add(label8);
contents.add(combo5);
contents.add(label9);
contents.add(combo9);
label10.setForeground(Color.red);
pane = new JPanel();
pane.add(label10);
pane.add(combo7);
pane.add(ok);
controls = new JPanel(new GridLayout(3, 2));
controls.add(button1);
controls.add(button3);
controls.add(button4);
controls.add(button5);
controls.add(button6);
controls.add(button7);
general = new JPanel();
setLocation((screen.width - 500) / 2, ((screen.height - 350) / 2));
general.add(pane);
general.add(contents);
general.add(controls);
add(general);
setSize(550, 420);
setResizable(false);
try {
Statement s = DBConnection.getDBConnection().createStatement();
} catch (Exception excp) {
excp.printStackTrace();
}
passroute();
//setCbx();
generator();
setroute();
setCombo();
amount();
text1.addFocusListener(new FocusAdapter() {
public void focusLost(FocusEvent e) {
JTextField textField =
(JTextField) e.getSource();
String content = textField.getText();
if (content.length() != 0) {
try {
Integer.parseInt(content);
} catch (NumberFormatException nfe) {
getToolkit().beep();
JOptionPane.showMessageDialog(null, "Invalid data entry", "ERROR",
JOptionPane.DEFAULT_OPTION);
textField.requestFocus();
text1.setText("");
}
}
}
});
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
book();
}
});
button4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}
});
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (combo7.getSelectedItem() == null) {
JOptionPane.showMessageDialog(null, "Please note that you can't do\n" +
"booking before scheduling is done\n" +
"make sure you do the scheduling before booking starts", "ERROR",
JOptionPane.DEFAULT_OPTION);
return;
}
setCbx();
amount();
ok.setEnabled(false);
button1.setEnabled(true);
// button2.setEnabled(true);
button3.setEnabled(true);
button4.setEnabled(true);
button5.setEnabled(true);
//button6.setEnabled(true);
}
});
button6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Show_Booked frm= new Show_Booked();
MDIWindow.desktop.add(frm);
frm.setVisible(true);
try{
frm.setSelected(true);
}catch(Exception ex){}
}
});
button7.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Booking_report frm= new Booking_report();
MDIWindow.desktop.add(frm);
frm.setVisible(true);
try{
frm.setSelected(true);
}catch(Exception ex){}
}
});
button5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
combo2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
combo3.setSelectedIndex(combo2.getSelectedIndex());
}
});
combo3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
combo2.setSelectedIndex(combo3.getSelectedIndex());
}
});
combo8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
combo1.setSelectedIndex(combo8.getSelectedIndex());
}
});
combo7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
combo1.removeAllItems();
combo8.removeAllItems();
combo9.removeAllItems();
ok.setEnabled(true);
button1.setEnabled(false);
button3.setEnabled(false);
button5.setEnabled(false);
}
});
button3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
text1.setEnabled(true);
try {
if (!text1.equals("")) {
Statement statement = DBConnection.getDBConnection().createStatement();
String query = "SELECT * FROM BOOKING " +
"WHERE Booking_No= " + text1.getText();
ResultSet rs = statement.executeQuery(query);
display(rs);
statement.close();
}
} catch (SQLException sqlex) {
sqlex.printStackTrace();
}
setVisible(true);
}
});
}
private void setCbx() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Bus_RegNo,Dept_Time From Schedules where Route_Name='" + combo7.getSelectedItem() + "'");
while (rst.next()) {
combo1.addItem(rst.getString(1));
combo8.addItem(rst.getString(2));
}
} catch (Exception n) {
n.printStackTrace();
}
}
private void setCombo() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Pass_No,Pass_Name FROM Passenger where Booked_Status='Not_Booked'");
while (rst.next()) {
combo2.addItem(rst.getString(1));
combo3.addItem(rst.getString(2));
}
} catch (Exception n) {
n.printStackTrace();
}
}
private void amount() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Fare_Charged FROM Route where RouteName='" + combo7.getSelectedItem() + "'");
while (rst.next()) {
combo9.addItem(rst.getString(1));
}
} catch (Exception n) {
n.printStackTrace();
}
}
private void passroute() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Route_Name FROM Schedules");
while (rst.next()) {
combo7.addItem(rst.getString(1));
}
} catch (Exception n) {
n.printStackTrace();
}
}
private void setroute() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Depot,Destination FROM Route");
while (rst.next()) {
combo4.addItem(rst.getString(1));
combo5.addItem(rst.getString(2));
}
} catch (Exception n) {
n.printStackTrace();
}
}
public void display(ResultSet rs) {
try {
boolean recordNumber = rs.next();
if (recordNumber) {
bookNo = rs.getString(1);
pasNo = rs.getString(2);
passName = rs.getString(3);
busNo = rs.getString(4);
seatNo = rs.getString(5);
dte = rs.getString(6);
time = rs.getString(7);
frm = rs.getString(8);
to = rs.getString(9);
amount = rs.getString(10);
text1.setText(bookNo);
combo2.setSelectedItem(pasNo);
combo3.setSelectedItem(passName);
combo1.setSelectedItem(busNo);
combo6.setSelectedItem(seatNo);
t_date.setText(dte);
combo8.setSelectedItem(time);
combo4.setSelectedItem(frm);
combo5.setSelectedItem(to);
combo9.setSelectedItem(amount);
} else {
JOptionPane.showMessageDialog(null, "Record Not found", "ERROR",
JOptionPane.DEFAULT_OPTION);
}
} catch (SQLException sqlex) {
sqlex.printStackTrace();
}
}
private void book() {
String SQL;
SQL = "SELECT * FROM BOOKING WHERE SeatNo='" + combo6.getSelectedItem() + "' AND Bus_RegNo='" + combo1.getSelectedItem() + "'AND Date_of_Travel='" + t_date.getText() + "'";
try {
Statement st = DBConnection.getDBConnection().createStatement();
st.execute(SQL);
ResultSet rs = st.getResultSet();
boolean recordfound = rs.next();
if (recordfound) {
JOptionPane.showMessageDialog(null, "Error Occures.Pliz Compare your Entry and\n" +
"the already booked and try again", "Error", JOptionPane.INFORMATION_MESSAGE);
//new Show_Booked().setVisible(true);
return;
} else {
if (text1.getText() == null ||
text1.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter Passenger Number", "ERROR",
JOptionPane.DEFAULT_OPTION);
text1.requestFocus();
return;
}
if (combo7.getSelectedItem() == null) {
JOptionPane.showMessageDialog(null, "Please note that you can't do\n" +
"booking before scheduling is done", "ERROR",
JOptionPane.DEFAULT_OPTION);
return;
}
try {
Statement statement = DBConnection.getDBConnection().createStatement();
{
String temp = "INSERT INTO BOOKING(Booking_No,Pass_No,PassName,Bus_RegNo,SeatNo,Date_of_Travel,Time_of_Travel,Pass_From,Destination,Amount) VALUES ('" +
text1.getText() + "', '" +
combo2.getSelectedItem() + "', '" +
combo3.getSelectedItem() + "', '" +
combo1.getSelectedItem() + "', '" +
combo6.getSelectedItem() + "', '" +
t_date.getText() + "', '" +
combo8.getSelectedItem() + "', '" +
combo4.getSelectedItem() + "', '" +
combo5.getSelectedItem() + "', '" +
combo9.getSelectedItem() + "')";
int result = statement.executeUpdate(temp);
String ObjButtons[] = {"Yes", "No"};
int PromptResult = JOptionPane.showOptionDialog(null, "Record succesfully added.Continue with Booking?",
"tobiluoch", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, ObjButtons, ObjButtons[1]);
if (PromptResult == 0) {
generator();
} else {
setVisible(false);
}
}
} catch (Exception sqlex) {
sqlex.printStackTrace();
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
try {
Statement statement = DBConnection.getDBConnection().createStatement();
{
String temp = "UPDATE Passenger SET Booked_Status='Booked'" +
"WHERE Pass_NO LIKE '" + combo2.getSelectedItem() + "'";
int result = statement.executeUpdate(temp);
}
} catch (SQLException sqlex) {
sqlex.printStackTrace();
}
}
private void generator() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Booking_No FROM BOOKING");
//if (rst.getInt(1)==null)
text1.setText("1000");
while (rst.next()) {
String s;
int number = rst.getInt(1);
number = number + 1;
s = "" + number;
text1.setText(s);
}
} catch (Exception n) {
n.printStackTrace();
}
}
}
Add Passenger :
import java.awt.*;
import java.text.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.sql.*;
import javax.swing.plaf.metal.*;
public class AddPassenger extends JInternalFrame {
private JLabel label1, label2, label3, label4, label5, label6, label7, label8;
private JTextField text1, text2, text3, text4, text6;
private JButton button1, button2, button3, button4;
private JPanel panel1, panel2, panel3;
private JComboBox combo1, combo2;
private DateButton dob;
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
public AddPassenger() {
super("Passenger Details", false, true, false, true);
label1 = new JLabel("Passenger Number");
label2 = new JLabel("Passenger Name");
label3 = new JLabel("Address");
label4 = new JLabel("Telephone Number");
label5 = new JLabel("Date_of_Travel");
label6 = new JLabel("From");
label7 = new JLabel("To");
//label8=new JLabel("Amount Paid");
text1 = new JTextField(10);
text2 = new JTextField(10);
text3 = new JTextField(10);
text4 = new JTextField(10);
text6 = new JTextField(10);
dob = new DateButton();
dob.setForeground(Color.red);
combo1 = new JComboBox();
combo2 = new JComboBox();
setCbx();
button1 = new JButton("Add New", new ImageIcon(ClassLoader.getSystemResource("Images/addnew.png")));
button2 = new JButton("Cancel", new ImageIcon(ClassLoader.getSystemResource("Images/exit.png")));
button3 = new JButton("Clear", new ImageIcon(ClassLoader.getSystemResource("Images/clear.png")));
panel1 = new JPanel(new GridLayout(7, 2));
panel1.setPreferredSize(new Dimension(350, 250));
panel1.add(label1);
panel1.add(text1);
panel1.add(label2);
panel1.add(text2);
panel1.add(label3);
panel1.add(text3);
panel1.add(label4);
panel1.add(text4);
panel1.add(label5);
panel1.add(dob);
panel1.add(label6);
panel1.add(combo1);
panel1.add(label7);
panel1.add(combo2);
//panel1.add(label8);panel1.add(text6);
panel2 = new JPanel();
panel2.add(button1);
panel2.add(button2);
panel2.add(button3);
panel3 = new JPanel();
panel3.setPreferredSize(new Dimension(550, 400));
panel3.add(panel1);
panel3.add(panel2);
add(panel3);
setSize(500, 350);
setLocation((screen.width - 500) / 2, ((screen.height - 350) / 2));
generator();
text1.addFocusListener(new FocusAdapter() {
public void focusLost(FocusEvent e) {
JTextField textField =
(JTextField) e.getSource();
String content = textField.getText();
if (content.length() != 0) {
try {
Integer.parseInt(content);
} catch (NumberFormatException nfe) {
getToolkit().beep();
JOptionPane.showMessageDialog(null, "Invalid data entry", "Error", JOptionPane.DEFAULT_OPTION);
textField.requestFocus();
text1.setText("");
}
}
}
});
text2.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char c = e.getKeyChar();
if (!(Character.isLetter(c) ||
(c == KeyEvent.VK_BACK_SPACE) ||
(c == KeyEvent.VK_SPACE) ||
(c == KeyEvent.VK_DELETE))) {
getToolkit().beep();
JOptionPane.showMessageDialog(null, "This Field Only acept text", "Error", JOptionPane.DEFAULT_OPTION);
e.consume();
}
}
});
text4.addFocusListener(new FocusAdapter() {
public void focusLost(FocusEvent e) {
JTextField textField =
(JTextField) e.getSource();
String content = textField.getText();
if (content.length() != 0) {
try {
Integer.parseInt(content);
} catch (NumberFormatException nfe) {
getToolkit().beep();
JOptionPane.showMessageDialog(null, "Invalid data entry", "Error",
JOptionPane.DEFAULT_OPTION);
textField.requestFocus();
text4.setText("");
}
}
}
});
button1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if (text1.getText() == null ||
text1.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter Passenger number", "Error", JOptionPane.DEFAULT_OPTION);
text1.requestFocus();
return;
}
if (text2.getText() == null ||
text2.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter passenger name", "Error",
JOptionPane.DEFAULT_OPTION);
text2.requestFocus();
return;
}
if (text3.getText() == null ||
text3.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Address Field is required", "Error",
JOptionPane.DEFAULT_OPTION);
text3.requestFocus();
return;
}
if (text4.getText() == null ||
text4.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter telephone number", "Error",
JOptionPane.DEFAULT_OPTION);
text4.requestFocus();
return;
}
try {
Statement statement = DBConnection.getDBConnection().createStatement();
{
String temp = "INSERT INTO Passenger(Pass_No, Pass_Name, Address, Tel_No, Date_of_Travel,Depot,To) VALUES ('" +
text1.getText() + "', '" +
text2.getText() + "', '" +
text3.getText() + "', '" +
text4.getText() + "', '" +
dob.getText() + "', '" +
combo1.getSelectedItem() + "', '" +
combo2.getSelectedItem() + "')";
int result = statement.executeUpdate(temp);
String ObjButtons[] = {"Yes", "No"};
int PromptResult = JOptionPane.showOptionDialog(null, "Record succesfully added.Do you want to add another?",
"Success", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, ObjButtons, ObjButtons[1]);
if (PromptResult == 0) {
generator();
text2.setText("");
text3.setText("");
text4.setText("");
} else {
setVisible(false);
}
}
} catch (SQLException sqlex) {
sqlex.printStackTrace();
}
}
});
button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}
});
button3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
text1.setText("");
text2.setText("");
text3.setText("");
text4.setText("");
}
});
}
private void setCbx() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Depot,Destination FROM Route");
while (rst.next()) {
combo1.addItem(rst.getString(1));
combo2.addItem(rst.getString(2));
}
} catch (Exception n) {
n.printStackTrace();
}
}
private void generator() {
try {
ResultSet rst = DBConnection.getDBConnection().createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery("SELECT Pass_No FROM Passenger");
while (rst.next()) //text1.setText("1000");
{
String s;
int number = rst.getInt(1);
number = number + 1;
s = "" + number;
text1.setText(s);
}
} catch (Exception n) {
n.printStackTrace();
}
}
}