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

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="com.redmoon.oa.netdisk.*"%>
  6. <%@ page import="com.redmoon.oa.dept.*"%>
  7. <%@ page import="com.redmoon.oa.person.*"%>
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <title>网络硬盘-公共文件列表</title>
  12. <link href="../admin/default.css" rel="stylesheet" type="text/css">
  13. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  14. <style type="text/css">
  15. <!--
  16. .style4 {
  17. color: #FFFFFF;
  18. font-weight: bold;
  19. }
  20. -->
  21. </style>
  22. </head>
  23. <body bgcolor="#FFFFFF" text="#000000">
  24. <jsp:useBean id="docmanager" scope="page" class="cn.js.fan.module.cms.DocumentMgr"/>
  25. <jsp:useBean id="privilege" scope="page" class="com.redmoon.oa.pvg.Privilege"/>
  26. <%
  27. String priv="read";
  28. if (!privilege.isUserPrivValid(request,priv)) {
  29. out.println(cn.js.fan.web.SkinUtil.makeErrMsg(request, cn.js.fan.web.SkinUtil.LoadString(request, "pvg_invalid")));
  30. return;
  31. }
  32. String dirCode = ParamUtil.get(request, "dir_code");
  33. String op = ParamUtil.get(request, "op");
  34. if (op.equals("del")) {
  35. PublicLeafPriv lp = new PublicLeafPriv(dirCode);
  36. if (lp.canUserManage(privilege.getUser(request))) {
  37. int delAttachId = ParamUtil.getInt(request, "attach_id");
  38. int delDocId = ParamUtil.getInt(request, "doc_id");
  39. Document doc = new Document();
  40. doc = doc.getDocument(delDocId);
  41. // 防止删除后反复刷新
  42. if (doc!=null && doc.isLoaded()) {
  43. DocContent dc = doc.getDocContent(1);
  44. boolean re = dc.delAttachment(delAttachId);
  45. if (re)
  46. out.print(StrUtil.Alert_Redirect("操作成功!", "netdisk_public_attach_list.jsp?dir_code=" + StrUtil.UrlEncode(dirCode)));
  47. else
  48. out.print(StrUtil.Alert("操作失败!"));
  49. }
  50. }
  51. else {
  52. out.print(StrUtil.Alert(cn.js.fan.web.SkinUtil.LoadString(request, "pvg_invalid")));
  53. }
  54. }
  55. %>
  56. <%
  57. String strcurpage = StrUtil.getNullString(request.getParameter("CPages"));
  58. if (strcurpage.equals(""))
  59. strcurpage = "1";
  60. if (!StrUtil.isNumeric(strcurpage)) {
  61. out.print(StrUtil.makeErrMsg("标识非法!"));
  62. return;
  63. }
  64. int pagesize = 10;
  65. int curpage = Integer.parseInt(strcurpage);
  66. PublicLeaf plf = new PublicLeaf();
  67. if (!dirCode.equals("")) {
  68. plf = plf.getLeaf(dirCode);
  69. if (plf==null || !plf.isLoaded()) {
  70. out.print(StrUtil.Alert("节点不存在!"));
  71. return;
  72. }
  73. }
  74. String sql = "select id from netdisk_document_attach";
  75. if (!dirCode.equals("") && !dirCode.equals(PublicLeaf.ROOTCODE))
  76. sql += " where publicShareDir=" + StrUtil.sqlstr(dirCode);
  77. else
  78. sql += " where publicShareDir<>''";
  79. sql += " order by uploadDate desc";
  80. Attachment att = new Attachment();
  81. ListResult lr = att.listResult(sql, curpage, pagesize);
  82. int total = lr.getTotal();
  83. Paginator paginator = new Paginator(request, total, pagesize);
  84. // 设置当前页数和总页数
  85. int totalpages = paginator.getTotalPages();
  86. if (totalpages==0)
  87. {
  88. curpage = 1;
  89. totalpages = 1;
  90. }
  91. Vector v = lr.getResult();
  92. Iterator ir = null;
  93. if (v!=null)
  94. ir = v.iterator();
  95. %>
  96. <table cellSpacing="0" cellPadding="0" width="100%">
  97.   <tbody>
  98.     <tr>
  99.       <td height="28" class="head">全局共享 - <%=plf.getName()%></td>
  100.     </tr>
  101.   </tbody>
  102. </table>
  103. <br>
  104. <table width="92%" border="0" align="center" class="p9">
  105.   <tr>
  106.     <td height="24" align="right">找到符合条件的记录 <b><%=paginator.getTotal() %></b> 条 每页显示 <b><%=paginator.getPageSize() %></b> 条 页次 <b><%=paginator.getCurrentPage() %>/<%=paginator.getTotalPages() %></b></td>
  107.   </tr>
  108. </table>
  109. <table style="BORDER-RIGHT: #a6a398 1px solid; BORDER-TOP: #a6a398 1px solid; BORDER-LEFT: #a6a398 1px solid; BORDER-BOTTOM: #a6a398 1px solid" cellSpacing="0" cellPadding="3" width="95%" align="center">
  110.   <tbody>
  111.     <tr>
  112.       <td class="thead" style="PADDING-LEFT: 10px" noWrap width="8%">&nbsp;</td>
  113.       <td class="thead" style="PADDING-LEFT: 10px" noWrap width="30%"><img src="../admin/images/tl.gif" align="absMiddle" width="10" height="15">文件名</td>
  114.       <td class="thead" noWrap width="13%"><img src="../admin/images/tl.gif" align="absMiddle" width="10" height="15">大小</td>
  115.       <td class="thead" noWrap width="14%"><img src="../admin/images/tl.gif" align="absMiddle" width="10" height="15">发布者</td>
  116.       <td class="thead" noWrap width="19%"><img src="../admin/images/tl.gif" align="absMiddle" width="10" height="15">时间</td>
  117.       <td class="thead" noWrap width="16%"><img src="../admin/images/tl.gif" align="absMiddle" width="10" height="15">操作</td>
  118.     </tr>
  119.     <%
  120. long fileLength = -1;
  121. UserMgr um = new UserMgr();
  122. Directory dir = new Directory();
  123. DocumentMgr dm = new DocumentMgr();
  124. while (ir.hasNext()) {
  125.   Attachment am = (Attachment)ir.next();
  126. String[] depts = StrUtil.split(am.getPublicShareDepts(), ",");
  127. int len = 0;
  128. if (depts!=null)
  129. len = depts.length;
  130. boolean isValid = false;
  131. if (privilege.isUserPrivValid(request, com.redmoon.oa.pvg.PrivDb.PRIV_ADMIN))
  132. isValid = true;
  133. else {
  134. if (len>0) {
  135. DeptUserDb du = new DeptUserDb();
  136. for (int i=0; i<len; i++) {
  137. if (du.isUserOfDept(privilege.getUser(request), depts[i])) {
  138. isValid = true;
  139. break;
  140. }
  141. }
  142. }
  143. else
  144. isValid = true;
  145. }
  146. if (isValid) {
  147. Document doc = dm.getDocument(am.getDocId());
  148. if (doc==null) {
  149. // out.print("am.getId=" + am.getId());
  150. continue;
  151. }
  152. Leaf lf = dir.getLeaf(doc.getDirCode());
  153. fileLength = (long)am.getSize()/1024; 
  154. if(fileLength == 0 && (long)am.getSize() > 0)
  155. fileLength = 1;  
  156. %>
  157.     <tr class="row" style="BACKGROUND-COLOR: #ffffff">
  158.       <td style="PADDING-LEFT: 10px"><a href="netdisk_getfile.jsp?id=<%=am.getDocId()%>&attachId=<%=am.getId()%>" target="_blank"><img src="../netdisk/images/<%=am.getIcon()%>" border="0"></a></td>
  159.       <td style="PADDING-LEFT: 10px"><a href="netdisk_getfile.jsp?id=<%=am.getDocId()%>&attachId=<%=am.getId()%>" target="_blank"><%=am.getName()%></a></td>
  160.       <td><%=fileLength%>&nbsp;KB</td>
  161.       <td><%
  162.   UserDb ud = um.getUserDb(lf.getRootCode());
  163.   out.print(ud.getRealName());
  164.   %>
  165.       </td>
  166.       <td><%=DateUtil.format(am.getUploadDate(), "yy-MM-dd HH:mm")%></td>
  167.       <td><a href="netdisk_getfile.jsp?id=<%=am.getDocId()%>&attachId=<%=am.getId()%>" target="_blank">打开</a>&nbsp;&nbsp;&nbsp;&nbsp;<a target="_blank" href="netdisk_downloadfile.jsp?id=<%=am.getDocId()%>&attachId=<%=am.getId()%>">下载</a>&nbsp;&nbsp;
  168.         <%
  169. PublicLeafPriv lp = new PublicLeafPriv(am.getPublicShareDir());
  170. if (lp.canUserManage(privilege.getUser(request))) {%>
  171. <BR><a href="#" onClick="if (confirm('您确定要删除吗?')) window.location.href='?op=del&dir_code=<%=StrUtil.UrlEncode(dirCode)%>&doc_id=<%=am.getDocId()%>&attach_id=<%=am.getId()%>'">删除</a> &nbsp;&nbsp;<a href="netdisk_public_share.jsp?attachId=<%=am.getId()%>">修改</a>
  172. <%}%></td>
  173.     </tr>
  174. <%}%>
  175. <%}%>
  176.   </tbody>
  177. </table>
  178. <table width="96%"  border="0" align="center" cellpadding="0" cellspacing="0">
  179.   <tr>
  180.     <td align="right">&nbsp;</td>
  181.   </tr>
  182.   <tr>
  183.     <td align="right"><%
  184. String querystr = "dir_code=" + StrUtil.UrlEncode(dirCode) + "&op="+op;
  185.     out.print(paginator.getCurPageBlock("?"+querystr));
  186. %></td>
  187.   </tr>
  188. </table>
  189. <hr noshade size=1>
  190. </body>
  191. <script language="javascript">
  192. <!--
  193. //-->
  194. </script>
  195. </html>