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

📄 purchase.java

📁 一个简单的JSP的网络书店系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			return false;
		}
		String Userid = (String) session.getAttribute("userid");   //取得用户ID号
		long userid=0;
		if (Userid==null || Userid.equals(""))
		{
			isLogin = false;
			return false;
		}else {
			try
			{
				userid = Long.parseLong(Userid);
			}
			catch (NumberFormatException e)
			{
				return false;
			}
		}

		purchaselist = (Vector)session.getAttribute("shopcar");
		if (purchaselist==null || purchaselist.size()<0)
		{
			return false;
		}
		String Content = request.getParameter("content");
		if (Content==null)
		{
			Content="";
		}
		Content = getGbk(Content);
		String IP = request.getRemoteAddr();
		String TotalPrice = request.getParameter("totalprice");

		sqlStr = "select max(id) from My_indent";
		rs = stmt.executeQuery(sqlStr);
		if (rs.next())
		{
			IndentNo = "HYD" + userid + "" + rs.getString(1);//生成定单编号
		} else {
			IndentNo =  "HYD" + userid + "0";//生成定单编号
		}
		rs.close();

    int y,m,d,h,mi,s;
		String SubmitTime;
    Calendar cal=Calendar.getInstance(); 
    y=cal.get(Calendar.YEAR); 
    m=cal.get(Calendar.MONTH); 
    d=cal.get(Calendar.DATE); 
    h=cal.get(Calendar.HOUR_OF_DAY); 
    mi=cal.get(Calendar.MINUTE); 
    s=cal.get(Calendar.SECOND); 
    SubmitTime = y+"年"+m+"月"+d+"日"+h+"时"+mi+"分"+s+"秒";
		sqlStr = "insert into My_indent (IndentNo,UserId,SubmitTime,ConsignmentTime,TotalPrice,content,IPAddress,IsPayoff,IsSales) values ('";
		sqlStr = sqlStr + IndentNo + "',";
		sqlStr = sqlStr + userid + ",'";
		sqlStr = sqlStr + SubmitTime + "','七天后',";
		sqlStr = sqlStr + TotalPrice + ",'";
		sqlStr = sqlStr + strFormat.toSql(Content) + "','";
		sqlStr = sqlStr + IP + "',1,1)";
		try
		{
			stmt.execute(sqlStr);
			sqlStr= "select max(id) from My_indent where UserId = " + userid;
			rs = stmt.executeQuery(sqlStr);
			long indentid = 0;
			while (rs.next())
			{
				indentid = rs.getLong(1);
			}
			rs.close();
			for (int i=0; i<purchaselist.size() ;i++ )
			{
				indentlist iList = (indentlist) purchaselist.elementAt(i);
				sqlStr = "insert into My_indentlist (IndentNo,BookNo,Amount) values (";
				sqlStr = sqlStr + indentid + ",'";
				sqlStr = sqlStr + iList.getBookNo() + "','";
				sqlStr = sqlStr + iList.getAmount() + "')";
				stmt.execute(sqlStr);
				sqlStr = "update My_book set leav_number=leav_number - " + iList.getAmount() + " where id = " + iList.getBookNo();
				stmt.execute(sqlStr);
			}
			return true;
		}
		catch (SQLException e)
		{
			errorMessage = errorMessage + sqlStr + e.getMessage();
			return false;
		}
				
	}

  //得到用户id为userid的所有提交的定单信息并保存到my_indent向量数组中
	public boolean getIndent(long userid) {
		sqlStr = "select * from My_indent where userid = " +userid+ " order by id desc";
		try
		{
			rs = stmt.executeQuery(sqlStr);
			my_indent = new Vector();
			while (rs.next())
			{
				indent ind = new indent();
				ind.setId(rs.getLong("id"));
				ind.setIndentNo(rs.getString("indentNo"));
				ind.setUserId(rs.getLong("userid"));
				ind.setSubmitTime(rs.getString("submitTime"));
				ind.setConsignmentTime(rs.getString("ConsignmentTime"));
				ind.setTotalPrice(rs.getFloat("TotalPrice"));
				ind.setContent(rs.getString("content"));
				ind.setIPAddress(rs.getString("IpAddress"));
				if (rs.getInt("IsPayoff")==1)
					ind.setIsPayoff(false);
				else 
					ind.setIsPayoff(true);
				if (rs.getInt("IsSales")==1)
					ind.setIsSales(false);
				else
					ind.setIsSales(true);
				my_indent.addElement(ind);
			}
			rs.close();
			return true;			
		}
		catch (SQLException e)
		{
			errorMessage = errorMessage + e.getMessage();
			return false;
		}		
	}

  //在用户定单表中得到id号为iid的定单信息并保存到my_indent向量数组中
	public boolean getOneIndent(long iid) {
		sqlStr = "select * from My_indent where id = " +iid+ " order by id desc";
		try
		{
			rs = stmt.executeQuery(sqlStr);
			my_indent = new Vector();
			while (rs.next())
			{
				indent ind = new indent();
				ind.setId(rs.getLong("id"));
				ind.setIndentNo(rs.getString("indentNo"));
				ind.setUserId(rs.getLong("userid"));
				ind.setSubmitTime(rs.getString("submitTime"));
				ind.setConsignmentTime(rs.getString("ConsignmentTime"));
				ind.setTotalPrice(rs.getFloat("TotalPrice"));
				ind.setContent(rs.getString("content"));
				ind.setIPAddress(rs.getString("IpAddress"));
				if (rs.getInt("IsPayoff")==1)
					ind.setIsPayoff(false);
				else 
					ind.setIsPayoff(true);
				if (rs.getInt("IsSales")==1)
					ind.setIsSales(false);
				else
					ind.setIsSales(true);
				my_indent.addElement(ind);
			}
			rs.close();
			return true;			
		}
		catch (SQLException e)
		{
			return false;
		}		
	}

  //当定单比较多时,得到某页的所有定单信息并保存到my_indent向量数组中
	public boolean getIndent() {
		sqlStr = "select count(*) from My_indent";    //取出记录数
		int rscount = pageSize;
		try
		{
			ResultSet rs1 = stmt.executeQuery(sqlStr);
			if (rs1.next()) recordCount = rs1.getInt(1);				
			rs1.close();
		}
		catch (SQLException e)
		{
			return false;
		}
		//设定有多少pageCount
		if (recordCount < 1)
            pageCount = 0;
        else
            pageCount = (int)(recordCount - 1) / pageSize + 1;
		//检查查看的页面数是否在范围内
		if (page < 1)  
            page = 1;
        else if (page > pageCount)
            page = pageCount;
		
		rscount = (int) recordCount % pageSize;	 // 最后一页记录数        

		//sql为倒序取值
		sqlStr = "select TOP " + pageSize + " * from My_indent ";
		if (page == 1)
		{
			sqlStr = sqlStr + " order by Id desc";
		}else {
			sqlStr = sqlStr + " where Id not in ( select TOP " + (recordCount-pageSize * page ) + " Id from My_indent order by Id ) and Id in " +
			"(select TOP " + (recordCount - pageSize * (page-1)) + " Id from My_indent order by Id ) " + " order by Id desc";
		}

		try
		{
			rs = stmt.executeQuery(sqlStr);
			my_indent = new Vector();
			while (rs.next())
			{
				indent ind = new indent();
				ind.setId(rs.getLong("id"));
				ind.setIndentNo(rs.getString("indentNo"));
				ind.setUserId(rs.getLong("userid"));
				ind.setSubmitTime(rs.getString("submitTime"));
				ind.setConsignmentTime(rs.getString("ConsignmentTime"));
				ind.setTotalPrice(rs.getFloat("TotalPrice"));
				ind.setContent(rs.getString("content"));
				ind.setIPAddress(rs.getString("IpAddress"));
				if (rs.getInt("IsPayoff")==1)
					ind.setIsPayoff(false);
				else 
					ind.setIsPayoff(true);
				if (rs.getInt("IsSales")==1)
					ind.setIsSales(false);
				else
					ind.setIsSales(true);
				my_indent.addElement(ind);
			}
			rs.close();
			return true;			
		}
		catch (SQLException e)
		{
			System.out.println(e);
			return false;
		}		
	}
	
	//根据定单编号nid查询该图书编号和购买数量并添加到indent_list向量数组中
	public boolean getIndentList(long nid) {
		sqlStr = "select * from my_indentlist where IndentNo = " + nid;
		try
		{	
			rs = stmt.executeQuery(sqlStr);
			indent_list = new Vector();
			while (rs.next())
			{				
				indentlist identlist = new indentlist();
				identlist.setId(rs.getLong("id"));
				identlist.setIndentNo(rs.getLong("IndentNo"));
				identlist.setBookNo(rs.getLong("BookNo"));
				identlist.setAmount(rs.getInt("Amount"));
				indent_list.addElement(identlist);
			}
			rs.close();
			return true;
		}
		catch (SQLException e)
		{
			return false;
		}		
	}

  //更新某个定单的状态信息
	public boolean update(HttpServletRequest res) {
		request = res;
		int payoff = 1;
		int sales = 1;
		long indentid =0;
		try
		{
			payoff = Integer.parseInt(request.getParameter("payoff"));
			sales = Integer.parseInt(request.getParameter("sales"));
			indentid = Long.parseLong(request.getParameter("indentid"));
			sqlStr = "update My_indent set IsPayoff = '" + payoff + "',IsSales='"+ sales +"' where id =" + indentid;
			stmt.execute(sqlStr);
			return true;
		}
		catch (Exception e)
		{
			return false;
		}		
	}

  //删除某个定单信息
	public boolean delete(long id) {
		try
		{
			sqlStr = "delete from My_indentlist where indentNo =" + id;
			stmt.execute(sqlStr);
			sqlStr = "delete from My_indent where id= " + id ;
			stmt.execute(sqlStr);
			return true;
		}
		catch (SQLException e)
		{
			return false;
		}
	}

};

⌨️ 快捷键说明

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