ProductList.jsp
上传用户:lsj999sz
上传日期:2022-06-15
资源大小:4717k
文件大小:11k
源码类别:

ICQ/即时通讯

开发平台:

Java

  1. <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
  2. <%@ page import="com.bjsxt.shopping.product.*"%>
  3. <%@ page import="com.bjsxt.shopping.category.*"%>
  4. <%
  5. final int PAGE_SIZE = 2; //每页显示多少条记录
  6. final int PAGES_PER_TIME = 10;//每次显示多少个页码链接
  7. int pageNo = 1;
  8. String strPageNo = request.getParameter("pageNo");
  9. if (strPageNo != null && !strPageNo.trim().equals("")) {
  10. try {
  11. pageNo = Integer.parseInt(strPageNo);
  12. } catch (NumberFormatException e) {
  13. pageNo = 1;
  14. }
  15. }
  16. if (pageNo <= 0)
  17. pageNo = 1;
  18. %>
  19. <%
  20. List<Product> products = new ArrayList<Product>();
  21. int totalRecords = ProductMgr.getInstance().getProducts(products, pageNo, PAGE_SIZE, false);
  22. int totalPages = (totalRecords + PAGE_SIZE - 1) / PAGE_SIZE;
  23. if (pageNo > totalPages)
  24. pageNo = totalPages;
  25. %>
  26. <html>
  27. <head>
  28. <title>会员列表</title>
  29. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  30. <meta name="keywords"
  31. content="Discuz!,Board,Comsenz,forums,bulletin board,">
  32. <meta name="description" content="金尚商城会员列表">
  33. <meta name="generator" content="Discuz! 4.0.0RC4 with Templates 4.0.0">
  34. <meta name="MSSmartTagsPreventParsing" content="TRUE">
  35. <meta http-equiv="MSThemeCompatible" content="Yes">
  36. <style type="text/css"><!--
  37. a { text-decoration: none; color: #000000 }
  38. a:hover { text-decoration: underline }
  39. body { scrollbar-base-color: #F3F6FA; scrollbar-arrow-color: #4D76B3; font-size: 12px; background-color: #ffffff }
  40. table { font: 12px Verdana,Tahoma; color: #000000 }
  41. input,select,textarea { font: 11px Verdana,Tahoma; color: #000000; font-weight: normal; background-color: #F3F6FA }
  42. select { font: 11px Verdana,Tahoma; color: #000000; font-weight: normal; background-color: #F3F6FA }
  43. .nav { font: 12px Verdana,Tahoma; color: #000000; font-weight: bold }
  44. .nav a { color: #000000 }
  45. .header { font: 11px Verdana,Tahoma; color: #000000; font-weight: bold; background-image: url("images/green/bg01.gif") }
  46. .header a { color: #FFFFFF }
  47. .category { font: 11px Verdana,Tahoma; color: #000000; background-color: #EFEFEF }
  48. .tableborder { background: #4D76B3; border: 0px solid #4D76B3 } 
  49. .singleborder { font-size: 0px; line-height: 0px; padding: 0px; background-color: #F3F6FA }
  50. .smalltxt { font: 11px Verdana,Tahoma }
  51. .outertxt { font: 12px Verdana,Tahoma; color: #000000 }
  52. .outertxt a { color: #000000 }
  53. .bold { font-weight: bold }
  54. .altbg1 { background: #F3F6FA }
  55. .altbg2 { background: #FFFFFF }
  56. --></style>
  57. <script language="JavaScript" src="images/common.js"></script>
  58. <style type="text/css" id="defaultPopStyle">.cPopText { font-family: Tahoma, Verdana; background-color: #FFFFCC; border: 1px #000000 solid; font-size: 12px; padding-right: 4px; padding-left: 4px; height: 20px; padding-top: 2px; padding-bottom: 2px; visibility: hidden; filter: Alpha(Opacity=80)}</style>
  59. <script type="text/javascript">
  60. function checkDelete() {
  61. var ids = document.getElementsByName("id");
  62. if(document.formDelete.selectAll.checked) {
  63. for(var i=0; i<ids.length; i++) {
  64. ids[i].checked="checked";
  65. }
  66. } else {
  67. for(var i=0; i<ids.length; i++) {
  68. ids[i].checked="";
  69. }
  70. }
  71. }
  72. </script>
  73. <script type="text/javascript">
  74. var req;
  75. var gID;
  76. function changeToInput(id) {
  77. var oNP = document.getElementById(id);
  78. var value = oNP.value;
  79. oNP.outerHTML = "<input type='text' id='" + id + "' value='" + value + "' size='5' onblur='change(this.id)'>";
  80. document.getElementById(id).focus();
  81. }
  82. function change(id) {
  83. var oNP = document.getElementById(id);
  84. var value = oNP.value;
  85. gID = id;
  86. init();
  87. var url = "ChangePrice.jsp?id=" + escape(id) + "&normalprice=" + value;
  88. req.open("GET", url, true);
  89. req.onreadystatechange = callback;
  90. req.send(null);
  91. }
  92. function init() {
  93. if(window.XMLHttpRequest) {
  94. req = new XMLHttpRequest();
  95. } else if (window.ActiveXObject) {
  96. req = new ActiveXObject("Microsoft.XMLHTTP");
  97. }
  98. }
  99. function callback() {
  100. if(4 == req.readyState) {
  101. if(200 == req.status) {
  102. var oNP = document.getElementById(gID);
  103. var value = oNP.value;
  104. oNP.outerHTML = "<span style='background:gray' id='" + gID + "' value='" + value + "' onclick='changeToInput(this.id)'>" + value + "</span>";
  105. }
  106. }
  107. }
  108. </script>
  109. </head>
  110. <body leftmargin="0" rightmargin="0" topmargin="0"
  111. onkeydown="if(event.keyCode==27) return false;">
  112. <div id="popLayer" style="position: absolute; z-index: 1000;"
  113. class="cPopText"></div>
  114. <table style="table-layout: fixed;" align="center" border="0"
  115. cellpadding="0" cellspacing="0" width="97%">
  116. <tbody>
  117. <tr>
  118. <td class="nav" align="left" nowrap="nowrap" width="90%">
  119. &nbsp;产品管理 &#187; 产品列表
  120. </td>
  121. <td align="right" width="10%">
  122. &nbsp;
  123. <a href="#bottom"><img src="../images/arrow_dw.gif"
  124. align="absmiddle" border="0">
  125. </a>
  126. </td>
  127. </tr>
  128. </tbody>
  129. </table>
  130. <br>
  131. <center><a href="ProductAdd.jsp" target="detail">添加新产品</a></center>
  132. <table align="center" border="0" cellpadding="0" cellspacing="0"
  133. width="97%">
  134. <tbody>
  135. <tr>
  136. <td>
  137. <table border="0" cellpadding="0" cellspacing="0">
  138. <tbody>
  139. <tr>
  140. <td height="3"></td>
  141. </tr>
  142. <tr>
  143. <td>
  144. <table class="tableborder" cellpadding="2" cellspacing="1">
  145. <tbody>
  146. <tr class="smalltxt" bgcolor="#f3f6fa">
  147. <td class="header">
  148. &nbsp;<%=totalRecords %>&nbsp;
  149. </td>
  150. <td class="header">
  151. &nbsp;<%=pageNo %>/<%=totalPages %>&nbsp;
  152. </td>
  153. <%
  154. int start = ((pageNo - 1) / PAGES_PER_TIME) * PAGES_PER_TIME + 1;
  155. for(int i=start; i<start+PAGES_PER_TIME; i++) {
  156. if(i > totalPages) break;
  157. if(pageNo == i) {
  158.  %>
  159. <td bgcolor="#ffffff">&nbsp;<u><b><%=i %></b></u>&nbsp;</td>
  160. <%
  161. } else {
  162.  %>
  163. <td>&nbsp;
  164. <a href="ProductList.jsp?pageNo=<%=i%>"><%=i%></a>&nbsp;
  165. </td>
  166. <%
  167. }
  168. }
  169.  %>
  170. <td>
  171. &nbsp;
  172. <a href="ProductList.jsp?pageNo=<%=pageNo+1%>">&gt;</a>&nbsp;
  173. </td>
  174. <td>
  175. &nbsp;
  176. <a
  177. href="http://bbs.allsmart.com/member.php?action=list&amp;srchmem=&amp;order=&amp;admins=&amp;page=100">&gt;<b>|</b>
  178. </a>&nbsp;
  179. </td>
  180. <td style="padding: 0pt;">
  181. <input name="custompage" size="2"
  182. style="border: 1px solid rgb(77, 118, 179);"
  183. onKeyDown="javascript: if(window.event.keyCode == 13) window.location='member.php?action=list&srchmem=&order=&admins=&page='+this.value;"
  184. type="text">
  185. </td>
  186. </tr>
  187. </tbody>
  188. </table>
  189. </td>
  190. </tr>
  191. <tr>
  192. <td height="3"></td>
  193. </tr>
  194. </tbody>
  195. </table>
  196. </td>
  197. </tr>
  198. </tbody>
  199. </table>
  200. <form action="ProductDeleteMultiple.jsp" name="formDelete" method="post" target="detail">
  201. <table class="tableborder" align="center" cellpadding="4"
  202. cellspacing="1" width="97%">
  203. <tbody>
  204. <tr class="header">
  205. <td align="center" width="10%">
  206. 选择
  207. </td>
  208. <td align="center" width="9%">
  209. 产品ID
  210. </td>
  211. <td align="center" width="6%">
  212. 产品名称
  213. </td>
  214. <td align="center" width="16%">
  215. 产品描述
  216. </td>
  217. <td align="center" width="10%">
  218. 市场价格
  219. </td>
  220. <td align="center" width="10%">
  221. 会员价格
  222. </td>
  223. <td align="center" width="20%">
  224. 上架时间
  225. </td>
  226. <td align="center" width="10%">
  227. 所属类别
  228. </td>
  229. <td align="center">
  230. 处理
  231. </td>
  232. </tr>
  233. <%
  234. for (int i = 0; i < products.size(); i++) {
  235. Product p = products.get(i);
  236. %>
  237. <tr>
  238. <td class="altbg2" align="center">
  239. <input type="checkbox" name="id" value="<%=p.getId()%>"/>
  240. </td>
  241. <td class="altbg1" align="center" nowrap="nowrap">
  242. <%=p.getId()%>
  243. </td>
  244. <td class="altbg2" align="center">
  245. <%=p.getName()%>
  246. </td>
  247. <td class="altbg1" align="center">
  248. <%=p.getDescr()%>
  249. </td>
  250. <td class="altbg1" align="center">
  251. <span id="<%=p.getId()%>" style="background:red" onclick="changeToInput(this.id)" value="<%=p.getNormalPrice() %>">
  252. <%=p.getNormalPrice() %>
  253. </span>
  254. </td>
  255. <td class="altbg1" align="center">
  256. <%=p.getMemberPrice()%>
  257. </td>
  258. <td class="altbg1" align="center">
  259. <%=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
  260. .format(p.getPdate())%>
  261. </td>
  262. <td class="altbg1" align="center">
  263. <%//=CategoryService.getInstance().loadById(p.getCategoryId()).getName()%>
  264. <%=p.getCategory().getName()%>
  265. </td>
  266. <td class="altbg1" align="right">
  267. <a target="detail" href="ProductDelete.jsp?id=<%=p.getId()%>" onclick="return confirm('真的要删?')">删</a>
  268. <a target="detail" href="ProductModify.jsp?id=<%=p.getId()%>">改</a>
  269. <a target="detail" href="ProductUpload.jsp?id=<%=p.getId()%>">上传</a>
  270. </td>
  271. </tr>
  272. <%
  273. }
  274. %>
  275. <tr>
  276. <td>
  277. <input name="selectAll" type="checkbox" onclick="checkDelete()"/>
  278. <input type="submit" value="Delete"/>
  279. </td>
  280. </form> <!-- end formDelete -->
  281. <td colspan="8" class="altbg2">
  282. <form name="formSearch" action="SearchResult.jsp" method="get">
  283. <input type="text" size="10" name="keyword"/>
  284. 搜索
  285. <input value="提 &nbsp; 交" type="submit">
  286. </form>
  287. &nbsp; &nbsp;
  288. <span class="bold">或</span> &nbsp; 排序方式:
  289. <a
  290. href="http://bbs.allsmart.com/member.php?action=list&amp;order=credits">积分</a>
  291. -
  292. <a
  293. href="http://bbs.allsmart.com/member.php?action=list&amp;order=username">用户名</a>
  294. -
  295. <a
  296. href="http://bbs.allsmart.com/member.php?action=list&amp;order=gender">性别</a>
  297. -
  298. <a
  299. href="http://bbs.allsmart.com/member.php?action=list&amp;order=regdate">注册日期</a>
  300. -
  301. <a
  302. href="http://bbs.allsmart.com/member.php?action=list&amp;admins=yes">管理头衔</a>
  303. </td>
  304. </tr>
  305. </tbody>
  306. </table>
  307. <a name="bottom" />
  308. </body>
  309. </html>