📄 hotelframe.java
字号:
JLabel lb1, lb2;
lb1 = new JLabel(" 阳 光 酒 店 管 理 系 统 ");
lb2 = new JLabel(" 当前操作员 : " + userid + " ");
lbA = new JLabel(clue + "请选择功能项 ... ");
lbB = new JLabel(face + "阳 光 酒 店 管 理 系 统 - ★★ 版 ");
//加外框线
lbA.setBorder(new LineBorder(new Color(87, 87, 47)));
lbB.setBorder(new LineBorder(new Color(87, 87, 47)));
lb1.setBorder(new LineBorder(new Color(87, 87, 47)));
lb2.setBorder(new LineBorder(new Color(87, 87, 47)));
bott = new JPanel(new FlowLayout(FlowLayout.LEFT, 2, 2));
bott.add (lb1);
bott.add (lbA);
bott.add (lbB);
bott.add (lb2);
}
//加事件监听
private void addListener () {
mi11.addActionListener (this); //来宾登记
mi12.addActionListener (this);
mi13.addActionListener (this);
mi14.addActionListener (this);
mi15.addActionListener (this);
mi16.addActionListener (this);
mi17.addActionListener (this);
mi18.addActionListener (this);
mi19.addActionListener (this);
mi21.addActionListener (this); //收银结算
mi22.addActionListener (this);
mi23.addActionListener (this);
mi24.addActionListener (this);
mi25.addActionListener (this);
mi31.addActionListener (this); //系统维护
mi32.addActionListener (this);
mi33.addActionListener (this);
mi34.addActionListener (this);
mi35.addActionListener (this);
mi36.addActionListener (this);
bt1.addActionListener (this); //按键加动作监听
bt2.addActionListener (this);
bt3.addActionListener (this);
bt4.addActionListener (this);
bt5.addActionListener (this);
bt6.addActionListener (this);
bt7.addActionListener (this);
bt8.addActionListener (this);
bt9.addActionListener (this);
btA.addActionListener (this);
bt1.addMouseListener (this); //按键加鼠标监听
bt2.addMouseListener (this);
bt3.addMouseListener (this);
bt4.addMouseListener (this);
bt5.addMouseListener (this);
bt6.addMouseListener (this);
bt7.addMouseListener (this);
bt8.addMouseListener (this);
bt9.addMouseListener (this);
btA.addMouseListener (this);
}
/**=======================================================================**
* [## private void quit () {} ]: 系统退出
* 参数 :无
* 返回值 :无
* 修饰符 :private
* 功能 :关闭系统函数,仅类内使用
**=======================================================================**
*/
private void quit () {
int flag = 0;
String msg = "您 现 在 要 关 闭 系 统 吗 ?";
flag = JOptionPane.showConfirmDialog (null, msg, "提示", JOptionPane.YES_NO_OPTION);
if(flag == JOptionPane.YES_OPTION) {
Journal.writeJournalInfo(userid, "退出本系统", Journal.TYPE_LG);//记录操作日志
this.setVisible (false);
System.exit (0);
}//End if(flag == JOptionPane.YES_OPTION)
return;
}
//刷新左房间信息栏数据
private void initLeftData() {
jp1.title1.setText(""); //刷房间信息
for (int i = 0; i < 8; i++) {
jp1.lt[i].setText("");
}//Endfor
jp1.initRoomstate(); //刷新房间总状态
}
//传数据给散客开单窗口
private boolean initIDV() {
try {
//从房间信息表里获得当前房间的状态和房间类型编号
ResultSet rs = sunsql.executeQuery("select state,r_type_id from roominfo " +
"where delmark=0 and id='" + LeftTopPanel.title1.getText() + "'");
if(!rs.next()) { //如果无结果集,提示用户刷新房间数据
if(LeftTopPanel.title1.getText().length() == 0) {
JOptionPane.showMessageDialog(null,"请选定房间后,再为宾客开设房间",
"提示", JOptionPane.INFORMATION_MESSAGE);
}else {
JOptionPane.showMessageDialog(null, "[ " + LeftTopPanel.title1.getText() +
" ] 房间信息已更改,请刷新房间信息,再为宾客开设房间", "提示", JOptionPane.INFORMATION_MESSAGE);
}
return false;
}else {
if(!rs.getString(1).equals("可供")) { //只有状态是可供房间,才能为宾客开设
JOptionPane.showMessageDialog(null, "请选择空房间,再为宾客开设房间",
"提示", JOptionPane.INFORMATION_MESSAGE);
return false;
}//Endif
//传房间号到开单窗口
Individual.lbA.setText(LeftTopPanel.title1.getText());
//传房间类型到开单窗口
Individual.lbB.setText(LeftTopPanel.title0.getText().substring(0,
LeftTopPanel.title0.getText().length()-2));
//传房间单价到开单窗口
Individual.lbC.setText(LeftTopPanel.lt[1].getText());
//房间类型编号
String clRoom = rs.getString(2);
//获得此类型房间是否可以开设钟点房
rs = sunsql.executeQuery("select cl_room from roomtype where " +
"delmark=0 and id='" + clRoom + "'");
rs.next();
if(rs.getString(1).equals("N")) { //不能开设,则开单窗口的钟点选项不可用
Individual.chk1.setSelected(false); //取消选中状态
Individual.chk1.setEnabled(false); //设置不可用
}else {
Individual.chk1.setEnabled(true); //可用
}//Endif
//传宾客类型数据给开单窗口
rs = sunsql.executeQuery("select distinct c_type from customertype where " +
"delmark = 0 and pk!=0");
int ct = sunsql.recCount(rs);
String cType[] = new String[ct];
for (int i = 0; i < ct; i++) {
rs.next();
cType[i] = rs.getString(1);
}//Endfor
Individual.cb2.removeAllItems();
for (int i = 0; i < ct; i++) {
Individual.cb2.addItem(cType[i]);
}//Endfor
Individual.cb2.setSelectedItem("普通宾客");
//初始化开单房间表---------临时表
sunsql.executeUpdate("delete from roomnum"); //清空临时表
sunsql.executeUpdate("insert into roomnum(roomid) values('" +
LeftTopPanel.title1.getText() + "')"); //加入当前房间信息
//初始化开单窗口的开单房间表
sunsql.initDTM(Individual.dtm2,"select roomid 房间编号 from roomnum");
//初始化追加房间表---------当前类型的除当前房间的所有可供房间
sunsql.executeUpdate("update roominfo set indimark=0"); //刷新所有房间的开单状态
sunsql.executeUpdate("update roominfo set indimark=1 where id='" +
LeftTopPanel.title1.getText() + "'"); //设置当前房间为开单状态
//初始化开单窗口的可供房间表
sunsql.initDTM(Individual.dtm1,"select a.id 房间编号1 from roominfo " +
"a,(select id from roomtype where r_type='" + Individual.lbB.getText() +
"') b where a.delmark=0 and a.indimark=0 and a.state='可供' and a.r_type_id=b.id");
}//Endif
}
catch (Exception ex) {
System.out.println ("HotelFrame.initIDV(): false");
}//End try
return true;
}
//传数据给团体开单窗口
private boolean initTeam() {
try {
//初始化开单房间表---------临时表
sunsql.executeUpdate("delete from roomnums"); //清空临时表
//初始化开单窗口的开单房间表
Team.initDTM2();
//初始化追加房间表---------当前类型的除当前房间的所有可供房间
sunsql.executeUpdate("update roominfo set indimark=0"); //刷新所有房间的开单状态
//传房间类型数据给团体开单窗口
ResultSet rs = sunsql.executeQuery("select r_type from roomtype where delmark=0");
int ct = sunsql.recCount(rs);
String type[] = new String[ct];
//传宾客房型数据给团体开单窗口
for (int i = 0; i < ct; i++) {
rs.next();
type[i] = rs.getString(1);
}//Endfor
Team.cb.removeAllItems();
for (int i = 0; i < ct; i++) {
Team.cb.addItem(type[i]);
}//Endfor
//传宾客类型数据给团体开单窗口
rs = sunsql.executeQuery("select distinct c_type from customertype where " +
"delmark = 0 and pk!=0");
ct = sunsql.recCount(rs);
for (int i = 0; i < ct; i++) {
rs.next();
type[i] = rs.getString(1);
}//Endfor
Team.cb2.removeAllItems();
for (int i = 0; i < ct; i++) {
Team.cb2.addItem(type[i]);
}//Endfor
Team.cb2.setSelectedItem("普通宾客");
}
catch (Exception ex) {
System.out.println ("HotelFrame.initTeam(): false");
}//Endtry
return true;
}
//传数据给结算窗口
private boolean initCKO() {
try {
ResultSet rs = sunsql.executeQuery("select state,r_type_id from roominfo " +
"where delmark=0 and id='" + LeftTopPanel.title1.getText() + "'");
if(!rs.next()) { //如果无结果集,提示用户刷新房间数据
if(LeftTopPanel.title1.getText().length() == 0) {
JOptionPane.showMessageDialog(null,"请选定宾客入住的房间后,再为宾客结算费用",
"提示", JOptionPane.INFORMATION_MESSAGE);
}else {
JOptionPane.showMessageDialog(null, "[ " + LeftTopPanel.title1.getText() +
" ] 房间信息已更改,请刷新房间信息,再为宾客开设房间", "提示", JOptionPane.INFORMATION_MESSAGE);
}//Endif
return false;
}else {
//只有状态是占用或钟点房间,才能为宾客结算
if(!rs.getString(1).equals("占用") && !rs.getString(1).equals("钟点")) {
JOptionPane.showMessageDialog(null, "请选择宾客正在消费的房间进行结算费用操作",
"提示", JOptionPane.INFORMATION_MESSAGE);
return false;
}//Endif
//传结算单号给结算窗口
co.lbA.setText(suntools.getNumber(suntools.Number_JS));
//传结算房间给结算窗口
co.lbB.setText(jp1.title1.getText());
//传结算宾客名称给结算窗口
co.lbC.setText(jp1.lt[0].getText());
//传押金给结算窗口
co.lbF.setText(jp1.lt[6].getText());
//清空结算中间表
sunsql.executeUpdate("delete from checkout_temp");
//获得主房间号
rs = sunsql.executeQuery("select main_room,in_no from livein where " +
"delmark=0 and r_no='" + co.lbB.getText() + "' and statemark='正在消费'");
if(!rs.next()) {
JOptionPane.showMessageDialog(null, "操作失败,请检查网络情况",
"提示", JOptionPane.INFORMATION_MESSAGE);
return false;
}//Endif
String mainRoom = rs.getString(1); //取出主房间号
co.inNo = rs.getString(2); //传入住单号为结算窗口
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -