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

📄 team.java

📁 主要功能包括散客开单、团体开单、宾客结帐、客房预订、营业查询、客户管理、网络设置、系统设置等等。 详细说明见阳光酒店管理系统需求规格说明书。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/**
 *##############################################################################
 *
 *	[ 项目名      ]  : 阳光酒店管理系统
 *  [ 公司名      ]  : 清华IT
 *	[ 模块名      ]  : 散客开单窗口
 *	[ 文件名      ]  : Team.java
 *	[ 相关文件    ]  : 
 *	[ 文件实现功能]  : 团体宾客开设房间窗口
 *	[ 作者        ]  : 董丰
 *	[ 版本        ]  : 1.1
 *	----------------------------------------------------------------------------
 *	[ 备注        ]  : 
 *	----------------------------------------------------------------------------
 *	[ 修改记录    ]  : 
 *
 *	[ 日  期 ]     [版本]         [修改人]         [修改内容] 
 *	2006/04/22      1.0             董丰            创建
 *	2006/04/27      1.1             顾俊            完成功能
 *	##--------------------------------------------------------------------------
 *  			 版权所有(c) 2006-2007,  SunshineSOFT Corporation
 *	--------------------------------------------------------------------------##
 *	
 *	[ 函数说明    ]  :	
 *	
 *	[## public Team(JFrame frame) {} ]:
 *		功能: 散客开单窗口
 *
 *	[## private void addListener() {} ]: 
 *		功能: 加事件监听
 *
 *	[## private void buildPanel() {} ]: 
 *		功能: 制作主面板
 *
 *	[## private void initDTM1(String cType) {} ]:
 *		功能: 初始化可供房间列表
 *
 *	[## private void initDTM2() {} ]: 
 *		功能: 初始化开单房间列表
 *
 *	[## private void addRoom() {} ]: 
 *		功能: 加到开单区
 *
 *	[## private void subRoom() {} ]: 
 *		功能: 从开单区移除
 *
 *	[## private boolean isValidity() {} ]:
 *		功能: 测试用户输入的数据是否合法
 *
 *	[## private void saveLiveIn() {} ]: 
 *		功能: 保存所有宾客的入住信息
 *
 *  [ 遗留问题    ]  : 
 *
 *##############################################################################
 */
package com.sunshine.team;

import javax.swing.*;
import java.awt.*;
import javax.swing.border.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import com.sunshine.sunsdk.sql.*;				//公共类
import com.sunshine.sunsdk.swing.*;
import com.sunshine.sunsdk.system.*;
import com.sunshine.mainframe.*;				//主框架窗口


