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

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html;charset=utf-8" %>
  2. <%@ page import="com.redmoon.oa.person.*"%>
  3. <%@ page import="com.redmoon.oa.dept.*"%>
  4. <%@ page import="cn.js.fan.db.*"%>
  5. <%@ page import="cn.js.fan.base.*"%>
  6. <%@ page import="java.util.*"%>
  7. <%@ page import="cn.js.fan.util.*"%>
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <jsp:useBean id="fchar" scope="page" class="cn.js.fan.util.StrUtil"/>
  10. <html><head>
  11. <meta http-equiv="pragma" content="no-cache">
  12. <meta http-equiv="Cache-Control" content="no-cache, must-revalidate">
  13. <meta http-equiv="expires" content="wed, 26 Feb 1997 08:21:57 GMT">
  14. <title>用户管理</title>
  15. <link href="default.css" rel="stylesheet" type="text/css">
  16. <script language="JavaScript">
  17. <!--
  18. //-->
  19. </script>
  20. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  21. <style type="text/css">
  22. <!--
  23. .STYLE2 {color: #000000}
  24. -->
  25. </style>
  26. <body bgcolor="#FFFFFF" leftmargin='0' topmargin='5' marginwidth="0" marginheight="0">
  27. <jsp:useBean id="privilege" scope="page" class="com.redmoon.oa.pvg.Privilege"/>
  28. <%
  29. if (!privilege.isUserPrivValid(request, "admin.user")) {
  30. out.print(cn.js.fan.web.SkinUtil.makeErrMsg(request, cn.js.fan.web.SkinUtil.LoadString(request, "pvg_invalid")));
  31. return;
  32. }
  33. String op = StrUtil.getNullString(request.getParameter("op"));
  34. if (op.equals("del")) {
  35. UserMgr um = new UserMgr();
  36. if (um.del(request))
  37. out.print(StrUtil.Alert("操作成功!"));
  38. else
  39. out.print(StrUtil.Alert("操作失败!"));
  40. }
  41. %>
  42. <table cellSpacing="0" cellPadding="0" width="100%">
  43.   <tbody>
  44.     <tr>
  45.       <td class="head">用户管理</td>
  46.     </tr>
  47.   </tbody>
  48. </table>
  49. <br>
  50. <TABLE 
  51. style="BORDER-RIGHT: #a6a398 1px solid; BORDER-TOP: #a6a398 1px solid; BORDER-LEFT: #a6a398 1px solid; BORDER-BOTTOM: #a6a398 1px solid" 
  52. cellSpacing=0 cellPadding=3 width="95%" align=center>
  53.   <!-- Table Head Start-->
  54.   <TBODY>
  55.     <TR>
  56.       <TD class=thead style="PADDING-LEFT: 10px" noWrap width="70%"><font size="-1"><b>用户列表</b></font></TD>
  57.     </TR>
  58.     <TR class=row style="BACKGROUND-COLOR: #fafafa">
  59.       <TD height="175" align="center" style="PADDING-LEFT: 10px"><p>
  60.         <table width="90%" border="0" align="center">
  61.           <tr>
  62.             <td align="center"><a href="user_list.jsp">合法用户</a> <a href="user_list.jsp?op=notvalid">已禁用的用户</a> <a href="user_add.jsp">增加用户</a> </td>
  63.           </tr>
  64.         </table>
  65.         <form name="form1" method="post" action="?op=search">
  66.           <table width="90%" border="0" align="center">
  67.             <tr>
  68.               <td height="25" align="center">用户查找:
  69.                 <input type="text" name="content" style="height:18px;width:100px">
  70.                 &nbsp;&nbsp;
  71.                 <select name="condition" style="height:18px">
  72.                   <option value="realname" selected>真实姓名</option>
  73.                   <option value="nick">用户名</option>
  74.                 </select>
  75.                 &nbsp;&nbsp;
  76.                 <input type="submit" name="Submit" value="查找"></td>
  77.             </tr>
  78.           </table>
  79.         </form>
  80.         <%
  81. String sql;
  82.     String querystr = "";
  83. if(op.equals("search")){
  84. String content = ParamUtil.get(request,"content");
  85. String condition = ParamUtil.get(request,"condition");
  86.     if(condition.equals("realname"))
  87.    sql = "select name from users where realname like "+StrUtil.sqlstr("%" + content + "%")+" order by regDate desc";
  88. else
  89.    sql = "select name from users where name like "+ StrUtil.sqlstr("%" + content + "%")+" order by regDate desc";
  90.     querystr += "op=" + op + "&content=" + StrUtil.UrlEncode(content) + "&condition=" + condition;
  91. }else{
  92. if (op==null)
  93. sql = "select name from users where isvalid=1 order by regDate desc";
  94. else {
  95. if (op.equals("notvalid"))
  96. sql = "select name from users where isvalid=0 order by regDate desc";
  97. else
  98. sql = "select name from users where isvalid=1 order by regDate desc";
  99. }
  100. }   
  101. int pagesize = 10;
  102. UserDb userdb = new UserDb();
  103.     int total = userdb.getUserCount(sql);
  104. int curpage,totalpages;
  105. Paginator paginator = new Paginator(request, total, pagesize);
  106.         //设置当前页数和总页数
  107.     totalpages = paginator.getTotalPages();
  108. curpage = paginator.getCurrentPage();
  109. if (totalpages==0)
  110. {
  111. curpage = 1;
  112. totalpages = 1;
  113. }
  114. %>
  115.         <br>
  116.         <table width="90%" border="0" cellspacing="0" cellpadding="0">
  117.           <tr>
  118.             <td align="right"><span class="title1">找到符合条件的记录 <b><%=paginator.getTotal() %></b> 条 每页显示 <b><%=paginator.getPageSize() %></b> 条 页次 <b><%=paginator.getCurrentPage() %>/<%=paginator.getTotalPages() %></b></span></td>
  119.           </tr>
  120.         </table>
  121.         <table width="98%" border="0" align="center" cellpadding="0" cellspacing="1" class="stable">
  122.           <tr align="center" bgcolor="#C4DAFF">
  123.             <td width="12%" height="24" bgcolor="#ded7c1"> <span class="stable STYLE2">用户名</span></td>
  124.             <td width="16%" bgcolor="#ded7c1" class="stable STYLE2">真实姓名</td>
  125.             <td width="13%" bgcolor="#ded7c1" class="stable STYLE2">职级</td>
  126.             <td width="16%" bgcolor="#ded7c1" class="stable STYLE2">所属部门</td>
  127.             <td width="11%" bgcolor="#ded7c1" class="stable STYLE2">管理部门</td>
  128.             <td width="15%" bgcolor="#ded7c1" class="stable STYLE2">角色</td>
  129.             <td width="17%" bgcolor="#ded7c1" class="stable STYLE2">操作</td>
  130.           </tr>        <%
  131.    // Vector v = userdb.list(sql, (curpage-1)*pagesize, curpage*pagesize);
  132. // Iterator ir = v.iterator();
  133. int start = (curpage-1)*pagesize;
  134. int end = curpage*pagesize;
  135.         ObjectBlockIterator ir = userdb.getObjects(sql, start, end);
  136. int i = 0;
  137. while (ir.hasNext()) {
  138. i++;
  139. UserDb user = (UserDb)ir.next();
  140. %>
  141.           <tr align="left">
  142.             <td width="12%" height="22" align="center" bgcolor="#ECE7E1" class="stable"><a href="user_edit.jsp?name=<%=StrUtil.UrlEncode(user.getName())%>"><%=user.getName()%></a></td>
  143.             <td width="16%" align="center" bgcolor="#ECE7E1" class="stable"><a href="user_edit.jsp?name=<%=StrUtil.UrlEncode(user.getName())%>"><%=user.getRealName()%></a></td>
  144.             <td width="13%" align="center" bgcolor="#ECE7E1" class="stable">
  145. <%
  146. com.redmoon.oa.basic.RankDb rd = new com.redmoon.oa.basic.RankDb();
  147. rd = rd.getRankDb(user.getRankCode());
  148. out.print(StrUtil.getNullString(rd.getName()));
  149. %> </td>
  150.             <td width="16%" align="center" bgcolor="#ECE7E1" class="stable">
  151. <%
  152. DeptUserDb du = new DeptUserDb();
  153. Iterator ir2 = du.getDeptsOfUser(user.getName()).iterator();
  154. int k = 0;
  155. while (ir2.hasNext()) {
  156. DeptDb dd = (DeptDb)ir2.next();
  157. if (k==0)
  158. out.print("<a href='#' onClick="openWin('dept_user.jsp?deptCode=" + StrUtil.UrlEncode(dd.getCode()) + "', 620, 420)">" + dd.getName() + "</a>");
  159. else
  160. out.print(",&nbsp;" + "<a href='#' onClick="openWin('dept_user.jsp?deptCode=" + StrUtil.UrlEncode(dd.getCode()) + "', 620, 420)">" + dd.getName() + "</a>");
  161. k++;
  162. %> </td>
  163.             <td width="11%" align="center" bgcolor="#ECE7E1" class="stable"><a title="用户所管理的部门" href="user_admin_department.jsp?name=<%=StrUtil.UrlEncode(user.getName())%>">管理部门</a></td>
  164.             <td align="center" bgcolor="#ECE7E1" class="stable"><%
  165. com.redmoon.oa.pvg.RoleDb[] rld = user.getRoles();
  166. int rolelen = 0;
  167. if (rld!=null)
  168. rolelen = rld.length;
  169. for (int m=0; m<rolelen; m++) {
  170. out.print(rld[m].getDesc() + "&nbsp;&nbsp;");
  171. }
  172. %></td>
  173.             <td width="17%" align="left" bgcolor="#ECE7E1" class="stable">&nbsp;&nbsp;<a href="user_op.jsp?op=edit&name=<%=StrUtil.UrlEncode(user.getName())%>">权限</a>&nbsp;&nbsp;<a href="user_edit.jsp?name=<%=StrUtil.UrlEncode(user.getName())%>">信息</a>&nbsp;&nbsp;<!--<a href="user_post.jsp">职位</a>--><a href="#" onClick="if (confirm('您确定要删除吗?删除用户将同时清除论坛帐号!n请确认该用户是否已使用过系统,否则可能带来未知问题!')) window.location.href='?op=del&userName=<%=StrUtil.UrlEncode(user.getName())%>'">删除</a>&nbsp;&nbsp;<br>
  174.             &nbsp;&nbsp;<a href="../user_proxy.jsp?userName=<%=StrUtil.UrlEncode(user.getName())%>">代理</a>&nbsp;&nbsp;<a href="#" onClick="setDept('<%=StrUtil.UrlEncode(user.getName())%>')">部门</a></td>
  175.           </tr>
  176.         <%
  177. }
  178. %>
  179.         </table>
  180.         <br>
  181.         <table width="92%" border="0" cellspacing="1" cellpadding="3" align="center" class="9black">
  182.           <tr>
  183.             <td height="23"><div align="right">
  184.                 <%
  185.     out.print(paginator.getCurPageBlock("user_list.jsp?"+querystr));
  186. %>
  187.               &nbsp;</div></td>
  188.           </tr>
  189.         </table>
  190.         <br>
  191.         <p> </TD>
  192.     </TR>
  193.     <TR>
  194.       <TD class=tfoot align=right><DIV align=right>
  195.    </DIV></TD>
  196.     </TR>
  197.   </TBODY>
  198. </TABLE>
  199. </body>
  200. <script>
  201. function openWin(url,width,height)
  202. {
  203.   var newwin=window.open(url,"_blank","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,top=50,left=120,width="+width+",height="+height);
  204. }
  205. function setDept(userName) {
  206. openWin("user_dept_modify.jsp?userName=" + userName, 400, 300);
  207. }
  208. </script>
  209. </html>                            
  210.