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

📄 hotel.java

📁 本系统适合中小规模宾馆使用
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        else
           jTextArea1.append( "\n没找到记录\n" );

          if(morerows)
         {
           rs.beforeFirst();
              message(" 您要删除的人的姓名不止一个,请在信息栏中查看,并填入他的房号,谢谢!");
              String p="gname"+"\t\t"+"room"+"\n";
              while(rs.next())
              {
                String temp=rs.getString(6);
                Countdays count =new Countdays(temp,c);
                String money=" "+price_eachday*count.getdays();
                p=p+rs.getString( 1 )+"\t\t"+ rs.getString( 5 )+"\n";

              }
              jTextArea1.setText(p);

              //boolean judgeinput=false;
              String roomnumstring=rs.getString( 5 );
              int roomnum=Integer.parseInt(roomnumstring);
              String command="";

              //while(judge_roomnum(roomnum))
              // roomnum=JOptionPane.showInputDialog(" 您要删除的人的姓名不止一个,请在信息栏中查看,并在当前行填入他的具体房号,谢谢!");

               while(!judge_roomnum(roomnum))
              {
        		 jTextField5.setText("");
       			 jTextArea1.setText("");
              }
              command= "DELETE FROM hotel WHERE gname LIKE" + "'" + jTextField2.getText() + "'"+"AND room LIKE"+"'"+roomnum + "'";
             delete(command);

         }
     }
     catch ( SQLException sqlex ) {
        sqlex.printStackTrace();
        jTextArea1.append( sqlex.toString() );
     }
  }

  	
  void delete(String m)  {
    try {
               Statement statement = connect.createStatement();

               //if ( !jTextField2.getText().equals( "" ) ) {
                 String query=m;
                // if(morethanone==false)
                 /*if(morethanone==true)
                 {
                   boolean notblank=false;
                   if(!jTextField6.getText().equals(" "))
                     notblank=true;
                   if(notblank)
                     query = "DELETE FROM hotel WHERE gname LIKE" + "'" + jTextField2.getText() + "'"+"AND room LIKE"+"'"+jTextField6.getText() + "'";

                 }*/

                  jTextArea1.append("\n发送的命令:"+connect.nativeSQL(query)+"\n");

                  //可以返回int吗???????????
                  int result = statement.executeUpdate( query );

                  if ( result == 1 )
                     jTextArea1.append( "\n删除成功\n" );
                  else {
                    jTextArea1.append( "\n删除失败,请查看输入的房号是否正确。\n" );
                     jTextField2.setText( "" );
                     jComboBox1.setSelectedIndex(-1);
                     jTextField4.setText( "" );
                     jTextField5.setText( "" );
                     jTextField6.setText( "" );

                  }
              // }
             //  else
                //  jTextArea1.append( "\n请您输入名子" );

               statement.close();
            }
            catch ( SQLException sqlex ) {
               sqlex.printStackTrace();
               jTextArea1.append( sqlex.toString() );
            }

  }


  //房客查询 Butten 3
  void jButton3_actionPerformed(ActionEvent e) {
    try {
    	 //根据姓名查询
         if ( !jTextField2.getText().equals( "" ) ) {
           Statement statement =connect.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE,
                                      ResultSet.CONCUR_UPDATABLE);
           String query="SELECT * FROM hotel " +
                           "WHERE gname = '" +
                           jTextField2.getText() + "'";

           jTextArea1.append( "\n发送的命令: " +
                           connect.nativeSQL( query )
                           + "\n" );
            ResultSet rs = statement.executeQuery( query );
            display( rs );
            jTextArea1.append( "\n查询成功\n" );
            statement.close();
         }
         else
            jTextArea1.setText(
               "请输入要查找的房客姓名" );
      }
      catch ( SQLException sqlex ) {
         sqlex.printStackTrace();
         jTextArea1.append( sqlex.toString() );
      }

  }

   void display( ResultSet rs )
   {
      try {
            Calendar cal=Calendar.getInstance( );
            String c=cal.get(Calendar.YEAR)+"-"+(cal.get(Calendar.MONTH)+1)+"-"+cal.get(Calendar.DATE);
            boolean morerows=false;//是否不只一名该姓名房客


         if (rs.next() ) {

            jTextField2.setText( rs.getString(1) );
            jComboBox1.setSelectedItem( rs.getString( 2 ) );
            jTextField4.setText( rs.getString( 3 ) );
            jTextField5.setText( rs.getString( 4 ) );
            jTextField6.setText( rs.getString( 5 ) );
            String temp=rs.getString(6);
            
            Countdays count =new Countdays(temp,c);//调用Countdays类
            
            jTextField1.setText(" "+price_eachday*count.getdays());
            if(rs.next()) morerows=true;
         }
         else
            jTextArea1.append( "\n没找到记录\n" );

           if(morerows)
          {    rs.beforeFirst();
               message(" 您要查找的人的姓名不止一个,请在信息栏中查看,谢谢!");
               String p="gname"+"\t\t"+"sex"+"\t\t"+"age"+"\t\t"+"idnumber"+"\t\t\t\t"+"room"
                        +"\t\t"+"money"+"\n";
               while(rs.next())
               {
                 String temp=rs.getString(6);
                 Countdays count =new Countdays(temp,c);
                 String money=" "+price_eachday*count.getdays();
                 p=p+rs.getString( 1 )+"\t\t"+ rs.getString( 2 )+"\t\t"+rs.getString( 3 )
                   +"\t\t"+ rs.getString( 4 )+"\t\t\t"+rs.getString( 5 )+"\t\t"+money+"\n";

               }
               
               jTextArea1.setText(p);

          }
      }
 
      catch ( SQLException sqlex ) {
         sqlex.printStackTrace();
         jTextArea1.append( sqlex.toString() );
      }
   }


  //空房查询 Button 4
  void jButton4_actionPerformed(ActionEvent e) {
    try {

      Statement statement =connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                      ResultSet.CONCUR_UPDATABLE);
            //先查询
            String query = "SELECT * FROM hotel ";
            jTextArea1.append( "\n发送的命令: " +
                           connect.nativeSQL( query )
                           + "\n" );
            ResultSet rs = statement.executeQuery( query );
            findemptyroom( rs );
            jTextArea1.append( "\n查询成功\n" );
            statement.close();

      }
      catch ( SQLException sqlex ) {
         sqlex.printStackTrace();
         jTextArea1.append( sqlex.toString() );
      }


  }

  void findemptyroom(ResultSet r)
  {
    int m=0;
    String emptyroom=" ";

    try {

         if(r.next())
         {

            //r.beforeFirst();
            for(int j=1;j<=100;j++)
            {
              r.first();
              int full=0;

              do
             {
               if(r.getString( 5 ).equals(Integer.toString(j)))
               {
                 full=1;
                 break;
               }
            } while(r.next());

             if(full==1) continue;
             else
             {
               emptyroom = emptyroom + " " + j;
               if(++m%5==0) emptyroom=emptyroom+"\n";
             }

            }//for 结束
         }//if 结束
         
         //若r.next()=0
         else
         {

           jTextArea1.setText("1~100号房间全是空的,您随便选吧!");
         }

       jTextArea1.setText(emptyroom);
       }
       catch ( SQLException sqlex ) {
          sqlex.printStackTrace();
          jTextArea1.append( sqlex.toString() );
       }


  }

  //清空 Button 5
  void jButton5_actionPerformed(ActionEvent e) {
        jTextField2.setText("");
        jComboBox1.setSelectedIndex(-1) ;
        jTextField4.setText("");
        jTextField5.setText("");
        jTextField6.setText("");
        jTextField1.setText("");
        jTextArea1.setText("");
  }




  //菜单项 1 
  void jMenuItem1_actionPerformed(ActionEvent e) {
    JTextArea t=new JTextArea(10,15);
    t.setLineWrap(true);
    t.setEditable(false);
    JScrollPane p=new JScrollPane(t);
    t.setText("这是我的数据库课程设计,采用Java + SQL Server 2000 平台,请多多批评指教");
    JOptionPane.showMessageDialog(null,p,"谢谢使用,请多提意见!",JOptionPane.INFORMATION_MESSAGE);

  }

  //菜单项 2
  void jMenuItem2_actionPerformed(ActionEvent e) {
    JTextArea t=new JTextArea(10,15);
   t.setLineWrap(true);
   t.setEditable(false);
   JScrollPane p=new JScrollPane(t);
   t.setText("本程序为酒店客房管理系统,表字段名为 gname,sex,age,idnumber,room ,in_date,且都是String型");
   JOptionPane.showMessageDialog(null,p,"谢谢使用,请多提意见!",JOptionPane.INFORMATION_MESSAGE);
  }

  //菜单项3
  void jMenuItem3_actionPerformed(ActionEvent e) {
  setVisible(false);  	
  Duty d=new Duty();
  d.setVisible(true);
  }
  
