📄 hotelmanageframe.java~23~
字号:
roomTextField.getText() + "', '" +
c + "')";
operInfoTextArea.append("\n发送的命令:" + connect.nativeSQL(query) + "\n");
int result = statement.executeUpdate(query);
if (result == 1) {
operInfoTextArea.append("\n插入成功\n");
queryDataSet.refresh();
}
else {
operInfoTextArea.append("\n插入失败\n");
nameTextField.setText("");
sexComboBox.setSelectedIndex( -1);
ageTextField.setText("");
idTextField.setText("");
roomTextField.setText("");
}
}
statement.close();
}
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void roomwithpeople(String roomnum) {
try {
Statement statement = connect.createStatement();
String query = "SELECT * FROM hotel WHERE room = '" + roomnum + "'";
operInfoTextArea.append("\n发送的命令: " +
connect.nativeSQL(query)
+ "\n");
ResultSet rs = statement.executeQuery(query);
judge(rs);
statement.close();
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void judge(ResultSet r) {
try {
//r.next();
//int recordNumber = r.getInt( 1 );
if (r.next()) {
roomordered = true;
}
else
roomordered = false;
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void guestQueryButton_actionPerformed(ActionEvent e) {
try {
if (!nameTextField.getText().equals("")) {
Statement statement = connect.createStatement(ResultSet.
TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String query = "SELECT ALL * FROM hotel " +
"WHERE name = '" +
nameTextField.getText() + "'";
operInfoTextArea.append("\n发送的命令: " +
connect.nativeSQL(query)
+ "\n");
ResultSet rs = statement.executeQuery(query);
display(rs);
operInfoTextArea.append("\n查询成功\n");
statement.close();
}
else
operInfoTextArea.setText(
"请输入要查找的旅客姓名");
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void display(ResultSet rs) {
try {
Calendar cal = Calendar.getInstance();
String current = cal.get(Calendar.YEAR) + "-" +
(cal.get(Calendar.MONTH) + 1) +
"-" + cal.get(Calendar.DATE);
boolean morerows = false;
if (rs.next()) {
nameTextField.setText(rs.getString(1));
sexComboBox.setSelectedItem(rs.getString(2));
ageTextField.setText(rs.getString(3));
idTextField.setText(rs.getString(4));
String roomNum = rs.getString(5);
roomTextField.setText(roomNum);
String indate = rs.getString(6);
indate = indate.trim();
Countdays count = new Countdays(indate, current);
int roomType = getRoomType(roomNum);
if (roomType == 0) priceEachday = PRICE_EACH_DAY_SINGLE_ROOM;
else if (roomType == 1) priceEachday = PRICE_EACH_DAY_DOUBLE_ROOM;
moneyTextField.setText(" " + priceEachday * count.getdays());
if (rs.next()) morerows = true;
}
else
operInfoTextArea.append("\n没找到记录\n");
if (morerows) {
rs.beforeFirst();
message(" 您要查找的人的姓名不止一个,请在操作信息栏中查看,谢谢!");
String p = "name" + "\t" + "sex" + "\t" + "age" + "\t" +
"idnumber" + "\t\t\t" + "room"
+ "\t" + "money" + "\n";
while (rs.next()) {
String name = rs.getString(1);
String sex = rs.getString(2);
String age = rs.getString(3);
String idnumber = rs.getString(4);
String roomNum = rs.getString(5);
String indate = rs.getString(6);
indate = indate.trim();
Countdays count = new Countdays(indate, current);
int roomType = getRoomType(roomNum);
if (roomType == 0) priceEachday = PRICE_EACH_DAY_SINGLE_ROOM;
else if (roomType == 1) priceEachday = PRICE_EACH_DAY_DOUBLE_ROOM;
String money = " " + priceEachday * count.getdays();
p = p + name + "\t" + sex + "\t" + age
+ "\t" + idnumber + "\t\t" + roomNum + "\t" +
money + "\n";
}
operInfoTextArea.setText(p);
}
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
private int getRoomType(String roomNum) {
int num = Integer.parseInt(roomNum);
if (num >= 201 && num <= 206)return 0; //单人房
else if (num >= 301 && num <= 306)return 0; //单人房
else if (num >= 401 && num <= 404)return 1; //双人房
else if (num >= 501 && num <= 504)return 1; //双人房
return -1;
}
void clearButton_actionPerformed(ActionEvent e) {
nameTextField.setText("");
sexComboBox.setSelectedIndex( -1);
ageTextField.setText("");
idTextField.setText("");
roomTextField.setText("");
moneyTextField.setText("");
operInfoTextArea.setText("");
}
boolean morethanone = false;
JPanel guestListPanel = new JPanel();
JPanel managementPanel = new JPanel();
GridBagLayout gridBagLayout2 = new GridBagLayout();
BorderLayout borderLayout1 = new BorderLayout();
GridLayout gridLayout1 = new GridLayout();
TitledBorder titledBorder1;
TitledBorder titledBorder2;
GridBagLayout gridBagLayout1 = new GridBagLayout();
BorderLayout borderLayout2 = new BorderLayout();
TitledBorder titledBorder3;
TitledBorder titledBorder4;
TitledBorder titledBorder5;
Border border1;
TitledBorder titledBorder6;
TitledBorder titledBorder7;
GridBagLayout gridBagLayout3 = new GridBagLayout();
void deleteGuestButton_actionPerformed(ActionEvent e) {
try {
if (!nameTextField.getText().equals("")) {
Statement statement = connect.createStatement(ResultSet.
TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String query = "SELECT ALL * FROM hotel " +
"WHERE name = '" +
nameTextField.getText() + "'";
operInfoTextArea.append("\n发送的命令: " +
connect.nativeSQL(query)
+ "\n");
ResultSet rs = statement.executeQuery(query);
displaydetail(rs);
//jTextArea1.append( "\n查询成功\n" );
statement.close();
}
else
operInfoTextArea.setText(
"请输入要删除的旅客姓名");
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void displaydetail(ResultSet rs) {
try {
Calendar cal = Calendar.getInstance();
String current = cal.get(Calendar.YEAR) + "-" +
(cal.get(Calendar.MONTH) + 1) +
"-" + cal.get(Calendar.DATE);
boolean morerows = false;
if (rs.next()) {
nameTextField.setText(rs.getString(1));
sexComboBox.setSelectedItem(rs.getString(2));
ageTextField.setText(rs.getString(3));
idTextField.setText(rs.getString(4));
String roomNum = rs.getString(5);
roomTextField.setText(roomNum);
String indate = rs.getString(6);
indate = indate.trim();
Countdays count = new Countdays(indate, current);
int roomType = getRoomType(roomNum);
if (roomType == 0) priceEachday = PRICE_EACH_DAY_SINGLE_ROOM;
else if (roomType == 1) priceEachday = PRICE_EACH_DAY_DOUBLE_ROOM;
moneyTextField.setText(" " + priceEachday * count.getdays());
if (rs.next()) morerows = true;
if (!morerows) {
String command = "DELETE FROM hotel WHERE name LIKE" +
"'" + nameTextField.getText().trim() + "'";
delete(command);
}
}
else
operInfoTextArea.append("\n没找到记录\n");
if (morerows) {
rs.beforeFirst();
String p = "name" + "\t\t" + "room" + "\n";
while (rs.next()) {
String name = rs.getString(1);
String roomNum = rs.getString(5);
String indate = rs.getString(6).trim();
Countdays count = new Countdays(indate, current);
p = p + name + "\t\t" + roomNum + "\n";
}
operInfoTextArea.setText(p);
String roomnum = "";
String command = "";
roomnum = JOptionPane.showInputDialog(
" 有同名旅客,请在操作信息栏中查看,并在当前行填入要退房的旅客的具体房号,谢谢!");
while (!judgeRoomNum()) {
roomnum = JOptionPane.showInputDialog(
"您输入的房号不合法,房间号必须在201-206、301-306、401-404、501-504之间,请您重新输入,谢谢!");
}
command = "DELETE FROM hotel WHERE name LIKE" + "'" +
nameTextField.getText() + "'" + "AND room LIKE" + "'" + roomnum +
"'";
delete(command);
}
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
void delete(String command) {
int i = JOptionPane.showConfirmDialog(this,
"如果旅客尚未结帐,请单击否;如果旅客已经结帐,请单击是,系统将删除此旅客信息。", "请确认旅客是否已经结帐",
JOptionPane.YES_NO_OPTION);
if (i == JOptionPane.YES_OPTION) {
try {
Statement statement = connect.createStatement();
String query = command;
operInfoTextArea.append("\n发送的命令:" + connect.nativeSQL(query) + "\n");
int result = statement.executeUpdate(query);
if (result == 1){
operInfoTextArea.append("\n删除成功\n");
queryDataSet.refresh();
}
else {
operInfoTextArea.append("\n删除失败,请查看输入的房号是否正确。\n");
nameTextField.setText("");
sexComboBox.setSelectedIndex( -1);
ageTextField.setText("");
idTextField.setText("");
roomTextField.setText("");
}
statement.close();
}
catch (SQLException sqlex) {
sqlex.printStackTrace();
operInfoTextArea.append(sqlex.toString());
}
}
}
void aboutMenuItem_actionPerformed(ActionEvent e) {
JTextArea t = new JTextArea(2, 60);
t.setLineWrap(true);
t.setEditable(false);
JScrollPane p = new JScrollPane(t);
t.setText(
"本软件的最初版本由QQ为2410052的朋友编写。本书作者在旧版本的基础上对软件进行了改进。");
JOptionPane.showMessageDialog(null,"本软件的最初版本由QQ为2410052的朋友编写。本书作者在旧版本的基础上对软件进行了改进。", "谢谢使用,请多提意见!",
JOptionPane.INFORMATION_MESSAGE);
}
void emptyRoomSearchButton_actionPerformed(ActionEvent e) {
try {
Statement statement = connect.createStatement(ResultSet.
TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -