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

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html;charset=utf-8"%>
  2. <%@ page import = "java.net.URLEncoder"%>
  3. <%@ page import = "java.util.*"%>
  4. <%@ page import = "cn.js.fan.util.*"%>
  5. <%@ page import = "cn.js.fan.web.*"%>
  6. <%@ page import = "com.redmoon.oa.flow.*"%>
  7. <%
  8. String rootpath = request.getContextPath();
  9. %>
  10. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  11. <html>
  12. <head>
  13. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  14. <title>编辑表单</title>
  15. <link href="../common.css" rel="stylesheet" type="text/css">
  16. <%@ include file="../inc/nocache.jsp"%>
  17. <style type="text/css">
  18. <!--
  19. .style2 {font-size: 14px}
  20. -->
  21. </style>
  22. <script>
  23. function getFormContent() {
  24. return divContent.innerHTML;
  25. }
  26. function form1_onsubmit() {
  27. form1.content.value = getFormContent();
  28. }
  29. </script>
  30. </head>
  31. <body background="" leftmargin="0" topmargin="5" marginwidth="0" marginheight="0">
  32. <jsp:useBean id="fchar" scope="page" class="cn.js.fan.util.StrUtil"/>
  33. <jsp:useBean id="privilege" scope="page" class="com.redmoon.oa.pvg.Privilege"/>
  34. <%
  35. String priv="read";
  36. if (!privilege.isUserPrivValid(request,priv))
  37. {
  38. out.println(cn.js.fan.web.SkinUtil.makeErrMsg(request, cn.js.fan.web.SkinUtil.LoadString(request, "pvg_invalid")));
  39. return;
  40. }
  41. String code = ParamUtil.get(request, "code");
  42. FormDb fd = new FormDb();
  43. fd = fd.getFormDb(code);
  44. String name = ParamUtil.get(request, "name");
  45. String content = ParamUtil.get(request, "content");
  46. String flowTypeCode = ParamUtil.get(request, "flowTypeCode");
  47. FormParser fp = new FormParser(content);
  48. Vector newv = fp.getFields();
  49. try {
  50. fp.validateFields();
  51. }
  52. catch (ErrMsgException e) {
  53. out.print(StrUtil.Alert_Back(e.getMessage()));
  54. return;
  55. }
  56. Vector[] vt = fd.checkFieldChange(fd.getFields(), newv);
  57. Vector delv = vt[0];
  58. int dellen = delv.size();
  59. Vector addv = vt[1];
  60. int addlen = addv.size();
  61. %>
  62. <table width="622" height="89" border="0" align="center" cellpadding="0" cellspacing="0" class="main">
  63. <form name="form1" action="form_edit.jsp?op=modify" method="post" onSubmit="return form1_onsubmit()">
  64.   <tr> 
  65.     <td height="26" valign="bottom" class="right-title">&nbsp;&nbsp;<span> 对比表单域</span></td>
  66.   </tr>
  67.   <tr> 
  68.     <td valign="top" bgcolor="#EFEFEF">
  69.       <table width="100%" border="0" align="center" cellpadding="3" cellspacing="0">
  70.         <tr>
  71.           <td width="48%" bgcolor="#E9D1D1"><strong>原来的表单域</strong></td>
  72.           <td width="1%" rowspan="2">&nbsp;</td>
  73.           <td width="51%" bgcolor="#E9D1D1"><strong>新的表单域</strong></td>
  74.         </tr>
  75.         <tr>
  76.           <td valign="top">
  77. <%
  78. Iterator ir = fd.getFields().iterator();
  79. while (ir.hasNext()) {
  80. FormField ff = (FormField)ir.next();
  81. %>
  82.             <table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
  83.               <tr>
  84.                 <td width="25%" height="24">
  85. <%
  86. // 检查是否将被删除
  87. boolean isDel = false;
  88. for (int i=0; i<dellen; i++) {
  89. FormField fld = (FormField)delv.get(i);
  90. if (fld.getName().equals(ff.getName())) {
  91. isDel = true;
  92. break;
  93. }
  94. }
  95. %>
  96. <%if (isDel) {%>
  97. <font color=red><%=ff.getName()%></font>
  98. <%}else{%>
  99. <%=ff.getName()%>
  100. <%}%>
  101. </td>
  102.                 <td width="39%">
  103. <%if (isDel) {%>
  104. <font color=red><%=ff.getTitle()%></font>
  105. <%}else{%>
  106. <%=ff.getTitle()%>
  107. <%}%>
  108. </td>
  109.                 <td width="36%">
  110. <%if (isDel) {%>
  111. <font color=red><%=ff.getTypeDesc()%></font>
  112. <%}else{%>
  113. <%=ff.getTypeDesc()%>
  114. <%}%>
  115. </td>
  116.               </tr>
  117.             </table>
  118.           <%}%></td>
  119.           <td width="51%" valign="top">
  120. <%
  121. // 解析content,在表form_field中建立相应的域
  122. ir = newv.iterator();
  123. while (ir.hasNext()) {
  124. FormField ff = (FormField)ir.next();
  125. %>
  126.             <table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
  127.               <tr>
  128.                 <td width="25%" height="24">
  129. <%
  130. // 检查是否将被增加
  131. boolean isAdd = false;
  132. for (int i=0; i<addlen; i++) {
  133. FormField fld = (FormField)addv.get(i);
  134. if (fld.getName().equals(ff.getName())) {
  135. isAdd = true;
  136. break;
  137. }
  138. }
  139. %>
  140. <%if (isAdd) {%>
  141. <font color=blue><%=ff.getName()%></font>
  142. <%}else{%>
  143. <%=ff.getName()%>
  144. <%}%>
  145. </td>
  146.                 <td width="39%">
  147. <%if (isAdd) {%>
  148. <font color=blue><%=ff.getTitle()%></font>
  149. <%}else{%>
  150. <%=ff.getTitle()%>
  151. <%}%>
  152. </td>
  153.                 <td width="36%">
  154. <%if (isAdd) {%>
  155. <font color=blue><%=ff.getTypeDesc()%></font>
  156. <%}else{%>
  157. <%=ff.getTypeDesc()%>
  158. <%}%>
  159. </td>
  160.               </tr>
  161.             </table>
  162.           <%}%></td>
  163.         </tr>
  164.         <tr>
  165.           <td height="30" colspan="3" align="center">
  166.   <input type="hidden" name="code" value="<%=code%>">
  167.   <input type="hidden" name="name" value="<%=name%>">
  168.   <input type="hidden" name="flowTypeCode" value="<%=flowTypeCode%>">
  169.   <input type="hidden" name="content" value="">
  170.   <input type="submit" name="Submit" value="   确     定   ">
  171.   <br>
  172.   (红色表示将被删除的字段,蓝色表示将被添加的字段)</td>
  173.         </tr>
  174.       </table>
  175.     </td>
  176.   </tr>
  177.   </form>
  178. </table>
  179. <br>
  180. <br>
  181. <table width="90%" align="center">
  182.   <tr>
  183.     <td><strong>以下为表单内容:</strong></td>
  184.   </tr>
  185.   <tr>
  186.     <td><div id="divContent" name="divContent"> <%=content%></div></td>
  187.   </tr>
  188. </table>
  189. </body>
  190. </html>