//以下是5个辅助函数----------------------------------------------------------  
  
  /**该方法是年龄范围的合法性检验*/
 boolean judge_age()
 {
 	String input=jTextField4.getText();
    int age;
    try{
      age = Integer.parseInt(input);
    }catch(Exception e){
      return false;
    }
    //数字范围在18至80的返回值是true
    if((age >= 12) && (age <=80))
      return true;
    else
      return false;
  }

  
  //检查姓名合法性
  boolean namelegal()
  {
    if(!jTextField2.getText().equals("")&&jTextField2.getText().length()<=50)
      return true;
    else
    {
      message("必须输入姓名,且长度不能超过50");
      return false;
    }
  }

  boolean judge_roomnum(int n){
 	if(n>=1&&n<=100) return true;
 	else return false;
 	}
 			  	


  boolean judge_sex()
  {
    if(!jComboBox1.getSelectedItem().equals(""))
      return true;
    else
    {
      message("请选择性别");
      return  false;
    }
  }

 void message(String t)
  {
    JOptionPane.showMessageDialog(null,t);
  }

}//Hotel类结束


//下面是actionAdapter部分--------------------------------------------
class Hotel_jButton1_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jButton1_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton1_actionPerformed(e);
  }

}

class Hotel_jButton2_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jButton2_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton2_actionPerformed(e);
  }
}

class Hotel_jButton3_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jButton3_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton3_actionPerformed(e);
  }
}

class Hotel_jButton4_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jButton4_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton4_actionPerformed(e);
  }
}

class Hotel_jButton5_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jButton5_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jButton5_actionPerformed(e);
  }
}


class Hotel_jMenuItem1_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jMenuItem1_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuItem1_actionPerformed(e);
  }
}


class Hotel_jMenuItem2_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jMenuItem2_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuItem2_actionPerformed(e);
  }
}

class Hotel_jMenuItem3_actionAdapter implements java.awt.event.ActionListener {
  Hotel adaptee;

  Hotel_jMenuItem3_actionAdapter(Hotel adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuItem3_actionPerformed(e);
  }
}


⌨️ 快捷键说明

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