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

📄 reservationzone.java

📁 小型简单的旅馆预订系统. 客户:预定,更改,撤销,会员积分累积,查询预定,会员. 后台:会员更改,房间更改,预定更改,预定信息统计.
💻 JAVA
字号:
package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.sun.corba.se.pept.protocol.ServerRequestDispatcher;

/**
 * Servlet implementation class for Servlet: member
 *
 */
 public class reservationZone extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
   static final long serialVersionUID = 1L;
   String booktype,custype,query;
   private double price=0.0,discount=1.0; 
   
    /* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#HttpServlet()
	 */
	public reservationZone() {
		super();
	} 
	
	/* (non-Javadoc)
	 * @see javax.servlet.Servlet#destroy()
	 */
	public void destroy() {
		// TODO Auto-generated method stub
		super.destroy();
	}   	
	
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}  	
	
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("txt/html");
		PrintWriter out=response.getWriter();
		HttpSession session = request.getSession(true); //set session
		
		/*read data from request*/
		String std=request.getParameter("start_date");
		String end=request.getParameter("end_date");
		String nights=request.getParameter("nights");
		String type=request.getParameter("type");
		String price=request.getParameter("price");
		String nop=request.getParameter("nop");
		String fname=request.getParameter("fname");
		String lname=request.getParameter("lname");
		String dob=request.getParameter("dob");
		String contact=request.getParameter("contact");
		String disc=request.getParameter("disc");
		String room_id=request.getParameter("room_id");	
		String add=request.getParameter("add");
		
		getCurrentDate getcd=new getCurrentDate();
		String now=getcd.getDate();//output date
		
		userBean uber = (userBean)session.getAttribute("uber"); //get session bean
		if (uber == null) { uber = new userBean(); }//set a new bean object
		else ;
		roomBean rmb = (roomBean)session.getAttribute("rmb"); //get session bean
		if (rmb == null) { rmb = new roomBean(); }//set a new bean object
		else ;
		resBean resb = (resBean)session.getAttribute("resb"); //get session bean
		if (resb == null) { resb = new resBean(); }//set a new bean object
		else ;
		ServletContext context = getServletContext();
		insert in=new insert();
		/*check check in and check out date available*/
		
		
		/*check customer type & book type*/
		if (request.getParameter("booktype").equals("room") && request.getParameter("custype").equals("mem"))
		{
			double pr=0;
	        pr=Double.valueOf(price)*Double.valueOf(disc);
	        price=String.valueOf(pr);
	        String bookID="bk"+dateRandString();
			String hisID="his"+dateRandString();
	        resb.setResID(bookID);
	         resb.setStartDate(std);
	         resb.setEndDate(end);
	         resb.setFlprice(price);
	         resb.setFname(fname);
	         resb.setLname(lname);
	         resb.setDob(dob);
	         resb.setContact(contact);
	         resb.setRoomType(type);
	         resb.setUsername(uber.getUsername());
	         query="select times from Room where ID='"+room_id+"';";
	         String time=in.getQuery(query, "times");
	         int times=Integer.valueOf(time)+1;
	         time=String.valueOf(times);
			try
			{
				
		         query="insert into Booking (ID,room_id,dt,start_date,fin_Date,price,content) values('"+bookID+"','"+room_id+"','"+now+"','"+std+"','"+end+"','"+price+"','"+add+"');";
		         in.update(query);
		         query="insert into History (ID,user_id,type,dt,processor,related_id) values ('"+hisID+"','"+uber.getId()+"','booking','"+now+"','"+uber.getUsername()+"','"+bookID+"');";
		         in.update(query);
		         query="UPDATE Room SET status='booked',times='"+time+"' WHERE ID='"+room_id+"';";
		         in.update(query);
		         //set reservation bean
		         query="select * from user where ID="+uber.getId()+";";
		         String scores=in.getQuery(query, "score");
		         double score=Double.valueOf(scores);
		         score=score+pr*0.4;
		         scores=String.valueOf(score);
		         query="update User set score='"+scores+"' where ID="+uber.getId()+";";
		         in.update(query);
		         query="select * from User where ID="+uber.getId()+";";
		         
		         String sce=in.getQuery(query, "score");
		         uber.setScore(sce);
		         double sc=score;
		         if (sc>0 && sc<100)
                 {
                 	uber.setDiscount("1.0");
                 }
                 else if (sc>=100 && sc<300)
                 {
                 	uber.setDiscount("0.95");
                 }
                 else if (sc>=300 && sc<500)
                 {
                 	uber.setDiscount("0.90");
                 }
                 else if (sc>=500 && sc<1000)
                 {
                 	uber.setDiscount("0.85");
                 }
                 else if (sc>=1000 && sc<1500)
                 {
                 	uber.setDiscount("0.80");
                 }
                 else uber.setDiscount("0.78");
		         //set scores
		         
		         
		         
			}
			catch (Exception e) {
	            out.println("Other1: Error occur!"+e.getCause());
	            out.println("Details: "+e.getStackTrace());
	            rmb.setMessage("Booking Fail:"+e.getCause());
	            response.sendRedirect("reservationZone.jsp");
	        }
			rmb.setMessage("Booking Success!");
	        response.sendRedirect("newBill.jsp");
	        
		}
		else if(request.getParameter("booktype").equals("room") && request.getParameter("custype").equals("temp"))
		{
			 double pr=0;
	         pr=Double.valueOf(price)*Double.valueOf(disc);
	         price=String.valueOf(pr);
	         String bookID="bk"+dateRandString();
				String hisID="his"+dateRandString();
				String tempID="tem"+dateRandString();
				uber.setUsername("Temp");
				  uber.setId(tempID);
			         uber.setType("Customer");
			         uber.setFname(fname);
			         uber.setLname(lname);
			         uber.setDob(dob);
			         uber.setTel(contact);
			         //set user bean and reservation bean
				resb.setResID(bookID);
		         resb.setStartDate(std);
		         resb.setEndDate(end);
		         resb.setFlprice(price);
		         resb.setFname(fname);
		         resb.setLname(lname);
		         resb.setDob(dob);
		         resb.setContact(contact);
		         resb.setRoomType(type);
		         resb.setUsername(uber.getUsername());
		         query="select times from Room where ID='"+room_id+"';";
		         String time=in.getQuery(query, "times");
		         int times=Integer.valueOf(time)+1;
		         time=String.valueOf(times);
			try
			{
				
				
		         query="insert into Booking (ID,room_id,dt,start_date,fin_Date,price,content) values('"+bookID+"','"+room_id+"','"+now+"','"+std+"','"+end+"','"+price+"','none');";
		         in.update(query);
		         query="insert into History (ID,user_id,type,dt,processor,related_id) values ('"+hisID+"','"+tempID+"','booking','"+now+"','"+uber.getUsername()+"','"+bookID+"');";
		         in.update(query);
		         query="UPDATE Room SET status='booked',times='"+time+"' WHERE ID='"+room_id+"';";
		         in.update(query);
		         query="insert into Temp (ID,fname,lname,dob,contact) values ('"+tempID+"','"+fname+"','"+lname+"','"+dob+"','"+contact+"');";
		         in.update(query);
		       
		         
			}
			catch (Exception e) {
	            out.println("Other2: Error occur!"+e.getCause());
	            out.println("Details: "+e.getStackTrace());
	            rmb.setMessage("Booking Fail:"+e.getCause());
	            response.sendRedirect("reservationZone.jsp");
	        }
	         rmb.setMessage("Reservation Making Success! Please Save thses information for Tracking.");
	         response.sendRedirect("newBill.jsp");
	        
		}
		else 
		{
			RequestDispatcher rd = context.getRequestDispatcher("/errorCenter"); 
			rd.forward(request,response);
		}//check book type
		
		/**/
		
		
	}   	  	  
	
	/* (non-Javadoc)
	 * @see javax.servlet.GenericServlet#init()
	 */
	public void init() throws ServletException {
		// TODO Auto-generated method stub
		super.init();
	}   
	String dateRandString()
	{
		getCurrentDate getcd=new getCurrentDate();
		String now=getcd.getDate();
		Die die=new Die();
		String dienum=die.getRandomString();
		String dateran=now.concat(dienum);
		return dateran;
	}
	public String hash(String i)
	{
		String hashed="";
		String key1="", key2="", key3="", key4="", key5="";
		
		
		//definition
		
		//token 1
		return hashed;
	}
}

⌨️ 快捷键说明

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