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

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html;charset=gb2312"%>
  2. <html>
  3. <head>
  4. <title>审批流程管理</title>
  5. <style type="text/css">
  6. <!--
  7. .flowspan {
  8. background: White;
  9. border: 1px solid Black;
  10. text-align: center;
  11. padding-left: 10px;
  12. padding-right: 10px;
  13. padding-top: 6px;
  14. padding-bottom: 6px;
  15. width: 200px;
  16. }
  17. -->
  18. </style>
  19. <%@ include file="../inc/nocache.jsp"%>
  20. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  21. <link rel="stylesheet" href="common.css" type="text/css">
  22. <%@ include file="inc/nocache.jsp"%>
  23. <script language="javascript">
  24. <!--
  25. function setperson(p)
  26. {
  27. form2.person.value = p
  28. }
  29. function btnsort_onclick() {
  30.   len = form1.flowid.options.length;
  31.   var flowids = "";
  32.   for (i=0; i<len; i++)
  33.   {
  34. form1.flowid.options(i).selected = true;
  35. if (flowids=="")
  36. flowids += form1.flowid.options(i).value;
  37. else
  38. flowids += ","+form1.flowid.options(i).value;
  39.   }
  40.   var r = window.confirm("请确定是否要重新排序?")
  41.   if (!r)
  42.     return false
  43.   form1.action = "?mode=sort&flowids="+flowids;
  44.   form1.submit();
  45. }
  46. function btnup_onclick() {
  47. index = form1.flowid.selectedIndex
  48. if (index==0)
  49. return;
  50. temp1 = form1.flowid.options(index).text
  51. temp2 = form1.flowid.options(index).value
  52. form1.flowid.options(index).value = form1.flowid.options(index-1).value;
  53. form1.flowid.options(index).text = form1.flowid.options(index-1).text;
  54. form1.flowid.options(index-1).value = temp2
  55. form1.flowid.options(index-1).text = temp1;
  56. form1.flowid.selectedIndex = index-1;
  57. }
  58. function btndown_onclick() {
  59. index = form1.flowid.selectedIndex
  60. if (index==form1.flowid.length-1)
  61. return;
  62. temp1 = form1.flowid.options(index).text
  63. temp2 = form1.flowid.options(index).value
  64. form1.flowid.options(index).value = form1.flowid.options(index+1).value;
  65. form1.flowid.options(index).text = form1.flowid.options(index+1).text;
  66. form1.flowid.options(index+1).value = temp2
  67. form1.flowid.options(index+1).text = temp1;
  68. form1.flowid.selectedIndex = index+1;
  69. }
  70. function delperson()
  71. {
  72. errmsg = "";
  73. if (form1.flowid.value=="")
  74. errmsg  += "请选择需删除的审批人!";
  75. if (errmsg != "")
  76. {
  77. alert(errmsg);
  78. return;
  79. }
  80. if (!confirm("您确定要删除"+form1.flowid.options(form1.flowid.selectedIndex).text+"吗?"))
  81. return;
  82. form1.action = "predefinedflow_edit.jsp?mode=del";
  83. form1.submit();
  84. }
  85. function seteditperson()
  86. {
  87. form3.person.value = form1.flowid.options(form1.flowid.selectedIndex).text
  88. form3.flowid.value = form1.flowid.options(form1.flowid.selectedIndex).value
  89. }
  90. function form1_onsubmit()
  91. {
  92. errmsg = "";
  93. if (form1.flowid.value=="")
  94. errmsg  += "请选择需维护的代码!";
  95. if (errmsg!="")
  96. {
  97. alert(errmsg);
  98. return false;
  99. }
  100. form1.action="class1m.jsp";
  101. }
  102. function form2_onsubmit()
  103. {
  104. errmsg = "";
  105. if (form2.person.value=="")
  106. errmsg += "请输入审批人!n";
  107. if (errmsg!="")
  108. {
  109. alert(errmsg);
  110. return false;
  111. }
  112. }
  113. function form3_onsubmit()
  114. {
  115. if (form3.person.value=="")
  116. {
  117. alert("请输入审批人");
  118. return false;
  119. }
  120. }
  121. //-->
  122. </script>
  123. </head>
  124. <body bgcolor="#FFFFFF" text="#000000">
  125. <%@ include file="inc/inc.jsp"%>
  126. <jsp:useBean id="fchar" scope="page" class="cn.js.fan.util.StrUtil"/>
  127. <jsp:useBean id="userservice" scope="page" class="com.redmoon.oa.person.UserService"/>
  128. <jsp:useBean id="privilege" scope="page" class="com.redmoon.oa.pvg.Privilege"/>
  129. <table width="494" border="0" align="center" cellpadding="0" cellspacing="0">
  130.   <tr>
  131.     <td height="23" valign="bottom" background="images/tab-b-top.gif">     <span class="right-title">审 
  132.       批 流 程</span></td>
  133.   </tr>
  134.   <tr>
  135.     <td valign="top" background="images/tab-b-back.gif"><br>
  136. <%
  137. String priv="read";
  138. if (!privilege.isUserPrivValid(request,priv))
  139. {
  140. out.println(cn.js.fan.web.SkinUtil.makeErrMsg(request, cn.js.fan.web.SkinUtil.LoadString(request, "pvg_invalid")));
  141. return;
  142. }
  143. priv="predefinedflow";
  144. boolean isPrivValid = privilege.isUserDepartmentPrivValid(request,priv);
  145. if (!isPrivValid) {
  146. out.println(fchar.makeErrMsg("您无定义流程的权限!"));
  147. return;
  148. }
  149. String predefined_flow_id = request.getParameter("predefined_flow_id");
  150. String id = request.getParameter("flowid");
  151. if (predefined_flow_id==null)
  152. {
  153. out.println(fchar.makeErrMsg("流程标识不能为空!"));
  154. return;
  155. }
  156. %>
  157.       <jsp:useBean id="conn" scope="page" class="com.redmoon.oa.db.Conn"/>
  158.   <jsp:setProperty name="conn" property="POOLNAME" value="ttoa"/> 
  159.       <%
  160. String mode=fchar.getNullString(request.getParameter("mode"));
  161. if (mode.equals("del"))
  162. {
  163. String sql = "select sort from predefined_flow_item where id="+id;
  164. ResultSet rs = conn.executeQuery(sql);
  165. String sort = "0";
  166. if (rs!=null && rs.next()) {
  167. sort = rs.getString(1);
  168. }
  169. if (rs!=null) {
  170. rs.close();
  171. rs = null;
  172. }
  173. if (id!=null)
  174. {
  175. if (conn.executeUpdate("delete from predefined_flow_item where id="+id)==0)
  176. {
  177. out.println(fchar.p_center("删除失败!"));
  178. }
  179. sql = "update predefined_flow_item set sort=sort-1 where id="+id+" and sort>"+sort;
  180. conn.executeUpdate(sql);
  181. }
  182. }
  183. if (mode.equals("edit"))
  184. {
  185. String person = fchar.UnicodeToGB(request.getParameter("person"));
  186. if (id!=null)
  187. {
  188. if (!userservice.isUserExist(person)) {
  189. out.print(fchar.Alert("用户 "+person+" 不存在!"));
  190. }
  191. else
  192. if (conn.executeUpdate("update predefined_flow_item set person="+fchar.sqlstr(person)+" where id="+id)==0)
  193. {
  194. out.println(fchar.p_center("<font color=red>修改失败!</font>"));
  195. }
  196. }
  197. }
  198. if (mode.equals("add"))
  199. {
  200. String person = fchar.UnicodeToGB(request.getParameter("person"));
  201. if (!userservice.isUserExist(person)) {
  202. out.print(fchar.Alert("用户 "+person+" 不存在!"));
  203. }
  204. else
  205. if (person!=null)
  206. {
  207. String sql = "select sort,id from predefined_flow_item where id="+predefined_flow_id+" order by sort desc";
  208. int mysort = -1;
  209. ResultSet rs = conn.executeQuery(sql);
  210. if (rs!=null && rs.next())
  211. {
  212. mysort = rs.getInt(1);
  213. }
  214. if (rs!=null) {
  215. rs.close();
  216. rs = null;
  217. }
  218. if (mysort==-1)//第一个流程
  219. {
  220. mysort = 0;
  221. sql = "insert into predefined_flow_item (person,predefined_flow_id,sort) values ("+fchar.sqlstr(person)+","+predefined_flow_id+","+mysort+")";
  222. }
  223. else {
  224. mysort += 1;
  225. sql = "insert into predefined_flow_item (person,predefined_flow_id,sort) values ("+fchar.sqlstr(person)+","+predefined_flow_id+","+mysort+")";
  226. }
  227. if (conn.executeUpdate(sql)==0)
  228. {
  229. out.println(fchar.p_center("添加审批人"+person+"时出错!"));
  230. }
  231. }
  232. }
  233. //排序
  234. if (mode.equals("sort"))
  235. {
  236. String flowid[] = ((String)request.getParameter("flowids")).split(",");
  237. int sort = 0;
  238. String sql = "";
  239. for (int i=0 ;i<flowid.length; i++)
  240. {
  241. sql += "update predefined_flow_item set sort="+sort+" where id="+flowid[i]+";";
  242. sort++;
  243. }
  244. if (conn.executeUpdate(sql)==0)
  245. {
  246. out.print(fchar.p_center("排序时出错,操作未能成功!"+"<br>"));//成功时返回值也可能为0
  247. }
  248. }
  249. %>
  250.       <table class=p9 width="80%" border="0" cellpadding="2" cellspacing="0" align="center" height="351">
  251.         <form id="form1" action="predefinedflow_edit.jsp" method=post name="form1" onSubmit="return form1_onsubmit()">
  252.           <tr bgcolor="#C4DAFF"> 
  253.             <td height="22" colspan="2" align="center" class="stable">预定义审批流程管理</td>
  254.           </tr>
  255.           <tr> 
  256.             <td width="73%" align="center" bgcolor="#F7F7F7" class="stable"> <%
  257. String options = "";
  258. String sql = "select id,person from predefined_flow_item where predefined_flow_id="+predefined_flow_id+" order by sort";
  259. ResultSet rs = conn.executeQuery(sql);
  260. while(rs.next())
  261. {
  262. options += "<option value="+rs.getString(1)+">"+rs.getString(2)+"</option>";
  263. }
  264. if (rs!=null) {
  265. rs.close();
  266. rs = null;
  267. }
  268. if (conn!=null) {
  269. conn.close(); conn = null;
  270. }
  271. %> <select id=flowid name=flowid size=2 onChange="seteditperson()" style="HEIGHT: 200px; WIDTH: 220px" multiple>
  272.                 <%=options%> </select> </td>
  273.             <td width="27%" align="center" bgcolor="#F7F7F7" class="stable"> <p> 
  274.                 <input name="reset" type="reset" class="singleboarder" value="重置">
  275.                 <br>
  276.                 <br>
  277.                 <input name=del type=button class="singleboarder" onClick="delperson()" value="删除">
  278.                 <br>
  279.                 <br>
  280.                 <input name=btnup type=button class="singleboarder" id=btnup onClick="return btnup_onclick()" value=上移 language=javascript>
  281.                 <br>
  282.                 <br>
  283.                 <input name=btndown type=button class="singleboarder" id=btndown onClick="return btndown_onclick()" value=下移 language=javascript>
  284.                 <br>
  285.                 <br>
  286.                 <input name=btnsort type=button class="singleboarder" id=btnsort onClick="btnsort_onclick()" value=排序 language=javascript>
  287.                 <br>
  288.                 <input type=hidden name="predefined_flow_id" value="<%=predefined_flow_id%>">
  289.               </p></td>
  290.           </tr>
  291.         </form>
  292.         <form id=form3 action="?mode=edit&predefined_flow_id=<%=predefined_flow_id%>" onSubmit="return form3_onsubmit()" method=post name=form3>
  293.           <tr> 
  294.             <td align="center" bgcolor="#F7F7F7" class="stable">审批人 
  295.               <input name=person> <input type=hidden name=flowid></td>
  296.             <td align="center" bgcolor="#F7F7F7" class="stable"><a href="#" onClick="javascript:showModalDialog('person_sel.jsp?op=flowmodify',window.self,'dialogWidth:480px;dialogHeight:320px;status:no;help:no;')">选择</a> 
  297.               <input name="submit22" type=submit class="singleboarder" style="COLOR: #4b0082" value="修改">
  298.             </td>
  299.           </tr>
  300.         </form>
  301.         <form id=form2 action="?mode=add&predefined_flow_id=<%=predefined_flow_id%>" method=post name=form2 onSubmit="return form2_onsubmit()">
  302.           <tr> 
  303.             <td align="center" bgcolor="#F7F7F7" class="stable"> 审批人 
  304.               <input name=person></td>
  305.             <td align="center" bgcolor="#F7F7F7" class="stable"> <a href="#" onClick="javascript:showModalDialog('person_sel.jsp',window.self,'dialogWidth:480px;dialogHeight:320px;status:no;help:no;')">选择</a> 
  306.               <input name="submit2" type=submit class="singleboarder" style="COLOR: #8b0000" value="添加">
  307.             </td>
  308.           </tr>
  309.         </form>
  310.       </table>
  311.       
  312.       
  313.     </td>
  314.   </tr>
  315.   <tr>
  316.     <td height="9"><img src="images/tab-b-bot.gif" width="494" height="9"></td>
  317.   </tr>
  318. </table>
  319. </body>
  320. </html>