ruprocdef_list.jsp 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  3. <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4. <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
  5. <%
  6. String path = request.getContextPath();
  7. String basePath = request.getScheme() + "://"
  8. + request.getServerName() + ":" + request.getServerPort()
  9. + path + "/";
  10. %>
  11. <!DOCTYPE html>
  12. <html lang="en">
  13. <head>
  14. <base href="<%=basePath%>">
  15. <!-- 下拉框 -->
  16. <link rel="stylesheet" href="static/ace/css/chosen.css" />
  17. <!-- jsp文件头和头部 -->
  18. <%@ include file="../../system/index/top.jsp"%>
  19. <!-- 日期框 -->
  20. <link rel="stylesheet" href="static/ace/css/datepicker.css" />
  21. </head>
  22. <body class="no-skin">
  23. <!-- /section:basics/navbar.layout -->
  24. <div class="main-container" id="main-container">
  25. <!-- /section:basics/sidebar -->
  26. <div class="main-content">
  27. <div class="main-content-inner">
  28. <div class="page-content">
  29. <div class="row">
  30. <div class="col-xs-12">
  31. <!-- 检索 -->
  32. <form action="ruprocdef/list.do" method="post" name="Form" id="Form">
  33. <table style="margin-top:5px;">
  34. <tr>
  35. <td>
  36. <div class="nav-search">
  37. <span class="input-icon">
  38. <input type="text" placeholder="这里输入关键词" class="nav-search-input" id="nav-search-input" autocomplete="off" name="keywords" value="${pd.keywords }" placeholder="这里输入关键词"/>
  39. <i class="ace-icon fa fa-search nav-search-icon"></i>
  40. </span>
  41. </div>
  42. </td>
  43. <td style="padding-left:2px;"><input class="span10 date-picker" name="lastStart" id="lastStart" value="${pd.lastStart }" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="开始日期" title="开始日期"/></td>
  44. <td style="padding-left:2px;"><input class="span10 date-picker" name="lastEnd" id="lastEnd" value="${pd.lastEnd }" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="结束日期" title="结束日期"/></td>
  45. <c:if test="${QX.cha == 1 }">
  46. <td style="vertical-align:top;padding-left:2px"><a class="btn btn-light btn-xs" onclick="tosearch();" title="检索"><i id="nav-search-icon" class="ace-icon fa fa-search bigger-110 nav-search-icon blue"></i></a></td>
  47. </c:if>
  48. </tr>
  49. </table>
  50. <!-- 检索 -->
  51. <table id="simple-table" class="table table-striped table-bordered table-hover" style="margin-top:5px;">
  52. <thead>
  53. <tr>
  54. <th class="center" style="width:50px;">序号</th>
  55. <th class="center">流程名称</th>
  56. <th class="center">申请人</th>
  57. <th class="center">当前节点(审批人)</th>
  58. <th class="center">当前任务</th>
  59. <th class="center"><i class="ace-icon fa fa-clock-o bigger-110 hidden-480"></i>创建时间</th>
  60. <th class="center">状态</th>
  61. <th class="center">操作</th>
  62. </tr>
  63. </thead>
  64. <tbody>
  65. <!-- 开始循环 -->
  66. <c:choose>
  67. <c:when test="${not empty varList}">
  68. <c:if test="${QX.cha == 1 }">
  69. <c:forEach items="${varList}" var="var" varStatus="vs">
  70. <tr>
  71. <td class='center' style="width: 30px;">${page.showCount*(page.currentPage-1)+vs.index+1}</td>
  72. <td class='center'>${var.PNAME_}</td>
  73. <td class='center'><a onclick="viewUser('${var.INITATOR}')" style="cursor:pointer;"><i id="nav-search-icon" class="ace-icon fa fa-search bigger-110 nav-search-icon blue"></i>${var.INITATOR}</a></td>
  74. <td class='center'><a onclick="viewUser('${var.ASSIGNEE_}')" style="cursor:pointer;"><i id="nav-search-icon" class="ace-icon fa fa-search bigger-110 nav-search-icon blue"></i>${var.ASSIGNEE_}</a></td>
  75. <td class='center'>${var.NAME_}</td>
  76. <td class='center'>${fn:substring(var.CREATE_TIME_ ,0,19)}</td>
  77. <td class='center' id="STATUS${vs.index+1}">${var.SUSPENSION_STATE_ == 1 ? '<h7 class="green">正在运行</h7><img src="static/images/runing.gif" width="12px;" />' : '<h7 class="red">已挂起</h7>'}</td>
  78. <td class="center">
  79. <c:if test="${QX.edit != 1 && QX.del != 1 }">
  80. <span class="label label-large label-grey arrowed-in-right arrowed-in"><i class="ace-icon fa fa-lock" title="无权限"></i></span>
  81. </c:if>
  82. <div class="hidden-sm hidden-xs btn-group">
  83. <c:if test="${QX.edit == 1 }">
  84. <a class="btn btn-xs btn-success" title="流程信息" onclick="view('${var.PROC_INST_ID_}','${var.ID_}','${var.DGRM_RESOURCE_NAME_}');">
  85. 流程信息
  86. </a>
  87. <a class="btn btn-xs btn-purple" title="委派" onclick="delegate('${var.ID_}');">
  88. <i class="ace-icon glyphicon glyphicon-user bigger-120" title="委派" style="float: left;"></i><div style="float: right;">委派</div>
  89. </a>
  90. <a id="offing1${vs.index+1}" <c:if test="${var.SUSPENSION_STATE_ == 1}">style="display: none;"</c:if> class="btn btn-info btn-xs" title="激活" onclick="onoff('${var.ID_}','1',this.id,'${vs.index+1}');">
  91. <i class="ace-icon glyphicon glyphicon-play" title="激活"></i>
  92. </a>
  93. <a id="oning1${vs.index+1}" <c:if test="${var.SUSPENSION_STATE_ == 2}">style="display: none;"</c:if> class="btn btn-info btn-xs" title="挂起" onclick="onoff('${var.ID_}','2',this.id,'${vs.index+1}');">
  94. <i class="ace-icon glyphicon glyphicon-off" title="挂起"></i>
  95. </a>
  96. </c:if>
  97. <c:if test="${QX.del == 1 }">
  98. <a class="btn btn-xs btn-danger" onclick="del('${var.PROC_INST_ID_}');">
  99. <i class="ace-icon fa fa-trash-o bigger-130" title="作废" style="float: left;"></i><div style="float: right;">作废</div>
  100. </a>
  101. </c:if>
  102. </div>
  103. <div class="hidden-md hidden-lg">
  104. <div class="inline pos-rel">
  105. <button class="btn btn-minier btn-primary dropdown-toggle" data-toggle="dropdown" data-position="auto">
  106. <i class="ace-icon fa fa-cog icon-only bigger-110"></i>
  107. </button>
  108. <ul class="dropdown-menu dropdown-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown-close">
  109. <c:if test="${QX.edit == 1 }">
  110. <li>
  111. <a style="cursor:pointer;" onclick="view('${var.PROC_INST_ID_}','${var.ID_ }','${var.DGRM_RESOURCE_NAME_}');" class="tooltip-success" data-rel="tooltip" title="流程信息">
  112. <span class="green">
  113. <i class="ace-icon fa fa-book bigger-120"></i>
  114. </span>
  115. </a>
  116. </li>
  117. <li>
  118. <a style="cursor:pointer;" onclick="delegate('${var.ID_}');" class="tooltip-success" data-rel="tooltip" title="委派">
  119. <span class="purple">
  120. <i class="ace-icon glyphicon glyphicon-user bigger-120"></i>
  121. </span>
  122. </a>
  123. </li>
  124. <li>
  125. <a id="offing2${vs.index+1}" <c:if test="${var.SUSPENSION_STATE_ == '1'}">style="display: none;cursor:pointer;"</c:if> onclick="onoff('${var.ID_}','1',this.id,'${vs.index+1}');" class="tooltip-info" data-rel="tooltip" title="启动">
  126. <span class="blue">
  127. <i class="ace-icon glyphicon glyphicon-play" title="激活"></i>
  128. </span>
  129. </a>
  130. </li>
  131. <li>
  132. <a id="oning2${vs.index+1}" <c:if test="${var.SUSPENSION_STATE_ == '2'}">style="display: none;cursor:pointer;"</c:if> onclick="onoff('${var.ID_}','2',this.id,'${vs.index+1}');" class="tooltip-info" data-rel="tooltip" title="关闭">
  133. <span class="blue">
  134. <i class="ace-icon glyphicon glyphicon-off" title="挂起"></i>
  135. </span>
  136. </a>
  137. </li>
  138. </c:if>
  139. <c:if test="${QX.del == 1 }">
  140. <li>
  141. <a style="cursor:pointer;" onclick="del('${var.PROC_INST_ID_}');" class="tooltip-error" data-rel="tooltip" title="作废">
  142. <span class="red">
  143. <i class="ace-icon fa fa-trash-o bigger-120"></i>
  144. </span>
  145. </a>
  146. </li>
  147. </c:if>
  148. </ul>
  149. </div>
  150. </div>
  151. </td>
  152. </tr>
  153. </c:forEach>
  154. </c:if>
  155. <c:if test="${QX.cha == 0 }">
  156. <tr>
  157. <td colspan="100" class="center">您无权查看</td>
  158. </tr>
  159. </c:if>
  160. </c:when>
  161. <c:otherwise>
  162. <tr class="main_info">
  163. <td colspan="100" class="center" >没有相关数据</td>
  164. </tr>
  165. </c:otherwise>
  166. </c:choose>
  167. </tbody>
  168. </table>
  169. <div class="page-header position-relative">
  170. <table style="width:100%;">
  171. <tr>
  172. <td style="vertical-align:top;">
  173. </td>
  174. <td style="vertical-align:top;"><div class="pagination" style="float: right;padding-top: 0px;margin-top: 0px;">${page.pageStr}</div></td>
  175. </tr>
  176. </table>
  177. </div>
  178. </form>
  179. </div>
  180. <!-- /.col -->
  181. </div>
  182. <!-- /.row -->
  183. </div>
  184. <!-- /.page-content -->
  185. </div>
  186. </div>
  187. <!-- /.main-content -->
  188. <!-- 返回顶部 -->
  189. <a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-sm btn-inverse">
  190. <i class="ace-icon fa fa-angle-double-up icon-only bigger-110"></i>
  191. </a>
  192. </div>
  193. <!-- /.main-container -->
  194. <!-- basic scripts -->
  195. <!-- 页面底部js¨ -->
  196. <%@ include file="../../system/index/foot.jsp"%>
  197. <!-- 删除时确认窗口 -->
  198. <script src="static/ace/js/bootbox.js"></script>
  199. <!-- ace scripts -->
  200. <script src="static/ace/js/ace/ace.js"></script>
  201. <!-- 下拉框 -->
  202. <script src="static/ace/js/chosen.jquery.js"></script>
  203. <!-- 日期框 -->
  204. <script src="static/ace/js/date-time/bootstrap-datepicker.js"></script>
  205. <!--提示框-->
  206. <script type="text/javascript" src="static/js/jquery.tips.js"></script>
  207. <script type="text/javascript">
  208. $(top.hangge());//关闭加载状态
  209. //检索
  210. function tosearch(){
  211. top.jzts();
  212. $("#Form").submit();
  213. }
  214. $(function() {
  215. //日期框
  216. $('.date-picker').datepicker({
  217. autoclose: true,
  218. todayHighlight: true
  219. });
  220. });
  221. //查看用户
  222. function viewUser(USERNAME){
  223. if('admin' == USERNAME){
  224. bootbox.dialog({
  225. message: "<span class='bigger-110'>不能查看admin用户!</span>",
  226. buttons:
  227. { "button":{ "label":"确定", "className":"btn-sm btn-success"}}
  228. });
  229. return;
  230. }
  231. top.jzts();
  232. var diag = new top.Dialog();
  233. diag.Modal = false; //有无遮罩窗口
  234. diag.Drag=true;
  235. diag.Title ="资料";
  236. diag.URL = '<%=basePath%>user/view.do?USERNAME='+USERNAME;
  237. diag.Width = 469;
  238. diag.Height = 380;
  239. diag.CancelEvent = function(){ //关闭事件
  240. diag.close();
  241. };
  242. diag.show();
  243. }
  244. //流程信息
  245. function view(PROC_INST_ID_,ID_,FILENAME){
  246. top.jzts();
  247. var diag = new top.Dialog();
  248. diag.Drag=true;
  249. diag.Title ="流程信息";
  250. diag.URL = '<%=basePath%>rutask/goHandle.do?PROC_INST_ID_='+PROC_INST_ID_+'&ID_='+ID_+'&msg=admin'+'&FILENAME='+encodeURI(encodeURI(FILENAME));
  251. diag.Width = 1100;
  252. diag.Height = 599;
  253. diag.Modal = true; //有无遮罩窗口
  254. diag. ShowMaxButton = true; //最大化按钮
  255. diag.ShowMinButton = true; //最小化按钮
  256. diag.CancelEvent = function(){ //关闭事件
  257. diag.close();
  258. };
  259. diag.show();
  260. }
  261. //委派
  262. function delegate(ID_){
  263. top.jzts();
  264. var diag = new top.Dialog();
  265. diag.Drag=true;
  266. diag.Title ="委派对象";
  267. diag.URL = '<%=basePath%>ruprocdef/goDelegate.do?ID_='+ID_;
  268. diag.Width = 500;
  269. diag.Height = 130;
  270. diag.CancelEvent = function(){ //关闭事件
  271. if(diag.innerFrame.contentWindow.document.getElementById('zhongxin').style.display == 'none'){
  272. tosearch();
  273. }
  274. diag.close();
  275. };
  276. diag.show();
  277. }
  278. //激活 or 挂起
  279. function onoff(ID_,STATUS,ofid,VSID){
  280. top.jzts();
  281. $.ajax({
  282. type: "POST",
  283. url: '<%=basePath%>ruprocdef/onoffTask.do?tm='+new Date().getTime(),
  284. data: {ID_:ID_,STATUS:STATUS},
  285. dataType:'json',
  286. //beforeSend: validateData,
  287. cache: false,
  288. success: function(data){
  289. if("ok" == data.msg){
  290. if(STATUS == '1'){
  291. $("#"+ofid).tips({
  292. side:3,
  293. msg:'激活成功',
  294. bg:'#AE81FF',
  295. time:2
  296. });
  297. $("#offing1"+VSID).hide();
  298. $("#offing2"+VSID).hide();
  299. $("#oning1"+VSID).show();
  300. $("#oning2"+VSID).show();
  301. $("#STATUS"+VSID).html('<h7 class="green">正在运行</h7><img src="static/images/runing.gif" width="12px;" />');
  302. }else{
  303. $("#"+ofid).tips({
  304. side:3,
  305. msg:'已经挂起',
  306. bg:'#AE81FF',
  307. time:2
  308. });
  309. $("#offing1"+VSID).show();
  310. $("#offing2"+VSID).show();
  311. $("#oning1"+VSID).hide();
  312. $("#oning2"+VSID).hide();
  313. $("#STATUS"+VSID).html('<h7 class="red">已经挂起</h7>');
  314. }
  315. }
  316. top.hangge();
  317. }
  318. });
  319. }
  320. //作废
  321. function del(Id){
  322. bootbox.prompt("请输入作废缘由?", function(result) {
  323. if(result != null){
  324. if('' == result)result = "未写作废缘由";
  325. top.jzts();
  326. var url = "<%=basePath%>ruprocdef/delete.do?PROC_INST_ID_="+Id+"&reason="+encodeURI(encodeURI(result))+"&tm="+new Date().getTime();
  327. $.get(url,function(data){
  328. tosearch();
  329. });
  330. }
  331. });
  332. }
  333. </script>
  334. </body>
  335. </html>