public class Team 
extends JDialog 
implements ActionListener, MouseListener {
	
	public static JComboBox cb, cb2;			//房间类型,宾客类型
	public static DefaultTableModel dtm1, dtm2;	//可供房间表,开单房间表
	public static JTable tb2;					//开单列表
	
	private JTextField tf1, tf2, tf3, tf4, tf5, tf6, tf7, tf8, tfA, tfB;
                   //证件码,主客,人数,押金,主房,天数,地址,备注	表格标题
    private JButton bt1, bt2, bt3, bt4;
                  //确定,取消,添加,移除
	private JComboBox cb1, cb3;
               //证件类型,性别
	private JCheckBox chk;
                //到预住天数提醒
	private JTable tb1;				//表格
	private JScrollPane sp1, sp2;	//滚动面板
	
	private JPanel panelMain;		//主面板
	
	private String rt;				//房间类型
    
    
    /**=======================================================================**
	 *		[## public Team(JFrame frame) {} ]: 			构造函数
	 *			参数   :JFrame frame表示本对话框的父窗口
	 *			返回值 :无
	 *			修饰符 :public
	 *			功能   :团体开单窗口
	 **=======================================================================**
	 */
	public Team(JFrame frame) {
		super (frame, "团体开单", true);
		panelMain = new JPanel(new GridLayout(2, 1, 0, 10));	//主面板为表格布局
		buildPanel();
		addListener();
		this.setContentPane(panelMain);
		this.setPreferredSize (new Dimension (540,500));
		this.setMinimumSize (new Dimension (540, 500));
		this.setResizable(false);		//不允许改变窗口大小
		pack();
		sunswing.setWindowCenter(this);	//窗口屏幕居中
	}
	
	/**=======================================================================**
	 *		[## private void addListener() {} ]: 
	 *			参数   :无
	 *			返回值 :无
	 *			修饰符 :private
	 *			功能   :加事件监听
	 **=======================================================================**
	 */
	private void addListener() {
		tf1.addActionListener(this);	//文本框加监听
		tf2.addActionListener(this);
		tf3.addActionListener(this);
		tf4.addActionListener(this);
		tf6.addActionListener(this);
		tf7.addActionListener(this);
		bt1.addActionListener(this);	//按键的动作监听
		bt2.addActionListener(this);
		bt3.addActionListener(this);
		bt4.addActionListener(this);
		cb.addActionListener(this);
		bt1.addMouseListener(this);
		bt2.addMouseListener(this);
		bt3.addMouseListener(this);
		bt4.addMouseListener(this);
	}
	
	/**=======================================================================**
	 *		[## private void buildPanel() {} ]: 
	 *			参数   :无
	 *			返回值 :无
	 *			修饰符 :private
	 *			功能   :制作信息面板
	 **=======================================================================**
	 */
	private void buildPanel() {
		
		JLabel lb0, lb1, lb2, lb3, lb4, lb5, lb6, lb7, lb8, lb9, lb10, lb11;
		lb0 = new JLabel("房间类型:");
		lb1 = new JLabel("证件类型:");
		lb2 = new JLabel("  宾客类型:");
		lb3 = new JLabel("  主客性别:");
		lb4 = new JLabel("证件编码:");
		lb5 = new JLabel("  主客姓名:");
		lb6 = new JLabel("  宾客人数:");
		lb7 = new JLabel("实收押金:");
		lb8 = new JLabel("  主客房间:");
		lb9 = new JLabel("  预住天数:");
		lb10 = new JLabel("地址信息:");
		lb11 = new JLabel("备注信息:");
		
		//下拉列表
		cb = new JComboBox();//宾客类型
		cb1 = new JComboBox();
		cb1.addItem("身份证");
		cb1.addItem("驾驶证");
		cb1.addItem("学生证");
		cb1.addItem("军官证");
		cb1.addItem("护照");
		cb1.addItem("其他");
		cb2 = new JComboBox();//宾客类型
		cb3 = new JComboBox();
		cb3.addItem("男         ");
		cb3.addItem("女         ");
		
		//文本框
		tf1 = new TJTextField(8);
		tf2 = new TJTextField(10);
		tf3 = new TJTextField("1");
		tf4 = new TJMoneyField();
		tf5 = new JTextField("", 10);
		tf6 = new TJTextField(8);
		tf7 = new TJTextField(40);
		tf8 = new TJTextField(40);
		tfA = new JTextField("房间信息");
		tfB = new JTextField("开单房间");
		tf3.setHorizontalAlignment (JTextField.RIGHT);	//设置宾客人数文本框右对齐
		tf6.setHorizontalAlignment (JTextField.RIGHT);	//设置宾客预住天数右对齐
		tf5.setEditable(false);							//设置主客房不可编辑
		tfA.setHorizontalAlignment (JTextField.CENTER);	//以下是设置标题
		tfA.setBackground(new Color(199, 183, 143));
		tfA.setBorder(new LineBorder(new Color(87, 87, 47)));
		tfA.setEditable(false);
		tfB.setHorizontalAlignment (JTextField.CENTER);
		tfB.setBackground(new Color(199, 183, 143));
		tfB.setBorder(new LineBorder(new Color(87, 87, 47)));
		tfB.setEditable(false);
		
		//多选钮
		chk = new JCheckBox("   到预住天数时自动提醒");
				
		//左边表格
		dtm1 = new DefaultTableModel();
		tb1  = new JTable(dtm1);
		sp1  = new JScrollPane(tb1);
		tb1.setShowHorizontalLines(false);
		tb1.setForeground(new Color( 87,  87,  47));
		tb1.setBackground(new Color(248, 242, 230));
		sp1.setBorder(BorderFactory.createTitledBorder(""));
		String rtype = cb.getSelectedItem()+"";
		
		/////////////////////////////////////////做表格
		
		//右边表格
		dtm2 = new DefaultTableModel();
		tb2  = new JTable(dtm2);
		sp2  = new JScrollPane(tb2);
		tb2.setShowHorizontalLines(false);
		tb2.setForeground(new Color( 87,  87,  47));
		tb2.setBackground(new Color(248, 242, 230));
		sp2.setBorder(BorderFactory.createTitledBorder(""));
		/////////////////////////////////////////做表格
		
		//按钮
		bt1 = new TJButton ("pic/modi3.gif", " 确 定 ", "开单");
		bt2 = new TJButton ("pic/cancel.gif", " 取 消 ", "取消开单");
		bt3 = new TJButton("pic/new.gif","添加到开单区","添加到开单区");
		bt4 = new TJButton("pic/del.gif","从开单区删除","从开单区删除");
		
		//面板
		JPanel pb,pt,ptc,pt1,pt1c,pt1cn,pt2,
			   pc2,pc21,pc22,pcd1,pc23,pc24,pcd2,pc25,pc26,pcd3,
			   pc3,pc31,pc32,
			   pc4,pc5;
		JLabel line0 = new JLabel("                                                            ");
		JLabel line1 = new JLabel(new ImageIcon("pic/line4.gif"));//分隔线
		JLabel line2 = new JLabel(new ImageIcon("pic/line4.gif"));//分隔线
		
		pt = new JPanel(new BorderLayout(0,5));    //放置上半面板
		ptc = new JPanel(new GridLayout(1,2,10,5));//上半面板的表格
		pt1 = new JPanel(new BorderLayout());	   //放置左边表格
		pt1c = new JPanel(new BorderLayout());	   //
		pt1cn = new JPanel(new FlowLayout(FlowLayout.CENTER,10,0));
		pt2 = new JPanel(new BorderLayout());      //放置右边表格	
		pb = new JPanel(new FlowLayout(FlowLayout.CENTER,0,0));   //下半面板
		pc2  = new JPanel(new FlowLayout(FlowLayout.LEFT,10,3));  //放置"证件类型...,宾客类型....实收押金"三行
		pc21 = new JPanel(new GridLayout(3,1,5,16));//放置证件类型,宾客类型,实收押金
		pc22 = new JPanel(new GridLayout(3,1,5,6));//放置证件类型,宾客类型下拉框,实收押金文本框
		pcd1  = new JPanel(new FlowLayout(FlowLayout.CENTER,0,0));//放置pcc21,pcc22
		pc23 = new JPanel(new GridLayout(3,1,5,15));//放置证件编码,主客姓名,主客房间
		pc24 = new JPanel(new GridLayout(3,1,5,6));//放置证件编码,主客姓名,主客房间文本框
		pcd2  = new JPanel(new FlowLayout(FlowLayout.CENTER,0,0));//放置pcc23,pcc24
		pc25 = new JPanel(new GridLayout(3,1,5,15));//放置主客性别,宾客人数,预住天数
		pc26 = new JPanel(new GridLayout(3,1,5,6));//放置主客性别下拉框,宾客人数,预住天数文本框
		pcd3  = new JPanel(new FlowLayout(FlowLayout.CENTER,0,0));//放置pcc25,pcc26
		pc3  = new JPanel(new FlowLayout(FlowLayout.LEFT,0,3));   //放置"地址信息,备注信息"两行
		pc31 = new JPanel(new GridLayout(2,1,0,6));//放置地址信息,备注信息
		pc32 = new JPanel(new GridLayout(2,1,0,6));//放置地址信息,备注信息文本框
		pc4  = new JPanel(new FlowLayout(FlowLayout.LEFT,0,3));   //放置chk
		pc5  = new JPanel(new FlowLayout(FlowLayout.CENTER,70,6));//放置确定和取消按钮
		
		//构造pc1
		JLabel temp = new JLabel ("");
		pt1cn.add(lb0);
		pt1cn.add(cb);
		pt1cn.setBorder(BorderFactory.createTitledBorder(""));
		pt1c.add("North",pt1cn);
		pt1c.add(sp1);
		pt1.add("North",tfA);
		pt1.add(pt1c);
		pt1.add("South",bt3);
		pt2.add("North",tfB);
		pt2.add(sp2);
		pt2.add("South",bt4);
		ptc.add(pt1);
		ptc.add(pt2);
		pt.add("North",temp);
		pt.add(ptc);
		
		//构造证件类型,宾客类型,实收押金三行
		pc21.add(lb1);		
		pc21.add(lb4);
		pc21.add(lb7);
		pc22.add(cb1);		
		pc22.add(tf1);	
		pc22.add(tf4);	
		pc23.add(lb2);	
		pc23.add(lb5);	
		pc23.add(lb8);	
		pc24.add(cb2);
		pc24.add(tf2);
		pc24.add(tf5);
		pc25.add(lb3);
		pc25.add(lb6);
		pc25.add(lb9);
		pc26.add(cb3);
		pc26.add(tf3);
		pc26.add(tf6);
		pcd1.add(pc21);
		pcd1.add(pc22);
		pcd2.add(pc23);
		pcd2.add(pc24);
		pcd3.add(pc25);
		pcd3.add(pc26);
		pc2.add(pcd1);
		pc2.add(pcd2);
		pc2.add(pcd3);
		
		//构造地址信息,备注信息两行
		pc31.add(lb10);
		pc31.add(lb11);
		pc32.add(tf7);
		pc32.add(tf8);
		pc3.add(pc31);
		pc3.add(pc32);
		
		//构造chk	
		JLabel temp10 = new JLabel("                                                                                                              ");
		pc4.add(chk);
		pc4.add(temp10);
		
		//构造确定取消按钮面板
		pc5.add(bt1);
		pc5.add(bt2);
		
		//将开单信息加入面板
		pb.add(line1);
		pb.add(pc2);
		pb.add(pc3);
		pb.add(pc4);
		pb.add(line2);		
		pb.add(pc5);		
		
		
		panelMain.add(pt);
		panelMain.add(pb);
	}
	
	/**=======================================================================**
	 *		[## private void initDTM1(String rtype) {} ]: 
	 *			参数   :String rtype表示房间类型
	 *			返回值 :无
	 *			修饰符 :private
	 *			功能   :初始化可供房间列表
	 **=======================================================================**
	 */
	private void initDTM1(String rtype) {
		String sqlCode = "select a.id 客房编号,b.price 标准单价,b.id from roominfo as a,roomtype " +
		"as b where a.indimark=0 and b.r_type = '"+rtype+"' and a.r_type_id = b.id and " +
		"a.state = '可供' and a.delmark = 0";

⌨️ 快捷键说明

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