⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reservationframe.java~121~

📁 这个一个餐厅预定系统,可实现查询目前餐厅预订情况,实现餐桌预订以及就餐时为顾客调节餐桌的情况.
💻 JAVA~121~
字号:
package bookingsystem;

import java.awt.*;

import javax.swing.*;
import com.borland.jbcl.layout.XYLayout;
import com.borland.jbcl.layout.*;
import java.awt.Rectangle;
import com.borland.dbswing.TableScrollPane;
import com.borland.dbswing.JdbTable;
import javax.swing.table.DefaultTableModel;
import java.awt.Font;
import java.util.Calendar;
import java.util.Date;
import java.util.Vector;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import com.borland.dbswing.JdbLabel;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.sql.*;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class ReservationFrame extends myFrame {
    public ReservationFrame(ResFrame r) {
        super();
        this.resFrame = r;
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    private void jbInit() throws Exception {

    Connection cn=ConnectionDB.getCon();
    Statement st=null;
    ResultSet rs=null;
    this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
    String queryType[] = {"顾客姓名", "预约日期", "预约桌号"};
    for (int i = 0; i < 3; i++)
    {
        jComboBox1.addItem(queryType[i]);
    }



        getContentPane().setLayout(null);
        jSplitPane1.setBounds(new Rectangle(12, 21, 734, 397));
        jPanel1.setLayout(xYLayout1);
        jButton1.setText("添加预约");
        jButton1.addActionListener(new ReservationFrame_jButton1_actionAdapter(this));
        jButton2.setText("修改预约");
        jButton2.addActionListener(new ReservationFrame_jButton2_actionAdapter(this));
        jButton3.setText("删除预约");
        jButton3.addActionListener(new ReservationFrame_jButton3_actionAdapter(this));
        jButton4.setText("退出预约");
        jButton4.addActionListener(new ReservationFrame_jButton4_actionAdapter(this));
        jButton5.setText("显示预约");
        jButton5.addActionListener(new ReservationFrame_jButton5_actionAdapter(this));
        jButton6.setBounds(new Rectangle(559, 439, 83, 25));
        jButton6.setToolTipText("");
        jButton6.setText("查询");
        jButton6.addActionListener(new ReservationFrame_jButton6_actionAdapter(this));
        jLabel1.setText("查询类别:");
        jLabel1.setBounds(new Rectangle(16, 438, 67, 24));
        jComboBox1.setBounds(new Rectangle(82, 439, 104, 23));
        jComboBox1.addItemListener(new ReservationFrame_jComboBox1_itemAdapter(this));
        jLabel2.setText("查询关键字:");
        jLabel2.setBounds(new Rectangle(228, 438, 90, 24));
        jComboBox2.setEditable(true);
        jComboBox2.setBounds(new Rectangle(316, 439, 126, 23));
        this.getContentPane().add(jSplitPane1);
        jSplitPane1.setDividerLocation(580);
        jSplitPane1.add(jScrollPane1, JSplitPane.LEFT);
        jScrollPane1.getViewport().add(tableScrollPane1);
        tableScrollPane1.getViewport().add(jdbTable1);
        jSplitPane1.add(jPanel1, JSplitPane.RIGHT);
        jPanel1.add(jButton1, new XYConstraints(28, 55, -1, -1));
        jPanel1.add(jButton3, new XYConstraints(28, 167, -1, -1));
        jPanel1.add(jButton2, new XYConstraints(28, 112, -1, -1));
        jPanel1.add(jButton4, new XYConstraints(28, 284, -1, -1)); /*显示预约列表*/
        jPanel1.add(jButton5, new XYConstraints(28, 225, 83, -1));
        this.getContentPane().add(jLabel1);
        this.getContentPane().add(jComboBox1);
        this.getContentPane().add(jLabel2);
        this.getContentPane().add(jComboBox2);
        this.getContentPane().add(jButton6);
        //获得所有预约的显示

        defaultTableModel = new DefaultTableModel();
        jdbTable1 = new JdbTable(defaultTableModel);
        tableScrollPane1.getViewport().add(jdbTable1);
        defaultTableModel.addColumn("预定号");
        defaultTableModel.addColumn("人数");
        defaultTableModel.addColumn("当前时间");
        defaultTableModel.addColumn("用餐日期");
        defaultTableModel.addColumn("用餐时间段");
        defaultTableModel.addColumn("餐桌号");
        defaultTableModel.addColumn("顾客姓名");
        defaultTableModel.addColumn("是否到达");
        defaultTableModel.addColumn("是否结帐");

        queryreservation();
        fillQueryKeyByCustomer();
    }

    JSplitPane jSplitPane1 = new JSplitPane();
    JScrollPane jScrollPane1 = new JScrollPane();
    TableScrollPane tableScrollPane1 = new TableScrollPane();
    JdbTable jdbTable1 = new JdbTable();
    JPanel jPanel1 = new JPanel();
    XYLayout xYLayout1 = new XYLayout();
    JButton jButton1 = new JButton();
    JButton jButton2 = new JButton();
    JButton jButton3 = new JButton();
    JButton jButton4 = new JButton();
    DefaultTableModel defaultTableModel;
    JButton jButton5 = new JButton();
    JButton jButton6 = new JButton();
    private ResFrame resFrame;
    JLabel jLabel1 = new JLabel();
    JComboBox jComboBox1 = new JComboBox();
    JLabel jLabel2 = new JLabel();
    JComboBox jComboBox2 = new JComboBox();
    Restaurant tempRestaurant = new Restaurant();

    public void queryreservation(){
         long nCurrentTime = System.currentTimeMillis();
         java.util.Date date = new java.util.Date(nCurrentTime);
         Restaurant resta = new Restaurant();
         Vector v = resta.getAllRervations(date);
         for(int i=0;i<v.size();i++)
         {
             Reservation reservation = (Reservation)v.get(i);
             Object[]data = new Object[9];

             data[0] = reservation.getbookingno();
             data[1] = reservation.getCovers();
             data[2] = reservation.getpreDate();
             data[3] = reservation.getarrivaldate();
             data[4] = reservation.getarrivaltime();
             data[5] = reservation.getTalNo();
             data[6] = reservation.getCustomer().getcname();
             data[7] =reservation.getisarrival();
             data[8] =reservation.getIspaybill();
            defaultTableModel.addRow(data);
         }

          jdbTable1.setModel(defaultTableModel);
    }

    public void jButton1_actionPerformed(ActionEvent e) {
           AddreservationFrame addRerservation = new AddreservationFrame(this);
           addRerservation.setSize(450,460);
           //Center the window
            Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
            Dimension frameSize = addRerservation.getSize();
            if (frameSize.height > screenSize.height) {
                frameSize.height = screenSize.height;
           }
            if (frameSize.width > screenSize.width) {
                frameSize.width = screenSize.width;
           }
           addRerservation.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
           addRerservation.setVisible(true);
           this.setEnabled(false);
    }

    public void jButton4_actionPerformed(ActionEvent e) {
        this.resFrame.setEnabled(true);
        this.resFrame.btnDisplay_actionPerformed(e);
        this.dispose();

    }

    public void jButton3_actionPerformed(ActionEvent e) {
      int response = JOptionPane.showConfirmDialog(null,  "确定删除吗?", "choose one",JOptionPane.YES_NO_OPTION);
      System.out.print(response);
      if(response == 0)
      {
          int delRow = jdbTable1.getSelectedRow() ;
          Restaurant rs = new Restaurant();
          System.out.print(Integer.parseInt(jdbTable1.getValueAt(delRow,0).toString()));
          rs.deleteReservation(Integer.parseInt(jdbTable1.getValueAt(delRow,0).toString()));

      }
      else if(response == 1)
      {
          return;
      }
      this.jButton5_actionPerformed(e);
    }

    public void jButton6_actionPerformed(ActionEvent e) {
      Connection cn=ConnectionDB.getCon();
      Statement st = null;
      ResultSet rs = null;
      while(defaultTableModel.getRowCount()>0)
      {
          defaultTableModel.removeRow(0);
      }


      try{
         String querySql = "SELECT RESERVATION_ID, COVERS, PREDATE, ARRIVALDATE, ARRIVALTIME, TALNO, CNAME, ISARRIVAL, ISPAYBILL FROM CUSTOMER , RESERVATION WHERE CUSTOMER.CNO=RESERVATION.CNO AND CUSTOMER.CNAME ='"
                            + jComboBox2.getSelectedItem().toString()+"' OR TALNO = '"+jComboBox2.getSelectedItem().toString()+"' OR ARRIVALDATE = '"+jComboBox2.getSelectedItem().toString()+"'";
      st=cn.createStatement();
      rs = st.executeQuery(querySql);
      if(rs == null)
      {
          JOptionPane.showMessageDialog(null, "不存在与此相关的信息");
          return ;
      }
      else if(rs!=null)
      {


           while(rs.next())
          {
           Object[]data = new Object[9];
           data[0] = rs.getInt("RESERVATION_ID");
           data[1] = rs.getInt("COVERS");
           data[2] = rs.getString("PREDATE");
           data[3] = rs.getString("ARRIVALDATE");
           data[4] = rs.getString("ARRIVALTIME");
           data[5] = rs.getString("TALNO");
           data[6] = rs.getString("CNAME");
           data[7] = rs.getBoolean("ISARRIVAL");
           data[7] = rs.getBoolean("ISPAYBILL");
           defaultTableModel.addRow(data);

          }
       jdbTable1.setModel(defaultTableModel);
      }

      }catch(Exception ex)
      {
          ex.printStackTrace();
      }
    }

    public void jButton5_actionPerformed(ActionEvent e) {
        while(defaultTableModel.getRowCount()>0)
        {
            defaultTableModel.removeRow(0);
        }
        queryreservation();

    }

    public void jButton2_actionPerformed(ActionEvent e) {
        this.setEnabled(false);
        UpdatereservationFrame modify = new UpdatereservationFrame(this);
        modify.setSize(430,400);

        //Center the window
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension frameSize = modify.getSize();
        if (frameSize.height > screenSize.height) {
           frameSize.height = screenSize.height;
        }
        if (frameSize.width > screenSize.width) {
           frameSize.width = screenSize.width;
        }
        modify.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);

        modify.setVisible(true);
        this.setEnabled(false);
    }

    public void jComboBox1_itemStateChanged(ItemEvent e) {
        System.out.print("hello");
        if(jComboBox1.getSelectedItem().toString().equals("顾客姓名")){
            System.out.print("customer");
            fillQueryKeyByCustomer();
        }
        else if(jComboBox1.getSelectedItem().toString().equals("预约日期"))
        {
            return;
        }
        else
        {
            fillQueryKeyByTalno();
        }
    }
    public void fillQueyKeyByCustomer()
    {


    }
    public void fillQueryKeyByCustomer()
    {
        jComboBox2.removeAllItems();
        Vector tempVector=null;
        try {
             tempVector = tempRestaurant.getAllCustomer();
        } catch (SQLException ex) {
        }
        for(int i = 0;i<tempVector.size();i++)
        {
             Customer cus = (Customer)tempVector.get(i);
            jComboBox2.addItem(cus.getcname());
        }



    }
    public void fillQueryKeyByTalno()
    {
        jComboBox2.removeAllItems();
        Vector tempVector=null;
        try {
             tempVector = tempRestaurant.getAllTables();
        } catch (SQLException ex) {
        }
        for(int i = 0;i<tempVector.size();i++)
        {
            Table tal = (Table)tempVector.get(i);
            jComboBox2.addItem(tal.gettalno());
        }

    }

}



class ReservationFrame_jComboBox1_itemAdapter implements ItemListener {
    private ReservationFrame adaptee;
    ReservationFrame_jComboBox1_itemAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void itemStateChanged(ItemEvent e) {
        adaptee.jComboBox1_itemStateChanged(e);
    }
}


class ReservationFrame_jButton2_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton2_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton2_actionPerformed(e);
    }
}


class ReservationFrame_jButton5_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton5_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton5_actionPerformed(e);
    }
}


class ReservationFrame_jButton6_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton6_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton6_actionPerformed(e);
    }
}


class ReservationFrame_jButton3_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton3_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton3_actionPerformed(e);
    }
}


class ReservationFrame_jButton4_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton4_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton4_actionPerformed(e);
    }
}


class ReservationFrame_jButton1_actionAdapter implements ActionListener {
    private ReservationFrame adaptee;
    ReservationFrame_jButton1_actionAdapter(ReservationFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton1_actionPerformed(e);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -