bid.jsp
上传用户:jhtang88
上传日期:2014-01-27
资源大小:28528k
文件大小:3k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html;charset=utf-8"%>
  2. <%@ page import="java.util.*"%>
  3. <%@ page import="cn.js.fan.util.*"%>
  4. <%@ page import="cn.js.fan.db.*"%>
  5. <%@ page import="cn.js.fan.web.*"%>
  6. <%@ page import="com.redmoon.forum.plugin.auction.*"%>
  7. <%@ page import="com.redmoon.forum.person.*"%>
  8. <jsp:useBean id="StrUtil" scope="page" class="cn.js.fan.util.StrUtil"/>
  9. <jsp:useBean id="privilege" scope="page" class="com.redmoon.forum.Privilege"/>
  10. <%
  11. if (!privilege.isUserLogin(request)) {
  12. out.print(StrUtil.Alert_Back("请先登录!"));
  13. return;
  14. }
  15. long msgRootId = 0;
  16. String name = "";
  17. double price;
  18. try {
  19. msgRootId = ParamUtil.getLong(request, "msgRootId");
  20. name = privilege.getUser(request);
  21. price = ParamUtil.getDouble(request, "bitPrice");
  22. }
  23. catch (ErrMsgException e) {
  24. out.print(StrUtil.Alert_Back("数据格式错误!")); // StrUtil.Alert_Back(e.getMessage()));
  25. return;
  26. }
  27. AuctionDb ad = new AuctionDb();
  28. ad = ad.getAuctionDb(msgRootId);
  29. if (ad.getUserName().equals(name)) {
  30. out.print(StrUtil.Alert_Back("对不起,您自己不能出价!"));
  31. return;
  32. }
  33. // 判别是否已到截止日期
  34. java.util.Date endDate = ad.getEndDate();
  35. java.util.Date curDate = new java.util.Date();
  36. curDate.setTime(System.currentTimeMillis());
  37. if (DateUtil.compare(endDate, curDate)!=1) {
  38. out.print(StrUtil.Alert_Back("对不起,拍卖已结束!"));
  39. return;
  40. }
  41. AuctionWorthDb aw = new AuctionWorthDb();
  42. Vector awv = aw.list(msgRootId);
  43. aw = (AuctionWorthDb)awv.get(0);
  44. double dlt = aw.getDlt();
  45. double curBidPrice = ad.getCurBidPrice();
  46. // 检查出价是否小于 最后价格 + 最小加价
  47. if (curBidPrice==0) {
  48. if (price<aw.getPrice()+dlt) {
  49. out.print(StrUtil.Alert_Back("出价太低了,必须大于或等于底价加最小加价!"));
  50. return;
  51. }
  52. }
  53. else {
  54. if (price<curBidPrice+dlt) {
  55. out.print(StrUtil.Alert_Back("出价太低了,必须大于或等于当前价格加最小加价!"));
  56. return;
  57. }
  58. }
  59. AuctionBidDb ab = new AuctionBidDb();
  60. ab = ab.getLastBid(msgRootId);
  61. // 检查本人是否已是最后一个出价
  62. if (ab!=null && ab.getName().equals(name)) {
  63. out.print(StrUtil.Alert_Back("您已是出价最高者!"));
  64. return;
  65. }
  66. boolean re = false;
  67. try {
  68. ab = new AuctionBidDb();
  69. ab.setMsgRootId(msgRootId);
  70. ab.setName(name);
  71. ab.setPrice(price);
  72. re = ab.create();
  73. }
  74. catch (ErrMsgException e) {
  75. out.print(StrUtil.Alert_Back(e.getMessage()));
  76. }
  77. catch (ResKeyException e1) {
  78. out.print(StrUtil.Alert_Back(e1.getMessage(request)));
  79. }
  80. if (re)
  81. out.print(StrUtil.Alert_Redirect("出价成功!", "../../showtopic.jsp?rootid=" + msgRootId));
  82. %>