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

📄 checkout.java

📁 酒店管理系统·可用于一般旅社的营业操作。方便你的酒店管理
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package com.redingsoft.checkout;import com.redingsoft.locationutil.LocationUtil;import com.redingsoft.sql.SetSQL;import com.redingsoft.sunsdk.swing.OJButton;import com.redingsoft.sunsdk.swing.xtwh_table;import com.redingsoft.timeutil.Util;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Vector;import java.util.logging.Level;import java.util.logging.Logger;import javax.swing.*;import javax.swing.table.DefaultTableModel;/** * * @author Administrator */public class Checkout extends JDialog implements ActionListener {           //声明一个标签    JLabel jl1;    //声明一个文本框    JTextField tf1;    //声明2个按钮    JButton bt1,bt2;    //声明一个表格    JTable tb1;    //声明一个表模式    DefaultTableModel dftm1;    //声明一个滚动面板    JScrollPane sp1;    //声明面板    JPanel toppane,centerpane,mainpane;        //初始化表格数组    String cols[]={"姓名","性别","房间号","押金","消费","入住时间"};    String rows[][]=new String[0][6];    Vector v=new Vector();      String sql;    //构造方法    public Checkout(){            //实例化标签        jl1=new JLabel("输入要结账的房间号:");        //实例化文本框        tf1=new JTextField(15);        //实例化按钮        bt1=new OJButton("com/redingsoft/pic/u04.gif","结账","给客人结账",true);        bt2=new OJButton("com/redingsoft/pic/b1.gif","刷新","刷新消费信息",true);        //实例化表格        tb1=new JTable();        //设置表模式        dftm1=new xtwh_table(rows,cols);       sql="select c_name 姓名,sex 性别,r_no 房间号,foregift 押金,account 消费,in_time 入住时间 from inlive where delmark=0 ";        initTabel(sql);        tb1.setModel(dftm1);        //实例化滚动面           sp1=new JScrollPane(tb1);     //设置滚动面板初始大小     sp1.setPreferredSize(new Dimension(480,380));     //实例化面板     toppane=new JPanel();     centerpane=new JPanel();     mainpane=new JPanel(new BorderLayout());     //添加到面板     toppane.add(jl1);     toppane.add(tf1);     toppane.add(bt1);     toppane.add(bt2);     //添加滚动面版     centerpane.add(sp1);     //色绘制边框修饰     centerpane.setBorder(BorderFactory.createTitledBorder(centerpane.getBorder(), "消费信息"));     ///////////////////////     mainpane.add(BorderLayout.NORTH,toppane);     mainpane.add(BorderLayout.SOUTH,centerpane);     //添加按钮侦听     bt1.addActionListener(this);     bt2.addActionListener(this);    this.add(mainpane);    this.setSize(600, 500);    this.setDefaultCloseOperation(Checkout.DISPOSE_ON_CLOSE);           }    /***************************************    public static void main(String []args){    new Checkout();    }  *****************************************/               //初始化表格/* * 函数名:public void initTabel() * 参数:null * 返回值:void * 功能:制作并初始化表格 ***********************************/public void initTabel(String sql){   //设置表格的模式    //初始化表表模式     SetSQL.initDTM(dftm1,sql);     if(dftm1.getRowCount()!=0){      tb1.setModel(dftm1); //    tb=new JTable();    }else{        WarnMsg("提示","还没有客户消费信息。");    }}/*******************************************************     * 函数名称:WarnMsgPane(String title ,String msg ,component null)     * 参数:tile 提示标题 msg 提示消息 显示他的父组件     * 功能:为错误的输入和连接错误做出提示     ************************************************************/ public static void WarnMsg(String title,String msg){  JOptionPane.showMessageDialog(null,msg,title,JOptionPane.WARNING_MESSAGE); }    public void actionPerformed(ActionEvent e) {       // throw new UnsupportedOperationException("Not supported yet.");        Object o=e.getSource();        if(o==bt1){  ///结账          String r_id=tf1.getText();           String date=Util.getNowDTime();          selinlive();          String incheckout="insert into checkout(chk_no,in_no,days,money,chk_time) values('"+v.get(0)+ r_id+"','"+v.get(0)+"',"+v.get(1)+","+v.get(2)+",'"+date+"')";          String delinlive="delete from inlive where r_no='"+r_id+"'"; //更新inlve表          String update="update roominfo set state='"+"可供"+"'"+"where id='"+r_id+"'"; //更新roomifo表          SetSQL.executeUpdate(incheckout);          SetSQL.executeUpdate(delinlive);          SetSQL.executeUpdate(update);             Object money=v.get(2);             Object foregift=v.get(3);           //  foregift.toString();           //  money.toString();           float balance= Float.valueOf(foregift.toString())-Float.valueOf( money.toString());            WarnMsg("提示","余额为:"+String.valueOf(balance));           }        if(o==bt2){         initTabel(sql);        }    }    private void selinlive(){        String r_id=tf1.getText();     String selinlive="select * from inlive where r_no='"+r_id+"'";    ResultSet rs=SetSQL.executeQuery(selinlive);         if(rs!=null){            try {                while (rs.next()) {                    v.add(rs.getString("In_no"));                    v.add(rs.getString("days"));                    v.add(rs.getFloat("account"));                    v.add(rs.getFloat("foregift"));                }            } catch (SQLException ex) {               // Logger.getLogger(Checkout.class.getName()).log(Level.SEVERE, null, ex);                WarnMsg("提示","你输入的房间不可以结账!");            }         }    }    }

⌨️ 快捷键说明

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