📄 hotelmanagerframe.java
字号:
if(kind.trim().equals("所有房间")){
//获取所有的房间信息
//将房间信息表放到那个Table中
for(int i=0;i<allRoomList.size();i++)
{
GuestRoom room=(GuestRoom)allRoomList.get(i);
/////////////////////////////////////////
roomListInTable.addElement(room);
/////////////////////////////////////////
int roomState=room.guestRoomState;
String roomStateStr="";
if(roomState==0){
roomStateStr="空房";
}else if(roomState==1){
roomStateStr="入住";
}else if(roomState==2){
roomStateStr="预订";
}else if(roomState==3){
roomStateStr="维修";
}
roomModel.addRow(new Object[]{ room.guestRoomId.toString().trim(),
room.guestRoomClass.toString().trim(),
Integer.toString(room.guestRoomFee),
roomStateStr,
room.guestRoomPhone
});
}
return;
}
//设置单个种类的房间
//获取所有的房间信息
//update the roomlist when select any radiobutton
//allRoomList = hotelManager.getAllRoomList();
//将房间信息表放到那个Table中
for(int i=0;i<allRoomList.size();i++)
{
GuestRoom room=(GuestRoom)allRoomList.get(i);
if(room.guestRoomClass.trim().equals(kind)){
/////////////////////////////////////////
roomListInTable.addElement(room);
/////////////////////////////////////////
int roomState=room.guestRoomState;
String roomStateStr="";
if(roomState==0){
roomStateStr="空房";
}else if(roomState==1){
roomStateStr="入住";
}else if(roomState==2){
roomStateStr="预订";
}else if(roomState==3){
roomStateStr="维修";
}
roomModel.addRow(new Object[]{ room.guestRoomId.toString().trim(),
room.guestRoomClass.toString().trim(),
Integer.toString(room.guestRoomFee),
roomStateStr,
room.guestRoomPhone
});
}
}
}
}
class CenterPanel extends JPanel
{
//JLabel hintRoomTotalInfoLabel = new JLabel("显示这种查看房间情况下房间总体情况");
int rows = 9;
int cols = 2;
JPanel personalInfoPanel = new JPanel(new GridLayout(rows, cols));
JLabel hintCheckInId = new JLabel(" 登记号 : "); //登记号
JLabel hintCertificateKind = new JLabel("证件类型 : ");
JLabel hintCertificateId = new JLabel("证件号码 : ");
JLabel hintGuestName = new JLabel(" 姓名 : ");
JLabel hintSexKind = new JLabel(" 性别 : ");
JLabel hintArriveDate = new JLabel("到达日期 : ");
JLabel hintPreStayNum = new JLabel("预住天数 : ");
JLabel hintGuestNum = new JLabel(" 总人数 : ");
JLabel hintDeposit = new JLabel("已交押金 : ");
/////////////////////////////
JLabel CheckInIdText = new JLabel(""); //登记号
JLabel CertificateKindText = new JLabel("");
JLabel CertificateIdText = new JLabel("");
JLabel GuestNameText = new JLabel("");
JLabel SexKindText = new JLabel("");
JLabel ArriveDateText = new JLabel("");
JLabel PreStayNumText = new JLabel("");
JLabel GuestNumText = new JLabel("");
JLabel DepositText = new JLabel("");
//JLabel noteLabel = new JLabel();
public CenterPanel()
{
hintCheckInId.setHorizontalAlignment(JLabel.RIGHT);
hintCertificateKind.setHorizontalAlignment(JLabel.RIGHT);
hintCertificateId.setHorizontalAlignment(JLabel.RIGHT);
hintGuestName.setHorizontalAlignment(JLabel.RIGHT);
hintSexKind.setHorizontalAlignment(JLabel.RIGHT);
hintArriveDate.setHorizontalAlignment(JLabel.RIGHT);
hintPreStayNum.setHorizontalAlignment(JLabel.RIGHT);
hintGuestNum.setHorizontalAlignment(JLabel.RIGHT);
hintDeposit.setHorizontalAlignment(JLabel.RIGHT);
/////////////////////////////////////////////
personalInfoPanel.add(hintCheckInId);
personalInfoPanel.add(CheckInIdText);
personalInfoPanel.add(hintCertificateKind);
personalInfoPanel.add(CertificateKindText);
personalInfoPanel.add(hintCertificateId);
personalInfoPanel.add(CertificateIdText);
personalInfoPanel.add(hintGuestName);
personalInfoPanel.add(GuestNameText);
personalInfoPanel.add(hintSexKind);
personalInfoPanel.add(SexKindText);
personalInfoPanel.add(hintArriveDate);
personalInfoPanel.add(ArriveDateText);
personalInfoPanel.add(hintPreStayNum);
personalInfoPanel.add(PreStayNumText);
personalInfoPanel.add(hintGuestNum);
personalInfoPanel.add(GuestNumText);
personalInfoPanel.add(hintDeposit);
personalInfoPanel.add(DepositText);
/////////////////////////////////////////////
roomModel.addColumn("房号");
roomModel.addColumn("类别");
roomModel.addColumn("价格");
roomModel.addColumn("房间状态");
roomModel.addColumn("房间电话");
roomTable.setPreferredScrollableViewportSize(new Dimension(170, 150));
roomTable.setBackground(new Color(255, 255, 210));
roomTable.setRowHeight(20);
roomTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
/////////////////////////////////////////////
choosenRoomModel.addColumn("房号");
choosenRoomModel.addColumn("类别");
choosenRoomTable.setPreferredScrollableViewportSize(new Dimension(110, 150));
choosenRoomTable.setBackground(new Color(255, 255, 210));
choosenRoomTable.setRowHeight(20);
choosenRoomTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
//////////////////////////////////////////////////
setLayout(new BoxLayout(this,BoxLayout.X_AXIS));
JLabel hintRoomTabelLabel = new JLabel("房间状况");
JScrollPane roomTableScrollPane = new JScrollPane(roomTable);
Box roomTabelBox = new Box(BoxLayout.Y_AXIS);
//roomTabelBox.add(hintRoomTotalInfoLabel);
roomTabelBox.add(Box.createRigidArea(new Dimension(0,3)));
roomTabelBox.add(hintRoomTabelLabel);
roomTabelBox.add(roomTableScrollPane);
JLabel hintGuestInfoLabel = new JLabel("客人信息 ");
////////////////////////////////////////////////////
////////////////////////////////////////////////////
Box guestInfoBox = new Box(BoxLayout.Y_AXIS);
guestInfoBox.add(hintGuestInfoLabel);
guestInfoBox.add(personalInfoPanel);
guestInfoBox.add(new JScrollPane(choosenRoomTable));
JSplitPane splitPane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,roomTabelBox,guestInfoBox);
splitPane.setDividerLocation(400);
splitPane.setOneTouchExpandable(true);
splitPane.setDividerSize(10);
this.add(splitPane);
this.setBorder(new EtchedBorder(EtchedBorder.LOWERED,Color.LIGHT_GRAY,Color.blue));
//鼠标点击表事件处理
roomTable.addMouseListener(new java.awt.event.MouseAdapter(){
public void mousePressed(MouseEvent e) {
if(e.getSource()==roomTable)
{
if(e.getClickCount()==1) //鼠标单击
{
System.out.println("鼠标点击表事件处理");
showGuestCheckInInfo_TableClick(e);
}
}
}
});
/////////////////////////////
checkInInfoList = hotelManager.getCheckInInfoList();//获得所有登记客人的信息
}
void showGuestCheckInInfo_TableClick(MouseEvent e){
int index = roomTable.getSelectedRow();
System.out.println ("你选择了数组的位置为"+index);
//如果没有选中元素,则不作处理
if(index == -1)
return ;
GuestRoom selectedRoom=new GuestRoom();
selectedRoom=(GuestRoom)roomListInTable.get(index);
//清空房间表
while(choosenRoomModel.getRowCount()!=0){
choosenRoomModel.removeRow(0);
}
if(selectedRoom.guestRoomState!=1) {
CheckInIdText.setText(""); //清空没有人住的房间对应的客人信息
CertificateKindText.setText("");
CertificateIdText.setText("");
GuestNameText.setText("");
SexKindText.setText("");
ArriveDateText.setText("");//到达日期
PreStayNumText.setText(""); //预住天数
GuestNumText.setText("");//总人数
DepositText.setText("");//已交押金
return;
}
//比较选中的房间和客人登陆信息中的房间信息,找到对应的客人
//如果,房间状态不是登记了的,入住,就显示空白表示没有住人
// TODO:to update the info of the checkInfo, click the update button
//从速度上来说,用更新按钮获得信息更快
checkInInfoList = hotelManager.getCheckInInfoList();//获得所有登记客人的信息
//////////////////////////////////////////////////////////
for(int i=0;i<checkInInfoList.size();i++){
CheckInInfo cii=new CheckInInfo();
cii=(CheckInInfo)checkInInfoList.get(i);
Vector roomList=new Vector();
roomList=cii.getChoosenRoomList();
for(int j=0;j<roomList.size();j++){
GuestRoom room=new GuestRoom();
room = (GuestRoom)roomList.get(j);
if(room.guestRoomId.trim().equals(selectedRoom.guestRoomId.trim())){
//如果有客人登记了该房间,显示房间住客的信息,包括房间信息
CheckInIdText.setText(cii.getCheckInGuestId()+""); //登记号
String ciiCertKind="学生证";
if(cii.getCertificateKind()==0){
ciiCertKind="身份证";
}else if(cii.getCertificateKind()==1){
ciiCertKind="军官证";
}
CertificateKindText.setText(ciiCertKind.trim()); //证件类型
CertificateIdText.setText(cii.getCertificateId().trim());//证件号码
GuestNameText.setText(cii.getGuestName().trim());//姓名
String sex="女";
if(cii.getSex()==1)
sex="男";
SexKindText.setText(sex.trim());//性别
ArriveDateText.setText(cii.getArriveDate().trim());//到达日期
PreStayNumText.setText(cii.getStayDayNum()+""); //预住天数
GuestNumText.setText(cii.getGuestNum()+"");//总人数
DepositText.setText(cii.getDesposit()+"");//已交押金
///////////////////////
//更新该客人的房间信息
Vector guestRoomList = new Vector();
guestRoomList=cii.getChoosenRoomList();
//添加所选择的房间列表,并计算总价格
GuestRoom guestRoom=new GuestRoom();
for(int m=0;m<guestRoomList.size();m++){
guestRoom = (GuestRoom)guestRoomList.get(m);
choosenRoomModel.addRow(new Object[]{
guestRoom.guestRoomId.toString().trim(),
guestRoom.guestRoomClass
});
}
}
}
}
//checkInInfoList
//roomListInTable
}
}
////////////////////////////////////////////////////////////////////////////
class BottomPanel extends JPanel
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -