This commit is contained in:
hanjian
2024-08-14 15:17:51 +08:00
parent 20a221c1a2
commit b610f94b2e
3483 changed files with 650965 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
FROM REGISTRY_URL/tomcat:8.0.51-jre8-alpine
ADD ./build/ebpm-process-manage.war /usr/local/tomcat/webapps/ebpm-process-manage.war
COPY ./process-ehcache-manage.xml /

View File

@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Class-Path:

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/activiti-explorer2"/>

View File

@@ -0,0 +1,78 @@
<%@ tag pageEncoding="GBK"%>
<%@ attribute name="page" required="true" type="com.blueland.bpm.common.page.Page" description="Page.java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%
// set default values
java.lang.Integer[] defaultPageSizes = new java.lang.Integer[]{10,50,100};
if(jspContext.getAttribute("pageSizeSelectList") == null) {
jspContext.setAttribute("pageSizeSelectList",defaultPageSizes);
}
if(jspContext.getAttribute("isShowPageSizeList") == null) {
jspContext.setAttribute("isShowPageSizeList",true);
}
%>
<div class="pagination-box">
<ul class="pagination">
<% if(page.isFirstPage()){%>
<li class="disabled"><a href="javascript:void(0);"><3E><>ҳ</a></li>
<% }else{%>
<li>
<a href="javascript:simpleTable.togglePage(1);"><i class="icon-double-angle-left"></i><3E><>ҳ</a>
</li>
<% }%>
<% if(page.isHasPreviousPage()){%>
<li>
<a href="javascript:simpleTable.togglePage(${page.previousPageNumber});"><span class="icon_page_prev hand"><3E><>һҳ</span></a>
</li>
<% }else{%>
<li class="disabled"><a href="javascript:void(0);"><3E><>һҳ</a></li>
<% }%>
<%--
<%
java.util.List linkPageNumbers=page.getLinkPageNumbers();
for(int i=0;i<linkPageNumbers.size();i++){
if((Integer)linkPageNumbers.get(i)==page.getThisPageNumber()){%>
<li class="active"><a><%=linkPageNumbers.get(i)%></a></li>
<%}else{%>
<li>
<a href="javascript:simpleTable.togglePage(<%=linkPageNumbers.get(i)%>);">[<%=linkPageNumbers.get(i)%>]</a>
</li>
<%}
}
%> --%>
<% if(page.isHasNextPage()){%>
<li>
<a href="javascript:simpleTable.togglePage(${page.nextPageNumber});"><span class="icon_page_next hand"><3E><>һҳ</span></a>
</li>
<% }else{%>
<li class="disabled"><a href="javascript:void(0);"><3E><>һҳ</a></li>
<% }%>
<% if(page.isLastPage()){%>
<li class="disabled"><a href="javascript:void(0);">βҳ</a></li>
<% }else{%>
<li>
<a href="javascript:simpleTable.togglePage(${page.lastPageNumber});"><i class="icon-double-angle-right"></i>βҳ</a>
</li>
<% }%>
<li class="disabled">
<a>&nbsp;<3B><>ǰ<EFBFBD>ǵ<EFBFBD><font color="blue"><%=page.getThisPageNumber()%></font>ҳ
<% if(page.getTotalCount()<100000000){%>
<09><><EFBFBD>ܹ<EFBFBD><font color="blue"><%=page.getTotalCount()%></font><3E><><EFBFBD><EFBFBD>¼</a>
<% }%>
</li>
</ul>
</div>

View File

@@ -0,0 +1,157 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- session超时定义,单位为分钟 -->
<session-config>
<session-timeout>600</session-timeout>
</session-config>
<!-- 默认首页定义 -->
<welcome-file-list>
<welcome-file>/index.do</welcome-file>
</welcome-file-list>
<!-- Error Page定义 -->
<error-page>
<error-code>500</error-code>
<location>/commons/error.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/commons/404.jsp</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/commons/403.jsp</location>
</error-page>
<!-- Spring ApplicationContext配置文件的路径<E8B7AF>,可使用通配符多个路径用<E5BE84>1,号分隔
此参数用于后面的Spring-Context loader -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:spring/*.xml</param-value>
</context-param>
<!-- JSTL i18n定义-->
<context-param>
<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
<param-value>i18n/messages</param-value>
</context-param>
<filter>
<filter-name>SimpleCORSFilter</filter-name>
<filter-class>com.blueland.bpm.manage.service.SimpleCORSFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>SimpleCORSFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>XssFilter</filter-name>
<filter-class>com.blueland.bpm.manage.util.XssFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>XssFilter</filter-name>
<url-pattern>/*</url-pattern>
<!-- 直接从客户端过来的请求以及通过forward过来的请求都要经过该过滤器 -->
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
<!-- Character Encoding filter -->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter>
<filter-name>CheckUserLoginFilter</filter-name>
<filter-class>com.blueland.bpm.manage.util.CheckUserLoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CheckUserLoginFilter</filter-name>
<url-pattern>*.do</url-pattern> </filter-mapping>
<filter-mapping>
<filter-name>CheckUserLoginFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--Spring ApplicationContext 载入 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 使Spring支持request与session的scope,如:<bean id="loginAction" class="com.foo.LoginAction" scope="request"/> -->
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<!-- Spring 刷新Introspector防止内存泄露 -->
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
<!-- springmvc 配置 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/spring/springmvc-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- druid config start -->
<filter>
<filter-name>DruidWebStatFilter</filter-name>
<filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
<init-param>
<param-name>exclusions</param-name>
<param-value>*.js,*.gif,*.jpg,*.png,*.css,*.swf,*.ico,/druid/*</param-value>
</init-param>
<init-param>
<param-name>profileEnable</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>DruidWebStatFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>DruidStatView</servlet-name>
<servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DruidStatView</servlet-name>
<url-pattern>/druid/*</url-pattern>
</servlet-mapping>
<!-- druid config end -->
</web-app>

View File

@@ -0,0 +1,37 @@
<%@ page contentType="text/html;charset=UTF-8" isErrorPage="true" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/commons/taglibs.jsp" %>
<style type="text/css">
<!--
a { color:#555}
html { height: 100%; width: 100%; background: url(${ctx}/resource/css/images/bj.png) repeat; }
body {margin: 0px auto;}
.cw404 { width:755px; margin: 0px auto; }
.cw404_nr { height: 284px; width: 750px; background: #e5e5e5; border: 1px solid #aaaaaa; margin: 0px auto; }
.cw404_top { height: 200px; width: 750px; margin: 0px auto; }
.top_left { float: left; height: 150px; width: 150px; }
.top_right { font-size: 100px; line-height: 150px; text-align: center; float: left; height: 150px; width: 600px; color: #3f8bc7; font-family: "΢ÈíÑźÚ"; font-weight: bold; }
.nr_top { font-size: 25px; line-height: 40px; height: 40px; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; text-align: center; font-weight: bold; color: #555555; }
.nr_min { height: 200px; border-top: 1px solid #FFFFFF; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; }
.nr_foot { font-size: 12px; line-height: 40px; background: #eaeaea; height: 40px; border-top: 1px solid #FFFFFF; color: #555; margin-right: 5px; margin-left: 5px; }
.min_top { font-size: 14px; line-height: 30px; height: 30px; }
.min_choose { height: 30px; width: 100px; border: 1px solid #aaa; font-size: 12px; line-height: 30px; text-align: center; background: #eaeaea; }
.else { height: 30px; }
.else li{ width:100px; float:left; margin-left:10px; font-size:12px; line-height:30px; display:inline}
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: none; }
a:active { text-decoration: none; }
-->
</style>
<div class="cw404">
<div class="cw404_top">
<div class="top_left"><img src="${ctx}/resource/css/images/cw4.png"></div>
<div class="top_right">404</div>
</div>
<div class="">
<div class="nr_top">抱歉,您没有权限访问请求的页面</div>
</div>
</div>

View File

@@ -0,0 +1,37 @@
<%@ page contentType="text/html;charset=UTF-8" isErrorPage="true" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/commons/taglibs.jsp" %>
<style type="text/css">
<!--
a { color:#555}
html { height: 100%; width: 100%; background: url(${ctx}/resource/css/images/bj.png) repeat; }
body {margin: 0px auto;}
.cw404 { width:755px; margin: 0px auto; }
.cw404_nr { height: 284px; width: 750px; background: #e5e5e5; border: 1px solid #aaaaaa; margin: 0px auto; }
.cw404_top { height: 200px; width: 750px; margin: 0px auto; }
.top_left { float: left; height: 150px; width: 150px; }
.top_right { font-size: 100px; line-height: 150px; text-align: center; float: left; height: 150px; width: 600px; color: #3f8bc7; font-family: "΢ÈíÑźÚ"; font-weight: bold; }
.nr_top { font-size: 25px; line-height: 40px; height: 40px; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; text-align: center; font-weight: bold; color: #555555; }
.nr_min { height: 200px; border-top: 1px solid #FFFFFF; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; }
.nr_foot { font-size: 12px; line-height: 40px; background: #eaeaea; height: 40px; border-top: 1px solid #FFFFFF; color: #555; margin-right: 5px; margin-left: 5px; }
.min_top { font-size: 14px; line-height: 30px; height: 30px; }
.min_choose { height: 30px; width: 100px; border: 1px solid #aaa; font-size: 12px; line-height: 30px; text-align: center; background: #eaeaea; }
.else { height: 30px; }
.else li{ width:100px; float:left; margin-left:10px; font-size:12px; line-height:30px; display:inline}
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: none; }
a:active { text-decoration: none; }
-->
</style>
<div class="cw404">
<div class="cw404_top">
<div class="top_left"><img src="${ctx}/resource/css/images/cw4.png"></div>
<div class="top_right">404</div>
</div>
<div class="">
<div class="nr_top">抱歉,您访问的页面不存在</div>
</div>
</div>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,46 @@
<%@ page contentType="text/html;charset=UTF-8" isErrorPage="true" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<%@page import="java.io.PrintStream"%>
<%@page import="java.io.ByteArrayOutputStream"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/commons/taglibs.jsp" %>
<style type="text/css">
<!--
a { color:#555}
html { height: 100%; width: 100%; background: url(${ctx}/resource/css/images/bj.png) repeat; }
body {margin: 0px auto;}
.cw404 { width:755px; margin: 0px auto; }
.cw404_nr { height: 284px; width: 750px; background: #e5e5e5; border: 1px solid #aaaaaa; margin: 0px auto; }
.cw404_top { height: 200px; width: 750px; margin: 0px auto; }
.top_left { float: left; height: 150px; width: 150px; }
.top_right { font-size: 100px; line-height: 150px; text-align: center; float: left; height: 150px; width: 600px; color: #3f8bc7; font-family: "΢ÈíÑźÚ"; font-weight: bold; }
.nr_top { font-size: 25px; line-height: 40px; height: 40px; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; text-align: center; font-weight: bold; color: #555555; }
.nr_min { height: 200px; border-top: 1px solid #FFFFFF; margin-right: 5px; margin-left: 5px; border-bottom: 1px solid #aaaaaa; }
.nr_foot { font-size: 12px; line-height: 40px; background: #eaeaea; height: 40px; border-top: 1px solid #FFFFFF; color: #555; margin-right: 5px; margin-left: 5px; }
.min_top { font-size: 14px; line-height: 30px; height: 30px; }
.min_choose { height: 30px; width: 100px; border: 1px solid #aaa; font-size: 12px; line-height: 30px; text-align: center; background: #eaeaea; }
.else { height: 30px; }
.else li{ width:100px; float:left; margin-left:10px; font-size:12px; line-height:30px; display:inline}
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: none; }
a:active { text-decoration: none; }
-->
</style>
<div class="cw404">
<div class="cw404_top">
<div class="top_left"><img src="${ctx}/resource/css/images/cw4.png"></div>
<div class="top_right">500</div>
</div>
<div class="">
<div class="nr_top">抱歉,系统内部发生错误,请您稍后再试或联系管理员!</div>
<% //此处输出异常信息
exception.printStackTrace();
ByteArrayOutputStream ostr = new ByteArrayOutputStream();
exception.printStackTrace(new PrintStream(ostr));
//out.print(ostr);
%>
</div>
</div>

View File

@@ -0,0 +1,6 @@
<%@ include file="/commons/taglibs.jsp" %>
<c:if test="${ACTION_MESSAGE != null}">
<script>
alert('${ACTION_MESSAGE}');
</script>
</c:if>

View File

@@ -0,0 +1,64 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="description" content="overview &amp; stats" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<!-- bootstrap & fontawesome -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/bootstrap.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/font-awesome.min.css" />
<!-- text fonts -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-fonts.css" />
<!-- ace styles -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace.min.css" id="main-ace-style" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-part2.min.css" />
<![endif]-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-skins.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-rtl.min.css" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-ie.min.css" />
<![endif]-->
<!-- inline styles related to this page -->
<!-- ace settings handler -->
<script src="${ctx }/resource/js/plugins/ace/js/ace-extra.min.js"></script>
<!-- HTML5shiv and Respond.js for IE8 to support HTML5 elements and media queries -->
<!--[if lte IE 8]>
<script src="${ctx }/resource/js/plugins/ace/js/html5shiv.min.js"></script>
<script src="${ctx }/resource/js/plugins/ace/js/respond.min.js"></script>
<![endif]-->
<!-- basic scripts -->
<!--[if !IE]> -->
<script type="text/javascript">
window.jQuery || document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery.min.js'>"+"<"+"/script>");
</script>
<!-- <![endif]-->
<!--[if IE]>
<script type="text/javascript">
window.jQuery || document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery1x.min.js'>"+"<"+"/script>");
</script>
<![endif]-->
<script type="text/javascript">
if('ontouchstart' in document.documentElement) document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery.mobile.custom.min.js'>"+"<"+"/script>");
</script>
<!-- page specific plugin styles -->
<link rel="stylesheet" href="${ctx }/resource/css/global.css" />
<script type="text/javascript" src="${ctx }/resource/js/jquery-1.8.3.min.js"></script>
<script src="${ctx }/resource/js/common/application.js"></script>
<script src="${ctx }/resource/js/plugins/My97DatePicker/WdatePicker.js"></script>
<%-- <script src="<c:url value="/resource/js/common/application.js"/>" type="text/javascript"></script>
<script src="<c:url value="/resource/js/plugins/My97DatePicker/WdatePicker.js"/>" type="text/javascript"></script> --%>
<script src="${ctx }/resource/js/plugins/ace/js/bootstrap.min.js"></script>
<!-- page specific plugin scripts -->
<!--[if lte IE 8]>
<script src="${ctx }/resource/js/plugins/ace/js/excanvas.min.js"></script>
<![endif]-->
<!-- ace scripts -->
<script src="${ctx }/resource/js/plugins/ace/js/ace-elements.min.js"></script>
<script src="${ctx }/resource/js/plugins/ace/js/ace.min.js"></script>
<script src="${ctx }/resource/js/plugins/artDialog/jquery.artDialog.js?skin=blue"></script>
<script src="${ctx }/resource/js/plugins/artDialog/iframeTools.source.js"></script>
<!-- validation BEGIN-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2/demo/css/style.css" />
<script type="text/javascript" src="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2_min.js"></script>
<!-- validation END-->

View File

@@ -0,0 +1,11 @@
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<c:set var="ctx" value="<%=com.blueland.bpm.manage.util.MyContants.getContextJunction(request)+request.getContextPath()%>"/>
<c:set var="ctx_js_plugins" value="${ctx }/resource/js/plugins"/>
<c:set var="ctx_image" value="${ctx }/resource/images"/>

View File

@@ -0,0 +1,60 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="description" content="overview &amp; stats" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<!-- bootstrap & fontawesome -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/bootstrap.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/font-awesome.min.css" />
<!-- text fonts -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-fonts.css" />
<!-- ace styles -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace.min.css" id="main-ace-style" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-part2.min.css" />
<![endif]-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-skins.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-rtl.min.css" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-ie.min.css" />
<![endif]-->
<!-- inline styles related to this page -->
<!-- ace settings handler -->
<script src="${ctx }/resource/js/plugins/ace/js/ace-extra.min.js"></script>
<!-- HTML5shiv and Respond.js for IE8 to support HTML5 elements and media queries -->
<!--[if lte IE 8]>
<script src="${ctx }/resource/js/plugins/ace/js/html5shiv.min.js"></script>
<script src="${ctx }/resource/js/plugins/ace/js/respond.min.js"></script>
<![endif]-->
<!-- basic scripts -->
<!--[if !IE]> -->
<script type="text/javascript">
window.jQuery || document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery.min.js'>"+"<"+"/script>");
</script>
<!-- <![endif]-->
<!--[if IE]>
<script type="text/javascript">
window.jQuery || document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery1x.min.js'>"+"<"+"/script>");
</script>
<![endif]-->
<script type="text/javascript">
if('ontouchstart' in document.documentElement) document.write("<script src='${ctx }/resource/js/plugins/ace/js/jquery.mobile.custom.min.js'>"+"<"+"/script>");
</script>
<!-- page specific plugin styles -->
<link rel="stylesheet" href="${ctx }/resource/css/global.css" />
<script type="text/javascript" src="${ctx }/resource/js/jquery-1.8.3.min.js"></script>
<script src="<c:url value="/resource/js/common/application.js"/>" type="text/javascript"></script>
<script src="<c:url value="/resource/js/plugins/My97DatePicker/WdatePicker.js"/>" type="text/javascript"></script>
<script src="${ctx }/resource/js/plugins/ace/js/bootstrap.min.js"></script>
<!-- page specific plugin scripts -->
<!--[if lte IE 8]>
<script src="${ctx }/resource/js/plugins/ace/js/excanvas.min.js"></script>
<![endif]-->
<!-- ace scripts -->
<script src="${ctx }/resource/js/plugins/ace/js/ace-elements.min.js"></script>
<script src="${ctx }/resource/js/plugins/ace/js/ace.min.js"></script>
<!-- validation BEGIN-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2/demo/css/style.css" />
<script type="text/javascript" src="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2_min.js"></script>
<!-- validation END-->

View File

@@ -0,0 +1,174 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<hred>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/demo.css"
type="text/css">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/zTreeStyle/zTreeStyle.css"
type="text/css">
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery-1.4.4.min.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.core-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.excheck-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.exedit-3.4.js"></script>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/userSelect/css/usStyle/button.css" type="text/css">
<script type="text/javascript">
//必须jquery多版本冲突的方法
var jQuery_1_4_4= $.noConflict(true);
</script> <SCRIPT type="text/javascript">
var inputObj;
var initParams1="";
var initParams2="";
var initParams3="";
var initParams4=false;
function createOrgSetting(){
var setting = {
view: {
dblClickExpand: false,
expandSpeed: "slow",
selectedMulti: false
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/pages/user/getUserOrgTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"id":0,"assignTreeId":initParams1,"treeLevel":initParams2,"showTreeType":initParams3}
},
callback: {
//onDbClick: onUserOrgDbClick,
onClick:onUserOrgDbClick
}
};
return setting;
}
function beforeUserOrgClick(treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj");
zTree.checkNode(treeNode, !treeNode.checked, null, true);
return false;
}
function onUserOrgCheck(e, treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj"),
nodes = zTree.getCheckedNodes(true),
name = "",
id="";
//nodes.sort(function compare(a,b){return a.id-b.id;});
for (var i=0, l=nodes.length; i<l; i++) {
if(nodes[i].level<=0||nodes[i].level<=initParams3)
continue;
name += nodes[i].name + ",";
id += nodes[i].id + ",";
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
try{
var fun=inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"')");
}catch(e){}
}
function onUserOrgDbClick(e, treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj"),
nodes = zTree.getSelectedNodes(),
name = "",
id="";
for (var i=0, l=nodes.length; i<l; i++) {
name += nodes[i].name + ",";
id += nodes[i].id + ",";
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
try{
//alert(inputObj);
var fun=inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"')");
}catch(e){}
hideMenuUserOrg();
}
function showUserOrg(inputName,params1,params2,params3) {
initParams1=params1;
initParams2=params2;
initParams3=params3;
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
inputObj=inputName;
var cityObj = jQuery_1_4_4("#"+inputName);
var cityOffset = cityObj.offset();
jQuery_1_4_4("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
jQuery_1_4_4("body").bind("mousedown", onBodyDownUserOrg);
}
function hideMenuUserOrg() {
jQuery_1_4_4("#menuContent").fadeOut("fast");
jQuery_1_4_4("body").unbind("mousedown", onBodyDownUserOrg);
}
function onBodyDownUserOrg(event) {
if (!(event.target.id == "menuBtn" || event.target.id == "menuContent" || jQuery_1_4_4(event.target).parents("#menuContent").length>0)) {
hideMenuUserOrg();
}
}
jQuery_1_4_4(document).ready(function(){
//
});
function query(){
var queryVal = $("#queryVal").val();
if(queryVal==""){
// $.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
return;
}else{
var data={"queryVal":queryVal,"showTreeType":"USER","id":"${param.orgId}"};
$.ajax({
type: "POST",
url:"${ctx}/pages/user/getUserOrgTree.do",
data: data,
dataType: "json",
success: function(data){
// $.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting(),data);
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting(),data);
}
});
}
}
</SCRIPT>
</HEAD>
<BODY>
<div id="menuContent" class="menuContent" style="z-index: 999; display: none; position: absolute;">
<div style="background: rgb(240, 246, 228) none repeat scroll 0% 0%; border-top: 1px solid rgb(97, 119, 117); border-left: 1px solid rgb(97, 119, 117); border-right: 1px solid rgb(97, 119, 117);padding-top:5px;">
&nbsp;&nbsp;姓名:<input type="text" value="" id="queryVal" style="width:100px;font-size:12px;height: 18px;" onkeydown="if(event.keyCode==13) query();"/>
<input type="button" class="queryButtonStyle" title="根据用户名或工号查询" onclick="query();"/>
</div>
<ul id="treeObj" class="ztree" style="margin-top: 0; width: 230px;height: auto;max-height: 250px;border-top:none;"></ul>
</div>
</BODY>
</HTML>

View File

@@ -0,0 +1,190 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<hred>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/demo.css"
type="text/css">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/zTreeStyle/zTreeStyle.css"
type="text/css">
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery-1.4.4.min.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.core-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.excheck-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.exedit-3.4.js"></script>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/userSelect/css/usStyle/button.css" type="text/css">
<script type="text/javascript">
//必须jquery多版本冲突的方法
var jQuery_1_4_4= $.noConflict(true);
</script> <SCRIPT type="text/javascript">
var inputObj;
var initParams1="";
var initParams2="";
var initParams3="";
var initParams4=false;
var initParams5="";
function createOrgSetting(){
var setting = {
view: {
dblClickExpand: false,
expandSpeed: "slow",
selectedMulti: false
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/pages/user/getUserOrgTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"id":0,"assignTreeId":initParams1,"treeLevel":initParams2,"showTreeType":initParams3}
},
callback: {
//onDbClick: onUserOrgDbClick,
onClick:onUserOrgDbClick
}
};
return setting;
}
function beforeUserOrgClick(treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj");
zTree.checkNode(treeNode, !treeNode.checked, null, true);
return false;
}
function onUserOrgCheck(e, treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj"),
nodes = zTree.getCheckedNodes(true),
name = "",
id="";
orgId="";
orgName="";
//nodes.sort(function compare(a,b){return a.id-b.id;});
for (var i=0, l=nodes.length; i<l; i++) {
if(nodes[i].level<=0||nodes[i].level<=initParams3)
continue;
name += nodes[i].name + ",";
id += nodes[i].id + ",";
var parentNode = nodes[i].getParentNode();
orgId =parentNode.id+",";
orgName=parentNode.name+","
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
if (orgId.length > 0 ) orgId = orgId.substring(0, orgId.length-1);
if (orgName.length > 0 ) orgName = orgName.substring(0, orgName.length-1);
try{
var fun=inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"','"+orgId+"','"+orgName+"','"+initParams5+"')");
}catch(e){}
}
function onUserOrgDbClick(e, treeId, treeNode) {
var zTree = jQuery_1_4_4.fn.zTree.getZTreeObj("treeObj"),
nodes = zTree.getSelectedNodes(),
name = "",
id="";
orgId="";
orgName="";
for (var i=0, l=nodes.length; i<l; i++) {
name += nodes[i].name + ",";
id += nodes[i].id + ",";
//获取组织id和名称
var parentNode = nodes[i].getParentNode();
orgId =parentNode.id+",";
orgName=parentNode.name+","
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
if (orgId.length > 0 ) orgId = orgId.substring(0, orgId.length-1);
if (orgName.length > 0 ) orgName = orgName.substring(0, orgName.length-1);
try{
var fun=inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"','"+orgId+"','"+orgName+"','"+initParams5+"')");
}catch(e){}
hideMenuUserOrg();
}
function showUserOrg(inputName,params1,params2,params3,params5,params6) {
initParams1=params1;
initParams2=params2;
initParams3=params3;
initParams5=params5;
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
inputObj=inputName;
var cityObj = jQuery_1_4_4("#"+params6);
var cityOffset = cityObj.offset();
jQuery_1_4_4("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
jQuery_1_4_4("body").bind("mousedown", onBodyDownUserOrg);
}
function hideMenuUserOrg() {
jQuery_1_4_4("#menuContent").fadeOut("fast");
jQuery_1_4_4("body").unbind("mousedown", onBodyDownUserOrg);
}
function onBodyDownUserOrg(event) {
if (!(event.target.id == "menuBtn" || event.target.id == "menuContent" || jQuery_1_4_4(event.target).parents("#menuContent").length>0)) {
hideMenuUserOrg();
}
}
jQuery_1_4_4(document).ready(function(){
//
});
function query(){
var queryVal = $("#queryVal").val();
if(queryVal==""){
// $.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting());
return;
}else{
var data={"queryVal":queryVal,"showTreeType":"USER","id":"${param.orgId}"};
$.ajax({
type: "POST",
url:"${ctx}/pages/user/getUserOrgTree.do",
data: data,
dataType: "json",
success: function(data){
// $.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting(),data);
jQuery_1_4_4.fn.zTree.init(jQuery_1_4_4("#treeObj"), createOrgSetting(),data);
}
});
}
}
</SCRIPT>
</HEAD>
<BODY>
<div id="menuContent" class="menuContent" style="z-index: 999; display: none; position: absolute;">
<div style="background: rgb(240, 246, 228) none repeat scroll 0% 0%; border-top: 1px solid rgb(97, 119, 117); border-left: 1px solid rgb(97, 119, 117); border-right: 1px solid rgb(97, 119, 117);padding-top:5px;">
&nbsp;&nbsp;姓名:<input type="text" value="" id="queryVal" style="width:100px;font-size:12px;height: 18px;" onkeydown="if(event.keyCode==13) query();"/>
<input type="button" class="queryButtonStyle" title="根据用户名或工号查询" onclick="query();"/>
</div>
<ul id="treeObj" class="ztree" style="margin-top: 0; width: 230px;height: auto;max-height: 250px;border-top:none;"></ul>
</div>
</BODY>
</HTML>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="false"
monitoring="autodetect" dynamicConfig="true">
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
properties="peerDiscovery=manual,
rmiUrls=//10.158.133.172:40002/processDefinitionCache|//10.158.133.173:40001/processDefinitionCache|//10.158.133.173:40002/processDefinitionCache" />
<cacheManagerPeerListenerFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
properties="hostName=10.158.133.172, port=40001,
socketTimeoutMillis=2000" />
<!--cacheManagerPeerListenerFactory class="org.terracotta.ehcachedx.monitor.probe.ProbePeerListenerFactory"
properties="monitorAddress=localhost, monitorPort=9889, memoryMeasurement=true"/-->
<cache name="processDefinitionCache" maxEntriesLocalHeap="10" eternal="true" maxElementsInMemory="100000"
timeToIdleSeconds="0" timeToLiveSeconds="0" overflowToDisk="true">
<cacheEventListenerFactory
class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
properties="replicateAsynchronously=true, replicatePuts=true,
replicatePutsViaCopy=true, replicateUpdates=true,
replicateUpdatesViaCopy=true, replicateRemovals=true,
asynchronousReplicationIntervalMillis=200"/>
</cache>
</ehcache>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="false"
monitoring="autodetect" dynamicConfig="true">
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
properties="peerDiscovery=manual,
rmiUrls=//10.158.133.173:40002/processDefinitionCache|//10.158.133.172:40001/processDefinitionCache|//10.158.133.172:40002/processDefinitionCache" />
<cacheManagerPeerListenerFactory
class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
properties="hostName=10.158.133.173, port=40001,
socketTimeoutMillis=2000" />
<!--cacheManagerPeerListenerFactory class="org.terracotta.ehcachedx.monitor.probe.ProbePeerListenerFactory"
properties="monitorAddress=localhost, monitorPort=9889, memoryMeasurement=true"/-->
<cache name="processDefinitionCache" maxEntriesLocalHeap="10" eternal="true" maxElementsInMemory="100000"
timeToIdleSeconds="0" timeToLiveSeconds="0" overflowToDisk="true">
<cacheEventListenerFactory
class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
properties="replicateAsynchronously=true, replicatePuts=true,
replicatePutsViaCopy=true, replicateUpdates=true,
replicateUpdatesViaCopy=true, replicateRemovals=true,
asynchronousReplicationIntervalMillis=200"/>
</cache>
</ehcache>

View File

@@ -0,0 +1,285 @@
<%@ page contentType="text/html;charset=UTF-8" %>
<%@page import="java.util.*" %>
<%@page import="com.blueland.bpm.manage.util.*"%>
<%@page import="com.blueland.bpm.application.model.*" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getLocalAddr()+request.getLocalPort();
List<ApplicationEntity> appMaps = (List<ApplicationEntity>)request.getSession().getAttribute("APP_MAPS");
%>
<!DOCTYPE html>
<html lang="zh">
<head>
<%@ include file="/commons/meta.jsp" %>
<link rel="icon" href="${ctx }/resource/css/images/favicon.ico" type="image/x-icon">
<title>BPMC流程中心</title>
<script type="text/javascript" src="${ctx }/resource/js/jquery-1.8.3.min.js"></script>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script type="text/javascript">
$(function(){
iframeChange("${ctx}/procDefMgr/list.do");
});
function ChangeApp(appId,appName){
$.ajax({
url:"${ctx}/pages/user/changeApp.do",
type:"POST",
data:{
appId:appId
},
dataType:"text",
success:function(resp){
window.location.href=window.location.href;
}
});
}
function iframeChange(srcpath){
$("#main-container").mask("系统正在加载中,请稍后...");
var $iFrame=$("#frmright");      
$iFrame.prop("src",srcpath);    
$iFrame.load(function(){
$("#main-container").unmask();
});
}
function flowBpm(){
var url = "<%=MyContants.BPM_FRONT_PATH%>"+"/ebpm-bpa-front/#/";
//$("#bpmUrl").val();
$("#tabFlow a").removeClass("active");
$("#flowBpm").addClass("active");
window.open(url);
}
function flowBpa(){
var url = $("#bpaUrl").val();
$("#tabFlow a").removeClass("active");
$("#flowBpa").addClass("active");
window.open(url);
}
function flowMange(){
$("#tabFlow a").removeClass("active");
$("#flowMange").addClass("active");
}
<%-- function personalOffice(){
$("#tabFlow a").removeClass("active");
$("#personalOffice").addClass("active");
window.open("<%=MyContants.PERSONAL_OFFICE_PATH%>");
} --%>
</script>
</head>
<body class="skin-1">
<input type="hidden" name="bpaUrl" id="bpaUrl" value="<%=session.getAttribute("bpaUrl")%>" />
<input type="hidden" name="bpmUrl" id="bpmUrl" value="<%=session.getAttribute("bpmUrl")%>" />
<!-- #section:basics/navbar.layout -->
<c:if test="${customSso != '1'}">
<div id="navbar" class="navbar navbar-default">
<script type="text/javascript">
try{ace.settings.check('navbar' , 'fixed')}catch(e){}
</script>
<div class="navbar-container" id="navbar-container">
<!-- #section:basics/sidebar.mobile.toggle -->
<button type="button" class="navbar-toggle menu-toggler pull-left" id="menu-toggler">
<span class="sr-only">Toggle sidebar</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<!-- /section:basics/sidebar.mobile.toggle -->
<div class="navbar-header pull-left">
<!-- #section:basics/navbar.layout.brand -->
<!-- <a href="#" class="navbar-brand">
<small>
<i class="fa fa-leaf"></i>
流程执行管理系统
</small>
</a> -->
<img alt="BPMC流程中心" src="${ctx }/resource/css/images/bpm-logo.png" />
<!-- /section:basics/navbar.layout.brand -->
<!-- #section:basics/navbar.toggle -->
<!-- /section:basics/navbar.toggle -->
</div>
<div class="nav-tab-box" id="tabFlow">
</div>
<!-- #section:basics/navbar.dropdown -->
<div class="navbar-buttons navbar-header pull-right" role="navigation">
<ul class="nav ace-nav">
<!-- #section:basics/navbar.user_menu -->
<li class="light-blue">
<a data-toggle="dropdown" href="#" class="dropdown-toggle">
<span class="user-info" id="appName">
<small>请点击切换系统<br/><%=((ApplicationEntity)request.getSession(false).getAttribute("application")).getAppName() %></small>
</span>
<i class="ace-icon fa fa-caret-down"></i>
</a>
<ul id="applist" class="user-menu dropdown-menu-right dropdown-menu dropdown-yellow dropdown-caret dropdown-close">
<%
for(ApplicationEntity app : appMaps) {
if(app.getAppId().equalsIgnoreCase((String)request.getSession(false).getAttribute("app_id"))){
continue;
}
%>
<li>
<!-- href="${ctx }/pages/user/changeApp.do?appId=<%=app.getAppId() %>" href="javascript:void(0);" onclick="ChangeApp('<%=app.getAppId()%>','<%=app.getAppName()%>')" -->
<a href="javascript:void(0);" onclick="ChangeApp('<%=app.getAppId()%>','<%=app.getAppName()%>')">
<i class="fa fa-flag green bigger-130"></i>
<%=app.getAppName() %>
</a>
</li>
<%}%>
</ul>
</li>
<li class="light-blue">
<a data-toggle="dropdown" href="#" class="dropdown-toggle">
<img class="nav-user-photo" src="${ctx }/resource/js/plugins/ace/avatars/avatar4.png" alt="${login_session_user.userName}" />
<span class="user-info">
<small>欢迎光临,</small>
${bpm_login_session_user.userName}
</span>
<i class="ace-icon fa fa-caret-down"></i>
</a>
<ul class="user-menu dropdown-menu-right dropdown-menu dropdown-yellow dropdown-caret dropdown-close">
<li>
<a href="pages/user/logout.do">
<i class="ace-icon fa fa-power-off"></i>
注销
</a>
</li>
</ul>
</li>
<!-- /section:basics/navbar.user_menu -->
</ul>
</div>
<!-- /section:basics/navbar.dropdown -->
</div><!-- /.navbar-container -->
</div>
</c:if>
<!-- /section:basics/navbar.layout -->
<div class="main-container" id="main-container">
<script type="text/javascript">
try{ace.settings.check('main-container' , 'fixed')}catch(e){}
</script>
<!-- #section:basics/sidebar -->
<c:if test="${customSso != '1'}">
<div id="sidebar" class="sidebar responsive">
<script type="text/javascript">
try{ace.settings.check('sidebar' , 'fixed')}catch(e){}
</script>
<!--<div class="sidebar-shortcuts" id="sidebar-shortcuts">
<div class="sidebar-shortcuts-large" id="sidebar-shortcuts-large">
<button class="btn btn-success">
<i class="ace-icon fa fa-signal"></i>
</button>
<button class="btn btn-info">
<i class="ace-icon fa fa-pencil"></i>
</button>
<button class="btn btn-warning">
<i class="ace-icon fa fa-users"></i>
</button>
<button class="btn btn-danger">
<i class="ace-icon fa fa-cogs"></i>
</button>
</div>
<div class="sidebar-shortcuts-mini" id="sidebar-shortcuts-mini">
<span class="btn btn-success"></span>
<span class="btn btn-info"></span>
<span class="btn btn-warning"></span>
<span class="btn btn-danger"></span>
</div>
</div>--><!-- /.sidebar-shortcuts -->
<!-- /.菜单 -->
<%@ include file="menu.jsp" %>
<!-- #section:basics/sidebar.layout.minimize -->
<div class="sidebar-toggle sidebar-collapse" id="sidebar-collapse">
<i class="ace-icon fa fa-angle-double-left" data-icon1="ace-icon fa fa-angle-double-left" data-icon2="ace-icon fa fa-angle-double-right"></i>
</div>
<!-- /section:basics/sidebar.layout.minimize -->
<script type="text/javascript">
try{ace.settings.check('sidebar' , 'collapsed')}catch(e){}
</script>
</div>
</c:if>
<!-- /section:basics/sidebar -->
<div class="main-content">
<!-- #section:basics/content.breadcrumbs
<div class="breadcrumbs" id="breadcrumbs">
<script type="text/javascript">
try{ace.settings.check('breadcrumbs' , 'fixed')}catch(e){}
</script>
<ul class="breadcrumb">
<li>
<i class="ace-icon fa fa-home home-icon"></i>
<a href="#">首页</a>
</li>
<li class="active">流程执行管理系统</li>
</ul>--><!-- /.breadcrumb -->
<!-- /section:basics/content.searchbox -->
<!--
</div>-->
<!-- /section:basics/content.breadcrumbs -->
<div class="page-content" style="padding: 2px 2px 24px;">
<div id="iframeDiv" class="page-content-area">
<IFRAME width="100%" height="980px" frameBorder=0 id=frmright name=frmright src="" allowTransparency="true"></IFRAME>
</div>
</div><!-- /.page-content -->
</div><!-- /.main-content -->
<!-- <div class="footer">
<div class="footer-inner">
#section:basics/footer
<div class="footer-content">
<span class="bigger-120">
BPMC流程平台 &copy; 2014-2114
</span>
</div>
/section:basics/footer
</div>
</div> -->
<a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-sm btn-inverse">
<i class="ace-icon fa fa-angle-double-up icon-only bigger-110"></i>
</a>
</div><!-- /.main-container -->
</body>
</html>

View File

@@ -0,0 +1,118 @@
<%@page import="com.blueland.bpm.log.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>EsbMsgLog管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/esbMsgLog/list.do" method="get" style="display: inline;">
<div class="panel panel-primary">
<div class="panel-heading">
节点管理
</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td>节点名称:</td>
<td>
<input class="input" value="" id="title" name="title" maxlength="1000" />
</td>
</tr>
<tr>
<td colspan="7">
<input value="查询" type="submit" class="btn btn-xs btn-primary" onclick="getReferenceForm(this).action='${ctx}/esbMsgLog/list.do'"/>
<input value="新增" type="submit" class="btn btn-xs btn-primary" onclick="getReferenceForm(this).action='${ctx}/esbMsgLog/list.do'"/>
<input value="删除" type="button" class="btn btn-xs btn-danger" onclick="batchDelete('${ctx}/esbMsgLog/delete.do','items',document.forms.queryForm)"/>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width:150px;" sortColumn="title">节点名称</th>
<th style="width:150px;" sortColumn="xmlContent">域名(IP)</th>
<th style="width:100px;" sortColumn="status">服务状态</th>
<th style="width:100px;" sortColumn="createTime">创建时间</th>
<th style="width:250px;" sortColumn="appId" >备注</th>
</tr>
</thead>
<tbody>
<tr class="">
<td><input type="checkbox" name="items" value="logId=&"></td>
<td><a>集团</a>&nbsp;</td>
<td>tam.hngytobacco.com(x.x.x.x)</td>
<td><span class="label label-success">运行中</span>&nbsp;</td>
<td>2015-04-15&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr class="">
<td><input type="checkbox" name="items" value="logId=&"></td>
<td><a>四平</a>&nbsp;</td>
<td>sp.hngytobacco.com(x.x.x.x)</td>
<td><span class="label label-warning">已停止</span>&nbsp;</td>
<td>2016-06-15&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr class="">
<td><input type="checkbox" name="items" value="logId=&"></td>
<td><a>郴州</a>&nbsp;</td>
<td>cz.hngytobacco.com(x.x.x.x)</td>
<td><span class="label label-danger">未发布</span>&nbsp;</td>
<td>2016-06-15&nbsp;</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,142 @@
<%@ page contentType="text/html;charset=UTF-8" %>
<%@page import="java.util.*" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html>
<html lang="zh">
<head>
<%@ include file="/commons/meta.jsp" %>
<link rel="icon" href="${ctx }/resource/css/images/favicon.ico" type="image/x-icon">
<title>BPMC流程中心</title>
</head>
<script>
$(function(){
document.onkeydown = function(e){
var ev = document.all ? window.event : e;
if(ev.keyCode==13) {
login();
}
}
});
function login(){
jQuery.ajax({
type : "POST",
url : "${ctx}/pages/user/login.do",
data : $('#form-login').serialize(),
dataType : "text",
success : function(resp) {
if(resp == "操作成功"){
location = "${ctx}/index.do";
}else{
alert(resp);
}
}
});
}
</script>
<body class="login-layout light-login">
<div class="main-container">
<div class="main-content">
<!-- <div class="row"> -->
<!-- <div class="col-sm-10 col-sm-offset-1"> -->
<div class="login-container">
<!-- <div class="center">
<h1>
<i class="icon-leaf green"></i>
<span class="red">统一流程平台</span>
</h1>
</div> -->
<!-- <div class="space-6"></div> -->
<div class="position-relative">
<div id="login-box" class="login-box visible widget-box no-border">
<div class="widget-body">
<div class="widget-main">
<div class="center">
<h1>
<!-- <i class="icon-leaf green"></i> -->
<img alt="" src="${ctx }/resource/css/images/login-logo.png">
<span class="red">流程中心</span>
</h1>
</div>
<h4 class="header blue lighter bigger">
<i class="icon-coffee green"></i>
请输入您的用户名及密码
</h4>
<div class="space-6"></div>
<form id="form-login" action="pages/user/login.do" method="post">
<fieldset>
<label class="block clearfix">
<span class="block input-icon input-icon-right">
<input type="text" class="form-control" name="userId" value="${userId}" placeholder="用户名" />
<i class="icon-user"></i>
</span>
</label>
<label class="block clearfix">
<span class="block input-icon input-icon-right">
<input type="password" name="password" class="form-control" placeholder="密&nbsp;&nbsp;码" />
<i class="icon-lock"></i>
</span>
</label>
<div class="space"></div>
<div class="clearfix">
<button type="button" class="width-35 pull-right btn btn-sm btn-primary" onclick="login();">
<i class="icon-key"></i>
登录
</button>
</div>
<div class="space-4"></div>
</fieldset>
</form>
<!-- <div class="social-or-login center">
<span class="bigger-110"></span>
</div> -->
<div class="social-login center">
</div>
</div><!-- /widget-main -->
<!-- <div class="toolbar clearfix">
<div>
<a href="#" onclick="show_box('forgot-box'); return false;" class="forgot-password-link">
</a>
</div>
<div>
<a href="#" onclick="show_box('signup-box'); return false;" class="user-signup-link">
</a>
</div>
</div> -->
</div><!-- /widget-body -->
</div><!-- /login-box -->
</div><!-- /position-relative -->
</div>
<!-- </div> --><!-- /.col -->
<!-- </div> --><!-- /.row -->
</div>
</div><!-- /.main-container -->
</body>
</html>

View File

@@ -0,0 +1,389 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<ul class="nav nav-list" id="navmenu">
<%-- <li class="hover active">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processReport/reportByIndex.do')">
<i class="menu-icon fa fa-home"></i>
<span class="menu-text">流程首页</span>
<b class="arrow fa fa-angle-down"></b>
</a>
</li> --%>
<li class="active">
<a href="javascript:void(0);" class="dropdown-toggle">
<i class="menu-icon fa fa-cloud"></i>
<span class="menu-text">流程定义</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu">
<li class="active">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/procDefMgr/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程配置
</a>
<b class="arrow"></b>
</li>
<%-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/procModelMgr/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程建模
</a>
<b class="arrow"></b>
</li> --%>
<%-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/procDefModelMgr/list_dev.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程配置和建模
</a>
<b class="arrow"></b>
</li> --%>
</ul>
</li>
<li class="">
<a href="javascript:void(0);" class="dropdown-toggle">
<i class="menu-icon fa fa-desktop"></i>
<span class="menu-text">流程管理</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu">
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/procInstMgr/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程实例管理
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/taskMgr/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程任务管理
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/procInstMgr/historyList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程历史管理
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/taskMgr/taskTransferList.do?dataType=1')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程待办迁移
</a>
<b class="arrow"></b>
</li>
</ul>
</li>
<li class="">
<a href="#" class="dropdown-toggle">
<i class="menu-icon glyphicon glyphicon-eye-open"></i>
<span class="menu-text">流程日志
<!-- span class="badge badge-transparent tooltip-error" title="子菜单中有5条流程错误数据">
<i class="ace-icon fa fa-exclamation-triangle red bigger-130"></i>
</span-->
</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu">
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processErrorLog/infoList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程运行日志
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processErrorLog/errorList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程错误日志
</a>
<b class="arrow"></b>
</li>
</ul>
</li>
<c:if test="${ebpmAdmin}">
<li class="">
<a href="#" class="dropdown-toggle">
<i class="menu-icon fa fa-list-alt"></i>
<span class="menu-text">流程统计
</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu">
<!-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processReport/reportByIndex.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;统计首页
</a>
<b class="arrow"></b>
</li> -->
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sys/index/porcessStatistics.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程总览
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/flow/monitor/processAnalysis.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程分析
</a>
<b class="arrow"></b>
</li>
<%-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processReport/reportByProcessDef.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;按流程定义统计
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/processReport/reportByDate.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;按流程及时间统计
</a>
<b class="arrow"></b>
</li> --%>
<!-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/pages/processReport/reportByDate2.jsp')">
<i class="menu-icon fa fa-caret-right"></i>
按流程耗时统计
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/pages/processReport/reportByDate3.jsp')">
<i class="menu-icon fa fa-caret-right"></i>
按流程环节耗时统计
</a>
<b class="arrow"></b>
</li> -->
<c:if test="${ebpmAdmin}">
<%-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/appProcessList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程总览
</a>
<b class="arrow"></b>
</li> --%>
<%-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/appProcessLogByYear.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程运行统计(年)
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/appProcessLogByDay.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程运行统计(日)
</a>
<b class="arrow"></b>
</li> --%>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/workflow/proEfficiency.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程效率
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/sysProcessInstList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程实例查询
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/sysTaskList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程待办查询
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/sysMgr/sysYibanTaskList.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程已办查询
</a>
<b class="arrow"></b>
</li>
<!--
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/workflow/proDefEfficiency.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;流程效率统计
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/workflow/proOrgEfficiency.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;组织效率统计
</a>
<b class="arrow"></b>
</li>
-->
</c:if>
</ul>
</li>
</c:if>
<li class="">
<a href="javascript:void(0)" class="dropdown-toggle">
<i class="menu-icon fa fa-folder-o"></i>
<span class="menu-text">其它管理</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu" id="12">
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('pages/sysGlType/mgrMain.jsp')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;流程分类
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/role/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;角色管理
</a>
<b class="arrow"></b>
</li>
<!--
<li class="hover">
<a href="sysScript/list.do" target="frmright">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;定时任务
</a>
<b class="arrow"></b>
</li>
--><!--
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/searchProcessResource/errorlistindex.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;流程资源核查
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/searchProcessResource/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;流程资源搜索
</a>
<b class="arrow"></b> -->
</li>
</ul>
</li>
<c:if test="${ebpmAdmin}">
<li class="">
<a href="javascript:void(0)" class="dropdown-toggle">
<i class="menu-icon fa fa-align-justify"></i>
<span class="menu-text">系统管理</span>
<b class="arrow fa fa-angle-down"></b>
</a>
<b class="arrow"></b>
<ul class="submenu" id="12">
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('applicationMgr/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;应用管理
</a>
</li>
<!--<li class="">
<a href="javascript:void(0)" onclick="iframeChange('dataObject/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;全局变量管理
</a>
<b class="arrow"></b>
</li> -->
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/depute/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;委托代办设置
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/smsConfig/list.do')">
<i class="menu-icon fa fa-commenting-o"></i>&nbsp;&nbsp;&nbsp;短信提醒设置
</a>
<b class="arrow"></b>
</li>
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/smsConfigLog/list.do')">
<i class="menu-icon fa fa-commenting-o"></i>&nbsp;&nbsp;&nbsp;短信发送日志
</a>
<b class="arrow"></b>
</li>
<!--
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/msgRemind/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;待办消息提醒
</a>
<b class="arrow"></b>
</li> -->
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/tlogUserOperate/list.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;用户操作日志
</a>
<b class="arrow"></b>
</li>
<!--
<li class="">
<a href="javascript:void(0)" onclick="toOrgManage()">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;组织机构管理
</a>
<b class="arrow"></b>
</li>-->
<li class="">
<a href="javascript:void(0)" onclick="iframeChange('${ctx}/actInfo/activityRule/listMgr.do')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;脚本管理
</a>
<b class="arrow"></b>
</li>
<!-- <li class="">
<a href="javascript:void(0)" onclick="iframeChange('/ebpm-user-manager-web/pages/org/orgMgrMain.jsp')">
<i class="menu-icon fa fa-caret-right"></i>&nbsp;&nbsp;&nbsp;组织机构管理
</a>
<b class="arrow"></b>
</li> -->
</ul>
</li>
</c:if>
<%-- <c:if test="${ebpmAdmin}">
<li class="">
<a href="<%=com.blueland.bpm.manage.util.MyContants.EBPM_UNITEWORK_MANAGE_PATH%>?userId=${bpm_login_session_user.userId}" target="_blank">
<i class="menu-icon fa fa-pencil-square-o"></i>
<span class="menu-text">统一待办</span>
<!-- <b class="arrow fa fa-angle-down"></b> -->
</a>
<!-- <b class="arrow"></b> -->
</li>
</c:if> --%>
</ul>
<!-- /.nav-list -->
<script>
/* $(function(){
$('#navmenu li a').click(function(){
if($(this).attr("class")=="dropdown-toggle"){return;}
//alert($(this).closest(".submenu").closest("li").attr("id"));
//$("#navmenu li").removeClass("active");
$("#navmenu li").removeClass("active open");
$("#navmenu ul").addClass("nav-hide");
$("#navmenu ul").hide();
$(this).closest(".submenu").show();
$(this).closest(".submenu").closest("li").addClass("active open");
$(this).parent().addClass("active");})
}); */
$('#navmenu li a').click(function(){
if($(this).attr("class")=="dropdown-toggle"){return;}
//alert($(this).closest(".submenu").closest("li").attr("id"));
//$("#navmenu li").removeClass("active");
$("#navmenu li").removeClass("active open");
$("#navmenu ul").addClass("nav-hide");
$("#navmenu ul").hide();
$(this).closest(".submenu").show();
$(this).closest(".submenu").closest("li").addClass("active open");
$(this).parent().addClass("active");
});
$("li").click(function (){
if($(this).hasClass("active")){
}else{
$("#navmenu").find("li").each(function(){
$(this).removeClass("active");
});
//$(this).addClass("active");
}
});
function toOrgManage(){
window.open("https://www.rzdata.net/share-platform-user/#/staff/gylist")
}
</script>

View File

@@ -0,0 +1,141 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节设置</title>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css"
rel="stylesheet" type="text/css" />
<script type='text/javascript'
src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script>
$(document).ready(function() {
var key = $("#key").val();
window.parent.postMessage(
{
cmd: 'ebpm',
params: {"procDefKey":key}
},
'*'
)
});
function changeHref(id, srcStr) {
var currentId = $(".active").find("a").attr("id");
var isChange = $("#isChange").val();
var isRedirect = true;//是否跳转页面
if("UserContract"==currentId){//当前是基础配置,点击别的菜单会出现提示是否保存的按钮
if("1"==isChange){//内容有更改
//提示是否保存前面的操作
if(confirm("是否保存当前数据?")){
document.getElementById(id).contentWindow.save();
isRedirect = false;//当选择确认保存后 留在当前页面
$("#"+currentId).parent().addClass("active");
}else{
$("#isChange").val("0");//保存完毕后把是否已修改还原成未修改
}
}
}
//if(isRedirect){
//返回时跳转步数+1
var backSteps = $("#backSteps").val();
$("#backSteps").val(parseInt(backSteps)+1);
document.getElementById(id).src = srcStr;
//}
//$("#myTab3").find('li').removeClass("active");
}
function iframeHeight(down){
var height = "";
var imgHeight = $("#imgHeight").val();
if(imgHeight==""){
height = $("#"+down).contents().find("body").height();
if(height==0){
height=800;
}
}else{
height = imgHeight;
}
if(height==0){
height=$("#"+down).height();
}
$("#"+down).height(height+20);
}
function gobacktolist(){
var isRedirect = true;//是否跳转页面
var isChange = $("#isChange").val();
if("1"==isChange){//内容有更改
//提示是否保存前面的操作
if(confirm("是否保存当前数据?")){
document.getElementById(id).contentWindow.save();
isRedirect = false;//当选择确认保存后 留在当前页面
}else{
$("#isChange").val("0");//保存完毕后把是否已修改还原成未修改
}
}
document.getElementById(id).src = srcStr;
}
function goback(){
var backSteps = $("#backSteps").val();
history.go(-parseInt(backSteps));
}
function publishProcess(url){
postAjax(url,'发布成功!',false,true);
}
</script>
</head>
<body>
<div class="main-container" id="main-container">
<div class="panel-heading"
style="color: #FFF; background-color: #428BCA; border-color: #428BCA;">
<span style="font-size: 14px;">环节名称:${activity.activityDefName}</span>
</div>
<div class="row" style="margin-right: 0;">
<div class="col-xs-12">
<div class="tabbable">
<input type="hidden" id="isChange" value="0" />
<ul class="nav nav-tabs padding-12 tab-color-blue background-blue"
id="myTab3">
<li class="active"><a id="UserContract" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityInfo/edit.do?activityDefId=${activity.activityDefId}&processDefId=${activity.processDefId }&sys=${sys}');"
href="" target="frmrightChild">基础配置</a></li>
<li><a id="UserEducation" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/actInfo/setActResource/list.do?actId=${activity.activityDefId}&procDefId=${activity.processDefId}')"
target="frmrightChild">环节人员</a></li>
<li><a id="NoticeRemind" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/actInfo/sequenceFlow/list.do?actId=${activity.activityDefId}&procDefId=${activity.processDefId}')"
target="frmrightChild">环节输出</a></li>
<li><a id="UserEducation" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/dataObjectRelation/activityList.do?activityDefId=${activity.activityDefId}&processDefId=${activity.processDefId}')"
target="frmrightChild">环节扩展属性</a></li>
</ul>
<div class="tab-content" style="width: 100%; height: 100%;">
<IFRAME style="width: 100%; height: 800px;" scrolling="no" src="${ctx}/activityInfo/edit.do?activityDefId=${activity.activityDefId}&processDefId=${activity.processDefId }&sys=${sys}"
frameBorder="0" id="frmrightChild" name="frmrightChild"
onload="iframeHeight('frmrightChild')" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,148 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程操作权限配置</title>
<script>
$(function(){
var demo=$("#myform").Validform({tiptype:4, ajaxPost:true,
callback:function(data){
alert(data.responseText);
if(data.responseText == '创建成功'){
window.location='${ctx}/actInfo/activityOperatePower/list.do';
}
}});
$("#submitButton").click(function() {
demo.ajaxPost();
return false;
});
})
function changeFunc() {
var selOpScopeVals = "";
var opScopeVal = "";
selOpScopeVals = $("#opScopeSel").val();
if (selOpScopeVals == "点击进行多选") {
selOpScopeVals = "";
}
if (selOpScopeVals != "") {
for (var i = 0; i < selOpScopeVals.length; i++) {
if (i == 0) {
opScopeVal += ";" + selOpScopeVals[i] + ";";
} else {
opScopeVal += selOpScopeVals[i] + ";";
}
}
}
$("#opScope").val(opScopeVal);
}
</script>
</head>
<body class="white-page">
<form method="post" id="myform" action="${ctx}/actInfo/activityOperatePower/save.do">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<td>环节权限ID<font color="red">*</font>
</td>
<td><input type="text" id="opId" name="opId" value=""
datatype="*" nullmsg="请输入环节权限ID"
/></td>
</tr>
<tr>
<td>环节权限名称<font color="red">*</font>
</td>
<td><input type="text" name="opName" value="" id="opName"
style="width: 400px"
datatype="*" nullmsg="请输入环节权限名称"/></td>
</tr>
<tr style="display: none">
<td>环节权限控制处理器:</td>
<td><input type="text" name="opClassPatd" value=""
id="opClassPatd" style="width: 400px" /></td>
</tr>
<tr>
<td>环节权限类型<font color="red">*</font>
</td>
<td><select id="opType" name="opType" style="widtd: 300px" datatype="*" nullmsg="请选择环节权限类型">
<c:forEach items="${activityOperatePower.opTypeMap}"
var="item">
<option value="${item.key }">${item.value}</option>
</c:forEach>
</select></td>
</tr>
<tr>
<td>环节权限范围:</td>
<td><select onchange="changeFunc()" id="opScopeSel"
name="opScopeSel" autoWidth="true" style="width: 250px;"
multiple>
<c:forEach items="${activityOperatePower.opScopeMap}"
var="item">
<option ${item.key=='0'?'rel=exclusive':''}
value="${item.key }">${item.value}</option>
</c:forEach>
</select> <input type="hidden" id="opScope" name="opScope" value="" /></td>
</tr>
<tr style="display: none">
<td>环节权限父ID</td>
<td><input type="text" name="opParentId" value=""
id="opParentId" /></td>
</tr>
<tr>
<td>环节权限排序:</td>
<td><input type="text" name="opSort" value="" id="opSort" /></td>
</tr>
<tr>
<td>默认是否与环节绑定:</td>
<td><select id="opDefaultBind" name="opDefaultBind"
style="widtd: 300px">
<option value="">--请选择--</option>
<c:forEach items="${activityOperatePower.opDefaultBindMap}"
var="item">
<option value="${item.key }">${item.value}</option>
</c:forEach>
</select></td>
</tr>
<tr>
<td>备注:</td>
<td><textarea rows="" cols="" name="opRemark" value=""
id="opRemark"></textarea></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary"
name="submitButton" type="button">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="window.location='${ctx}/actInfo/activityOperatePower/list.do'">
<span class="icon_back">返回<i class="ace-icon fa fa-arrow-left"></i></span>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,131 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程操作权限编辑</title>
<script>
function changeFunc(){
var selOpScopeVals="";
var opScopeVal="";
selOpScopeVals=$("#opScopeSel").val();
if(selOpScopeVals=="点击进行多选"){
selOpScopeVals="";
}
if(selOpScopeVals!=""){
for(var i=0;i<selOpScopeVals.length;i++){
if(i==0){
opScopeVal+=";"+selOpScopeVals[i]+";";
}else{
opScopeVal+=selOpScopeVals[i]+";";
}
}
}
$("#opScope").val(opScopeVal);
}
</script>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/activityOperatePower/update.do" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<!-- 存放表单的区域 -->
<tr>
<td>环节权限ID<font color="red">*</font>
</td>
<td><input type="text" id="opId" name="opId" readonly="readonly" value="${activityOperatePower.opId}" />
</td>
</tr>
<tr>
<td>环节权限名称<font color="red">*</font>
</td>
<td><input type="text" name="opName"
value="${activityOperatePower.opName}" id="opName" style="width: 400px"/></td>
</tr>
<tr style="display: none">
<td>环节权限控制处理器:</td>
<td><input type="text" name="opClassPath"
value="${activityOperatePower.opClassPath}" id="opClassPath"
style="width: 400px"/></td>
</tr>
<tr>
<td>环节权限类型<font color="red">*</font>
</td>
<td><select id="opType" name="opType" style="width: 300px">
<c:forEach items="${activityOperatePower.opTypeMap}" var="item">
<option ${activityOperatePower.opType== item.key?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select></td>
</tr>
<tr>
<td>环节权限范围<font color="red">*</font></td>
<td>
<select onchange="changeFunc()" id="opScopeSel" name="opScopeSel" autoWidth="true" style="width:250px;" multiple>
<c:forEach items="${activityOperatePower.opScopeMap}" var="item">
<option ${item.key=='0'?'rel=exclusive':''} ${fn:indexOf(activityOperatePower.opScope, item.key)!=-1?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select></td>
<input type="hidden" id="opScope" name="opScope" value="${activityOperatePower.opScope }"/>
</tr>
<tr style="display: none">
<td>环节权限父ID</td>
<td><input type="text" name="opParentId"
value="${activityOperatePower.opParentId}" id="opParentId"
/></td>
</tr>
<tr>
<td>环节权限排序:</td>
<td><input type="text" name="opSort"
value="${activityOperatePower.opSort}" id="opSort" /></td>
</tr>
<tr>
<td>默认是否与环节绑定:</td>
<td>
<select id="opDefaultBind" name="opDefaultBind" style="width: 300px">
<c:forEach items="${activityOperatePower.opDefaultBindMap}" var="item">
<option ${activityOperatePower.opDefaultBind== item.key?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<td>备注:</td>
<td><textarea rows="" cols="" name="opRemark" value="${activityOperatePower.opRemark}" id="opRemark"></textarea></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary" name="submitButton" type="submit">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="window.location='${ctx}/actInfo/activityOperatePower/list.do'">
<span class="icon_back">返回</span>
<i class="ace-icon fa fa-arrow-left"></i>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,176 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>流程操作权限配置表管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm','${page.thisPageNumber}','${page.pageSize}','${pageRequest.sortColumns}');
});
function bindPower(myUrl){
if (!hasOneChecked("opIds")) {
alert('请选择要操作的对象!');
return;
}
jQuery.ajax({
url: myUrl,
data: $('#queryForm',document).serialize(),
type: "POST",
success: function(resp)
{
alert(resp);
art.dialog.opener.location.reload();
}
});
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/actInfo/activityOperatePower/list.do" method="get" style="display: inline;">
<input name="activityDefId" id="activityDefId" value="${activityInfoConfig.activityDefId}" type="hidden" />
<input name="processDefId" id="processDefId" value="${activityInfoConfig.processDefId}" type="hidden" />
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td>名称:</td>
<td>
<input class="input" value="${query.opName}" id="opName" name="opName" maxlength="50" />
</td>
<td>类型:</td>
<td>
<select id="opType" name="opType">
<option value="">--请选择--</option>
<c:forEach items="${query.opTypeMap}" var="item">
<option ${query.opType== item.key?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<td>范围:</td>
<td>
<select id="opScope" name="opScope">
<option value="">--请选择--</option>
<c:forEach items="${query.opScopeMap}" var="item">
<option ${query.opScope== item.key?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select>
</td>
<td>是否默认绑定:</td>
<td>
<select id="opDefaultBind" name="opDefaultBind">
<option value="">--请选择--</option>
<c:forEach items="${query.opDefaultBindMap}" var="item">
<option ${query.opDefaultBind== item.key?"selected":""} value="${item.key }">${item.value}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<td colspan="7">
<button type="button" onclick="bindPower('${ctx}/activityInfo/addActOperatePower.do');" class="btn btn-xs btn-success">
绑&nbsp;&nbsp;定<i class="ace-icon fa fa-chain bigger-110"></i></span>
</button>
<button type="submit" onclick="getReferenceForm(this).action='${ctx}/actInfo/activityOperatePower/list.do'" class="btn btn-xs btn-primary">
<span class="icon_find">查&nbsp;&nbsp;询<i class="ace-icon fa fa-search bigger-110"></i></span>
</button>
<button type="submit" onclick="getReferenceForm(this).action='${ctx}/actInfo/activityOperatePower/create.do'" class="btn btn-xs btn-success">
新&nbsp;&nbsp;增<i class="ace-icon fa fa-plus bigger-110"></i></span>
</button>
<button type="button" onclick="batchDelete('${ctx}/actInfo/activityOperatePower/delete.do','opIds',document.forms.queryForm)" class="btn btn-xs btn-danger">
删&nbsp;&nbsp;除<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
<button onclick="art.dialog.close();" type="button" class="btn btn-xs btn-primary">
关&nbsp;&nbsp;闭<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('opIds',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th width="100px" >名称</th>
<th width="100px" >类型</th>
<th width="100px" >范围</th>
<!-- <th>控制处理器</th>-->
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>
<c:if test='${item.tenantId != null }'>
<input type="checkbox" name="opIds" value="${item.opId}">&nbsp;
</c:if>
</td>
<td>
<c:if test="${item.tenantId == null }">
<c:out value='${item.opName }'/>
</c:if>
<c:if test='${item.tenantId != null }'>
<a href="${ctx}/actInfo/activityOperatePower/edit.do?opId=${item.opId}&">${item.opName}</a>&nbsp;
</c:if>
</td>
<td><c:out value='${item.opTypeVal}'/>&nbsp;</td>
<td><c:out value='${item.opScopeVal}'/>&nbsp;</td>
<!-- <td><c:out value='${item.opClassPath}'/>&nbsp;</td> -->
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,137 @@
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程操作权限配置表管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script>
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<div id="scrollContent" class="border_gray">
<form id="queryForm" name="queryForm"
action="${ctx}/activityInfo/actOperatePowerList.do"
method="get" style="display: inline;">
<input name="activityDefId" id="activityDefId"
value="${query.activityDefId}" type="hidden" /> <input
name="processDefId" id="processDefId" value="${query.processDefId}"
type="hidden" />
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="form-group well well-sm" style="margin: 0 0 5px 10px !important;padding: 0 !important;">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search form-table">
<tr>
<td colspan="7">
<button type="button"
onclick="showDiaLog('${ctx}/actInfo/activityOperatePower/list.do?activityDefId=${query.activityDefId}&processDefId=${query.processDefId}','绑定环节权限','900px','600px');" class="btn btn-xs btn-success">
绑&nbsp;&nbsp;定
<i class="ace-icon fa fa-chain bigger-110"></i>
</button>
<button type="button"
onclick="removePower('${ctx}/activityInfo/removeActOperatePower.do')" class="btn btn-xs btn-danger">
删&nbsp;&nbsp;除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
<button onclick="art.dialog.close();" type="button"
class="btn btn-xs btn-primary">
关&nbsp;&nbsp;闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive" style="padding: 0 !important;margin: 0 0 0 10px !important;">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('opIds',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="opName">权限名称</th>
<th sortColumn="opType">权限类型</th>
<th sortColumn="opSort">权限排序</th>
<th sortColumn="opScope">权限范围</th>
<!-- <th sortColumn="opClassPath">权限控制处理器</th> -->
</tr>
</thead>
<tbody>
<c:forEach items="${activityOperatePowerList}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="opIds" value="${item.opId}"></td>
<td><c:out value='${item.opName}' />&nbsp;</td>
<td><c:out value='${item.opTypeVal}' />&nbsp;</td>
<td><c:out value='${item.opSort}' />&nbsp;</td>
<td><c:out value='${item.opScopeVal}' />&nbsp;</td>
<!--<td><c:out value='${item.opClassPath}' />&nbsp;</td> -->
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>
<script>
function removePower(myUrl){
if (!hasOneChecked("opIds")) {
alert('请选择要操作的对象!');
return;
}
jQuery.ajax({
url: myUrl,
data: $('#queryForm',document).serialize(),
type: "POST",
success: function(resp)
{
alert(resp);
window.location.reload();
}
});
}
</script>

View File

@@ -0,0 +1,344 @@
<%@page
import="com.blueland.bpm.engine.core.model.ProcessDefinitionModel"%>
<%@page import="com.blueland.bpm.engine.config.model.ProcessInfoConfig"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>环节配置</title>
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/bpmn/css/diagram-js.css" />
</head>
<body class="white-page">
<div class="main-container" id="main-container">
<input type="hidden" id="processDefId" name ="processDefId" value="${query.processDefId}"/>
<div class="canvas">
<div id="js-canvas"></div>
</div>
</div>
<!-- viewer -->
<script type='text/javascript'src="${ctx}/resource/js/plugins/bpmn/bpmn-navigated-viewer.development.js"></script>
<script type="text/javascript">
var height1 = window.parent.document.documentElement.clientHeight;
var windowHeight = (parseInt(height1)-200)
var viewer = new BpmnJS({
container: document.querySelector('#js-canvas'),
height: windowHeight
});
var procDefId,
processTrace,
processDetailLogs;
var arrayActId=[];
var typeList = ["bpmn:Process","bpmn:SubProcess","label","bpmn:SequenceFlow"]
$(function(){
procDefId = $("#processDefId").val();
getXmlContent()
})
//获取xml数据
function getXmlContent(){
var url="${ctx}/procDefModelMgr/showProcessXml.do";
$.ajax({
url : url,
data:{"procDefId":procDefId},
cache : false,
async : false,
type : "POST",
success : function (data){
createNewDiagram(data.bpmnXml);
}
});
}
function createNewDiagram (bpmnXmlStr) {
viewer.importXML(bpmnXmlStr, function (err) {
if (err) {
console.error(err)
}else{
var canvas = viewer.get('canvas');
canvas.zoom('fit-viewport');
appendHtml();
dealLine(canvas);
}
})
}
function hidenDiv(id){
document.getElementById(id).style="display:none";
document.querySelectorAll("[signDiv]").forEach(function(item) {
if(document.getElementById(item.id) !=null){//去掉所有的环节详细数据,防止页面延迟,没有消失显示的详情信息
document.getElementById(item.id).style="display:none";
}
});
}
function showLineDiv(id){
document.getElementById(id).style="display:block";
}
function hidenLineDiv(id){
document.getElementById(id).style="display:none";
document.querySelectorAll("[lineDiv]").forEach(function(item) {
if(document.getElementById(item.id) !=null){//去掉所有的环节详细数据,防止页面延迟,没有消失显示的详情信息
document.getElementById(item.id).style="display:none";
}
});
}
function showDiv(id){
document.getElementById(id).style="display:block";
}
//拼接环节详细信息
function appendHtml(){
var eventBus = viewer.get('eventBus');
var events = [
'element.hover',
'element.out',
];
var overlays = viewer.get('overlays');
events.forEach(function(event) {
eventBus.on(event, function(e) {
var thisNode=document.getElementById('div_'+e.element.id);
var id = e.element.id.split("_")[0];
var thisLinkNode=document.getElementById('line_'+id);
if(!typeList.includes(e.element.type)){
if(event=='element.hover'){
dealActHtml(overlays,event,e);
}
if(event=='element.out' && thisNode != null){
document.getElementById('div_'+e.element.id).style="display:none";
document.querySelectorAll("[signDiv]").forEach(function(item) {
if(document.getElementById(item.id) !=null){//去掉所有的环节详细数据,防止页面延迟,没有消失显示的详情信息
document.getElementById(item.id).style="display:none";
}
});
}
}else if(e.element.type =='label'){//处理输出线的名称
var listLine= viewer._getLineName.filter(function(item){//判断这个输出线是否是截取的输出线名称
return item.id == id;
})
if(listLine.length>0){
if(event=='element.hover'){
if(thisLinkNode!=null){
document.getElementById("line_"+id).style="display:block";
}else{
appendLineHtml(overlays,event,id);
}
}
}
if(event=='element.out'){
if(document.getElementById('line_'+id) !=null){//去掉输出线的显示
document.getElementById('line_'+id).style="display:none";
}
document.querySelectorAll("[lineDiv]").forEach(function(item) {
if(document.getElementById(item.id) !=null){//去掉所有的输出线显示
document.getElementById(item.id).style="display:none";
}
});
}
}
});
});
}
//环节信息
function dealActHtml(overlays,event,e){
var html = new Array();
var thisNode=document.getElementById('div_'+e.element.id);
var listAct= arrayActId.filter(function(item){//判断这个节点是否
return item == ('div_'+e.element.id);
})
if(listAct.length==0){
arrayActId.push('div_'+e.element.id);
}
if(listAct.length>0){
if(thisNode!=null){
document.getElementById('div_'+e.element.id).style="display:block";
}
return;
}
var id = e.element.id;
var oldtitle= e.element.name;
var type = e.element.type;
html.push('<div class="lchj-set" signDiv="flag" onmouseover="showDiv(\'div_'+e.element.id+'\')" onmouseleave="hidenDiv(\'div_'+e.element.id+'\')" id="div_'+e.element.id+'"><div class="box-head"><span class="title">'+oldtitle+'</span></div><div class="box-body">');
html.push("<ul class='actDetail_set'>");
if(type=="bpmn:ServiceTask"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editServiceTaskView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'服务任务设置','980px','600px');\">服务任务设置</a></li>");
}else if(type=="bpmn:ScriptTask"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editScriptTaskView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'脚本任务设置','980px','600px');\">脚本任务设置</a></li>");
}else if(type=='bpmn:ReceiveTask'){//接收任务
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/actOperatePowerList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节操作权限设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节操作权限设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/dataObjectRelation/activityList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节扩展属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节扩展属性设置</a></li>");
}else if(type=='bpmn:ManualTask'){//线下任务
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
}else if(type=="bpmn:CallActivity"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editCallActivityView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'子流程设置','980px','600px');\">子流程设置</a></li>");
if(id!=""){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/procDefMgr/callactivityconfig.do?callActivityProcKey="+id+"&isSubProcess=1&sys=${appId}&mAppId=${mAppId}");
html.push("' ,'关联子流程设置','980px','600px');\">关联子流程设置</a></li>");
}
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
}else if(type=="bpmn:ExclusiveGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByCd.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'条件网关','980px','600px');\">条件网关设置</a></li>");
}else if(type=="bpmn:InclusiveGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByIc.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'包容网关','980px','600px');\">包容网关设置</a></li>");
}else if(type=="bpmn:ParallelGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByIc.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'并行网关','980px','600px');\">并行网关设置</a></li>");
}else{
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }&sys=${appId}&mAppId=${mAppId}");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
html.push("<li><a id='actDefUser' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/setActResource/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节人员设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节人员设置</a></li>");
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/actOperatePowerList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节操作权限设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节操作权限设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/dataObjectRelation/activityList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节扩展属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节扩展属性设置</a></li>");
<%-- html.push("<li><a id='actDefRoelOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("<%=MyContants.KSKF_PAHT%>"+"/dev-plateform-web/#/roleFormField?formId=${formId}&procDefKey=${procDefKey}&appId=${appId}&actDefId="+id+"&formCode=${formCode}&modelId=${modelId}&processDefId=${query.processDefId}");
html.push("' ,'环节表单设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节表单设置</a></li>"); --%>
if(e.element.isMulti==true){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/activityFinishRule/create.do?sourceActId="+id+"&procDefId=${query.processDefId}&sourceActName=" + oldtitle);
html.push("' ,'环节完成条件设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节完成条件设置</a></li>");
}
}
html.push('</ul></div>');
var content = html.join('');
if(event=='element.hover'){
overlays.add(e.element.id, 'note', {
position: {
bottom: 0,
right: 0
},
html: content
});
}
}
function appendLineHtml(overlays,event,id){//拼写输出线名称
var html = new Array();
var hash = {};//数组去重
var lineList = viewer._getLineName.reduce(function(item, next) {
hash[next.id] ? '' : hash[next.id] = true && item.push(next);
return item;
}, []);
var thisNode=document.getElementById('line_'+id);
var list= lineList.filter(function(item){//判断这个输出线是否是截取的输出线名称
return item.id == id;
})
var listAct= arrayActId.filter(function(item){//判断这个节点是否
return item == id;
})
if(listAct.length==0){
arrayActId.push('line_'+id);
}
if(thisNode!=null && listAct.length==0){
document.getElementById('line_'+id).style="display:block";
return;
}
html.push('<div class="lchj-box" lineDiv="flag" onmouseover="showLineDiv(\'line_'+id+'\')" onmouseleave="hidenLineDiv(\'line_'+id+'\')" id="line_'+list[0].id+'"><div class="box-body">'+list[0].name);
html.push('</div></div>');
var content = html.join('');
//alert(list[0].name)
if(event=='element.hover'){
overlays.add(id, {
position: {
bottom: 0,
right: 0
},
html: content
});
}
}
//处理线的名称样式
function dealLine(canvas){
var hash = {};//数组去重
var lineList = viewer._getLineId.reduce(function(item, next) {
hash[next] ? '' : hash[next] = true && item.push(next);
return item;
}, []);
var colorClass = "highlight-label";
lineList.forEach(function(item){
canvas.addMarker(item+"_label", colorClass)
})
}
</script>
</body>
</html>

View File

@@ -0,0 +1,280 @@
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="com.blueland.bpm.manage.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节配置</title>
<style>
/* some elements used in demo only */
.spinner-preview {
width: 100px;
height: 100px;
text-align: center;
margin-top: 60px;
}
.dropdown-preview {
margin: 0 5px;
display: inline-block;
}
.dropdown-preview > .dropdown-menu {
display: block;
position: static;
margin-bottom: 5px;
}
</style>
<link href="${ctx }/resource/js/plugins/jquery.qtip.css" rel="stylesheet" type="text/css" media="screen" />
<script src="${ctx }/resource/js/plugins/easyTemplate.js" type="text/javascript"></script>
<script src="${ctx }/resource/js/plugins/jquery.qtip.js" type="text/javascript"></script>
<script type="text/javascript">
var defId ="";
var actDefId ="";
var deployId= "";
var menu;
//判断参数是否加载
var isOtherParamFrm=false;
var currentObj=null;
$(function (){
//setContainerHeightWidth();
$("div.flowNode").each(function(){
$(this).bind({mouseenter:function(){
currentObj=$(this);
}});
currentObj=$(this);
var nodeId =currentObj.attr('id');
var type=currentObj.attr("type"),title=currentObj.attr("title");
//alert(type);
var id=currentObj.attr("id"),oldtitle=currentObj.attr("oldtitle");
if(oldtitle=="null"){
oldtitle="(暂未设置名称)";
}else{
oldtitle=oldtitle.replace(/\"/g,"”");
}
var html=["<div class='dropdown dropdown-preview'><ul class='dropdown-menu dropdown-info dropdown-menu-right'>"];
if(type=="serviceTask"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editServiceTaskView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'服务任务设置','980px','600px');\">服务任务设置</a></li>");
}else if(type=="scriptTask"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editScriptTaskView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'脚本任务设置','980px','600px');\">脚本任务设置</a></li>");
}else if(type=='receiveTask'){//接收任务
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/actOperatePowerList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节操作权限设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节操作权限设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/dataObjectRelation/activityList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节扩展属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节扩展属性设置</a></li>");
}else if(type=='manualTask'){//线下任务
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
}else if(type=="callActivity"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/otherTask/editCallActivityView.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'子流程设置','980px','600px');\">子流程设置</a></li>");
var callActivityProcKey=currentObj.attr("callActivity");
if(callActivityProcKey!=""){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/procDefMgr/callactivityconfig.do?callActivityProcKey="+callActivityProcKey+"&isSubProcess=1&sys=${appId}&mAppId=${mAppId}");
html.push("' ,'关联子流程设置','980px','600px');\">关联子流程设置</a></li>");
}
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
}else if(type=="exclusiveGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByCd.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'条件网关','980px','600px');\">条件网关设置</a></li>");
}else if(type=="inclusiveGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByIc.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'包容网关','980px','600px');\">包容网关设置</a></li>");
}else if(type=="parallelGateway"){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/gateway/editGatewayByIc.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'并行网关','980px','600px');\">并行网关设置</a></li>");
}else{
html.push("<li><a id='actDefInfo' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/edit.do?activityDefId="+id+"&processDefId=${query.processDefId }&sys=${appId}&mAppId=${mAppId}");
html.push("' ,'环节属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节属性设置</a></li>");
html.push("<li><a id='actDefUser' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/setActResource/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节人员设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节人员设置</a></li>");
html.push("<li><a id='actSequenceFlow' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/sequenceFlow/list.do?actId="+id+"&procDefId=${query.processDefId}");
html.push("' ,'环节输出线设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节输出线设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/activityInfo/actOperatePowerList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节操作权限设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节操作权限设置</a></li>");
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/dataObjectRelation/activityList.do?activityDefId="+id+"&processDefId=${query.processDefId}");
html.push("' ,'环节扩展属性设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节扩展属性设置</a></li>");
<%-- html.push("<li><a id='actDefRoelOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("<%=MyContants.KSKF_PAHT%>"+"/dev-plateform-web/#/roleFormField?formId=${formId}&procDefKey=${procDefKey}&appId=${appId}&actDefId="+id+"&formCode=${formCode}&modelId=${modelId}&processDefId=${query.processDefId}");
html.push("' ,'环节表单设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节表单设置</a></li>"); --%>
if(currentObj.attr("isMulti") == 'true'){
html.push("<li><a id='actDefOperate' href='javascript:void(0)'");
html.push(" onclick=\"showDiaLog('");
html.push("${ctx}/actInfo/activityFinishRule/create.do?sourceActId="+id+"&procDefId=${query.processDefId}&sourceActName=" + oldtitle);
html.push("' ,'环节完成条件设置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前环节->"+oldtitle+"','980px','600px');\">环节完成条件设置</a></li>");
}
}
html.push('</ul></div>');
//alert(html.join(''));
$(this).qtip({
content:{
text : function() {
if(type=="description"){
return getTaskDefinitionDescriptionHtml(nodeId);
}else{
return html.join('');
}
},
title:{
text:type=="description"?"环节输出线说明":oldtitle
}
},
position: {
at:'center',
target:'event',
adjust: {
x:-15,
y:-15
},
viewport: $(window)
},
show:{
effect: function(offset) {
$(this).slideDown(200);
}
},
hide: {
event:'click mouseleave',
leave: false,
fixed:true,
delay:300
},
style: {
width : type=="description"?270:180,
classes:'ui-tooltip-light ui-tooltip-shadow'
}
});
});
//调整父页面高度
var height = "${imageHeight}";
if(height>800){
$("#imgHeight",window.parent.document).val(parseInt(height)+80);
$("#imgdiv").height(parseInt(height)+78);
}else{
$("#imgdiv").height(800);
}
});
//显示输出线描述
function getTaskDefinitionDescriptionHtml(nodeId){
var html = new Array();
var procDefId="${query.processDefId }";
var url="${ctx}/actInfo/sequenceFlow/viewDescription.do";
$.ajax({
url : url,
data:{"procDefId":procDefId,"sequenceFlowId":nodeId},
cache : false,
async : false,
type : "POST",
success : function (data){
var sequenceFlow = eval(data.sequenceFlow);
html.push('<div class="panel-body"><div id="txtTaskDefHmtl1" style="max-height:310px;width=110px;overflow:auto;">');
html.push('<textarea rows="10" cols="30">');
html.push(sequenceFlow.name);
html.push('</textarea>');
html.push('</div>');
}
});
return html.join('');
};
</script>
<style type="text/css">
div.flowNode{cursor:pointer;}
</style>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/activityInfo/list.do" method="get"
style="display: inline;">
<input name="processDefId" id="processDefId"
value="${query.processDefId }" type="hidden" />
<!-- <div class="panel panel-primary" style="width:${imageWidth+20}px; height:${imageHeight+30}px;"> -->
<div class="panel panel-primary" id="imgdiv" style="width:100%; min-height:800px; overflow: auto;">
<div class="panel-body" style="padding: 3px;">
<div style="padding-left: 30px; display: inline; float: left; margin:20px auto 0;position: relative;background:url('${ctx}/procDefMgr/resource.do?resourceType=image&procDefId=${query.processDefId }') no-repeat;width:${imageWidth+30}px; height:${imageHeight+30}px;">
${processDefinitionDiv}
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,187 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<style>
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 180px;
}
</style>
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
<script>
var demo;
var ischeck = true;
var javaEditor;
$(document).ready(function() {
javaEditor = CodeMirror.fromTextArea(document.getElementById("ruleScript"), {
lineNumbers: true,
matchBrackets: true,
//indentWithTabs: true,
// styleActiveLine: true,
theme:"eclipse",
// smartIndent: true,
// autofocus: true,
mode: "text/x-java"
});
demo = $("#myForm").Validform({
tiptype:function(msg,o,cssctl){
var b = true;
//msg提示信息;
//o:{obj:*,type:*,curform:*}, obj指向的是当前验证的表单元素或表单对象type指示提示的状态值为1、2、3、4 1正在检测/提交数据2通过验证3验证失败4提示ignore状态, curform为当前form对象;
//cssctl:内置的提示信息样式控制函数,该函数需传入两个参数:显示提示信息的对象 和 当前提示的状态既形参o中的type;
if(o.type==3){
if(msg.indexOf("statusText")<0){
//排除掉提交完成后返回的状态字符串
alert(msg);
ischeck = false;
b = false;
return b;
}
}
return b;
},
ajaxPost:true,
beforeSubmit:function(curform){
return false;
}
});
});
function editActivityRule(ruleId){
var url="${ctx}/actInfo/activityFinishRule/getActivityRule.do?ruleId="+ruleId;
$.post(url,function(result){
var jsonObject = eval(result);
$.each(jsonObject, function(name, value) {
if(name=="ruleScript"){
javaEditor.setValue(value);
}else{
var inputObj=$("#"+name);
if(inputObj.attr("type")!="hidden"||name=="ruleId"){
inputObj.val(value);
}
}
});
});
}
function update(){
if($("#ruleId").val()==""){
alert("该规则没有在数据库中,请点击规则列表后再进行更新!");
return;
}
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return ;
}
demo.ajaxPost();
if(ischeck){//如果通过验证
document.getElementById("myForm").action="${ctx}/actInfo/activityFinishRule/update.do";
document.getElementById("myForm").submit();
}
}
function create(){
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return ;
}
demo.ajaxPost();
if(ischeck){//如果通过验证
document.getElementById("myForm").action="${ctx}/actInfo/activityFinishRule/save.do";
document.getElementById("myForm").submit();
}
}
function validate(){
var ruleScript=javaEditor.getValue();;
if(ruleScript==""){
alert("规则脚本不允许为空,请您重新输入!");
return ;
}
var url="${ctx}/actInfo/activityFinishRule/validate.do?ruleScript="+ruleScript;
showDiaLog(url,'验证规则脚本','600px','300px');
}
</script>
</head>
<body class="white-page">
<form id="myForm" action="${ctx}/actInfo/activityFinishRule/save.do" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="well well-sm">
<button id="addButton" name="submitButton" type="button" onclick="create();" class="btn btn-xs btn-success">
新 增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button id="updateButton" name="submitButton" type="button" onclick="update();" class="btn btn-xs btn-success">
更 新
<i class="ace-icon fa fa-pencil bigger-110"></i>
</button>
<button type="button" onclick="art.dialog.close();" class="btn btn-xs btn-danger">
关 闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<input type="hidden" name="ruleId" value="${activityRule.ruleId}" id="ruleId"/>
<input type="hidden" name="procDefId" value="${activityRule.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId"/>
<input type="hidden" name="sourceActName" value="${activityRule.sourceActName}" id="sourceActName"/>
<input type="hidden" name="targetActId" value="${activityRule.targetActId}" id="targetActId"/>
<input type="hidden" name="targetActName" value="${activityRule.targetActName}" id="targetActName"/>
<!-- 存放表单的区域 -->
<tr>
<td>当前环节<font color="red">*</font></td>
<td colspan="3">${activityRule.sourceActName}</td>
</tr>
<tr>
<td>规则名称<font color="red">*</font></td>
<td colspan="3"><input style="width: 250px" type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName"
nullmsg="请填写规则名称" datatype="*"/></td>
</tr>
<tr>
<td>规则脚本<font color="red">*</font></td>
<td colspan="3">
<!-- <a href="javascript:void(0);" onclick="">常用脚本</a>&nbsp;&nbsp;-->
<a href="javascript:void(0);" onclick="validate();">验证脚本</a>
<br/>
<textarea name="ruleScript" id="ruleScript" style="width: 700px;height: 50px">${activityRule.ruleScript}</textarea>
<br/>
环节跳转规则通过groovy脚本定义流程转向开发人员通过控制脚本返回一个布尔值返回值为true时流程将流向目标环节。
</td>
</tr>
<tr>
<td>规则描述:</td>
<td colspan="3"><textarea style="width: 700px;height: 50px" name="ruleRemark" id="ruleRemark">${activityRule.ruleRemark}</textarea></td>
</tr>
</table>
<IFRAME style="width:100%;height:180px;" scrolling="auto" src="${ctx}/actInfo/activityFinishRule/list.do?procDefId=${activityRule.procDefId}&sourceActId=${activityRule.sourceActId}&targetActId=${activityRule.targetActId}" frameBorder="0" id="rightFrame" name="rightFrame" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,60 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程环节规则表编辑</title>
</head>
<body class="white-page">
<div class="box2" panelTitle="更新流程环节规则表" showStatus="false" roller="true">
<form action="${ctx}/actInfo/activityFinishRule/update.do" method="post">
<button id="submitButton" name="submitButton" type="button" onclick="javascript:getReferenceForm(this).submit();">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" onclick="window.location='${ctx}/actInfo/activityFinishRule/list.do'">
<span class="icon_back">返回</span>
</button>
<table class="tableStyle form-table" formMode="true" footer="normal">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="ruleId" name="ruleId" value="${activityRule.ruleId}" />
<!-- 存放表单的区域 -->
<tr>
<td>环节规则名称<font color="red">*</font></td>
<td><input type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName" /></td>
</tr>
<tr>
<td>流程定义ID<font color="red">*</font></td>
<td><input type="text" name="procDefId" value="${activityRule.procDefId}" id="procDefId" /></td>
</tr>
<tr>
<td>源环节ID<font color="red">*</font></td>
<td><input type="text" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId" /></td>
</tr>
<tr>
<td>目标环节ID<font color="red">*</font></td>
<td><input type="text" name="targetActId" value="${activityRule.targetActId}" id="targetActId" /></td>
</tr>
<tr>
<td>环节规则脚本<font color="red">*</font></td>
<td><input type="text" name="ruleScript" value="${activityRule.ruleScript}" id="ruleScript" /></td>
</tr>
<tr>
<td>环节规则优先级:</td>
<td><input type="text" name="rulePriority" value="${activityRule.rulePriority}" id="rulePriority" /></td>
</tr>
<tr>
<td>环节规则描述:</td>
<td><input type="text" name="ruleRemark" value="${activityRule.ruleRemark}" id="ruleRemark" /></td>
</tr>
</table>
</form>
</div>
</body>
</html>

View File

@@ -0,0 +1,84 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>环节规则管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm','${page.thisPageNumber}','${page.pageSize}','${pageRequest.sortColumns}');
});
function editActivityRule(ruleId){
parent.editActivityRule(ruleId);
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/actInfo/activityFinishRule/list.do" method="get" style="display: inline;">
<input type="hidden" name="procDefId" value="${query.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${query.sourceActId}" id="sourceActId"/>
<input type="hidden" name="targetActId" value="${query.targetActId}" id="targetActId"/>
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width:125px;" sortColumn="ruleName" >规则名称</th>
<th sortColumn="ruleScript" >规则脚本</th>
<th style="width:125px;" sortColumn="ruleRemark" >规则描述</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><a href="javascript:void(0);" onclick="editActivityRule('${item.ruleId}');">${item.ruleName}</a></td>
<td>${item.ruleScript}&nbsp; </td>
<td>${item.ruleRemark}&nbsp; </td>
<td>
<a href="${ctx}/actInfo/activityFinishRule/delete.do?ruleId=${item.ruleId}&">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,44 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
</head>
<body>
<form id="myForm" action="${ctx}/actInfo/activityFinishRule/save.do" method="post">
<!-- <button type="button" onclick="art.dialog.close();">
<span class="icon_back">关闭</span>
</button> -->
<table class="tableStyle" formMode="true" footer="normal" style="width: 100%;">
<tr>
<td>结果值:</td>
<td>${ruleScriptValue}</td>
</tr>
<tr>
<td width="20%">结果值类型:</td>
<td>${ruleScriptValueType}</td>
</tr>
<tr>
<td>验证结果:</td>
<td>${validateMsg}</td>
</tr>
</table>
</form>
</body>
</html>

View File

@@ -0,0 +1,182 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<style>
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 180px;
}
</style>
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
<script>
var demo;
var ischeck = true;
var javaEditor;
$(document).ready(function() {
javaEditor = CodeMirror.fromTextArea(document.getElementById("ruleScript"), {
lineNumbers: true,
matchBrackets: true,
//indentWithTabs: true,
// styleActiveLine: true,
theme:"eclipse",
// smartIndent: true,
// autofocus: true,
mode: "text/x-java"
});
$.Tipmsg.r=null;
$("#myForm").Validform({
tiptype:function(msg){
alert(msg);//验证提示信息
},
tipSweep:true,
btnSubmit:"#addButton",
callback:function(form){
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return false;
}
document.getElementById("myForm").action="${ctx}/actInfo/activityResourceRule/save.do";
return true;
}
});
});
function editActivityRule(ruleId){
var url="${ctx}/actInfo/activityResourceRule/getActivityRule.do?ruleId="+ruleId;
$.post(url,function(result){
var jsonObject = eval(result);
$.each(jsonObject, function(name, value) {
if(name=="ruleScript"){
javaEditor.setValue(value);
}else{
var inputObj=$("#"+name);
if(inputObj.attr("type")!="hidden"||name=="ruleId"){
inputObj.val(value);
}
}
});
});
}
function update(){
if($("#ruleId").val()==""){
alert("该规则没有在数据库中,请点击规则列表后再进行更新!");
return;
}
var ruleName = $("#ruleName").val();
if(""==ruleName){
alert("请填写规则名称!");
return ;
}
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return ;
}
document.getElementById("myForm").action="${ctx}/actInfo/activityResourceRule/update.do";
document.getElementById("myForm").submit();
}
function validate(){
var ruleScript=javaEditor.getValue();;
if(ruleScript==""){
alert("规则脚本不允许为空,请您重新输入!");
return ;
}
var url="${ctx}/actInfo/activityResourceRule/validate.do?ruleScript="+ruleScript;
showDiaLog(url,'验证规则脚本','600px','300px');
}
function describe(){
window.open("${ctx}/commons/bpm_script_info.html")
}
</script>
</head>
<body class="white-page">
<form id="myForm" action="${ctx}/actInfo/activityResourceRule/save.do" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="well well-sm">
<button id="addButton" name="submitButton" type="button" class="btn btn-xs btn-success">
新 增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button id="submitButton" name="submitButton" type="button" onclick="update();" class="btn btn-xs btn-success">
更 新
<i class="ace-icon fa fa-pencil bigger-110"></i>
</button>
<button type="button" onclick="art.dialog.close();" class="btn btn-xs btn-danger">
关 闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<input type="hidden" name="ruleId" value="${activityRule.ruleId}" id="ruleId"/>
<input type="hidden" name="procDefId" value="${activityRule.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId"/>
<input type="hidden" name="sourceActName" value="${activityRule.sourceActName}" id="sourceActName"/>
<input type="hidden" name="targetActId" value="${activityRule.targetActId}" id="targetActId"/>
<input type="hidden" name="targetActName" value="${activityRule.targetActName}" id="targetActName"/>
<!-- 存放表单的区域 -->
<tr>
<td>当前环节<font color="red">*</font></td>
<td>${activityRule.sourceActName}</td>
<td width="135px">目标环节<font color="red">*</font></td>
<td>${activityRule.targetActName}</td>
</tr>
<tr>
<td>规则名称<font color="red">*</font></td>
<td colspan="3"><input style="width: 250px" type="text" name="ruleName"
value="${activityRule.ruleName}" id="ruleName"
nullmsg="请填写规则名称" datatype="*"/></td>
</tr>
<tr>
<td>规则脚本<font color="red">*</font></td>
<td colspan="3">
<!-- <a href="javascript:void(0);" onclick="">常用脚本</a>&nbsp;&nbsp; -->
<a href="javascript:void(0);" onclick="validate();">验证脚本</a>&nbsp;&nbsp;
<a href="javascript:void(0);" onclick="describe();">脚本说明</a>
<br/>
<textarea name="ruleScript" id="ruleScript" style="width: 700px;height: 50px">${activityRule.ruleScript}</textarea>
<br/>
环节人员规则通过groovy返回字符串来定义环节的处理人员列表。返回的人员格式包括人员ID和组织ID以井号分隔
</br>返回多人时人员之间以逗号分隔。返回的示例如下return "wugf1202#204300010999,liysh124#204300010599";
</td>
</tr>
<tr>
<td>规则描述:</td>
<td colspan="3"><textarea style="width: 700px;height: 50px" name="ruleRemark" id="ruleRemark">${activityRule.ruleRemark}</textarea></td>
</tr>
</table>
<IFRAME style="width:100%;height:180px;" scrolling="auto" src="${ctx}/actInfo/activityResourceRule/list.do?procDefId=${activityRule.procDefId}&sourceActId=${activityRule.sourceActId}&targetActId=${activityRule.targetActId}" frameBorder="0" id="rightFrame" name="rightFrame" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,60 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程环节规则表编辑</title>
</head>
<body class="white-page">
<div class="box2" panelTitle="更新流程环节规则表" showStatus="false" roller="true">
<form action="${ctx}/actInfo/activityResourceRule/update.do" method="post">
<button id="submitButton" name="submitButton" type="button" onclick="javascript:getReferenceForm(this).submit();">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" onclick="window.location='${ctx}/actInfo/activityResourceRule/list.do'">
<span class="icon_back">返回</span>
</button>
<table class="tableStyle form-table" formMode="true" footer="normal">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="ruleId" name="ruleId" value="${activityRule.ruleId}" />
<!-- 存放表单的区域 -->
<tr>
<td>环节规则名称<font color="red">*</font></td>
<td><input type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName" /></td>
</tr>
<tr>
<td>流程定义ID<font color="red">*</font></td>
<td><input type="text" name="procDefId" value="${activityRule.procDefId}" id="procDefId" /></td>
</tr>
<tr>
<td>源环节ID<font color="red">*</font></td>
<td><input type="text" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId" /></td>
</tr>
<tr>
<td>目标环节ID<font color="red">*</font></td>
<td><input type="text" name="targetActId" value="${activityRule.targetActId}" id="targetActId" /></td>
</tr>
<tr>
<td>环节规则脚本<font color="red">*</font></td>
<td><input type="text" name="ruleScript" value="${activityRule.ruleScript}" id="ruleScript" /></td>
</tr>
<tr>
<td>环节规则优先级:</td>
<td><input type="text" name="rulePriority" value="${activityRule.rulePriority}" id="rulePriority" /></td>
</tr>
<tr>
<td>环节规则描述:</td>
<td><input type="text" name="ruleRemark" value="${activityRule.ruleRemark}" id="ruleRemark" /></td>
</tr>
</table>
</form>
</div>
</body>
</html>

View File

@@ -0,0 +1,84 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>环节规则管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm','${page.thisPageNumber}','${page.pageSize}','${pageRequest.sortColumns}');
});
function editActivityRule(ruleId){
parent.editActivityRule(ruleId);
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/actInfo/activityResourceRule/list.do" method="get" style="display: inline;">
<input type="hidden" name="procDefId" value="${query.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${query.sourceActId}" id="sourceActId"/>
<input type="hidden" name="targetActId" value="${query.targetActId}" id="targetActId"/>
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover form-table">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width:125px;" sortColumn="ruleName" >规则名称</th>
<th sortColumn="ruleScript" >规则脚本</th>
<th style="width:125px;" sortColumn="ruleRemark" >规则描述</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><a href="javascript:void(0);" onclick="editActivityRule('${item.ruleId}');">${item.ruleName}</a></td>
<td>${item.ruleScript}&nbsp; </td>
<td>${item.ruleRemark}&nbsp; </td>
<td>
<a href="${ctx}/actInfo/activityResourceRule/delete.do?ruleId=${item.ruleId}&">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,45 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
</head>
<body>
<form id="myForm" action="${ctx}/actInfo/activityResourceRule/save.do" method="post">
<button type="button" onclick="art.dialog.close();">
<span class="icon_back">关闭</span>
</button>
<table class="tableStyle" formMode="true" footer="normal">
<tr>
<td>结果值:</td>
<td>${ruleScriptValue}</td>
</tr>
<tr>
<td width="20%">结果值类型:</td>
<td>${ruleScriptValueType}</td>
</tr>
<tr>
<td>验证结果:</td>
<td><div style="overflow-y:scroll;height:200px;">
${validateMsg}</div></td>
</tr>
</table>
</form>
</body>
</html>

View File

@@ -0,0 +1,98 @@
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节规则管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css"
type="text/css" rel="stylesheet">
<script type="text/javascript"
src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(
function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',
'${page.thisPageNumber}', '${page.pageSize}',
'${pageRequest.sortColumns}');
});
function editActivityRule(ruleId) {
parent.editActivityRule(ruleId);
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/activityResourceRule/list.do" method="get"
style="display: inline;">
<input type="hidden" name="procDefId" value="${query.procDefId}"
id="procDefId" /> <input type="hidden" name="sourceActId"
value="${query.sourceActId}" id="sourceActId" /> <input type="hidden"
name="targetActId" value="${query.targetActId}" id="targetActId" /> <input
type="hidden" name="ruleType" value="${activityRule.ruleType}"
id="ruleType" />
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading"></div>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<div style="width: 100%;overflow: auto;">
<table style=" width: inherit;max-width: 600%;table-layout: fixed;" id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width: 230px;" sortColumn="ruleName">流程定义</th>
<th style="width: 225px;" sortColumn="ruleName">环节名称</th>
<th style="width: 125px;" sortColumn="ruleName">规则名称</th>
<th style="width: 125px;" sortColumn="ruleScript">规则脚本</th>
<th style="width: 125px;" sortColumn="ruleRemark">规则描述</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${item.procDefId}</td>
<td>${item.sourceActId}-> ${targetActId}</td>
<td>${item.ruleName}</td>
<td>${item.ruleScript}&nbsp;</td>
<td>${item.ruleRemark}&nbsp;</td>
<td><a
href="${ctx}/actInfo/activityResourceRule/delete.do?ruleId=${item.ruleId}&">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,179 @@
 <%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<style>
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 180px;
}
</style>
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
<script>
var demo;
var ischeck = true;
var javaEditor;
$(document).ready(function() {
javaEditor = CodeMirror.fromTextArea(document.getElementById("ruleScript"), {
lineNumbers: true,
matchBrackets: true,
theme:"eclipse",
mode: "text/x-java"
});
$.Tipmsg.r=null;
$("#myForm").Validform({
tiptype:function(msg){
alert(msg);//验证提示信息
},
tipSweep:true,
btnSubmit:"#addButton",
callback:function(form){
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return false;
}
document.getElementById("myForm").action="${ctx}/actInfo/activityRule/save.do";
return true;
}
});
});
function editActivityRule(ruleId){
var url="${ctx}/actInfo/activityRule/getActivityRule.do?ruleId="+ruleId;
$.post(url,function(result){
var jsonObject = eval(result);
$.each(jsonObject, function(name, value) {
if(name=="ruleScript"){
javaEditor.setValue(value);
}else{
var inputObj=$("#"+name);
if(inputObj.attr("type")!="hidden"||name=="ruleId"){
inputObj.val(value);
}
}
});
});
}
function update(){
if($("#ruleId").val()==""){
alert("该规则没有在数据库中,请点击规则列表后再进行更新!");
return;
}
var ruleName = $("#ruleName").val();
if(""==ruleName){
alert("请填写规则名称!");
return ;
}
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return ;
}
document.getElementById("myForm").action="${ctx}/actInfo/activityRule/update.do";
document.getElementById("myForm").submit();
}
function validate(){
var ruleScript=javaEditor.getValue();;
if(ruleScript==""){
alert("规则脚本不允许为空,请您重新输入!");
return ;
}
var url="${ctx}/actInfo/activityRule/validate.do?ruleScript="+ruleScript;
showDiaLog(url,'验证规则脚本','600px','300px');
}
function describe(){
window.open("${ctx}/commons/bpm_script_info.html")
}
</script>
</head>
<body class="white-page">
<form id="myForm" action="${ctx}/actInfo/activityRule/save.do" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="well well-sm">
<button id="addButton" name="submitButton" type="button" class="btn btn-xs btn-success">
新 增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button id="updateButton" name="submitButton" type="button" onclick="update();" class="btn btn-xs btn-success">
更 新
<i class="ace-icon fa fa-pencil bigger-110"></i>
</button>
<button type="button" onclick="art.dialog.close();" class="btn btn-xs btn-danger">
关 闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<input type="hidden" name="ruleId" value="${activityRule.ruleId}" id="ruleId"/>
<input type="hidden" name="procDefId" value="${activityRule.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId"/>
<input type="hidden" name="sourceActName" value="${activityRule.sourceActName}" id="sourceActName"/>
<input type="hidden" name="targetActId" value="${activityRule.targetActId}" id="targetActId"/>
<input type="hidden" name="targetActName" value="${activityRule.targetActName}" id="targetActName"/>
<!-- 存放表单的区域 -->
<tr>
<td>当前环节<font color="red">*</font></td>
<td>${activityRule.sourceActName}</td>
<td width="135px">目标环节<font color="red">*</font></td>
<td>${activityRule.targetActName}</td>
</tr>
<tr>
<td>规则名称<font color="red">*</font></td>
<td colspan="3"><input style="width: 250px" type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName"
nullmsg="请填写规则名称" datatype="*"/></td>
</tr>
<tr>
<td>规则脚本<font color="red">*</font></td>
<td colspan="3">
<!-- <a href="javascript:void(0);" onclick="">常用脚本</a>&nbsp;&nbsp;-->
<a href="javascript:void(0);" onclick="validate();">验证脚本</a>&nbsp;&nbsp;
<a href="javascript:void(0);" onclick="describe();">脚本说明</a>
<br/>
<textarea name="ruleScript" id="ruleScript" style="width: 700px;height: 50px">${activityRule.ruleScript}</textarea>
<br/>
环节跳转规则通过groovy脚本定义流程转向开发人员通过控制脚本返回一个布尔值返回值为true时流程将流向目标环节。
</td>
</tr>
<tr>
<td>规则描述:</td>
<td colspan="3"><textarea style="width: 700px;height: 50px" name="ruleRemark" id="ruleRemark">${activityRule.ruleRemark}</textarea></td>
</tr>
</table>
<IFRAME style="width:100%;height:180px;" scrolling="auto" src="${ctx}/actInfo/activityRule/list.do?procDefId=${activityRule.procDefId}&sourceActId=${activityRule.sourceActId}&targetActId=${activityRule.targetActId}" frameBorder="0" id="rightFrame" name="rightFrame" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,60 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程环节规则表编辑</title>
</head>
<body class="white-page">
<div class="box2" panelTitle="更新流程环节规则表" showStatus="false" roller="true">
<form action="${ctx}/actInfo/activityRule/update.do" method="post">
<button id="submitButton" name="submitButton" class="btn btn-sm btn-primary" type="button" onclick="javascript:getReferenceForm(this).submit();">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button class="btn btn-sm btn-primary" type="button" onclick="window.location='${ctx}/actInfo/activityRule/list.do'">
<span class="icon_back">返回</span>
</button>
<table class="tableStyle form-table" formMode="true" footer="normal" style="margin-top: 15px">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="ruleId" name="ruleId" value="${activityRule.ruleId}" />
<!-- 存放表单的区域 -->
<tr>
<td>环节规则名称<font color="red">*</font></td>
<td><input type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName" /></td>
</tr>
<tr>
<td>流程定义ID<font color="red">*</font></td>
<td><input type="text" name="procDefId" value="${activityRule.procDefId}" id="procDefId" /></td>
</tr>
<tr>
<td>源环节ID<font color="red">*</font></td>
<td><input type="text" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId" /></td>
</tr>
<tr>
<td>目标环节ID<font color="red">*</font></td>
<td><input type="text" name="targetActId" value="${activityRule.targetActId}" id="targetActId" /></td>
</tr>
<tr>
<td>环节规则脚本<font color="red">*</font></td>
<td><input type="text" name="ruleScript" value="${activityRule.ruleScript}" id="ruleScript" /></td>
</tr>
<tr>
<td>环节规则优先级:</td>
<td><input type="text" name="rulePriority" value="${activityRule.rulePriority}" id="rulePriority" /></td>
</tr>
<tr>
<td>环节规则描述:</td>
<td><input type="text" name="ruleRemark" value="${activityRule.ruleRemark}" id="ruleRemark" /></td>
</tr>
</table>
</form>
</div>
</body>
</html>

View File

@@ -0,0 +1,85 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>环节规则管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
function editActivityRule(ruleId){
parent.editActivityRule(ruleId);
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/actInfo/activityRule/list.do" method="get" style="display: inline;">
<input type="hidden" name="procDefId" value="${query.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${query.sourceActId}" id="sourceActId"/>
<input type="hidden" name="targetActId" value="${query.targetActId}" id="targetActId"/>
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<div style="width: 100%;overflow: auto;">
<table style=" width: inherit;max-width: 600%;table-layout: fixed;" id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width:125px;" sortColumn="ruleName" >规则名称</th>
<th sortColumn="ruleScript" >规则脚本</th>
<th style="width:125px;" sortColumn="ruleRemark" >规则描述</th>
<th style="width: 90px">操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><a href="javascript:void(0);" onclick="editActivityRule('${item.ruleId}');">${item.ruleName}</a></td>
<td>${item.ruleScript}&nbsp; </td>
<td>${item.ruleRemark}&nbsp; </td>
<td>
<a href="${ctx}/actInfo/activityRule/delete.do?ruleId=${item.ruleId}&">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,44 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表新增</title>
</head>
<body>
<form id="myForm" action="${ctx}/actInfo/activityRule/save.do" method="post">
<!-- <button type="button" onclick="art.dialog.close();">
<span class="icon_back">关闭</span>
</button> -->
<table class="tableStyle" formMode="true" footer="normal" style="width: 100%;">
<tr>
<td>结果值:</td>
<td>${ruleScriptValue}</td>
</tr>
<tr>
<td width="20%">结果值类型:</td>
<td>${ruleScriptValueType}</td>
</tr>
<tr>
<td>验证结果:</td>
<td>${validateMsg}</td>
</tr>
</table>
</form>
</body>
</html>

View File

@@ -0,0 +1,113 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<base href="<%=basePath%>">
<title>流程环节规则表编辑</title>
<script>
var javaEditor;
$(document).ready(function() {
javaEditor = CodeMirror.fromTextArea(document.getElementById("ruleScript"), {
lineNumbers: true,
matchBrackets: true,
theme:"eclipse",
mode: "text/x-java"
});
});
function save(){
var ruleName = $("#ruleName").val();
if(""==ruleName){
alert("请填写规则名称!");
return ;
}
var ruleScript = javaEditor.getValue();
if(""==ruleScript){
alert("验证脚本不能为空!");
return ;
}
//document.getElementById("myForm").submit();
$.post('${ctx}/actInfo/activityRule/updateMgr.do',$('#myform').serialize(),function(result){
alert(result);
art.dialog.opener.location.reload();
});
}
function validate(){
var ruleScript= javaEditor.getValue();
if(ruleScript==""){
alert("规则脚本不允许为空,请您重新输入!");
return ;
}
var url="${ctx}/actInfo/activityRule/validate.do?ruleScript="+ruleScript;
showDiaLog(url,'验证规则脚本','600px','300px');
}
function describe(){
window.open("${ctx}/commons/bpm_script_info.html")
}
</script>
</head>
<body class="white-page">
<div class="box2" panelTitle="更新流程环节规则表" showStatus="false" roller="true">
<form id="myForm" action="${ctx}/actInfo/activityRule/updateMgr.do" method="post">
<button id="submitButton" class="btn btn-sm btn-primary" name="submitButton" type="button" onclick="save();">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary" onclick="art.dialog.close();">
<span class="icon_back">返回</span>
</button>
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" style="margin-top: 15px">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="procDefId" value="${activityRule.procDefId}" id="procDefId" />
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType" />
<input type="hidden" name="sourceActId" value="${activityRule.sourceActId}" id="sourceActId" />
<input type="hidden" name="targetActId" value="${activityRule.targetActId}" id="targetActId" />
<input type="hidden" id="ruleId" name="ruleId" value="${activityRule.ruleId}" />
<!-- 存放表单的区域 -->
<tr>
<td>环节规则名称<font color="red">*</font></td>
<td><input type="text" name="ruleName" value="${activityRule.ruleName}" id="ruleName" /></td>
<td>流程定义ID<font color="red">*</font></td>
<td title="${activityRule.procDefId}"><input readonly="readonly" type="text" value="${activityRule.procDefId}" /></td>
</tr>
<tr>
<td>源环节ID<font color="red">*</font></td>
<td><input type="text" readonly="readonly" value="${activityRule.sourceActId}" /></td>
<td>目标环节ID<font color="red">*</font></td>
<td><input type="text" readonly="readonly" value="${activityRule.targetActId}" /></td>
</tr>
<tr>
<td>环节规则脚本<font color="red">*</font></td>
<td colspan="3">
<!-- <a href="javascript:void(0);" onclick="">常用脚本</a>&nbsp;&nbsp;-->
<a href="javascript:void(0);" onclick="validate();">验证脚本</a>&nbsp;&nbsp;
<a href="javascript:void(0);" onclick="describe();">脚本说明</a>
<br/>
<input type="textarea" style="width: 700px;height: 50px" name="ruleScript" value="${activityRule.ruleScript}" id="ruleScript" />
</td>
</tr>
<tr>
<td>环节规则优先级:</td>
<td><input type="text" name="rulePriority" value="${activityRule.rulePriority}" id="rulePriority" /></td>
</tr>
<tr>
<td>环节规则描述:</td>
<td colspan="3"><input type="text" name="ruleRemark" value="${activityRule.ruleRemark}" id="ruleRemark" /></td>
</tr>
</table>
</form>
</div>
</body>
</html>

View File

@@ -0,0 +1,97 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>环节规则管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
function editActivityRule(ruleId){
parent.editActivityRule(ruleId);
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/actInfo/activityRule/listMgr.do" method="get" style="display: inline;">
<input type="hidden" name="procDefId" value="${query.procDefId}" id="procDefId"/>
<input type="hidden" name="sourceActId" value="${query.sourceActId}" id="sourceActId"/>
<input type="hidden" name="targetActId" value="${query.targetActId}" id="targetActId"/>
<input type="hidden" name="ruleType" value="${activityRule.ruleType}" id="ruleType"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<div style="width: 100%;overflow: auto;">
<table style=" width: inherit;max-width: 600%;table-layout: fixed;" id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="ruleName">流程定义</th>
<th sortColumn="ruleName">环节名称</th>
<th sortColumn="ruleName">规则名称</th>
<th sortColumn="ruleScript">规则脚本</th>
<th sortColumn="ruleRemark">规则描述</th>
<th style="width: 90px">操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td class="td" >
<a href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/activityRule/editMgr.do?ruleId=${item.ruleId}','脚本规则配置','900px','600px')">
${item.procDefId}
</a>
</td>
<td class="td" title="${item.sourceActId}">${item.sourceActId}-> ${item.targetActId}</td>
<td class="td" title="${item.ruleName}">${item.ruleName}</td>
<td class="td" title="${item.ruleScript}">${item.ruleScript}&nbsp;</td>
<td class="td" title="${item.ruleRemark}"> ${item.ruleRemark}&nbsp;</td>
<td>
<a href="${ctx}/actInfo/activityRule/deleteMgr.do?ruleId=${item.ruleId}&">删除</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,187 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<script>
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
//setMask("main-container");
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/editCallActivity.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.close();
}
});
});
$("#deleteBtn").click(function() {
if (!hasOneChecked("sourceRefs")) {
alert('请选择要操作的对象!');
return;
}
if (!window.confirm('确定执行[删除]操作?')) {
return;
}
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/deleteCallActProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
});
});
function procDefNameOnDbClick(name, value) {
$("#procDefName").val(name);
$("#calledElement").val(value);
}
</script>
<title>流程贯穿服务任务设置</title>
</head>
<body>
<form action="${ctx}/actInfo/otherTask/editCallActivity.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="activityDefId"
value="${activityInfoConfig.activityDefId}" />
<input type="hidden" name="activityDefName"
value="${activityInfoConfig.activityDefName}" />
<input type="hidden" name="processDefId"
value="${activityInfoConfig.processDefId}" />
<input type="hidden" name="processDefName"
value="${activityInfoConfig.processDefName}" />
<!-- 存放表单的区域 -->
<tr>
<td width="10%">任务ID<font color="red">*</font>
</td>
<td><input style="width: 400px;" readonly type="text" name="name"
value="${callActivity.id}" id="name" /></td>
</tr>
<tr>
<td width="10%">任务名称<font color="red">*</font>
</td>
<td><input style="width: 400px;" readonly type="text" name="name"
value="${callActivity.name}" id="name" /></td>
</tr>
<tr>
<td>贯穿流程<font color="red">*</font>
</td>
<td><input style="width: 400px;" type="text"
<c:choose>
<c:when test="${not empty callProcDefModel.procDefName}">
value="${callProcDefModel.procDefName}"
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
name="procDefName" id="procDefName" readonly onclick="showMenu('procDefName','',''); return false;" />
<input style="width: 400px;" type="hidden"
name="calledElement" value="${callActivity.calledElement}" id="calledElement" />
</td>
</tr>
<tr>
<td>备注:</td>
<td><textarea style="width: 600px; height: 80px"
name="documentation" id="documentation">${callActivity.documentation}</textarea></td>
</tr>
</table>
<div class="panel panel-primary">
<div class="panel-heading">贯穿流程属性映射</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success"
onclick="showDiaLog('${ctx}/actInfo/otherTask/createProperty.do?processDefId=${activityInfoConfig.processDefId}&activityDefId=${activityInfoConfig.activityDefId}','新增扩展属性','500px','300px')" />
新 增
</button>
<button type="button" id="deleteBtn" class="btn btn-xs btn-danger">删 除
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('sourceRefs',this.checked)"></th>
<th style="width: 300px">源流程变量名</th>
<th>目标程变量名</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataInputAssociations}"
var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="sourceRefs" value="${item.sourceRef}"></td>
<td>${item.sourceRef}&nbsp;</td>
<td>${item.targetRef}&nbsp;</td>
<td><a href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/otherTask/editProperty.do?sourceRef=${item.sourceRef}','修改扩展属性','500px','300px')">修改</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary"
name="submitButton" type="button">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close()">
<span class="icon_back">关闭</span>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,67 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/saveProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body>
<form action="${ctx}/actInfo/otherTask/saveProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="dataObject.objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="dorType" id="dorType" value="through" />
<input type="hidden" name="dataObject.objType" id="objType" value="string" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>源流程变量名称:</td>
<td><input name="dataObject.objKey" id="objKey" value="" /></td>
</tr>
<tr>
<td><font color="red">*</font>目标流程变量名称:</td>
<td><input name="dataObject.objValue" id="objValue" value="" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,71 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/updateProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body>
<form action="${ctx}/actInfo/otherTask/updateProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="dataObject.objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="dorType" id="dorType" value="through" />
<input type="hidden" name="dataObject.objName" id="objName" value="string" />
<input type="hidden" name="dataObject.objId" id="objId" value="${dataObjectRelation.dataObject.objId}" />
<input type="hidden" name="dorId" id="dorId" value="${dataObjectRelation.dorId}" />
<input type="hidden" name="dataObject.objType" id="objType" value="${dataObjectRelation.dataObject.objType}" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>源流程变量名称:</td>
<td><input name="dataObject.objKey" id="objKey" value="${dataObjectRelation.dataObject.objKey}" /></td>
</tr>
<tr>
<td><font color="red">*</font>目标流程变量名称:</td>
<td><input name="dataObject.objValue" id="objValue" value="${dataObjectRelation.dataObject.objValue}" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,288 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.engine.repository.Model"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="com.blueland.bpm.manage.util.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<title>编辑环节信息</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
setMask("main-container");
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/activityInfo/update.do",
data : $('#myform').serialize(),
success : function(resp) {
if (resp == 'SUCCESS') {
alert("操作成功!");
$("#main-container").unmask();
//window.location.reload();
//art.dialog.close();
//art.dialog.opener.location.reload();
} else {
$("#main-container").unmask();
alert("操作失败!");
}
}
});
});
$('#mprotocol').change(function(){
var val=$(this).children('option:selected').val();
if(val=="http"){
$("#otherSysDealStatus option[value='no']").attr("selected", "selected");
}else if(val=="none"){
$("#otherSysDealStatus option[value='yes']").attr("selected", "selected");
}else{
$("#otherSysDealStatus option[value='']").attr("selected", "selected");
}
});
var sys = $("#sys").val();
var mAppId = $("#mAppId").val();
if(sys !=""){
var activityPageUrlHid = $("#activityPageUrlHid").val();
var activityMurlHid = $("#activityMurlHid").val();
var href = window.top.location.href;
var list = href.split("/");
var name = "/"+list[3];
var url = "<%=MyContants.KSKF_PAHT%>"+name+"/customForm/list/workflow/"+sys+"/PC";
jQuery.ajax({
url : url,
type : "GET",
success : function(resp) {
if(resp.resultCode == 200){
var html = "<select name='activityPageUrl' id='activityPageUrl'>";
html = html +"<option value='' ></option>";
for(var i = 0; i < resp.result.length; i++) {
var bean = resp.result[i];
if(activityPageUrlHid==bean.code){
html=html+"<option selected value="+bean.code+">"+bean.name+"</option>"
}else{
html=html+"<option value="+bean.code+">"+bean.name+"</option>"
}
}
html=html+"</select>"
$("#addSelect").html(html);
}else{
alert("获取应用表单数据失败!");
}
}
});
//移动端
var urlApp = "<%=MyContants.KSKF_PAHT%>"+name+"/customForm/list/workflow/"+sys+"/APP";
jQuery.ajax({
url : urlApp,
type : "GET",
success : function(resp) {
if(resp.resultCode == 200){
var html = "<select name='murl' id='murl'>";
html = html +"<option value='' ></option>";
for(var i = 0; i < resp.result.length; i++) {
var bean = resp.result[i];
if(activityMurlHid==bean.code){
html=html+"<option selected value="+bean.code+">"+bean.name+"</option>"
}else{
html=html+"<option value="+bean.code+">"+bean.name+"</option>"
}
}
html=html+"</select>"
$("#addMurlSelect").html(html);
}else{
alert("获取应用表单数据失败!");
}
}
});
}
});
</script>
</head>
<body class="white-page">
<input type="hidden" name="sys" id="sys" value="${sys}" />
<input type="hidden" name="mAppId" id="mAppId" value="${mAppId}" />
<input type="hidden" name="activityPageUrlHid" value="${activityInfoConfig.activityPageUrl}" id="activityPageUrlHid"/>
<input type="hidden" name="activityMurlHid" value="${activityInfoConfig.murl}" id="activityMurlHid"/>
<form action="${ctx}/activityInfo/update.do" method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0" cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="activityDefId" value="${activityInfoConfig.activityDefId}" />
<input type="hidden" name="activityDefName" value="${activityInfoConfig.activityDefName}" />
<input type="hidden" name="processDefId" value="${activityInfoConfig.processDefId}" />
<input type="hidden" name="processDefName" value="${activityInfoConfig.processDefName}" />
<input type="hidden" name="activityOperationRoleid" value="${activityInfoConfig.activityOperationRoleid}" />
<!-- 存放表单的区域 -->
<tr>
<td>
<font color="red">*</font>环节ID
</td>
<td>${activityInfoConfig.activityDefId}</td>
<td>环节名称:</td>
<td>${activityInfoConfig.activityDefName}</td>
</tr>
<tr>
<!-- 不是第一步处理 则环节处理类型放在此处 -->
<td>环节处理类型:</td>
<td>
<select name="activityDefDealType" id="activityDefDealType">
<option ${activityInfoConfig.activityDefDealType=='single'?'selected':''} value="single">单人处理</option>
<%-- <c:if test="${!isStartTask}"> --%>
<option ${activityInfoConfig.activityDefDealType=='multi'?'selected':''} value="multi">多人处理-并行</option>
<option ${activityInfoConfig.activityDefDealType=='multi-x'?'selected':''} value="multi-x">多人处理-串行</option>
<%-- </c:if> --%>
</select>
</td>
<td>环节跳转类型:</td>
<td>
<select name="jumpType" id="jumpType">
<option value="MANUAL" ${activityInfoConfig.jumpType=="MANUAL"?"selected":""}>人工选择跳转</option>
<option value="AUTO" ${activityInfoConfig.jumpType=="AUTO"?"selected":""}>自动路径跳转</option>
<!-- <option value="FREE" ${activityInfoConfig.jumpType=="FREE"?"selected":""}>自由选择跳转</option> -->
</select>
</td>
</tr>
<tr>
<td>意见显示区域(用于界面意见分栏)</td>
<td colspan="1">
<input type="text" style="width: 200px" name="ideaDisplayArea" value="${activityInfoConfig.ideaDisplayArea}" id="ideaDisplayArea" class="validate[length[0,50]]" maxlength="30" />
</td>
<td>是否显示意见:</td>
<td colspan="1">
<select name="isShowIdea" id="isShowIdea">
<option value="ENABLED" ${activityInfoConfig.isShowIdea=='ENABLED'?'selected':''}>是</option>
<option value="DISABLE" ${activityInfoConfig.isShowIdea=='DISABLE'?'selected':''}>否</option>
</select>
</td>
</tr>
<tr>
<td>环节审批时限:</td>
<td>
<!--
<input type="checkbox" name="" id="" />超时后自动流转下一步<br/> -->
<select name="activityLimitTime" id="activityLimitTime">
<option value="">--请选择--</option>
<c:forEach begin="1" end="30" varStatus="item">
<option ${activityInfoConfig.activityLimitTime==item.index?'selected':''} value="${item.index}">${item.index}</option>
</c:forEach>
</select> 天
</td>
<td>环节排序号:</td>
<td colspan="2">
<input type="text" name="activityOrder" preValue="${activityInfoConfig.activityOrder}" onblur="moveout(this.id);" value="${activityInfoConfig.activityOrder}" id="activityOrder" maxlength="200" class="validate[length[0,1000]]" onkeyup="this.value=this.value.replace(/\D/g,'')"
onafterpaste="this.value=this.value.replace(/\D/g,'')" />
</td>
</tr>
<tr>
<td rowspan="2" style="width: 200px;">桌面端相关配置:</td>
<td style="width: 100px;">环节表单路径</td>
<td colspan="3">
<c:if test="${sys ne '' }">
<div id ="addSelect">
</div>
<!-- <input style="width: 600px" type="text" name="activityPageUrl" value="${activityInfoConfig.activityPageUrl}" id="activityPageUrl" class="validate[length[0,500]]" />-->
</c:if>
<c:if test="${sys eq ''}">
<input style="width: 600px" type="text" name="activityPageUrl" value="${activityInfoConfig.activityPageUrl}" id="activityPageUrl" class="validate[length[0,500]]" />
</c:if>
</td>
</tr>
<tr>
<td>处理协议</td>
<td colspan="3">
<select name="cprotocol" id="cprotocol">
<option value="hnzy:workitem" ${activityInfoConfig.cprotocol=='hnzy:workitem'||activityInfoConfig.cprotocol==null||activityInfoConfig.cprotocol==null?'selected':''}>和+浏览器模式</option>
<option value="http" ${activityInfoConfig.cprotocol=='http'?'selected':''}>普通浏览器模式</option>
</select>
</td>
</tr>
<tr>
<td rowspan="3">手机端相关配置:</td>
<td>环节表单路径</td>
<td colspan="3">
<c:if test="${sys ne '' }">
<div id ="addMurlSelect">
</div>
<!-- <input style="width: 600px" type="text" name="activityPageUrl" value="${activityInfoConfig.activityPageUrl}" id="activityPageUrl" class="validate[length[0,500]]" />-->
</c:if>
<c:if test="${sys eq ''}">
<input style="width: 600px" type="text" name="murl" value="${activityInfoConfig.murl}" id="mUrl" class="validate[length[0,500]]" />
</c:if>
</td>
</tr>
<tr>
<td>处理协议</td>
<td colspan="3">
<select name="mprotocol" id="mprotocol">
<option value="none" ${activityInfoConfig.mprotocol=='none'||activityInfoConfig.mprotocol==null?'selected':''}>不支持手机处理</option>
<option value="http" ${activityInfoConfig.mprotocol=='http'?'selected':''}>WEBVIEW模式H5</option>
<option value="" ${activityInfoConfig.mprotocol==null?'selected':''}>沿用流程配置</option>
</select>
</td>
</tr>
<tr>
<td>处理状态</td>
<td colspan="3">
<select name="otherSysDealStatus" id="otherSysDealStatus">
<option value="" ${processInfoConfig.mprotocol==null?'selected':''}>沿用流程配置</option>
<option value="yes" ${activityInfoConfig.otherSysDealStatus=='yes'?'selected':''}>仅阅读</option>
<option value="no" ${activityInfoConfig.otherSysDealStatus=='no'?'selected':''}>可处理</option>
</select>
</td>
</tr>
<tr>
<td>备注:</td>
<td colspan="3">
<textarea rows="2" cols="50" name="remark">${activityInfoConfig.remark}</textarea>
</td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary" id="submitButton">
保存 <i class="ace-icon fa fa-save bigger-110"></i>
</button>
<!-- <button onclick="art.dialog.close();" type="button" class="btn btn-sm btn-primary">
关闭 <i class="ace-icon fa fa-times bigger-110"></i>
</button> -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,105 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节用户列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/sequenceFlow/list.do" method="post"
style="display: inline;">
<input name="actId" id="actId" value="${gateway.id}" type="hidden"/>
<input name="procDefId" id="procDefId" value="${params.processDefId}" type="hidden"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading" style="background: none !important;">
网关ID${gateway.id},网关名称:${gateway.name}
</div>
<%-- <div class="form-group well well-sm">--%>
<%-- <table width="100%" border="0" cellspacing="0" cellpadding="0"--%>
<%-- class="table-search">--%>
<%-- <tr>--%>
<%-- <td colspan="7">--%>
<%-- <input onclick="art.dialog.close();" type="button" class="btn btn-xs btn-primary" value="关&nbsp;&nbsp;闭"/>--%>
<%-- </td>--%>
<%-- </tr>--%>
<%-- </table>--%>
<%--</div>--%>
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive" style="margin: 0 0 0 10px !important;padding: 0!important;">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>输出线名称</th>
<th>当前环节名称</th>
<th>目标目标环节</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${gateway.outgoingFlows}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${item.name}&nbsp;</td>
<td>${gateway.name}</td>
<td>${item.targetRefName}&nbsp;</td>
<td>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/sequenceFlow/edit.do?procDefId=${params.processDefId}&sequenceFlowId=${item.id}','${item.sourceRefName}->${item.targetRefName}-输出线','900px','600px')">编辑</a>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/activityRule/create.do?procDefId=${params.processDefId}&sourceActId=${gateway.id}&sourceActName=${gateway.name}&targetActId=${item.targetRef}&targetActName=${item.targetRefName}','${item.sourceRefName}->${item.targetRefName}-输出线-跳转规则配置','900px','600px')">跳转规则配置</a>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/activityResourceRule/create.do?procDefId=${params.processDefId}&sourceActId=${gateway.id}&sourceActName=${gateway.name}&targetActId=${item.targetRef}&targetActName=${item.targetRefName}','${item.sourceRefName}->${item.targetRefName}-输出线-人员规则配置','900px','600px')">人员规则配置</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,144 @@
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节配置</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/activityInfo/list.do" method="get"
style="display: inline;">
<input name="processDefId" id="processDefId"
value="${query.processDefId }" type="hidden" />
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading"></div>
<div class="panel-body" style="padding: 3px;">
<div class="well well-sm" style="margin-bottom: 2px;">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td>环节ID</td>
<td><input value="${query.activityDefId}"
id="activityDefId" name="activityDefId" maxlength="100" /></td>
<td>环节名称:</td>
<td><input value="${query.activityDefName}"
id="activityDefName" name="activityDefName" maxlength="100" />
</td>
<td>
<button type="submit" class="btn btn-xs btn-primary">查&nbsp;&nbsp;询</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 40px">序列</th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width: 150px" sortColumn="activityDefId">环节ID</th>
<th style="width: 150px" sortColumn="activityDefName">环节名称</th>
<th style="width: 150px" sortColumn="activityPageUrl">环节表单</th>
<th style="width: 60px" sortColumn="activityOperationRoleid">绑定权限</th>
<th style="width: 100px">操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${status.count}&nbsp;</td>
<td>${item.activityDefId}&nbsp;</td>
<td>${item.activityDefName}&nbsp;</td>
<td>${item.activityPageUrl}&nbsp;</td>
<td>${item.activityOperationRoleid==null?'否':'是'}&nbsp;</td>
<td>
<button data-toggle="dropdown"
onclick="showDiaLogByParent('${ctx}/activityInfo/main.do?activityDefId=${item.activityDefId}&processDefId=${item.processDefId}','${item.activityDefName}(${item.activityDefId})-环节配置','980px','600px')"
class="btn btn-info btn-sm dropdown-toggle">
配置</span>
</button>
<!--
<div class="btn-group">
<button data-toggle="dropdown"
class="btn btn-info btn-sm dropdown-toggle">
操作 <span class="ace-icon fa fa-caret-down icon-on-right"></span>
</button>
<ul class="dropdown-menu dropdown-info dropdown-menu-right">
<li><a id="actDefInfo"
onclick="showDiaLog('${ctx}/activityInfo/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}','环节基础信息','900px','640px');"
href="javascript:void(0);">环节基础信息</a></li>
<li><a id="actDefUser" href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/setActResource/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}','环节人员分配','900px','640px');">环节人员分配</a></li>
<li><a id="actDefUser" href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/sequenceFlow/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}','环节输出线配置','900px','640px');">环节输出线配置</a></li>
<li><a id="actDefOperate" href="javascript:void(0);"
onclick="showDiaLog('${ctx}/activityInfo/actOperatePowerList.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}','环节操作权限','900px','640px');">环节操作权限</a>
<li><a id="actDefVar" href="javascript:void(0);"
onclick="showDiaLog('${ctx}/activityInfo/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}','环节变量配置','900px','640px')">环节变量配置</a></li>
<li><a id="actDefUser" href="javascript:void(0);"
onclick="showDiaLog('${ctx}/activityUserConfig/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}','环节通知配置','900px','640px')">环节通知配置</a></li>
</ul>
</div> -->
</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,71 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节设置</title>
<script>
function changeHref(id,srcStr){
document.getElementById(id).src=srcStr;
}
</script>
</head>
<body>
<div class="main-container" id="main-container">
<div class="row">
<div class="col-xs-12">
<div class="tabbable">
<ul class="nav nav-tabs padding-12 tab-color-blue background-blue"
id="myTab3">
<li class="active"> <a id="actDefInfo" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityInfo/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}');"
href="javascript:void(0)" target="frmrightChild" class="current">环节基础信息</a>
</li>
<li><a id="actDefUser" href="javascript:void(0)" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/actInfo/setActResource/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}');"
target="frmrightChild">环节人员分配</a></li>
<li><a id="actDefUser" href="javascript:void(0)" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/actInfo/sequenceFlow/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}');"
target="frmrightChild">环节输出线配置</a></li>
<li><a id="actDefOperate" href="javascript:void(0)" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityInfo/actOperatePowerList.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}');"
target="frmrightChild">环节操作权限</a></li>
<li><a id="actDefVar" href="javascript:void(0)" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/dataObjectRelation/activityList.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}')"
; target="frmrightChild">环节变量配置</a></li>
<!-- <li><a id="actDefUser" href="javascript:void(0)" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityUserConfig/list.do?actId=${activityInfoConfig.activityDefId}&procDefId=${activityInfoConfig.processDefId}');"
target="frmrightChild">环节通知配置</a></li> -->
<li>
<button class="btn btn-sm bigger btn-yellow dropdown-toggle"
data-toggle="dropdown" type="button" onclick="art.dialog.close();">
<i class="ace-icon fa fa-arrow-left"></i>关闭
</button>
</li>
</ul>
<div class="tab-content" style="width: 100%; height: 100%;">
<IFRAME style="width: 100%; height:520px;" scrolling="no"
src="${ctx}/activityInfo/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}"
frameBorder="0" id="frmrightChild" name="frmrightChild: onload="
iframeHeight('frmrightChild')" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,217 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<script>
$(document).ready(function() {
$("#submitButton").click(function() {
var calledElement = $("#calledElement").val();
if(null == calledElement || "" == calledElement){
alert("贯穿流程必须选择!");
$("#procDefName").focus();
return false;
}
//用jquery中的ajax方法向服务器提交请求
//setMask("main-container");
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/editCallActivity.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.close();
}
});
});
$("#deleteBtn").click(function() {
if (!hasOneChecked("sourceRefs")) {
alert('请选择要操作的对象!');
return;
}
if (!window.confirm('确定执行[删除]操作?')) {
return;
}
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/deleteCallActProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
});
});
function procDefNameOnDbClick(name, value) {
$("#procDefName").val(name);
$("#calledElement").val(value);
}
</script>
<title>流程贯穿服务任务设置</title>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/otherTask/editCallActivity.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="activityDefId"
value="${activityInfoConfig.activityDefId}" />
<input type="hidden" name="activityDefName"
value="${activityInfoConfig.activityDefName}" />
<input type="hidden" name="processDefId"
value="${activityInfoConfig.processDefId}" />
<input type="hidden" name="processDefName"
value="${activityInfoConfig.processDefName}" />
<!-- <input type="hidden" name="activityDefChildType" value="through" />-->
<!-- 存放表单的区域 -->
<tr>
<td width="20%">环节ID<font color="red">*</font>
</td>
<td><input style="width: 400px;" readonly type="text" name="name"
value="${callActivity.id}" id="name" /></td>
</tr>
<tr>
<td width="10%">环节名称<font color="red">*</font>
</td>
<td><input style="width: 400px;" readonly type="text" name="name"
value="${callActivity.name}" id="name" /></td>
</tr>
<tr>
<td>贯穿流程<font color="red">*</font>
</td>
<td>
<input style="width: 400px;" type="text"
name="procDefName"
<c:choose>
<c:when test="${not empty callProcDefModel.procDefName}">
value="${callProcDefModel.procDefName}"
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
id="procDefName" readonly onclick="showMenu('procDefName','',''); return false;" />
<input style="width: 400px;" type="hidden"
name="calledElement" value="${callActivity.calledElement}" id="calledElement" />
</td>
</tr>
<tr>
<td>
环节处理类型:
</td>
<td>
<select name="activityDefDealType" id="activityDefDealType">
<option ${activityInfoConfig.activityDefDealType=='single'?'selected':''} value="single">单人处理</option>
<option ${activityInfoConfig.activityDefDealType=='multi'?'selected':''} value="multi">多人处理</option>
</select>
</td>
</tr>
<tr>
<td>
环节子类型:
</td>
<td>
<select name="activityDefChildType" id="activityDefChildType">
<option ${activityInfoConfig.activityDefChildType=='inside'?'selected':''} value="inside">内部流程</option>
<option ${activityInfoConfig.activityDefChildType=='through'?'selected':''} value="through">流程贯穿</option>
</select>
</td>
</tr>
<tr>
<td>备注:</td>
<td><textarea style="width: 600px; height: 80px"
name="documentation" id="documentation">${callActivity.documentation}</textarea></td>
</tr>
</table>
<!--
<div class="panel panel-primary">
<div class="panel-heading">贯穿流程属性映射</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success"
onclick="showDiaLog('${ctx}/actInfo/otherTask/createProperty.do?processDefId=${activityInfoConfig.processDefId}&activityDefId=${activityInfoConfig.activityDefId}','新增扩展属性','500px','300px')" />
新 增
</button>
<button type="button" id="deleteBtn" class="btn btn-xs btn-danger">删 除
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('sourceRefs',this.checked)"></th>
<th style="width: 300px">源流程变量名</th>
<th>目标程变量名</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataInputAssociations}"
var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="sourceRefs" value="${item.sourceRef}"></td>
<td>${item.sourceRef}&nbsp;</td>
<td>${item.targetRef}&nbsp;</td>
<td><a href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/otherTask/editProperty.do?sourceRef=${item.sourceRef}','修改扩展属性','500px','300px')">修改</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div> -->
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary"
name="submitButton" type="button">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close()">
<span class="icon_back">关闭</span>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,133 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<style>
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 180px;
}
</style>
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<script>
var javaEditor;
$(document).ready(function() {
javaEditor = CodeMirror.fromTextArea(document.getElementById("script"), {
lineNumbers: true,
matchBrackets: true,
//indentWithTabs: true,
// styleActiveLine: true,
theme:"eclipse",
// smartIndent: true,
// autofocus: true,
mode: "text/x-java"
});
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
//setMask("main-container");
$("#script").val(javaEditor.getValue());
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/editScriptTask.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.close();
}
});
});
});
function validate(){
var ruleScript=javaEditor.getValue();;
if(ruleScript==""){
alert("脚本内容不允许为空,请您重新输入!");
return ;
}
var url="${ctx}/actInfo/activityRule/validate.do?ruleScript="+ruleScript;
showDiaLog(url, '验证脚本', '600px', '300px');
}
</script>
<title>脚本编辑</title>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/otherTask/editScriptTask.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="activityDefId"
value="${activityInfoConfig.activityDefId}" />
<input type="hidden" name="activityDefName"
value="${activityInfoConfig.activityDefName}" />
<input type="hidden" name="processDefId"
value="${activityInfoConfig.processDefId}" />
<input type="hidden" name="processDefName"
value="${activityInfoConfig.processDefName}" />
<input type="hidden" name="scriptFormat" value="groovy" />
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="id" name="id" value="${scriptTask.id}" />
<!-- 存放表单的区域 -->
<tr>
<td width="20%">环节ID<font color="red">*</font>
</td>
<td><input type="text" name="name"
value="${scriptTask.id}" id="name" /></td>
</tr>
<tr>
<td>环节名称<font color="red">*</font>
</td>
<td><input style="width: 300px;" type="text" name="name"
value="${scriptTask.name}" id="name" /></td>
</tr>
<tr>
<td>脚本内容<font color="red">*</font>
</td>
<td><a href="javascript:void(0);" onclick="validate();">验证脚本</a>
<br /> <textarea name="script" id="script">${scriptTask.script}</textarea> <br />这个脚本需要使用返回语句(return)返回布尔值返回true流程将跳转到指定的节点。</td>
</tr>
<tr>
<td>备注:</td>
<td><textarea style="width: 600px; height: 80px"
name="documentation" id="documentation"></textarea></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary"
name="submitButton" type="button">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close()">
<span class="icon_back">关闭</span>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,203 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<script>
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
//setMask("main-container");
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/editServiceTask.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.close();
}
});
});
$("#deleteBtn").click(function() {
if (!hasOneChecked("dorIds")) {
alert('请选择要操作的对象!');
return;
}
if (!window.confirm('确定执行[删除]操作?')) {
return;
}
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/deleteProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
});
});
function procDefNameOnDbClick(name, value) {
$("#procDefName").val(name);
$("#procDefIdText").val(value);
}
</script>
<title>流程贯穿服务任务设置</title>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/otherTask/editServiceTask.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="activityDefId"
value="${activityInfoConfig.activityDefId}" />
<input type="hidden" name="activityDefName"
value="${activityInfoConfig.activityDefName}" />
<input type="hidden" name="processDefId"
value="${activityInfoConfig.processDefId}" />
<input type="hidden" name="processDefName"
value="${activityInfoConfig.processDefName}" />
<input type="hidden" name="activityDefChildType" value="through" />
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="id" name="id" value="${serviceTask.id}" />
<!-- 存放表单的区域 -->
<tr>
<td width="20%">环节ID<font color="red">*</font>
</td>
<td><input style="width: 400px;" type="text" name="name"
value="${serviceTask.id}" id="name" /></td>
</tr>
<tr>
<td width="10%">环节名称<font color="red">*</font>
</td>
<td><input style="width: 400px;" type="text" name="name"
value="${serviceTask.name}" id="name" /></td>
</tr>
<tr>
<td>贯穿流程<font color="red">*</font>
</td>
<td><input style="width: 400px;" type="text"
name="procDefName"
<c:choose>
<c:when test="${not empty throughProcDefModel.procDefName}">
value="${throughProcDefModel.procDefName}"
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
id="procDefName" readonly
onclick="showMenu('procDefName','',''); return false;" />
<input style="width: 400px;" type="hidden"
name="procDefIdText" value="${procDefIdText}" id="procDefIdText" />
</td>
</tr>
<tr>
<td>
环节处理类型:
</td>
<td>
<select name="activityDefDealType" id="activityDefDealType">
<option ${activityInfoConfig.activityDefDealType=='single'?'selected':''} value="single">单人处理</option>
<option ${activityInfoConfig.activityDefDealType=='multi'?'selected':''} value="multi">多人处理</option>
</select>
</td>
</tr>
<tr>
<td>备注:</td>
<td><textarea style="width: 600px; height: 80px"
name="documentation" id="documentation">${serviceTask.documentation}</textarea></td>
</tr>
</table>
<!--
<div class="panel panel-primary">
<div class="panel-heading">贯穿流程属性映射</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success"
onclick="showDiaLog('${ctx}/actInfo/otherTask/createProperty.do?processDefId=${activityInfoConfig.processDefId}&activityDefId=${activityInfoConfig.activityDefId}','新增扩展属性','500px','300px')" />
新 增
</button>
<button type="button" id="deleteBtn" class="btn btn-xs btn-danger">删 除
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('dorIds',this.checked)"></th>
<th style="width: 300px">源流程变量名</th>
<th>目标程变量名</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataObjectRelations}"
var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="dorIds" value="${item.dorId}"></td>
<td>${item.dataObject.objKey}&nbsp;</td>
<td>${item.dataObject.objValue}&nbsp;</td>
<td><a href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/otherTask/editProperty.do?dorId=${item.dorId}','修改扩展属性','500px','300px')">修改</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div> -->
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button id="submitButton" class="btn btn-sm btn-primary"
name="submitButton" type="button">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close()">
<span class="icon_back">关闭</span>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,67 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/saveProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body>
<form action="${ctx}/actInfo/otherTask/saveProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="dataObject.objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="dorType" id="dorType" value="through" />
<input type="hidden" name="dataObject.objType" id="objType" value="string" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>源流程变量名称:</td>
<td><input name="dataObject.objKey" id="objKey" value="" /></td>
</tr>
<tr>
<td><font color="red">*</font>目标流程变量名称:</td>
<td><input name="dataObject.objValue" id="objValue" value="" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,71 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/otherTask/updateProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/otherTask/updateProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="dataObject.objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="dorType" id="dorType" value="through" />
<input type="hidden" name="dataObject.objName" id="objName" value="string" />
<input type="hidden" name="dataObject.objId" id="objId" value="${dataObjectRelation.dataObject.objId}" />
<input type="hidden" name="dorId" id="dorId" value="${dataObjectRelation.dorId}" />
<input type="hidden" name="dataObject.objType" id="objType" value="${dataObjectRelation.dataObject.objType}" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>源流程变量名称:</td>
<td><input name="dataObject.objKey" id="objKey" value="${dataObjectRelation.dataObject.objKey}" /></td>
</tr>
<tr>
<td><font color="red">*</font>目标流程变量名称:</td>
<td><input name="dataObject.objValue" id="objValue" value="${dataObjectRelation.dataObject.objValue}" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,235 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#deleteBtn").click(function() {
if (!hasOneChecked("expandPropertyIds")) {
alert('请选择要操作的对象!');
return;
}
if (!window.confirm('确定执行[删除]操作?')) {
return;
}
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/sequenceFlow/deleteProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
});
$("#submitButton").click(function() {
//判断排序号是否为空并且是否为数字
var TRANSITION_DISPLAY_ORDER = $("#TRANSITION_DISPLAY_ORDER").val();
if(""==TRANSITION_DISPLAY_ORDER){
//alert("排序号不能为空!");
//return;
}else{
if(isNaN(TRANSITION_DISPLAY_ORDER)){
alert("排序号必须为数字!");
return;
}
}
//用jquery中的ajax方法向服务器提交请求
setMask("main-container");
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/sequenceFlow/update.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
});
});
</script>
</head>
<body class="white-page">
<form action="${ctx}/actInfo/sequenceFlow/update.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<div class="well well-sm">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" >
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button onclick="art.dialog.close();" type="button" class="btn btn-sm btn-primary">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="id" value="${sequenceFlow.id}" />
<input type="hidden" name="procDefId" value="${procDefId}" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>输出线ID</td>
<td>${sequenceFlow.id}</td>
</tr>
<tr>
<td>输出线名称
(展现在流程图中):</td>
<td><input name="name" id="name" value="${sequenceFlow.name}" style="width: 500px" type="text" /></td>
</tr>
<tr>
<td>下一环节别名:</td>
<td><input name="nextActAlias" id="nextActAlias"
value="${nextActAlias}" type="text" style="width: 500px"/></td>
</tr>
<tr>
<td>同组织级别过滤:</td>
<td>
<select name="ACTIVITY_USER_SAME_ORG_LEVEL" id="ACTIVITY_USER_SAME_ORG_LEVEL" style="width: 200px">
<option value="" ${sequenceFlow.ACTIVITY_USER_SAME_ORG_LEVEL==''?'selected':''}>--请选择--</option>
<option value="1" ${sequenceFlow.ACTIVITY_USER_SAME_ORG_LEVEL=='1'?'selected':''}>同公司</option>
<option value="2" ${sequenceFlow.ACTIVITY_USER_SAME_ORG_LEVEL=='2'?'selected':''}>同部门</option>
<option value="3" ${sequenceFlow.ACTIVITY_USER_SAME_ORG_LEVEL=='3'?'selected':''}>同级别组织</option>
</select>
</td>
</tr>
<tr>
<td>返回经办人:</td>
<td><select name="TRANSITION_RETURN_FORMER"
id="TRANSITION_RETURN_FORMER" style="width: 200px">
<option value="">--请选择--</option>
<c:forEach items="${activitys}" var="activity">
<option value="${activity.actDefId}"
${activity.actDefId==sequenceFlow.TRANSITION_RETURN_FORMER?"selected":""}>${activity.actDefName}</option>
</c:forEach>
</select></td>
</tr>
<tr>
<td>排序号:</td>
<td><input name="TRANSITION_DISPLAY_ORDER"
id="TRANSITION_DISPLAY_ORDER"
value="${sequenceFlow.TRANSITION_DISPLAY_ORDER}" type="text" /></td>
</tr>
</table>
<!--
<div class="panel panel-primary">
<div class="panel-heading">扩展属性</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success"
onclick="showDiaLog('${ctx}/actInfo/sequenceFlow/createProperty.do?procDefId=${procDefId}&sequenceFlowId=${sequenceFlow.id}','新增扩展属性','500px','300px')" />
新 增
</button>
<button type="button" id="deleteBtn" class="btn btn-xs btn-danger">删 除
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('expandPropertyIds',this.checked)"></th>
<th style="width: 300px">属性ID</th>
<th>属性名称</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${sequenceFlow.expandProperties}"
var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="expandPropertyIds"
value="${item.id }"></td>
<td>${item.id}&nbsp;</td>
<td>${item.value}&nbsp;</td>
<td><a href="javascript:void(0);"
onclick="showDiaLog('${ctx}/actInfo/sequenceFlow/editProperty.do?procDefId=${procDefId}&sequenceFlowId=${sequenceFlow.id}&expandPropertyId=${item.id }','修改扩展属性','500px','300px')">修改</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
<!--
<div class="box2" panelTitle="执行监听器列表" roller="false">
<table>
<tr>
<td colspan="7">
<button type="button" onclick="importProcessBpmnXml();" /> <span
class="icon_add">新增</span>
</button>
<button type="submit" /> <span class="icon_find">删除</span>
</button>
</td>
</tr>
</table>
<table class="tableStyle">
<tr>
<th>事件ID</th>
<th>事件类型</th>
<th>实现类型</th>
<th>实现类</th>
<th>操作</th>
</tr>
<c:forEach items="${userTask.outgoingFlows}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${item.id}&nbsp;</td>
<td>${item.event}&nbsp;</td>
<td>${item.implementationType}&nbsp;</td>
<td>${item.implementation}&nbsp;</td>
<td>${item.documentation}&nbsp;</td>
<td><a href="javascript:void(0);" onclick="">修改</a></td>
</tr>
</c:forEach>
</table>
</div>
</div>
</div>
-->
</div></div></div>
</form>
</body>
</html>

View File

@@ -0,0 +1,106 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节用户列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/sequenceFlow/list.do" method="post"
style="display: inline;">
<input name="actId" id="actId" value="${userTask.id}" type="hidden"/>
<input name="procDefId" id="procDefId" value="${procDefId}" type="hidden"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<!-- <div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button onclick="art.dialog.close();" type="button" class="btn btn-xs btn-primary">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</td>
</tr>
</table>
</div> -->
<div class="panel-body">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>输出线名称</th>
<th>当前环节名称</th>
<th>目标环节名称</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${userTask.outgoingFlows}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${item.name}&nbsp;</td>
<td>${userTask.name}</td>
<td>${item.targetRefName}&nbsp;</td>
<td>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/sequenceFlow/edit.do?procDefId=${procDefId}&sequenceFlowId=${item.id}','${item.sourceRefName}->${item.targetRefName}-输出线','900px','600px')">编辑</a>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/activityRule/create.do?procDefId=${procDefId}&sourceActId=${userTask.id}&sourceActName=${userTask.name}&targetActId=${item.targetRef}&targetActName=${item.targetRefName}','${item.sourceRefName}->${item.targetRefName}-输出线-跳转规则配置','900px','600px')">跳转规则配置</a>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/actInfo/activityResourceRule/create.do?procDefId=${procDefId}&sourceActId=${userTask.id}&sourceActName=${userTask.name}&targetActId=${item.targetRef}&targetActName=${item.targetRefName}','${item.sourceRefName}->${item.targetRefName}-输出线-人员规则配置','900px','600px')">人员规则配置</a>
<!-- <a href="javascript:void(0);" onclick="showDiaLog('${ctx}/dataObjectRelation/sequenceFlowList.do?processDefId=${procDefId}&activityDefId=${userTask.id}&&activityDefName=${userTask.name}&targetActId=${item.targetRef}&targetActName=${item.targetRefName}','${item.sourceRefName}->${item.targetRefName}-输出线-变量配置','900px','600px')">变量配置</a> -->
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/sequenceFlow/saveProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body>
<form action="${ctx}/actInfo/sequenceFlow/saveProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="procDefId"
value="${procDefId}" />
<input type="hidden" name="sequenceFlowId"
value="${sequenceFlow.id}" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>属性ID</td>
<td><input name="id" id="id" value="" /></td>
</tr>
<tr>
<td><font color="red">*</font>属性值:</td>
<td><input name="value" id="value" value="" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>配置输出线</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/actInfo/sequenceFlow/updateProperty.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});
});
</script>
</head>
<body>
<form action="${ctx}/actInfo/sequenceFlow/updateProperty.do"
method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="procDefId" value="${procDefId}" />
<input type="hidden" name="sequenceFlowId"
value="${sequenceFlow.id}" />
<input type="hidden" name="id" value="${expandProperty.id}" />
<!-- 存放表单的区域 -->
<tr>
<td><font color="red">*</font>属性ID</td>
<td>${expandProperty.id}</td>
</tr>
<tr>
<td><font color="red">*</font>属性值:</td>
<td><input name="value" id="value"
value="${expandProperty.value}" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="保 存" />
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,142 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节用户列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script type="text/javascript">
$(document).ready(function() {
});
function createActUser(values,names,actId) {
var url="${ctx}/actInfo/setActResource/save.do";
setMask("main-container");
$.post(url, {"procDefId":$("#procDefId_"+actId).val(),"actId":$("#actId_"+actId).val(),"resourceStr":values},
function (data){
alert(data);
window.location.reload();
});
}
function deleteActUser(userTaskId) {
if (!hasOneChecked("resources_"+userTaskId)) {
alert('请选择要操作的对象!');
return;
}
if(!window.confirm('确定执行[删除]操作?')){
return;
}
setMask("main-container");
var url="${ctx}/actInfo/setActResource/deleteForResourcesManage.do";
var resources = getCheckedItem(userTaskId);
$.post(url,{"procDefId":$("#procDefId_"+userTaskId).val(),"actId":userTaskId,"resources":resources.toString()},
function (data){
alert(data);
window.location.reload();
}
);
}
function getCheckedItem(userTaskId){
var chk_value =[];
$('input[name="resources_'+userTaskId+'"]:checked').each(function(){
chk_value.push($(this).val());
});
//alert(chk_value.length==0 ?'你还没有选择任何内容!':chk_value);
return chk_value;
//alert(chk_value.length==0 ?'你还没有选择任何内容!':chk_value);
}
</script>
</head>
<body id="content" class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/setActResource/setAllResourcelist.do" method="post"
style="width: 100%; height: 100%;display: inline;">
<div class="main-container" id="main-container" style="overflow: auto;width: 100%; height: 800px;">
<c:forEach items="${result}" var="item">
<input name="actId" id="actId_${item.userTask.id}" value="${item.userTask.id}" type="hidden"/>
<input name="procDefId" id="procDefId_${item.userTask.id}" value="${procDefId}" type="hidden"/>
<div class="panel panel-primary panel-1">
<div class="panel-heading">
当前节点:${item.userTask.name}(${item.userTask.id})
</div>
<div class="panel-body" style="padding:3px;">
<div class="well well-sm no-padding no-margin">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="6">
<button type="button" onclick="showDiaLog('${ctx}/pages/user_org_select.jsp?orgId=0&showTreeType=USER&actId=${item.userTask.id}', '新增环节人员', '850px', '600px');" class="btn btn-xs btn-success">
新&nbsp;&nbsp;增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" onclick="deleteActUser('${item.userTask.id}');" class="btn btn-xs btn-danger">
删&nbsp;&nbsp;除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive no-padding no-margin">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('resources_${item.userTask.id}',this.checked)"></th>
<th style="width: 100px;">资源类型</th>
<th>资源名称</th>
<th style="width: 200px;">资源值</th>
</tr>
</thead>
<tbody>
<c:forEach items="${item.activityResources}" var="item1" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="resources_${item.userTask.id}" value="${item1.type}#${item1.id}"></td>
<td>${item1.parentId}</td>
<td>${item1.name}&nbsp;</td>
<td>${item1.remark}</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</c:forEach>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,153 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节用户列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script type="text/javascript">
$(document).ready(function() {
});
function createActUser(values,names) {
var url="${ctx}/actInfo/setActResource/save.do";
setMask("main-container");
$.post(url, {"procDefId":$("#procDefId").val(),"actId":$("#actId").val(),"resourceStr":values},
function (data){
alert(data);
window.location.reload();
});
}
function deleteActUser() {
if (!hasOneChecked("resources")) {
alert('请选择要操作的对象!');
return;
}
if(!window.confirm('确定执行[删除]操作?')){
return;
}
setMask("main-container");
var url="${ctx}/actInfo/setActResource/delete.do";
$.post(url,$('#queryForm',document).serialize(),
function (data){
alert(data);
window.location.reload();
}
);
}
</script>
</head>
<body id="content" class="white-page">
<%@ include file="/commons/messages.jsp"%>
<c:if test="${opDataSource=='true'}">
<div class="alert alert-block alert-info">
<button type="button" class="close" data-dismiss="alert">
<i class="ace-icon fa fa-times"></i>
</button>
新建、删除资源后请点击发布流程按钮:<button type="button" onclick="postAjax('${ctx}/procDefMgr/releaseProcess.do?procDefId=${procDefId}','发布成功!',false,true);" class="btn btn-xs btn-success">
发&nbsp;&nbsp;布
</button>
</div>
</c:if>
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/setActResource/list.do" method="post"
style="display: inline;">
<input name="actId" id="actId" value="${userTask.id}" type="hidden"/>
<input name="procDefId" id="procDefId" value="${procDefId}" type="hidden"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin: 0 0 5px 10px !important;padding: 0 !important;">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td colspan="7">
<button type="button" onclick="showDiaLog('${ctx}/pages/user_org_select.jsp?orgId=0&showTreeType=USER', '新增环节人员', '850px', '600px');" class="btn btn-xs btn-success">
新&nbsp;&nbsp;增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" onclick="deleteActUser();" class="btn btn-xs btn-danger">
删&nbsp;&nbsp;除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
<!-- <button onclick="art.dialog.close();" type="button" class="btn btn-xs btn-primary">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button> -->
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive" style="margin: 0 0 0 10px !important;padding: 0!important;">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover form-table">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('resources',this.checked)"></th>
<th>资源类型</th>
<th>资源名称</th>
<th>资源值</th>
</tr>
</thead>
<tbody>
<c:forEach items="${activityResources}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="resources" value="${item.type}#${item.id}"></td>
<td>${item.parentId}</td>
<td>${item.name}&nbsp;</td>
<td>
<c:choose>
<c:when test="${item.type=='ROLE'}">
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/pages/role_user_select.jsp?showTreeType=USER&roleId=${item.id}', '角色关联成员列表', '764px', '494px');">${item.remark}</a>
</c:when>
<c:otherwise>
${item.remark }
</c:otherwise>
</c:choose>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,80 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>环节表单按钮设置</title>
<script>
function changeHref(id,srcStr){
//alert(id);
document.getElementById(id).src=srcStr;
}
$(function(){
$("#tabs4").switchable("#panels4 >div",{
triggerType:"click",
effect:"iframe"
});
})
</script>
</head>
<body>
<div class="position">
<div class="center">
<div class="left">
<div class="right">
<span>当前位置:流程管理 >> 已部署流程定义</span>
</div>
</div>
</div>
</div>
<div id="tabs4" class="tabs-trigger" style="width: 100%;">
<div class="tabs-triggerLeft">
<div class="tabs-triggerRight">
<a id="UserContract"
onclick="changeHref('frmrightChild','${ctx}/activityInfoConfig/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}');"
href="" target="frmrightChild" class="current">环节基础信息</a>
<a id="UserEvent" href=""
onclick="changeHref('frmrightChild','${ctx}/activityInfoConfig/actOperatePowerList.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}');"
target="frmrightChild">环节操作权限</a>
<a id="UserEducation" href=""
onclick="changeHref('frmrightChild','${ctx}/activityInfoConfig/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}')"
; target="frmrightChild">环节变量配置</a>
<button type="submit" onclick="art.dialog.close();">
<span class="icon_close">关闭</span>
</button>
</div>
</div>
</div>
</div>
<div id="panels4" class="tabs-panel"
style="width: 100%; height: 100%;">
<IFRAME style="width: 100%; height: 450px;" scrolling="no"
src="${ctx}/activityInfoConfig/edit.do?activityDefId=${activityInfoConfig.activityDefId}&processDefId=${activityInfoConfig.processDefId}"
frameBorder="0" id="frmrightChild" name="frmrightChild: onload="
iframeHeight('frmrightChild')" allowTransparency="true"></IFRAME>
</div>
</body>
</html>
<script>
$(function(){
setTimeout(showCode,1000)
})
function showCode(){
top.Dialog.close();
}
</script>

View File

@@ -0,0 +1,104 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>待办列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
function selectUserResource(){
var userResourceType=$(".userResourceType").val();
if(userResourceType=="user"){
showDiaLog(url, "修改环节人员", '800px', '600px');
}else if(userResourceType=="role"){
showDiaLog(url, "修改环节人员", '800px', '600px');
}else if(userResourceType=="org"){
showDiaLog(url, "修改环节人员", '800px', '600px');
}else if(userResourceType=="tableVal"){
alert("暂不支持该选项");
}else if(userResourceType=="script"){
alert("暂不支持该选项");
}
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="procDefForm" name="procDefForm"
action="${ctx}/procDefMgr/list.do" method="post"
style="display: inline;">
<div class="box2" panelTitle="" roller="false">
<table>
<tr>
<td colspan="7">
<button type="button" onclick="importProcessBpmnXml();"/>
<span class="icon_add">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="submit"/>
<span class="icon_find">取消</span>
<i class="ace-icon fa fa-undo icon-on-right bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<table class="tableStyle">
<tr>
<th width="60px">序号</th>
<th width="200px">用户类型</th>
<th>用户来源</th>
</tr>
<tr>
<td>1&nbsp;</td>
<td>
<select id="userResourceType" name="userResourceType">
<option id="user">用户</option>
<option id="role">角色</option>
<option id="org">组织</option>
<option id="tableVal">表单变量</option>
<option id="script">脚本</option>
</select>
</td>
<td>
<textarea name="userResourceVal" style="width:350px;height:50px;">
</textarea>
<button type="button" onclick="selectUserResource();"/>
<span class="icon_find">选择</span>
</button>
</td>
</tr>
</table>
</form>
</body>
</html>

View File

@@ -0,0 +1,162 @@

<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>添加应用</title>
<script type="text/javascript">
function createActUser(values, names) {
$("#appManagerIds").val(values.replace(/USER#/g, ""));
$("#appManagerNames").val(names);
}
function createApp() {
$.ajax({
type : 'POST',
url : '${ctx}/applicationMgr/save.do',
data : $('#myform').serialize(),
success : function (result){
alert(result);
art.dialog.opener.location.reload();
}
});
}
$(function(){
var demo=$("#myform").Validform({
datatype:{"appId": /^\w+$/},
tiptype:function(msg,o,cssctl){
var b = true;
//msg提示信息;
//o:{obj:*,type:*,curform:*}, obj指向的是当前验证的表单元素或表单对象type指示提示的状态值为1、2、3、4 1正在检测/提交数据2通过验证3验证失败4提示ignore状态, curform为当前form对象;
//cssctl:内置的提示信息样式控制函数,该函数需传入两个参数:显示提示信息的对象 和 当前提示的状态既形参o中的type;
if(o.type==3){
if(msg.indexOf("statusText")<0){
//排除掉提交完成后返回的状态字符串
alert(msg);
b = false;
return b;
}
}
return b;
},
callback:function(data){
if('操作成功' == data.statusText){
alert("操作成功");
art.dialog.opener.location.reload();
}else{
alert("操作失败");
}
},
ajaxPost:true
});
$("#submitButton").click(function(){
demo.ajaxPost();
return false;
});
//$('#appId').keyup(trimkeyup);
})
</script>
</head>
<body class="white-page">
<form id="myform" action="${ctx}/applicationMgr/save.do">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table border="0" cellspacing="0" cellpadding="0" class="table table-bordered form-table" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<th>系统标识:<font color="red">*</font></th>
<td>
<input type="text" name="appId" id="appId"
datatype="appId" nullmsg="请输入系统标识!" errormsg="系统标识只能输入字母、数字、下划线!"、
onKeypress="javascript:if(event.keyCode == 32)event.returnValue = false;"/>
</td>
<th>系统名称:<font color="red">*</font>
</th>
<td>
<input type="text" name="appName" id="appName" class="validate[required,length[0,50]]"
datatype="*1-50" nullmsg="请输入系统名称!" errormsg="系统名称不能超过12个字符"/>
</td>
</tr>
<tr>
<th>系统分类:</th>
<td><select id="appType" name="appType">
<option value="inner">内部应用</option>
<option value="outside">外部应用</option></select></td>
<th>系统状态:<font color="red">*</font>
</th>
<td><select id="appStatus" name="appStatus">
<option value="N">正常</option>
<option value="T">已停用</option></select></td>
</tr>
<tr>
<th>开发厂商:<font color="red">*</font>
</th>
<td>
<input type="text" name="appProvider" id="appProvider" class="input"
datatype="*1-30" nullmsg="请输入开发厂商!" errormsg="开发厂商不能超过30个字符"/>
</td>
<th><u
onclick="showDiaLog('${ctx}/pages/user_org_select.jsp?showTreeType=USER&isMultiSelect=true&roleFlag=false&orgId=0', '添加管理人员', '800px', '500px');"
style="cursor: pointer;">管理员</u><font color="red">*</font></th>
<td><input type="text" name="appManagerNames" id="appManagerNames" class="input"
readonly="readonly" datatype="*1-500" nullmsg="请选择管理员!"/>
<input type="hidden" name="appManagerIds" id="appManagerIds" class="input" /></td>
</tr>
<!--
<tr>
<th>待办URL<font color="red">*</font></th>
<td colspan="3"><input type="text" name="appAccessUrl"
value="${ application.appAccessUrl}" id="appAccessUrl"
datatype="url" nullmsg="请输入待办URL" errormsg="请输入正确的url地址"
class="input" style="width: 99%;"/></td>
</tr> -->
<tr>
<th>联系人:</th>
<td>
<input type="text" name="appLinkman" id="appLinkman" class="input" />
</td>
<th>联系电话:</th>
<td><input type="text" name="appPhone" id="appPhone" class="input" />
</td>
</tr>
<tr>
<th>服务器IP列表</th>
<td colspan="3"><input type="text" name="ipList" id="ipList" class="input" style="width:99%;" /></td>
</tr>
<tr>
<th>系统描述:</th>
<td colspan="3"><input type="text" name="appDesc" id="appDesc" class="input" style="width: 99%;"/></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<!-- <input type="button" class="btn btn-sm btn-primary"
id="submitButton" name="submitButton" onclick="createApp();"
value="保 存" />-->
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" name="submitButton">
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
</div>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,149 @@

<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>添加应用</title>
<script type="text/javascript">
function createActUser(values, names) {
$("#appManagerIds").val(values.replace(/USER#/g, ""));
$("#appManagerNames").val(names);
}
function updateApp(){
$.post('${ctx}/applicationMgr/update.do',$('#myform').serialize(),function(result){
alert(result);
art.dialog.opener.location.reload();
});
}
$(function(){
var demo = $("#myform").Validform({
tiptype:function(msg,o,cssctl){
var b = true;
//msg提示信息;
//o:{obj:*,type:*,curform:*}, obj指向的是当前验证的表单元素或表单对象type指示提示的状态值为1、2、3、4 1正在检测/提交数据2通过验证3验证失败4提示ignore状态, curform为当前form对象;
//cssctl:内置的提示信息样式控制函数,该函数需传入两个参数:显示提示信息的对象 和 当前提示的状态既形参o中的type;
if(o.type==3){
if(msg.indexOf("statusText")<0){
//排除掉提交完成后返回的状态字符串
alert(msg);
b = false;
return b;
}
}
return b;
},
callback:function(data){
if('操作成功' == data.statusText){
alert("操作成功");
art.dialog.opener.location.reload();
}else{
alert("操作失败");
}
},
ajaxPost:true
});
$("#submitButton").click(function(){
demo.ajaxPost();
return false;
});
})
</script>
</head>
<body class="white-page">
<form action="${ctx}/applicationMgr/update.do" id="myform" name="myform" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table border="0" cellspacing="0" cellpadding="0" class="table table-bordered form-table" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<th>系统标识:<font color="red">*</font></th>
<td><input type="text" name="appId" name="appId"
value="${ application.appId}" readonly="readonly"
datatype="s1-50" nullmsg="请输入系统标识!" errormsg="系统标识不能超过50个字符"/></td>
<th>系统名称:<font color="red">*</font>
</th>
<td><input type="text" name="appName"
value="${ application.appName}" id="appName"
class="validate[required,length[0,50]]"
datatype="*1-50" nullmsg="请输入系统名称!" errormsg="系统名称不能超过12个字符"/></td>
</tr>
<tr>
<th>系统分类:</th>
<td><select id="appType" name="appType"
value="${application.appType }"><option value="inner">内部应用</option>
<option value="outside">外部应用</option></select></td>
<th>系统状态:<font color="red">*</font>
</th>
<td><select id="appStatus" name="appStatus"
value="${application.appStatus }"><option value="N">正常</option>
<option value="T">已停用</option></select></td>
</tr>
<tr>
<th>开发厂商:<font color="red">*</font>
</th>
<td><input type="text" name="appProvider"
value="${application.appProvider }" id="appProvider"
datatype="*1-30" nullmsg="请输入开发厂商!" errormsg="开发厂商不能超过30个字符"
class="input" /></td>
<th><u
onclick="showDiaLog('${ctx}/pages/user_org_select.jsp?showTreeType=USER&isMultiSelect=true&roleFlag=false&orgId=0', '添加管理人员', '800px', '500px');"
style="cursor: pointer;">管理员</u><font color="red">*</font></th>
<td><input type="text" name="appManagerNames" id="appManagerNames" class="input"
readonly="readonly" datatype="*1-500" nullmsg="请选择管理员!"
value="${application.managerNames }" readonly="readonly"/>
<input type="hidden" name="appManagerIds" id="appManagerIds" value="${application.managerIds }" class="input" /></td>
</tr>
<!--
<tr>
<th>待办URL<font color="red">*</font></th>
<td colspan="3"><input type="text" name="appAccessUrl"
value="${ application.appAccessUrl}" id="appAccessUrl"
datatype="*" nullmsg="请输入待办URL" errormsg="请输入正确的url地址"
class="input" style="width: 99%;"/></td>
</tr>
-->
<tr>
<th>联系人:</th>
<td><input type="text" name="appLinkman"
value="${application.appLinkman }" id="appLinkman" class="input" />
</td>
<th>联系电话:</th>
<td><input type="text" name="appPhone"
value="${application.appPhone }" id="appPhone" class="input" />
</td>
</tr>
<tr>
<th>服务器IP列表</th>
<td colspan="3"><input type="text" name="ipList" id="ipList" class="input" style="width:99%;" value="${application.ipList }" /></td>
</tr>
<tr>
<th>系统描述:</th>
<td colspan="3"><input type="text" name="appDesc"
value="${application.appDesc }" id="appDesc" class="input" style="width: 99%;"/></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" >
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,139 @@
<%@page import="com.blueland.bpm.engine.core.model.ProcessDefinitionModel"%>
<%@page import="com.blueland.bpm.engine.config.model.ProcessInfoConfig"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>应用列表</title>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
jQuery.ajax({
type: "get",
url: "https://api.hngytobacco.com/user-center/user/p_longw",
data: {},
headers: {
'Authorization': "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJnTlJqS1paaFdGQ05VbFNMd2RqTEFSR0FBZ3hqa2NrNyIsImV4cCI6MTU4NDAxNjc0NX0.Bv_9tqZvCmN29jDCuVv3QPWTHGnE5PBfg0DgWtiVWShPtXUKZQtdDW9iDAKpfiPa_nvNRxzSowiCs7DekbejEhISkayWAyctQvi24fK-NiP9PVNnZF2AjAGx0mjLPLNblqJwc5nTwJQY83VPn0Fs2cCS5esTncH6U_behFjoDMc"
},
success: function(resp)
{
alert(JSON.stringify(resp));
}
});
});
function createApplication(){
var url="${ctx}/applicationMgr/create.do";
showDiaLog(url,"添加应用",'800px','450px');
}
function onDelete(action, radioName, form){
if (!hasOneChecked(radioName)) {
alert('请选择要操作的对象!');
return;
}
if(window.confirm('确定执行[删除]操作?')){
setMask("main-container");
form.action = action;
form.submit();
}
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/applicationMgr/list.do" method="post"
style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
<h8>应用列表</h8>
</div>
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin-bottom: 2px;">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td>应用名称:</td>
<td><input value="${query.appName}" id="appName"
name="appName" maxlength="50" /></td>
<td><button type="submit" onclick="getReferenceForm(this).action='${ctx}/applicationMgr/list.do'"class="btn btn-xs btn-primary">查询
<i class="ace-icon fa fa-search bigger-110"></i></button>
<button type="button" onclick="createApplication();" class="btn btn-xs btn-success">添加应用
<i class="ace-icon fa fa-plus bigger-110"></i></button>
<button type="button" onclick="onDelete('${ctx}/applicationMgr/delete.do','items',document.forms.queryForm)" class="btn btn-xs btn-success"">删除应用
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<div style="width: 100%;overflow: auto;">
<table style="width: inherit;max-width: 600%;table-layout: fixed;" id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 20px"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width: 120px" sortColumn="appId">应用ID</th>
<th style="width: 120px" sortColumn="appName">应用名称</th>
<th style="width: 120px" sortColumn="appProvider">开发商</th>
<th style="width: 120px" sortColumn="appStatus">应用状态</th>
<th style="width: 120px" sortColumn="appUrl">待办URL</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="radio" name="items" value="appId=${item.appId}"></td>
<td><a href="javascript:void(0);" onclick="showDiaLog('${ctx}/applicationMgr/edit.do?appId=${item.appId }', '修改应用', '800px','450px');">${item.appId}</a>&nbsp;</td>
<td>${item.appName}&nbsp;</td>
<td>${item.appProvider}&nbsp;</td>
<td>${item.statusVal }&nbsp;</td>
<td>${item.appAccessUrl}&nbsp;</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,172 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String processInstanceId = request
.getParameter("processInstanceId");
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<%@ include file="/commons/meta.jsp"%>
<script type="text/javascript">
function procDefNameOnDbClick(name, value) {
$("#procDefName").val(name);
$("#procDefKey").val(value);
}
function changeHref(id, srcStr, currentType) {
if ("image" == currentType) {
var height = "${height}";
$("#frmrightChild").height(parseInt(height) + 100);
}
document.getElementById(id).src = srcStr;
}
function selectTag(showContent, selfObj, currentType) {
//当前展示的是文本监控还是图形监控页面标记text为文本监控页面 image为图形监控页面
$("#currentType").val(currentType);
var currentProcessInstanceId = $("#currentProcessInstanceId").val();
showContent = showContent
+ (showContent.indexOf("?") != -1 ? '&' : '?')
+ "processInstanceId=" + currentProcessInstanceId;
// 操作标签
var tag = document.getElementById("tags").getElementsByTagName("li");
var taglength = tag.length;
for (i = 0; i < taglength; i++) {
tag[i].className = "";
}
selfObj.parentNode.className = "selectTag";
changeHref("frmrightChild", showContent, currentType);
}
function moveLeft() {
var left = $("tags").style.left;
left = left && parseInt(left) || 0;
if (left < 0) {
$("tags").style.left = left + 95 + "px";
}
}
function moveRight() {
var left = $("tags").style.left;
left = left && parseInt(left) || 0;
$("tags").style.left = left - 95 + "px";
}
$(function() {
var currentProcessInstanceId = $("#currentProcessInstanceId").val();
});
function flushFlowLog(processInstanceId) {
$("#currentProcessInstanceId").val(processInstanceId);
var currentType = $("#currentType").val();
if ("text" == currentType) {
document.getElementById("frmrightChild").src = "${ctx}/workflow/trace/traceByText.do?processInstanceId="
+ processInstanceId;
} else {
document.getElementById("frmrightChild").src = "${ctx}/workflow/trace/traceByImage.do?processInstanceId="
+ processInstanceId
+ "&imageHeight="
+ "600"
+ "&imageWidth=" + "1200";
}
}
</script>
<title>流程监控</title>
</head>
<body class="no-skin">
<jsp:include page="../../pages/procDefMgr/procDefTree.jsp" flush="false" />
<input type="hidden" id="currentProcessInstanceId"
value="${processInstance.procInstId}" />
<div class="main-container" id="main-container">
<div class="main-content">
<!-- /section:basics/content.breadcrumbs -->
<div class="page-content">
<!-- #section:settings.box -->
<!-- /section:settings.box -->
<div class="page-content-area">
<div class="row">
<div class="col-xs-12">
<!-- PAGE CONTENT BEGINS -->
<form method="post" action="autoRun.do">
<table width="100%">
<tr>
<td colspan="2">
<div class="panel-heading"
style="color: #FFF; background-color: #428BCA; border-color: #428BCA; padding: 2px 15px;">
<tr>
<td>发起用户(选择)<font color="red">*</font>
<input style="width: 400px;" type="text" name="procStartUserId" id="procStartUserId"/>
<input style="width: 400px;" type="hidden" name="123" id="333"/>
</td>
</tr>
<tr>
<td>选择自动运行流程<font color="red">*</font>
<input style="width: 400px;" type="text" name="procDefName" id="procDefName" readonly onclick="showMenu('procDefName','',''); return false;" />
<input style="width: 400px;" type="hidden"
name="procDefKey" value="" id="procDefKey" />
<input type="submit" class="btn btn-sm btn-primary"
id="submitButton" value="继续运行" />
<input type="submit" class="btn btn-sm btn-primary"
id="submitButton" value="停止" />
</td>
</tr>
</div>
</td>
</tr>
<tr>
<td valign="top" align="left" id="rightPart">
<div class="tabbable">
${processInstance.procTitle}
<ul
class="nav nav-tabs padding-12 tab-color-blue background-blue"
id="tags">
<li class="active"><a id="UserContract"
data-toggle="tab"
onclick="selectTag('${ctx}/workflow/trace/traceByText.do',this,'text');"
href="" target="frmrightChild" class="current">文本监控</a></li>
<li><a id="UserEvent" href="" data-toggle="tab"
onclick="selectTag('${ctx}/workflow/trace/traceByImage.do?imageHeight=600&imageWidth=1200',this,'image');"
target="frmrightChild">图形监控</a></li>
</ul>
<div class="tab-content" style="width: 100%; height: 100%;">
<IFRAME scrolling="yes" frameBorder=0 id="frmrightChild"
src="" name="frmrightChild"
style="width: 99%; min-height: 400px;"
allowTransparency="true">
</div>
</div>
</td>
</tr>
</table>
</form>
<!-- PAGE CONTENT ENDS -->
</div>
<!-- /.col -->
</div>
<!-- /.row -->
</div>
<!-- /.page-content-area -->
</div>
<!-- /.page-content -->
</div>
<!-- /.main-container -->
</body>
</html>

View File

@@ -0,0 +1,90 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>全局变量新增</title>
<script type="text/javascript">
$(function(){
$("#myform").Validform({
tiptype:4,
datatype:{"objKey": /^\w+$/},
btnSubmit:"#submitButton"
});
//$('#objKey').keyup(trimkeyup);
})
</script>
</head>
<body>
<form action="${ctx}/dataObject/save.do" method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel-heading">新增全局属性</div>
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<input type="hidden" name="objScope" id="objScope" value="G" />
<tr>
<th>属性KEY<font color="red">*</font>
</th>
<td><input type="text" name="objKey" value="" id="objKey"
datatype="objKey" nullmsg="请输入变量KEY" errormsg="变量KEY只能输入字母、数字以及下划线"
class="input"
onKeypress="javascript:if(event.keyCode == 32)event.returnValue = false;"/>
</td>
</tr>
<tr>
<th>属性名称<font color="red">*</font>
</th>
<td><input type="text" name="objName" value="" id="objName"
datatype="*1-12" nullmsg="请输入变量名称!" errormsg="变量名称不能超过12个汉字"
class="input" /></td>
</tr>
<tr>
<th>属性值<font color="red">*</font>
</th>
<td><input type="text" name="objValue" value=""
datatype="s1-500" nullmsg="请输入变量值!" errormsg="变量值不能超过500个字符"
id="objValue" class="input" /></td>
</tr>
<tr>
<th>属性类型<font color="red">*</font>
</th>
<td><input type="text" name="objType" value="" id="objType"
datatype="s1-50" nullmsg="请输入变量类型!" errormsg="变量类型不能超过50个字符"
class="input" /></td>
</tr>
<tr>
<th>备注:</th>
<td><input type="text" name="objRemark" value=""
id="objRemark" class="input" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary" id="submitButton">保存
<i class="ace-icon fa fa-save bigger-110"></i></a>
<a class="btn btn-sm btn-primary"
onclick="window.location='${ctx}/dataObject/list.do'">返回
<i class="ace-icon fa fa-undo icon-on-right bigger-110"></i></a>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,92 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>全局变量编辑</title>
<script type="text/javascript">
$(function(){
$("#myform").Validform({
tiptype:4,
datatype:{"objKey": /^\w+$/},
btnSubmit:"#submitButton"
});
//$('#objKey').keyup(trimkeyup);
})
</script>
</head>
<body>
<form action="${ctx}/dataObject/update.do" method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel-heading">编辑全局属性</div>
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="objScope" id="objScope" value="G" />
<input type="hidden" id="objId" name="objId"
value="${dataObject.objId}" />
<!-- 存放表单的区域 -->
<tr>
<th>属性KEY<font color="red">*</font>
</th>
<td><input type="text" name="objKey"
value="${dataObject.objKey}" id="objKey" class="input"
datatype="objKey" nullmsg="请输入变量KEY" errormsg="变量KEY只能输入字母、数字以及下划线"
onKeypress="javascript:if(event.keyCode == 32)event.returnValue = false;"/>
</td>
</tr>
<tr>
<th>属性名称<font color="red">*</font>
</th>
<td><input type="text" name="objName"
value="${dataObject.objName}" id="objName" class="input"
datatype="*1-12" nullmsg="请输入变量名称!" errormsg="变量名称不能超过12个汉字"/></td>
</tr>
<tr>
<th>属性值<font color="red">*</font>
</th>
<td><input type="text" name="objValue"
value="${dataObject.objValue}" id="objValue" class="input"
datatype="s1-500" nullmsg="请输入变量值!" errormsg="变量值不能超过500个字符"/></td>
</tr>
<tr>
<th>属性类型<font color="red">*</font>
</th>
<td><input type="text" name="objType"
value="${dataObject.objType}" id="objType" class="input"
datatype="s1-50" nullmsg="请输入变量类型!" errormsg="变量类型不能超过50个字符"/></td>
</tr>
<tr>
<th>备注:</th>
<td><input type="text" name="objRemark"
value="${dataObject.objRemark}" id="objRemark" class="input" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary" id="submitButton"
onclick="javascript:getReferenceForm(this).submit();">保存
<i class="ace-icon fa fa-save bigger-110"></i></a>
<a class="btn btn-sm btn-primary"
onclick="window.location='${ctx}/dataObject/list.do'">返回
<i class="ace-icon fa fa-undo icon-on-right bigger-110"></i></a>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,120 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>全局变量管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/dataObject/list.do" method="get" style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
全局变量管理
</div>
<div class="panel-body">
<div class="form-group well well-sm" style="margin-bottom: 2px;">
<table border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td>变量名称:</td>
<td>
<input class="input" value="${query.objName}" id="objName" name="objName" maxlength="50" />
</td>
<td>变量类型:</td>
<td>
<input class="input" value="${query.objType}" id="objType" name="objType" maxlength="5" />
</td>
</tr>
<tr>
<td colspan="7">
<button type="submit" class="btn btn-xs btn-primary"
onclick="getReferenceForm(this).action='${ctx}/dataObject/list.do'">查&nbsp;&nbsp;询
<i class="ace-icon fa fa-search bigger-110"></i>
</button>
<button type="submit" class="btn btn-xs btn-success" onclick="getReferenceForm(this).action='${ctx}/dataObject/create.do'">
新增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" class="btn btn-xs btn-danger"
onclick="batchDelete('${ctx}/dataObject/delete.do','items',document.forms.queryForm)">删&nbsp;&nbsp;除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="objKey" >变量KEY</th>
<th sortColumn="objName" >变量名称</th>
<th sortColumn="objValue" >变量值</th>
<th sortColumn="objType" >变量类型</th>
<th sortColumn="objRemark" >备注</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="objId=${item.objId}&"></td>
<td>${item.objKey}&nbsp;</td>
<td>${item.objName}&nbsp;</td>
<td>${item.objValue}&nbsp;</td>
<td>${item.objType}&nbsp;</td>
<td>${item.objRemark}&nbsp;</td>
<td>
<a href="${ctx}/dataObject/edit.do?objId=${item.objId}&">修改</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,116 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>流程数据对象关联表管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm','${page.thisPageNumber}','${page.pageSize}','${pageRequest.sortColumns}');
});
function delObj(){
if (!hasOneChecked("items")) {
alert('请选择要操作的对象!');
return;
}
if(window.confirm('确定执行[删除]操作?')){
jQuery.ajax({
type : "POST",
url : "${ctx}/dataObjectRelation/delete.do",
data : $('#queryForm').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
}
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/dataObjectRelation/list.do" method="get" style="display: inline;">
<div class="panel panel-primary">
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success" onclick="showDiaLog('${ctx}/dataObjectRelation/create.do?processDefId=${query.processDefId}&activityDefId=${query.activityDefId}&dorType=A','新增环节变量','600px','400px')">
新增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" class="btn btn-xs btn-danger" onclick="delObj();">
删除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
<!-- <a class="btn btn-xs btn-primary" onclick="art.dialog.close();">关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</a> -->
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover form-table">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="objKey" >变量KEY</th>
<th sortColumn="objName" >变量名称</th>
<th sortColumn="objValue" >变量值</th>
<th sortColumn="objType" >变量类型</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataObjectRelations}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="dorId=${item.dorId}&"></td>
<td>${item.dataObject.objKey}&nbsp;</td>
<td>${item.dataObject.objName}&nbsp;</td>
<td>${item.dataObject.objValue}&nbsp;</td>
<td>${item.dataObject.objType}&nbsp;</td>
<td>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/dataObjectRelation/edit.do?dorId=${item.dorId}','编辑环节变量','600px','400px')">修改</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,114 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>全局变量新增</title>
<script type="text/javascript">
$(document).ready(function() {
/*$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/dataObjectRelation/save.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});*/
var demo=$("#myform").Validform({tiptype:4, datatype:{"objKey": /^\w+$/},callback:function(data){
alert("编辑成功");
art.dialog.opener.location.reload();
}});
$("#submitButton").click(function(){
demo.ajaxPost();
return false;
});
//$('#objKey').keyup(trimkeyup);
});
</script>
</head>
<body class="white-page">
<form action="${ctx}/dataObjectRelation/save.do" method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<input type="hidden" name="objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="processDefName" id="processDefName" value="${dataObjectRelation.processDefName }" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="activityDefName" id="activityDefName" value="${dataObjectRelation.activityDefName }" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="targetActName" id="targetActName" value="${dataObjectRelation.targetActName}" />
<input type="hidden" name="dorType" id="dorType" value="${dataObjectRelation.dorType}" />
<tr>
<th>属性KEY<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objKey" value="" id="objKey"
datatype="objKey" nullmsg="请输入变量KEY" errormsg="变量KEY只能输入字母、数字以及下划线"
class="input"
onKeypress="javascript:if(event.keyCode == 32)event.returnValue = false;"/>
</td>
</tr>
<tr>
<th>属性名称<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objName" value="" id="objName"
datatype="*1-12" nullmsg="请输入变量名称!" errormsg="变量名称不能超过12个汉字"
class="input" /></td>
</tr>
<tr>
<th>属性值<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objValue" value=""
datatype="*1-500" nullmsg="请输入变量值!" errormsg="变量值不能超过500个字符"
id="objValue" class="input" /></td>
</tr>
<tr>
<th>属性类型<font color="red">*</font>
</th>
<td>
<select name="dataObject.objType" id="objType">
<option value="String">字符串</option>
<option value="Number">数字</option>
<option value="Boolean">布尔值</option>
<option value="Object">对象</option>
</select>
</td>
</tr>
<tr>
<th>备注:</th>
<td><input type="text" name="dataObject.objRemark" value=""
id="objRemark" class="input" /></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary" id="submitButton">保存<i class="ace-icon fa fa-save bigger-110"></i></a>
<a class="btn btn-sm btn-primary" onclick="art.dialog.close();">关闭<i class="ace-icon fa fa-times bigger-110"></i></a>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,121 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>全局变量编辑</title>
<script type="text/javascript">
$(document).ready(function() {
/*$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/dataObjectRelation/update.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
});*/
var demo=$("#myform").Validform({tiptype:4, datatype:{"objKey": /^\w+$/},callback:function(data){
alert("编辑成功");
art.dialog.opener.location.reload();
}});
$("#submitButton").click(function(){
demo.ajaxPost();
return false;
});
//$('#objKey').keyup(trimkeyup);
});
</script>
</head>
<body class="white-page">
<form action="${ctx}/dataObjectRelation/update.do" method="post" id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" name="dorId" id="dorId" value="${dataObjectRelation.dorId}" />
<input type="hidden" name="dataObject.objScope" id="objScope" value="P" />
<input type="hidden" name="processDefId" id="processDefId" value="${dataObjectRelation.processDefId}" />
<input type="hidden" name="processDefName" id="processDefName" value="${dataObjectRelation.processDefName }" />
<input type="hidden" name="activityDefId" id="activityDefId" value="${dataObjectRelation.activityDefId}" />
<input type="hidden" name="targetActId" id="targetActId" value="${dataObjectRelation.targetActId}" />
<input type="hidden" name="dorType" id="dorType" value="${dataObjectRelation.dorType}" />
<input type="hidden" id="objId" name="dataObject.objId" value="${dataObjectRelation.dataObject.objId}" />
<!-- 存放表单的区域 -->
<tr>
<th>属性KEY<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objKey"
value="${dataObjectRelation.dataObject.objKey}" id="objKey"
datatype="objKey" nullmsg="请输入变量KEY" errormsg="变量KEY只能输入字母、数字以及下划线"
class="input"
onKeypress="javascript:if(event.keyCode == 32)event.returnValue = false;"/>
</td>
</tr>
<tr>
<th>属性名称<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objName"
value="${dataObjectRelation.dataObject.objName}" id="objName"
datatype="*1-12" nullmsg="请输入变量名称!" errormsg="变量名称不能超过12个汉字"
class="input" /></td>
</tr>
<tr>
<th>属性值<font color="red">*</font>
</th>
<td><input type="text" name="dataObject.objValue"
value="${dataObjectRelation.dataObject.objValue}"
datatype="*1-500" nullmsg="请输入变量值!" errormsg="变量值不能超过500个字符"
id="objValue" class="input" /></td>
</tr>
<tr>
<th>属性类型<font color="red">*</font>
</th>
<td>
<select name="dataObject.objType" id="objType">
<option value="String" ${dataObjectRelation.dataObject.objType=="String" ? "selected": ""}>字符串</option>
<option value="Number" ${dataObjectRelation.dataObject.objType=="Number" ? "selected": ""}>数字</option>
<option value="Boolean" ${dataObjectRelation.dataObject.objType=="Boolean" ? "selected": ""}>布尔值</option>
<option value="Object" ${dataObjectRelation.dataObject.objType=="Object" ? "selected": ""}>对象</option>
</select>
</td>
</tr>
<tr>
<th>备注:</th>
<td><input type="text" name="dataObject.objRemark"
id="objRemark" class="input"
value="${dataObjectRelation.dataObject.objRemark}"/></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary" id="submitButton">保存<i class="ace-icon fa fa-save bigger-110"></i></a>
<a class="btn btn-sm btn-primary" onclick="art.dialog.close();">关闭<i class="ace-icon fa fa-times bigger-110"></i></a>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,110 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>流程数据对象关联表管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" >
function delObj(){
if (!hasOneChecked("items")) {
alert('请选择要操作的对象!');
return;
}
if(window.confirm('确定执行[删除]操作?')){
jQuery.ajax({
type : "POST",
url : "${ctx}/dataObjectRelation/delete.do",
data : $('#queryForm').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
}
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/dataObjectRelation/list.do" method="get" style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin:0 !important;padding: 0 !important;">
<table border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td colspan="7">
<button type="button" class="btn btn-xs btn-success" onclick="showDiaLog('${ctx}/dataObjectRelation/create.do?processDefId=${query.processDefId}&dorType=P','新增流程扩展属性','600px','400px')">
新增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" class="btn btn-xs btn-danger" onclick="delObj();">
删除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive" style="margin: 0 0 5px !important;padding: 0 !important;">
<table id="sample-table-1" class="table table-striped table-bordered table-hover form-table">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="objKey" >变量KEY</th>
<th sortColumn="objName" >变量名称</th>
<th sortColumn="objValue" >变量值</th>
<th sortColumn="objType" >变量类型</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataObjectRelations}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="dorId=${item.dorId}&"></td>
<td>${item.dataObject.objKey}&nbsp;</td>
<td>${item.dataObject.objName}&nbsp;</td>
<td>${item.dataObject.objValue}&nbsp;</td>
<td>${item.dataObject.objType}&nbsp;</td>
<td>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/dataObjectRelation/edit.do?dorId=${item.dorId}','编辑流程变量','600px','400px')">修改</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,108 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>流程数据对象关联表管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
function delObj(){
if (!hasOneChecked("items")) {
alert('请选择要操作的对象!');
return;
}
if(window.confirm('确定执行[删除]操作?')){
jQuery.ajax({
type : "POST",
url : "${ctx}/dataObjectRelation/delete.do",
data : $('#queryForm').serialize(),
success : function(resp) {
alert(resp);
window.location.reload();
}
});
}
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/dataObjectRelation/list.do" method="get" style="display: inline;">
<div class="panel panel-primary">
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td colspan="7">
<input value="新增" type="button" class="btn btn-xs btn-success" onclick="showDiaLog('${ctx}/dataObjectRelation/create.do?processDefId=${query.processDefId}&activityDefId=${query.activityDefId}&targetActId=${query.targetActId}&dorType=S','新增流程变量','600px','400px')"/>
<input value="删除" type="button" class="btn btn-xs btn-danger" onclick="delObj();"/>
<a class="btn btn-xs btn-primary" onclick="art.dialog.close();">关闭</a>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="objKey" >变量KEY</th>
<th sortColumn="objName" >变量名称</th>
<th sortColumn="objValue" >变量值</th>
<th sortColumn="objType" >变量类型</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${dataObjectRelations}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="dorId=${item.dorId}&"></td>
<td>${item.dataObject.objKey}&nbsp;</td>
<td>${item.dataObject.objName}&nbsp;</td>
<td>${item.dataObject.objValue}&nbsp;</td>
<td>${item.dataObject.objType}&nbsp;</td>
<td>
<a href="javascript:void(0);" onclick="showDiaLog('${ctx}/dataObjectRelation/edit.do?dorId=${item.dorId}','编辑流程变量','600px','400px')">修改</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,261 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%-- <jsp:include page="deputeUserTree.jsp" flush="false" /> --%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="description" content="overview &amp; stats" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<!-- bootstrap & fontawesome -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/bootstrap.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/font-awesome.min.css" />
<!-- text fonts -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-fonts.css" />
<!-- ace styles -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace.min.css" id="main-ace-style" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-part2.min.css" />
<![endif]-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-skins.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-rtl.min.css" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-ie.min.css" />
<!-- page specific plugin styles -->
<link rel="stylesheet" href="${ctx }/resource/css/global.css" />
<script type="text/javascript" src="${ctx }/resource/js/jquery-1.8.3.min.js"></script>
<script src="<c:url value="/resource/js/common/application.js"/>" type="text/javascript"></script>
<script src="<c:url value="/resource/js/plugins/My97DatePicker/WdatePicker.js"/>" type="text/javascript"></script>
<script src="${ctx }/resource/js/plugins/artDialog/jquery.artDialog.js?skin=blue"></script>
<script src="${ctx }/resource/js/plugins/artDialog/iframeTools.source.js"></script>
<!-- validation BEGIN-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2/demo/css/style.css" />
<script type="text/javascript" src="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2_min.js"></script>
<!-- validation END-->
<base href="<%=basePath%>">
<style>
.ztree li span {
line-height: 16px;
margin-right: 2px;
font-size: 12px;
color: #333;
font-family: "微软雅黑";
}
.btn-style{
border: 1px #89a0b9 solid;
border-radius: 4px;
background: -webkit-gradient(linear, 0% 0%, 0% 100%,from(#fefefe), to(#dce2e6));
padding: 0px 15px;
color: #000;
font-size: 12px;
font-family:"微软雅黑";
letter-spacing: 4px;
}
.btn-style:hover{
background:#e1f0f8;
cursor:pointer;
}
</style>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/demo.css"
type="text/css">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/zTreeStyle/zTreeStyle.css"
type="text/css">
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery-1.4.4.min.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.core-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.excheck-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.exedit-3.4.js"></script>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/userSelect/css/usStyle/button.css" type="text/css">
<script>
$(function(){
//初始化委托人
$.fn.zTree.init($("#treeObj"), createUserSetting());
});
function createUserSetting(){
var setting = {
view: {
dblClickExpand: false,
expandSpeed: "slow",
selectedMulti: false
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/pages/user/getUserOrgTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"assignTreeId":"${user.orgId}","treeLevel":"","showTreeType":"USER","filterNodeIdsStr":"${user.userId}","ischecked":"0","isCheckValue":"${existDepute.mandataryUserId}"}
},
check: {
enable: true,
chkStyle: "radio"
},
callback: {
onAsyncSuccess: onAsyncSuccess,
onCheck:onUserCheck
}
};
return setting;
}
function onUserCheck(event, treeId, treeNode) {
if(null == treeNode){
return ;
}
if("USER" == treeNode.type){
$("#mandataryUserId").val(treeNode.id);
$("#mandataryUserName").val(treeNode.name);
return true;
}else{
return false;
}
}
function onAsyncSuccess(event, treeId, treeNode, msg) {
var msgArr=$.parseJSON(msg);
for(var i = 0;i<msgArr.length;i++){
if(msgArr[i].checked){
$("#mandataryUserId").val(msgArr[i].id);
$("#mandataryUserName").val(msgArr[i].name);
}
}
}
function saveDepute(){
var ischeck = checkBeforeSubmit();
if(ischeck){
$.post('${ctx}/depute/save.do',
$('#editForm').serialize(),
function(result){
if(result.success){
alert("保存成功!");
art.dialog.opener.location.reload();
}else{
alert("保存失败!");
}
});
}
}
function checkBeforeSubmit(){
var mandataryUserId = $("#mandataryUserId").val();
if(null == mandataryUserId || ""==mandataryUserId){
alert("请您选择被委托人员!");
$("#mandataryUserName").focus();
return false;
}
return true;
}
function resetDepute(){
if(confirm("您确定要重新设置委托待办吗?")){
$.post('${ctx}/depute/reSetDepute.do',
$('#editForm').serialize(),
function(result){
if(result.success){
alert("重置成功!");
art.dialog.opener.location.reload();
}else{
alert("重置失败!");
}
});
}
}
</script>
<title>新增委托代办</title>
</head>
<body style="font-size: 13px;" class="white-page">
<form action="${ctx}/depute/save.do" method="post" id="editForm">
<input type="hidden" name="deputeUserId" value="${bpm_login_session_user.userCode}" id="deputeUserId" />
<input type="hidden" name="deputeUserName" value="${bpm_login_session_user.userName}" id="deputeUserName" />
<input type="hidden" name="deputeStatus" value="Y" id="deputeStatus" />
<%-- <input type="hidden" name="appId" value="${application.appId}" id="appId" /> --%>
<%-- <input type="hidden" name="appName" value="${application.appName}" id="appName" /> --%>
<div class="main-container" id="main-container">
<div id="tabs" style="border-bottom: 1px solid #e5e5e5;font-weight: bold;margin: 0px;padding: 7px 10px 5px 20px;">
<span style="padding:20px;border-bottom: 2px #70c5e1 solid;padding: 0px 2px 7px 2px;font-size: 12px;font-family: &quot;微软雅黑&quot;;color: #000;">可视化流程中心->委托代办设置</span>
</div>
<div class="alert alert-block alert-danger" style="margin: 5px 0px 0px 20px;color: #ff0000;padding: 5px;font-size: 12px;font-family: '微软雅黑'; border: none;background: none;">
<i class="ace-icon fa fa-exclamation-triangle yellow"></i> <span class="yellow bolder"></span>
<c:choose>
<c:when test="${'' != existDepute.mandataryUserName && null != existDepute.mandataryUserName}">
<%-- <c:choose> --%>
<%-- <c:when test="${'local' == existDepute.deputeType}"> --%>
<%-- 委托记录:您于<fmt:formatDate value="${existDepute.createTime }" pattern="yyyy年MM月dd日" />将${deputeStr }的所有流程都委托给了${existDepute.mandataryUserName } --%>
<%-- </c:when> --%>
<%-- <c:otherwise> --%>
当前委托记录:您于<lable style="font-weight:bold;"><fmt:formatDate value="${existDepute.createTime }" pattern="yyyy年MM月dd日" /></lable>将可视化流程中心的所有流程都委托给了<lable style="font-weight:bold;">${existDepute.mandataryUserName }</lable>
取消委托关系请点击重置按钮!
<%-- </c:otherwise> --%>
<%-- </c:choose> --%>
</c:when>
<c:otherwise>您当前暂无委托记录!</c:otherwise>
</c:choose>
</div>
<div class="panel panel-primary" style=" border: none;padding: 0px 10px 5px 20px;margin-bottom: 10px;">
<div class="panel-body">
<div style="width:100%;height:250px;">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable1" height="100%">
<tr style="height:30px;background: #E4EDF6;">
<td style="border-left:none;border-bottom:none;color: #333;padding: 5px 0px 5px 15px;font-weight:bold;font-size: 12px;color: #333;font-family: &quot;微软雅黑&quot;">被委托人选择</td>
</tr>
<tr>
<td style="border-top:none;padding: 2px 0px;"><input type="hidden" name="mandataryUserName" readonly
value="请选择" id="mandataryUserName"/>
<input type="hidden" name="mandataryUserId" value="" id="mandataryUserId" />
<div id="menuContent" class="menuContent" style="height:100%;">
<ul id="treeObj" class="ztree" style="margin: 0px 0px 0px 8px; width: 500px;height: auto;max-height: 230px;border:none;background: none;overflow:auto;"></ul>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;margin-top: 20px;">
<button id="submitButton" name="submitButton"
class="btn-style"
type="button" onclick="saveDepute();">
保存
</button>
<label style="padding: 0px 13px 0px 0px;"></label>
<button type="button" class="btn-style"
onclick="resetDepute();">
重置
</button>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,261 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%-- <jsp:include page="deputeUserTree.jsp" flush="false" /> --%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="description" content="overview &amp; stats" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<!-- bootstrap & fontawesome -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/bootstrap.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/font-awesome.min.css" />
<!-- text fonts -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-fonts.css" />
<!-- ace styles -->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace.min.css" id="main-ace-style" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-part2.min.css" />
<![endif]-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-skins.min.css" />
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-rtl.min.css" />
<!--[if lte IE 9]>
<link rel="stylesheet" href="${ctx }/resource/js/plugins/ace/css/ace-ie.min.css" />
<!-- page specific plugin styles -->
<link rel="stylesheet" href="${ctx }/resource/css/global.css" />
<script type="text/javascript" src="${ctx }/resource/js/jquery-1.8.3.min.js"></script>
<script src="<c:url value="/resource/js/common/application.js"/>" type="text/javascript"></script>
<script src="<c:url value="/resource/js/plugins/My97DatePicker/WdatePicker.js"/>" type="text/javascript"></script>
<script src="${ctx }/resource/js/plugins/artDialog/jquery.artDialog.js?skin=blue"></script>
<script src="${ctx }/resource/js/plugins/artDialog/iframeTools.source.js"></script>
<!-- validation BEGIN-->
<link rel="stylesheet" href="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2/demo/css/style.css" />
<script type="text/javascript" src="${ctx }/resource/js/plugins/Validform_v5.3.2/Validform_v5.3.2_min.js"></script>
<!-- validation END-->
<base href="<%=basePath%>">
<style>
.ztree li span {
line-height: 16px;
margin-right: 2px;
font-size: 12px;
color: #333;
font-family: "微软雅黑";
}
.btn-style{
border: 1px #89a0b9 solid;
border-radius: 4px;
background: -webkit-gradient(linear, 0% 0%, 0% 100%,from(#fefefe), to(#dce2e6));
padding: 0px 15px;
color: #000;
font-size: 12px;
font-family:"微软雅黑";
letter-spacing: 4px;
}
.btn-style:hover{
background:#e1f0f8;
cursor:pointer;
}
</style>
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/demo.css"
type="text/css">
<link rel="stylesheet"
href="${ctx}/resource/js/plugins/zTree/css/zTreeStyle/zTreeStyle.css"
type="text/css">
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery-1.4.4.min.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.core-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.excheck-3.4.js"></script>
<script type="text/javascript"
src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.exedit-3.4.js"></script>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/userSelect/css/usStyle/button.css" type="text/css">
<script>
$(function(){
//初始化委托人
$.fn.zTree.init($("#treeObj"), createUserSetting());
});
function createUserSetting(){
var setting = {
view: {
dblClickExpand: false,
expandSpeed: "slow",
selectedMulti: false
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/pages/user/getUserOrgTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"assignTreeId":"${user.orgId}","treeLevel":"","showTreeType":"USER","filterNodeIdsStr":"${user.userId}","ischecked":"0","isCheckValue":"${existDepute.mandataryUserId}"}
},
check: {
enable: true,
chkStyle: "radio"
},
callback: {
onAsyncSuccess: onAsyncSuccess,
onCheck:onUserCheck
}
};
return setting;
}
function onUserCheck(event, treeId, treeNode) {
if(null == treeNode){
return ;
}
if("USER" == treeNode.type){
$("#mandataryUserId").val(treeNode.id);
$("#mandataryUserName").val(treeNode.name);
return true;
}else{
return false;
}
}
function onAsyncSuccess(event, treeId, treeNode, msg) {
var msgArr=$.parseJSON(msg);
for(var i = 0;i<msgArr.length;i++){
if(msgArr[i].checked){
$("#mandataryUserId").val(msgArr[i].id);
$("#mandataryUserName").val(msgArr[i].name);
}
}
}
function saveDepute(){
var ischeck = checkBeforeSubmit();
if(ischeck){
$.post('${ctx}/depute/save.do',
$('#editForm').serialize(),
function(result){
if(result.success){
alert("保存成功!");
art.dialog.opener.location.reload();
}else{
alert("保存失败!");
}
});
}
}
function checkBeforeSubmit(){
var mandataryUserId = $("#mandataryUserId").val();
if(null == mandataryUserId || ""==mandataryUserId){
alert("请您选择被委托人员!");
$("#mandataryUserName").focus();
return false;
}
return true;
}
function resetDepute(){
if(confirm("您确定要重新设置委托待办吗?")){
$.post('${ctx}/depute/reSetDeputeBack.do',
$('#editForm').serialize(),
function(result){
if(result.success){
alert("重置成功!");
art.dialog.opener.location.reload();
}else{
alert("重置失败!");
}
});
}
}
</script>
<title>新增委托代办</title>
</head>
<body style="font-size: 13px;" class="white-page">
<form action="${ctx}/depute/save.do" method="post" id="editForm">
<input type="hidden" name="deputeUserId" value="${user.userCode}" id="deputeUserId" />
<input type="hidden" name="deputeUserName" value="${user.userName}" id="deputeUserName" />
<input type="hidden" name="deputeStatus" value="Y" id="deputeStatus" />
<%-- <input type="hidden" name="appId" value="${application.appId}" id="appId" /> --%>
<%-- <input type="hidden" name="appName" value="${application.appName}" id="appName" /> --%>
<div class="main-container" id="main-container">
<div id="tabs" style="border-bottom: 1px solid #e5e5e5;font-weight: bold;margin: 0px;padding: 7px 10px 5px 20px;">
<span style="padding:20px;border-bottom: 2px #70c5e1 solid;padding: 0px 2px 7px 2px;font-size: 12px;font-family: &quot;微软雅黑&quot;;color: #000;">可视化流程中心->委托代办设置</span>
</div>
<div class="alert alert-block alert-danger" style="margin: 5px 0px 0px 20px;color: #ff0000;padding: 5px;font-size: 12px;font-family: '微软雅黑'; border: none;background: none;">
<i class="ace-icon fa fa-exclamation-triangle yellow"></i> <span class="yellow bolder"></span>
<c:choose>
<c:when test="${'' != existDepute.mandataryUserName && null != existDepute.mandataryUserName}">
<%-- <c:choose> --%>
<%-- <c:when test="${'local' == existDepute.deputeType}"> --%>
<%-- 委托记录:您于<fmt:formatDate value="${existDepute.createTime }" pattern="yyyy年MM月dd日" />将${deputeStr }的所有流程都委托给了${existDepute.mandataryUserName } --%>
<%-- </c:when> --%>
<%-- <c:otherwise> --%>
当前委托记录:您于<lable style="font-weight:bold;"><fmt:formatDate value="${existDepute.createTime }" pattern="yyyy年MM月dd日" /></lable>将可视化流程中心的所有流程都委托给了<lable style="font-weight:bold;">${existDepute.mandataryUserName }</lable>
取消委托关系请点击重置按钮!
<%-- </c:otherwise> --%>
<%-- </c:choose> --%>
</c:when>
<c:otherwise>您当前暂无委托记录!</c:otherwise>
</c:choose>
</div>
<div class="panel panel-primary" style=" border: none;padding: 0px 10px 5px 20px;margin-bottom: 10px;">
<div class="panel-body">
<div style="width:100%;height:250px;">
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable1" height="100%">
<tr style="height:30px;background: #E4EDF6;">
<td style="border-left:none;border-bottom:none;color: #333;padding: 5px 0px 5px 15px;font-weight:bold;font-size: 12px;color: #333;font-family: &quot;微软雅黑&quot;">被委托人选择</td>
</tr>
<tr>
<td style="border-top:none;padding: 2px 0px;"><input type="hidden" name="mandataryUserName" readonly
value="请选择" id="mandataryUserName"/>
<input type="hidden" name="mandataryUserId" value="" id="mandataryUserId" />
<div id="menuContent" class="menuContent" style="height:100%;">
<ul id="treeObj" class="ztree" style="margin: 0px 0px 0px 8px; width: 500px;height: auto;max-height: 230px;border:none;background: none;overflow:auto;"></ul>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;margin-top: 20px;">
<button id="submitButton" name="submitButton"
class="btn-style"
type="button" onclick="saveDepute();">
保存
</button>
<label style="padding: 0px 13px 0px 0px;"></label>
<button type="button" class="btn-style"
onclick="resetDepute();">
重置
</button>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,249 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<jsp:include page="/commons/userOrgTree.jsp" flush="false" />
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/codemirror.css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/codemirror/eclipse.css">
<style>
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 180px;
}
</style>
<script src="${ctx}/resource/js/plugins/codemirror/codemirror.js"></script>
<script src="${ctx}/resource/js/plugins/codemirror/clike.js"></script>
<script>
function createActUser(retValus,retNames){
if(""!=retValus){
var arr = retValus.split("#");
retValus = arr[1];
}
$("#mandataryUserName").val(retNames);
$("#mandataryUserId").val(retValus);
}
function processDefNameOnDbClick(name,id){
$("#processDefName").val(name);
$("#processDefId").val(id);
}
function mandataryUserNameOnDbClick(name,id){
$("#mandataryUserName").val(name);
$("#mandataryUserId").val(id);
}
function processDefSel(){
var deputeType = $('input:radio[name="deputeType"]:checked').val();
if(deputeType=="local"){
$("#processDefName").attr("datatype","*");
$("#processDefName").attr("value","请您选择流程定义!");
$("#processDefName").val($("#curSelProcessSName").val());
$("#processDefId").val($("#curSelProcessSId").val());
$("#processDefName").show();
$("#processDefNameButton").show();
}else{
$("#processDefName").removeAttr("datatype");
$("#processDefName").removeAttr("value");
$("#processDefName").val("");
$("#processDefId").val("");
$("#processDefName").hide();
$("#processDefNameButton").hide();
}
}
$(function(){
processDefSel();
})
function checkBeforeSubmit(){
var mandataryUserId = $("#mandataryUserId").val();
if(null == mandataryUserId || ""==mandataryUserId){
alert("请您选择被委托人员!");
$("#mandataryUserName").focus();
return false;
}
var startTimeString = $("#startTimeString").val();
// if(null == startTimeString || ""==startTimeString){
// alert("请您选择起始时间!");
// $("#startTimeString").focus();
// return false;
// }
// var endTimeString = $("#endTimeString").val();
// if(null == endTimeString || ""==endTimeString){
// alert("请您选择结束时间!");
// $("#endTimeString").focus();
// return false;
// }
var processDefId = $("#processDefId").val();
var deputeType = $('input:radio[name="deputeType"]:checked').val();
if(deputeType=='local'){
if(null==processDefId || ""==processDefId){
alert("请您选择流程定义!");
$("#processDefName").focus();
return false;
}
}
return true;
}
function saveDepute(){
var ischeck = checkBeforeSubmit();
if(ischeck){
$.post('${ctx}/depute/update.do',
$('#editForm').serialize(),
function(result){
if(result.success){
alert("保存成功!");
art.dialog.opener.location.reload();
}else{
alert("保存失败!");
}
});
}
}
//日历图标模拟日历文本框点击事件
$(function(){
var startTimeString = document.getElementById("startTimeString");
var startTime = document.getElementById("startTime");
var endTimeString = document.getElementById("endTimeString");
var endTime = document.getElementById("endTime");
//通用方法
startTime.onclick = function() {
if (/msie/i.test(navigator.userAgent)) //IE
{
startTimeString.fireEvent("onclick");
} else {
var e = document.createEvent('MouseEvent');
e.initEvent('click', false, false);
startTimeString.dispatchEvent(e);
}
}
//通用方法
endTime.onclick = function() {
if (/msie/i.test(navigator.userAgent)) //IE
{
endTimeString.fireEvent("onclick");
} else {
var e = document.createEvent('MouseEvent');
e.initEvent('click', false, false);
endTimeString.dispatchEvent(e);
}
}
})
</script>
<title>委托代办编辑</title>
</head>
<body style="font-size: 13px;" class="white-page">
<form action="${ctx}/depute/update.do" method="post" id="editForm">
<input type="hidden" name="deputeUserId" value="${bpm_login_session_user.userId}" id="deputeUserId" />
<input type="hidden" id="curSelProcessSName" value="${depute.processDefName}"/>
<input type="hidden" id="curSelProcessSId" value="${depute.processDefId}"/>
<input type="hidden" name="deputeId" value="${depute.deputeId}"/>
<input type="hidden" name="deputeUserName" value="${bpm_login_session_user.userName}" id="deputeUserName" />
<input type="hidden" name="deputeStatus" value="Y" id="deputeStatus" />
<input type="hidden" name="appId" value="${application.appId}" id="appId" />
<input type="hidden" name="appName" value="${application.appName}" id="appName" />
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<td>委托类型<font color="red">*</font></td>
<td>
<input type="radio" name="deputeType" value="golal"
${depute.deputeType=='golal'?'checked':''}
id="deputeType" class="othfld" onclick="processDefSel();"/>全局
<input type="radio" onclick="processDefSel();"
${depute.deputeType=='local'?'checked':''}
name="deputeType" value="local" id="deputeTypeProcess" class="othfld"/>按流程
&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" class="othfld" onclick="showMenu('processDefName','2043000153','','USER'); return false;"
name="processDefName" id="processDefName"
value="${depute.processDefName}"
datatype="*1-12" "/>
<input type="hidden" name="processDefId" value="${depute.processDefId}" id="processDefId" />
<a class="blue" id="processDefNameButton" href="javascript:void(0);">
<i class="ace-icon fa fa-search bigger-130"
onclick="showMenu('processDefName','2043000153','','USER');return false;">
</i>
</a>
</td>
</tr>
<tr>
<td>被委托人<font color="red">*</font></td>
<td><input type="text" name="mandataryUserName"
onclick="showUserOrg('mandataryUserName','${userId}','','USER'); return false;"
value="${depute.mandataryUserName}" id="mandataryUserName"
datatype="*1-12" nullmsg="请选择被委托人!"/>
<input type="hidden" name="mandataryUserId" value="${depute.mandataryUserId}" id="mandataryUserId" />
<a class="blue" href="javascript:void(0);">
<i class="ace-icon fa fa-search bigger-130"
onclick="showUserOrg('mandataryUserName','${userId}','','USER'); return false;">
</i>
</a>
</td>
</tr>
<!--
<tr>
<td>起止时间<font color="red">*</font></td>
<td>
<input type="text" id="startTimeString" name="startTimeString" readOnly
value="${depute.startTimeString}" datatype="*1-12" nullmsg="请选择起始时间!"/>
<a id="startTime" class="blue" href="javascript:;"><i class="fa fa-calendar bigger-130"></i></a>&nbsp;&nbsp;
<input type="text"
onclick="WdatePicker({dateFmt:'<%=Depute.FORMAT_END_TIME%>',minDate:'#F{$dp.$D(\'startTimeString\')}'})"
id="endTimeString" name="endTimeString"
value="${depute.endTimeString}"
datatype="*1-12" nullmsg="请选择结束时间!"/>
<a id="endTime" class="blue" href="javascript:;">
<i class="fa fa-calendar bigger-130"></i>
</a>
</td>
</tr>
-->
<tr>
<td width="20%">委&nbsp;托&nbsp; 人<font color="red">*</font></td>
<td>${bpm_login_session_user.userName}</td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;margin-top: 20px;">
<button id="submitButton" name="submitButton" class="btn btn-sm btn-primary"
type="button"
onclick="saveDepute();">
<span class="icon_save">保存</span>
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close();">
<span class="icon_back">关闭</span>
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,147 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<jsp:include page="/commons/userOrgTree.jsp" flush="true" />
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>委托代办设置</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
function createDepute(url,title,width,height){
if("" == $("#userId").val() || null == $("#userId").val()){
alert("请输入委托人的ID");
return;
}else{
var url = url+"?userId="+$("#userId").val();
showDiaLog(url,title,width,height);
}
}
function deputeUserNameOnDbClick(name, value) {
$("#deputeUserName").val(name);
$("#deputeUserId").val(value);
}
function mandataryUserNameOnDbClick(name, value) {
$("#mandataryUserName").val(name);
$("#mandataryUserId").val(value);
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="queryForm" name="queryForm"
action="${ctx}/depute/list.do" method="post"
style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
委托代办设置
</div>
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin-bottom: 2px;">
<table border="0" cellspacing="0" cellpadding="0" class="table-search">
<tbody>
<tr colspan="7">
<td>
委托人ID<input type="text" id="userId" name="userId" style="height:25px;margin-right: 2px;"/>
<button type="button" class="btn btn-xs btn-success"
onclick="createDepute('${ctx}/depute/backCreate.do','新增委托代办','600px','400px');">
新增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
</td>
</tr>
<tr colspan="7">
<td style="letter-spacing: 3.2px;">
<input type="hidden" id="deputeUserId" name="deputeUserId"/>
委托人:<input type="text" id="deputeUserName" name="deputeUserName" value="${query.deputeUserName}" style="margin-right: 2px;height:25px;" onclick="showUserOrg('deputeUserName','','','USER'); return false;" readonly />
<input type="hidden" id="mandataryUserId" name="mandataryUserId"/>
被委托人:<input type="text" id="mandataryUserName" name="mandataryUserName" value="${query.mandataryUserName}" style="height:25px;" onclick="showUserOrg('mandataryUserName','','','USER'); return false;" readonly/>
<button type="submit" class="btn btn-xs btn-primary"
onclick="getReferenceForm(this).action='${ctx}/depute/list.do'">
查&nbsp;&nbsp;询
<i class="ace-icon fa fa-search bigger-110"></i>
</button>
<!-- <button type="submit" class="btn btn-xs btn-success"
onclick="getReferenceForm(this).action='${ctx}/depute/create.do'"> -->
<button type="button" class="btn btn-xs btn-danger"
onclick="batchDelete('${ctx}/depute/delete.do','items',document.forms.queryForm)">
删除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</tbody>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="roleName" >委托类型</th>
<th sortColumn="roleId" >委托人</th>
<th sortColumn="roleId" >被委托人</th>
<!--
<th sortColumn="roleSort" width="300px">起止时间</th> -->
<th sortColumn="roleAppId">委托流程</th>
<th sortColumn="roleAppId">委托状态</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="deputeId=${item.deputeId}&"></td>
<td class="td" title="${item.deputeTypeVal}">${item.deputeTypeVal}&nbsp;</td>
<td class="td" title="${item.deputeUserName}">${item.deputeUserName}&nbsp;</td>
<td class="td" title="${item.mandataryUserName}">${item.mandataryUserName}&nbsp;</td>
<!-- <td>从${item.startTimeString}&nbsp;至${item.endTimeString}</td>-->
<td class="td" title="${item.processDefName}&nbsp;">${item.processDefName}&nbsp;</td>
<td class="td" title="${item.deputeStatusVal}&nbsp;"><span class="label label-success">${item.deputeStatusVal}&nbsp;</span></td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,116 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.log.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>EsbMsgLog编辑</title>
</head>
<body>
<form action="${ctx}/esbMsgLog/update.do" method="post">
<div class="main-container" id="main-container">
<div class="panel-heading">
编辑EsbMsgLog
</div>
<div class="panel panel-primary">
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary" id="submitButton"
onclick="javascript:getReferenceForm(this).submit();"><i
class="icon icon-sure"></i>保存</a> <a class="btn btn-sm btn-primary"
onclick="window.location='${ctx}/esbMsgLog/list.do'"><i
class="icon icon-close"></i>返回</a>
</div>
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0" cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="logId"
name="logId"
value="${esbMsgLog.logId}" />
<!-- 存放表单的区域 -->
<tr>
<th>操作类型:
</th>
<td><input type="text" name="operation"
value="${esbMsgLog.operation}"
id="operation" class="input" /></td>
</tr>
<tr>
<th>消息内容:
</th>
<td><input type="text" name="xmlContent"
value="${esbMsgLog.xmlContent}"
id="xmlContent" class="input" /></td>
</tr>
<tr>
<th>标题:
</th>
<td><input type="text" name="title"
value="${esbMsgLog.title}"
id="title" class="input" /></td>
</tr>
<tr>
<th>创建时间:
</th>
<td><input
value="${esbMsgLog.createTimeString}"
onclick="WdatePicker({dateFmt:'<%=EsbMsgLog.FORMAT_CREATE_TIME%>'})"
id="createTimeString"
name="createTimeString" maxlength="0"
class="input"/></td>
</tr>
<tr>
<th>状态:
</th>
<td><input type="text" name="status"
value="${esbMsgLog.status}"
id="status" class="input" /></td>
</tr>
<tr>
<th>用户ID
</th>
<td><input type="text" name="userIds"
value="${esbMsgLog.userIds}"
id="userIds" class="input" /></td>
</tr>
<tr>
<th>用户名称:
</th>
<td><input type="text" name="userNames"
value="${esbMsgLog.userNames}"
id="userNames" class="input" /></td>
</tr>
<tr>
<th>业务对象ID
</th>
<td><input type="text" name="bizId"
value="${esbMsgLog.bizId}"
id="bizId" class="input" /></td>
</tr>
<tr>
<th>ESB对应业务ID
</th>
<td><input type="text" name="esbBizid"
value="${esbMsgLog.esbBizid}"
id="esbBizid" class="input" /></td>
</tr>
<tr>
<th>应用系统:
</th>
<td><input type="text" name="appId"
value="${esbMsgLog.appId}"
id="appId" class="input" /></td>
</tr>
</table>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,142 @@
<%@page import="com.blueland.bpm.log.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>EsbMsgLog管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/esbMsgLog/list.do" method="get" style="display: inline;">
<div class="panel panel-primary">
<div class="panel-heading">
ESB消息日志
</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<td>标题:</td>
<td>
<input class="input" value="${query.title}" id="title" name="title" maxlength="1000" />
</td>
<td>状态:</td>
<td>
<select name="status" id="status" >
<option value="" ${query.status==""?"selected":""}>请选择</option>
<option value="s" ${query.status=="1"?"selected":""}>成功</option>
<option value="e" ${query.status=="2"?"selected":""}>失败</option>
<option value="r" ${query.status=="3"?"selected":""}>已重发</option>
<option value="j" ${query.status=="5"?"selected":""}>已跳过</option>
</select>
</td>
<td>操作类型:</td>
<td>
<select name="operation" id="operation" >
<option value="" ${query.operation==""?"selected":""}>请选择</option>
<option value="1" ${query.operation=="1"?"selected":""}>待办</option>
<option value="2" ${query.operation=="2"?"selected":""}>已办</option>
<option value="3" ${query.operation=="3"?"selected":""}>办结</option>
<option value="5" ${query.operation=="5"?"selected":""}>删除</option>
</select>
</td>
<td>业务对象ID</td>
<td>
<input class="input" value="${query.bizId}" id="bizId" name="bizId" maxlength="100" />
</td>
</tr>
<tr>
<td>ESB对应业务ID</td>
<td>
<input class="input" value="${query.esbBizid}" id="esbBizid" name="esbBizid" maxlength="100" />
</td>
<td>应用系统:</td>
<td>
<input class="input" value="${query.appId}" id="appId" name="appId" maxlength="100" />
</td>
<td>创建时间:</td>
<td>
<input class="input" value="${query.createTimeString}" onclick="WdatePicker({dateFmt:'<%=EsbMsgLog.FORMAT_CREATE_TIME%>'})" id="createTimeString" name="createTimeString" />
</td>
</tr>
<tr>
<td colspan="7">
<input value="查询" type="submit" class="btn btn-xs btn-primary" onclick="getReferenceForm(this).action='${ctx}/esbMsgLog/list.do'"/>
<input value="删除" type="button" class="btn btn-xs btn-danger" onclick="batchDelete('${ctx}/esbMsgLog/delete.do','items',document.forms.queryForm)"/>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="title" >标题</th>
<th sortColumn="xmlContent" >消息内容</th>
<th sortColumn="operation" >操作类型</th>
<th sortColumn="createTime" >创建时间</th>
<th sortColumn="status" >状态</th>
<th sortColumn="userNames" >用户名称</th>
<th sortColumn="appId" >应用系统</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="logId=${item.logId}&"></td>
<td>${item.title}&nbsp;</td>
<td><textarea style="width: 400px">${item.xmlContent}&nbsp;</textarea></td>
<td>${item.operation}&nbsp;</td>
<td>${item.createTimeString}&nbsp;</td>
<td>${item.status}&nbsp;</td>
<td>${item.userNames}&nbsp;</td>
<td>${item.appId}&nbsp;</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,133 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.log.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>LogSysRuntime新增</title>
</head>
<body>
<form action="${ctx}/logSysRuntime/save.do"
method="post">
<div class="content">
<div class="wrap">
<div class="wrap-top">
<div class="wrap-top-inner">
<a class="top-btn" id="submitButton"
onclick="javascript:getReferenceForm(this).submit();"><i
class="icon icon-sure"></i>保存</a> <a class="top-btn"
onclick="window.location='${ctx}/logSysRuntime/list.do'"><i
class="icon icon-close"></i>返回</a>
</div>
</div>
<div class="column margin50">
<h4 class="wrapper-tit">新增LogSysRuntime</h4>
<div class="bd">
<table class="table-review" border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<th>
日志级别,取值说明: DEBUG调试信息 INFO比较重要的信息 WARN可能存在的潜在问题的信息以及重要的信息 ERROR系统的业务数据异常的信息如数据效验异常 FATAL系统发生了致命的错误的信息如数据库异常、访问某个服务网络异常。<font color="red">*</font>
</th>
<td>
<input type="text" name="logLevel"
value="" id="logLevel"
class="input" />
</td>
</tr>
<tr>
<th>
日志记录时间
<font color="red">*</font>
</th>
<td><input value=""
onclick="WdatePicker({dateFmt:'<%=LogSysRuntime.FORMAT_LOG_CREATE_TIME%>'})"
id="logCreateTimeString"
name="logCreateTimeString" maxlength="0"
class="input" />
</td>
</tr>
<tr>
<th>
所属应用系统ID取值说明GW、GD、FW<font color="red">*</font>
</th>
<td>
<input type="text" name="appId"
value="" id="appId"
class="input" />
</td>
</tr>
<tr>
<th>
所属应用系统名称,取值说明:公文、工单、法务<font color="red">*</font>
</th>
<td>
<input type="text" name="appName"
value="" id="appName"
class="input" />
</td>
</tr>
<tr>
<th>
所属应用系统模块ID取值说明USER_MGR<font color="red">*</font>
</th>
<td>
<input type="text" name="appModuleId"
value="" id="appModuleId"
class="input" />
</td>
</tr>
<tr>
<th>
所属应用系统工程中文名,取值说明:用户管理<font color="red">*</font>
</th>
<td>
<input type="text" name="appModuleName"
value="" id="appModuleName"
class="input" />
</td>
</tr>
<tr>
<th>
所属应用系统工程所在服务器IP
</th>
<td>
<input type="text" name="appProjectIp"
value="" id="appProjectIp"
class="input" />
</td>
</tr>
<tr>
<th>
日志内容<font color="red">*</font>
</th>
<td>
<input type="text" name="logContent"
value="" id="logContent"
class="input" />
</td>
</tr>
<tr>
<th>
备注:
</th>
<td>
<input type="text" name="logReamrk"
value="" id="logReamrk"
class="input" />
</td>
</tr>
</table>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,111 @@
<%@page import="com.blueland.bpm.log.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>流程运行日志管理</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/logSysRuntime/list.do" method="get" style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
<h8>流程运行日志</h8>
</div>
<div class="panel-body">
<div class="form-group well well-sm">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td>日志级别</td>
<td>
<input class="input" value="${query.logLevel}" id="logLevel" name="logLevel" maxlength="20" />
</td>
<td>记录时间:</td>
<td>
<input class="input" value="${query.logCreateTimeString}" onclick="WdatePicker({dateFmt:'<%=LogSysRuntime.FORMAT_LOG_CREATE_TIME%>'})" id="logCreateTimeString" name="logCreateTimeString" />
</td>
<td>所属模块:</td>
<td>
<input class="input" value="${query.appModuleId}" id="appModuleId" name="appModuleId" maxlength="50" />
</td>
<td>
<button type="submit" class="btn btn-xs btn-primary" onclick="getReferenceForm(this).action='${ctx}/logSysRuntime/list.do'">
<span class="icon_find">查询</span>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="appModuleId" >所属模块</th>
<th sortColumn="logLevel" >日志级别</th>
<th sortColumn="logContent" >日志内容</th>
<th sortColumn="logCreateTime" >记录时间</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td>${item.appModuleName}&nbsp;</td>
<td>${item.logLevel}&nbsp;</td>
<td>
<a href="${ctx}/logSysRuntime/show.do?logId=${item.logId}">
${item.logContent}
</a>&nbsp;
</td>
<td>${item.logCreateTimeString}&nbsp;</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,70 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.log.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>查看系统运行日志</title>
</head>
<body>
<form action="${ctx}/logSysRuntime/show.do" method="post">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
</div>
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="logId"
name="logId"
value="${logSysRuntime.logId}" />
<!-- 存放表单的区域 -->
<tr>
<td>日志级别<font
color="red">*</font>
</td>
<td><input type="text" name="logLevel"
value="${logSysRuntime.logLevel}"
id="logLevel" class="input" /></td>
<td>记录时间<font
color="red">*</font>
</td>
<td><input
value="${logSysRuntime.logCreateTimeString}"
onclick="WdatePicker({dateFmt:'<%=LogSysRuntime.FORMAT_LOG_CREATE_TIME%>'})"
id="logCreateTimeString"
name="logCreateTimeString" maxlength="0"
class="input"/></td>
</tr>
<tr>
<td>日志内容<font
color="red">*</font>
</td>
<td colspan="3"><textarea name="logContent"
value="${logSysRuntime.logContent}"
id="logContent" style="width: 700px"></textarea></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" onclick="window.location='${ctx}/logSysRuntime/list.do'">
<span class="icon_back">返回</span>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,116 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>"/>
<title>消息提醒配置新增</title>
<script type="text/javascript">
function saveMsgRemind(){
//整理数据
$.ajax({
type : "POST",
url : "${ctx}/msgRemind/saveMsgRemind.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
//art.dialog.close();
}
});
}
$(function(){
$("#isReceiveSms").click(
function(){
$("#noRimind").removeAttr("checked");
$("#isReceiveSmsValue").val('Y');
$("#isReceiveTodo").val('Y');
}
);
$("#isReceiveMail").click(
function(){
$("#noRimind").removeAttr("checked");
$("#isReceiveMailValue").val('Y');
$("#isReceiveTodo").val('Y');
}
);
$("#noRimind").click(
function(){
$("#isReceiveSms").removeAttr("checked");
$("#isReceiveMail").removeAttr("checked");
$("#isReceiveMailValue").val('N');
$("#isReceiveSmsValue").val('N');
$("#isReceiveTodo").val('N');
}
);
})
</script>
</head>
<body style="font-size: 13px;">
<form action="${ctx}/msgRemind/save.do" method="post" id="myform">
<!-- 是否接收短信提醒 -->
<input type="hidden" name="isReceiveSms" id="isReceiveSmsValue" value="N"/>
<!-- 是否接收邮件提醒-->
<input type="hidden" name="isReceiveMail" id="isReceiveMailValue" value="N"/>
<!-- 是否接收待阅 -->
<input type="hidden" name="isReceiveReader" id="isReceiveReader" value="N"/>
<!-- 是否接收待办 -->
<input type="hidden" name="isReceiveTodo" id="isReceiveTodo" value="N"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0" cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<th>
提醒所属系统<font color="red">*</font>
</th>
<td>
<select name="remindAppId" id="remindAppId">
<c:forEach var="app" items="${apps}">
<option value="${app.appId}">${app.appName}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>
是否接收提醒:
</th>
<td>
<input type="checkbox" id="noRimind" checked="checked"/>不提醒&nbsp;&nbsp;
<input type="checkbox" id="isReceiveSms"/>短信提醒&nbsp;&nbsp;
<input type="checkbox" id="isReceiveMail"/>邮件提醒
</td>
</tr>
</table>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" onclick="saveMsgRemind();" >
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close();">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
</div>
</div>
</form>
<jsp:include page="../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,116 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>"/>
<title>消息提醒配置新增</title>
<script type="text/javascript">
function saveMsgRemind(){
$.ajax({
type : "POST",
url : "${ctx}/msgRemind/updateMsgRemind.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
art.dialog.opener.location.reload();
}
});
}
$(function(){
$("#isReceiveSms").click(
function(){
$("#noRimind").removeAttr("checked");
$("#isReceiveSmsValue").val('Y');
$("#isReceiveTodo").val('Y');
}
);
$("#isReceiveMail").click(
function(){
$("#noRimind").removeAttr("checked");
$("#isReceiveMailValue").val('Y');
$("#isReceiveTodo").val('Y');
}
);
$("#noRimind").click(
function(){
$("#isReceiveSms").removeAttr("checked");
$("#isReceiveMail").removeAttr("checked");
$("#isReceiveMailValue").val('N');
$("#isReceiveSmsValue").val('N');
$("#isReceiveTodo").val('N');
}
);
})
</script>
</head>
<body style="font-size: 13px;">
<form action="${ctx}/msgRemind/save.do" method="post" id="myform">
<input type="hidden" id="remindId" name="remindId" value="${msgRemind.remindId}" />
<input type="hidden" name="remindUserId" value="${msgRemind.remindUserId}" id="remindUserId"/>
<!-- 是否接收短信提醒 -->
<input type="hidden" name="isReceiveSms" id="isReceiveSmsValue" value="${msgRemind.isReceiveSms}"/>
<!-- 是否接收邮件提醒-->
<input type="hidden" name="isReceiveMail" id="isReceiveMailValue" value="${msgRemind.isReceiveMail}"/>
<!-- 是否接收待阅 -->
<input type="hidden" name="isReceiveReader" id="isReceiveReader" value="${msgRemind.isReceiveReader}"/>
<!-- 是否接收待办 -->
<input type="hidden" name="isReceiveTodo" id="isReceiveTodo" value="${msgRemind.isReceiveTodo}"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0" cellpadding="0" id="myTable">
<!-- 存放表单的区域 -->
<tr>
<th>
提醒所属系统<font color="red">*</font>
</th>
<td>
<select name="remindAppId" id="remindAppId">
<c:forEach var="app" items="${apps}">
<option value="${app.appId}" <c:if test="${app.appId == msgRemind.remindAppId}">selected="selected"</c:if>>${app.appName}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<th>
是否接收提醒:
</th>
<td>
<input type="checkbox" id="noRimind"
<c:if test='${"N"==msgRemind.isReceiveSms && "N"==msgRemind.isReceiveMail}'>
checked="checked"
</c:if>
/>不提醒&nbsp;&nbsp;
<input type="checkbox" id="isReceiveSms" <c:if test='${"Y"==msgRemind.isReceiveSms}'>checked="checked"</c:if>/>短信提醒&nbsp;&nbsp;
<input type="checkbox" id="isReceiveMail" <c:if test='${"Y"==msgRemind.isReceiveMail}'>checked="checked"</c:if>/>邮件提醒
</td>
</tr>
</table>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" onclick="saveMsgRemind();" >
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<input type="button" class="btn btn-sm btn-primary"
onclick="art.dialog.close();"
value="关 闭" />
</div>
</div>
</div>
</form>
<jsp:include page="../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,164 @@
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp" %>
<base href="<%=basePath%>">
<title>待办消息提醒</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('queryForm',${page.thisPageNumber},${page.pageSize},'${pageRequest.sortColumns}');
});
function editMsgRemind(remindId){
var url="";
if(null!=remindId && ""!=remindId){
url="${ctx}/msgRemind/edit.do?remindId="+remindId;
}else{
url="${ctx}/msgRemind/create.do";
}
showDiaLog(url,"待办消息提醒",'500px','260px');
}
function showMsgRemind(remindId){
var url="${ctx}/msgRemind/show.do?remindId="+remindId;
showDiaLog(url,"待办消息提醒",'500px','260px');
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp" %>
<form id="queryForm" name="queryForm" action="${ctx}/msgRemind/list.do" method="get" style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
待办消息提醒
</div>
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin-bottom: 2px;">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-search">
<tr>
<!-- <td>提醒流程定义:</td>
<td>
<input class="input" value="${query.remindProcessDefKey}" id="remindProcessDefKey" name="remindProcessDefKey" maxlength="50" />
</td> -->
<td>是否接收短信提醒:</td>
<td>
<select name="isReceiveSms">
<option value="">请选择</option>
<option value="Y" <c:if test='${"Y"==query.isReceiveSms}'>selected="selected"</c:if>>是</option>
<option value="N" <c:if test='${"N"==query.isReceiveSms}'>selected="selected"</c:if>>否</option>
</select>
</td>
<td>是否接收邮件提醒:</td>
<td>
<select name="isReceiveMail">
<option value="">请选择</option>
<option value="Y" <c:if test='${"Y"==query.isReceiveMail}'>selected="selected"</c:if>>是</option>
<option value="N" <c:if test='${"N"==query.isReceiveMail}'>selected="selected"</c:if>>否</option>
</select>
</td>
<td>提醒所属系统:</td>
<td>
<select name="remindAppId" id="remindAppId">
<option value="">-请选择-</option>
<c:forEach var="app" items="${apps}">
<option value="${app.appId}" <c:if test="${app.appId == query.remindAppId}">selected="selected"</c:if>>${app.appName}</option>
</c:forEach>
</select>
</td>
</tr>
<tr>
<td colspan="7">
<button type="submit" class="btn btn-xs btn-primary"
onclick="getReferenceForm(this).action='${ctx}/msgRemind/list.do'">
查&nbsp;&nbsp;询
<i class="ace-icon fa fa-search bigger-110"></i>
</button>
<button type="button" class="btn btn-xs btn-success" onclick="editMsgRemind();">
新增
<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" class="btn btn-xs btn-danger"
onclick="batchDelete('${ctx}/msgRemind/delete.do','items',document.forms.queryForm)">
删除
<i class="ace-icon fa fa-trash-o bigger-110"></i>
</button>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width:25px;"><input type="checkbox" onclick="setAllCheckboxState('items',this.checked)"></th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th sortColumn="remindUserId" style="width: 50px;">提醒人</th>
<!-- <th sortColumn="remindProcessDefKey" style="width: 300px;">提醒流程定义</th> -->
<th sortColumn="isReceiveSms" style="width: 80px;">是否接收短信提醒</th>
<th sortColumn="isReceiveMail" style="width: 80px;">是否接收邮件提醒</th>
<!-- <th sortColumn="isReceiveTodo" style="width: 100px;">是否接收待办到达提醒</th>
<th sortColumn="isReceiveReader" style="width: 100px;">是否接收待阅到达提醒</th> -->
<th sortColumn="remindAppId" style="width: 100px;">提醒所属系统</th>
<!-- <th sortColumn="remindTempContent" style="width: 200px;">提醒模版内容</th> -->
<th style="width: 100px;">操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="items" value="remindId=${item.remindId}&"></td>
<td>${item.remindUserName}&nbsp;</td>
<!-- <td>${item.remindProcessDefKey}&nbsp;</td> -->
<td>${item.isReceiveSms eq 'Y'?"是":"否"}</td>
<td>${item.isReceiveMail eq 'Y'?"是":"否"}</td>
<!-- <td>${item.isReceiveTodo eq 'Y'?"是":"否"}</td>
<td>${item.isReceiveReader eq 'Y'?"是":"否"}</td> -->
<td>${item.remindAppName}</td>
<!-- <td>${item.remindTempContent}&nbsp;</td> -->
<td>
<!-- <a href="javascript:void(0);" onclick="showMsgRemind('${item.remindId}');">查看</a>&nbsp;&nbsp; -->
<a href="javascript:void(0);" onclick="editMsgRemind('${item.remindId}');">修改</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,146 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<head>
<base href="<%=basePath%>">
<title>消息提醒配置编辑</title>
<script type="text/javascript">
function chooseRemindType(){
var value = $("#remindType").val();
if(value=='1'){//不接收提醒
$("#isReceiveSms").val("N");
$("#isReceiveMail").val("N");
showRemindInfoType('hide');
setRemindInfoType('N');
}else if(value=='2'){//接收短信提醒
$("#isReceiveSms").val("Y");
$("#isReceiveMail").val("N");
showRemindInfoType('show');
}else{//接收邮件提醒
$("#isReceiveSms").val("N");
$("#isReceiveMail").val("Y");
showRemindInfoType('show');
}
}
function showRemindInfoType(flag){
if(flag=="show"){
$("#isReceiveTodo").show();
$("#isReceiveReader").show();
}else{
$("#isReceiveTodo").hide();
$("#isReceiveReader").hide();
}
}
//批量设置为否(是否接收待办到达提醒信息 是否接收待阅到达提醒)
function setRemindInfoType(value){
//alert($("input[name='isReceiveTodo']:checked").val());
//$("input[type='radio'][name='isReceiveTodo'][value='Y']").attr("checked", "");
$("input[type='radio'][name='isReceiveTodo'][value='N']").attr("checked", "checked");
//$("input[type='radio'][name='isReceiveReader'][value='Y']").attr("checked", "");
$("input[type='radio'][name='isReceiveReader'][value='N']").attr("checked", "checked");
}
function remindProcessDefNameOnDbClick(name, value) {
$("#remindProcessDefName").val(name);
$("#remindProcessDefKey").val(value);
}
</script>
</head>
<body>
<form action="${ctx}/msgRemind/update.do" method="post">
<input type="hidden" name="remindUserId"
value="${msgRemind.remindUserId}"
id="remindUserId" class="input" />
<input type="hidden" name="remindAppId"
value="${msgRemind.remindAppId}"
id="remindAppId" class="input" />
<!-- 是否接收短信提醒 -->
<input type="hidden" name="isReceiveSms" id="isReceiveSms" value="${msgRemind.isReceiveSms}"/>
<!-- 是否接收邮件提醒 -->
<input type="hidden" name="isReceiveMail" id="isReceiveMail" value="${msgRemind.isReceiveSms}"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0" cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<input type="hidden" id="remindId"
name="remindId"
value="${msgRemind.remindId}" />
<!-- 存放表单的区域 -->
<tr>
<th style="width: 120px;">提醒流程定义:
</th>
<td style="width: 440px;">
${procdefname}
</td>
</tr>
<tr>
<th>是否接收提醒:
</th>
<td>
<c:choose>
<c:when test='${"Y"==msgRemind.isReceiveSms}'>接收短信提醒</c:when>
<c:when test='${"Y"==msgRemind.isReceiveMail}'>接收邮件提醒</c:when>
<c:otherwise>不接收提醒</c:otherwise>
</c:choose>
</td>
</tr>
<tr id="isReceiveTodo">
<th>待办到达提醒:
</th>
<td>
<c:choose>
<c:when test='${"Y"==msgRemind.isReceiveTodo}'>接收</c:when>
<c:otherwise>拒绝</c:otherwise>
</c:choose>
</td>
</tr>
<tr id="isReceiveReader">
<th>待阅到达提醒:
</th>
<td>
<c:choose>
<c:when test='${"Y"==msgRemind.isReceiveReader}'>接收</c:when>
<c:otherwise>拒绝</c:otherwise>
</c:choose>
</td>
</tr>
<!-- <tr>
<th>提醒所属系统<font
color="red">*</font>
</th>
<td><input type="text" name="remindAppId"
value="${msgRemind.remindAppId}"
id="remindAppId" class="input" /></td>
</tr> -->
<tr>
<th>提醒模版内容:
</th>
<td>${msgRemind.remindTempContent}</td>
</tr>
</table>
</div>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<a class="btn btn-sm btn-primary"
onclick="art.dialog.close();"><i
class="icon icon-close"></i>关闭</a>
</div>
</div>
</div>
</form>
<jsp:include page="../../pages/procDefMgr/procDefTree.jsp" flush="false" />
</body>
</html>

View File

@@ -0,0 +1,73 @@
<%@page
import="com.blueland.bpm.engine.core.model.ProcessDefinitionModel"%>
<%@page import="com.blueland.bpm.engine.config.model.ProcessInfoConfig"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>流程历史对比</title>
<%@ include file="/commons/meta.jsp"%>
<link rel="stylesheet" type="text/css" href="${ctx}/resource/js/plugins/diff/app/bpmnio.css">
<link rel="stylesheet" type="text/css" href="${ctx}/resource/js/plugins/diff/assets/diff.css">
<link rel="stylesheet" type="text/css" href="${ctx}/resource/js/plugins/diff/app/app.css">
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="content">
<textarea name="xmlOld" rows="5" cols="20" style="display:none" id="xmlOld">
${xmlOld}
</textarea>
<textarea name="xmlNew" rows="5" cols="20" style="display:none" id="xmlNew">
${xmlNew}
</textarea>
<div class="di-container left drop-zone" target="left">
<div class="panel panel-primary">
<div class="panel-heading">
<h8>${nameOld}</h8>
</div>
</div>
<div class="canvas" id="canvas-left"></div>
</div>
<div class="di-container right drop-zone" target="right">
<div class="panel panel-primary">
<div class="panel-heading">
<h8>${nameNew}</h8>
</div>
</div>
<div class="canvas" id="canvas-right"></div>
</div>
<div id="changes-overview" class="collapsed">
<div class="io-control show-hide-toggle">对比详情</div>
<div class="io-control changes"></div>
</div>
</div>
<!-- viewer -->
<script type='text/javascript'src="${ctx}/resource/js/plugins/diff/app/bpmn-viewer.js"></script>
<!-- app -->
<script type='text/javascript' src="${ctx}/resource/js/plugins/diff/app/app.js"></script>
<script type="text/javascript">
$(function(){
getXmlContent();
})
function getXmlContent(){
openDiagram($("#xmlOld").val(),"left");
openDiagram($("#xmlNew").val(),"right");
}
</script>
</body>
</html>

View File

@@ -0,0 +1,177 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程设置</title>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script>
function changeHref(id, srcStr) {
var currentId = $(".active").find("a").attr("id");
var isChange = $("#isChange").val();
var isRedirect = true;//是否跳转页面
if("UserContract"==currentId){//当前是基础配置,点击别的菜单会出现提示是否保存的按钮
if("1"==isChange){//内容有更改
//提示是否保存前面的操作
if(confirm("是否保存当前数据?")){
document.getElementById(id).contentWindow.save();
isRedirect = false;//当选择确认保存后 留在当前页面
$("#"+currentId).parent().addClass("active");
}else{
$("#isChange").val("0");//保存完毕后把是否已修改还原成未修改
}
}
}
//if(isRedirect){
//返回时跳转步数+1
var backSteps = $("#backSteps").val();
$("#backSteps").val(parseInt(backSteps)+1);
document.getElementById(id).src = srcStr;
//}
//$("#myTab3").find('li').removeClass("active");
}
function iframeHeight(down){
var height = "";
var imgHeight = $("#imgHeight").val();
if(imgHeight==""){
height = $("#"+down).contents().find("body").height();
}else{
height = imgHeight;
}
$("#"+down).height(height+20);
}
function gobacktolist(){
var isRedirect = true;//是否跳转页面
var isChange = $("#isChange").val();
if("1"==isChange){//内容有更改
//提示是否保存前面的操作
if(confirm("是否保存当前数据?")){
document.getElementById(id).contentWindow.save();
isRedirect = false;//当选择确认保存后 留在当前页面
}else{
$("#isChange").val("0");//保存完毕后把是否已修改还原成未修改
}
}
document.getElementById(id).src = srcStr;
}
function goback(){
var backSteps = $("#backSteps").val();
history.go(-parseInt(backSteps));
}
function publishProcess(url){
postAjax(url,'发布成功!',false,true);
}
</script>
</head>
<body>
<input type="hidden" id="imgHeight" value=""/>
<input type="hidden" id="backSteps" value="1"/>
<div class="main-container" id="main-container">
<%--<div class="panel-heading" style="background: #F5F5F5;color: #333;border: 0 !important;padding: 10px 20px;">
<span style="font-size: 14px;">流程名称:${processDefinition.procDefName}</span>
</div> --%>
<div class="row" style="margin-right:0;">
<div class="col-xs-12">
<div class="tabbable">
<input type="hidden" id="isChange" value="0"/>
<ul class="nav nav-tabs padding-12 tab-color-blue background-blue"
id="myTab3">
<li class="active"><a id="UserContract" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/processInfo/edit.do?userId=${model.userId}&procDefId=${processDefinition.procDefId }');"
href="" target="frmrightChild" class="current">基础配置</a></li>
<li><a id="UserEvent" href=""
data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityInfo/actSet.do?processDefId=${processDefinition.procDefId }&appId=${sys}&mAppId=${mAppId}');"
target="frmrightChild">环节配置</a></li>
<!--
<li><a id="UserEvent" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/activityInfo/list.do?processDefId=${processDefinition.procDefId }');"
target="frmrightChild">环节配置(列表)</a></li>
-->
<c:if test="${customSso != '1'}">
<li><a id="UserEducation" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/dataObjectRelation/processList.do?processDefId=${processDefinition.procDefId }')"
target="frmrightChild">扩展属性配置</a></li>
<li>
</c:if>
<li><a id="UserPersonn" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/actInfo/setActResource/setAllResourcelist.do?processDefId=${processDefinition.procDefId}')"
target="frmrightChild">环节人员配置</a></li>
<li>
<!--
<li><a id="NoticeRemind" href="" data-toggle="tab"
onclick="changeHref('frmrightChild','${ctx}/noticeRemindConfig/edit.do?procDefId=${processDefinition.procDefId}')"
target="frmrightChild">通知提醒规则配置</a></li>
<li> -->
<%-- <li>--%>
<!-- <button type="button"
class="btn btn-success" style="padding: 3px 3px 3px 0px;"
data-toggle="dropdown"
onclick="art.dialog.close();">
发布流程
</button> -->
<%-- <a id="UserPersonn" href="" data-toggle="tab"--%>
<%-- style="background-color: #87B97F;"--%>
<%-- onclick="publishProcess('${ctx}/procDefMgr/releaseProcess.do?procDefId=${processDefinition.procDefId}');"--%>
<%-- target="frmrightChild"> <i class="ace-icon fa fa-check-square-o bigger-110"></i>发布流程</a>--%>
<%-- </li>--%>
<li class="right-btn">
<button class="btn btn-sm bigger btn-yellow dropdown-toggle"
data-toggle="dropdown"
type="button"
onclick="publishProcess('${ctx}/procDefMgr/releaseProcess.do?procDefId=${processDefinition.procDefId}');">
<i class="ace-icon fa fa-check-square-o bigger-110"></i>
发布流程
</button>
<c:choose>
<c:when test="${not empty isSubProcess}">
<button class="btn btn-sm bigger btn-yellow dropdown-toggle"
data-toggle="dropdown" type="button"
onclick="art.dialog.close();">
<i class="ace-icon fa fa-arrow-left"></i>关闭
</button>
</c:when>
<c:otherwise>
<button class="btn btn-sm bigger btn-yellow dropdown-toggle"
data-toggle="dropdown" type="submit"
onclick="window.location='${ctx}/procDefMgr/list.do?${queryParams}';">
<i class="ace-icon fa fa-arrow-left"></i>返回
</button>
</c:otherwise>
</c:choose>
</li>
</ul>
<div class="tab-content" style="width: 100%; height: 100%;">
<IFRAME style="width: 100%; height: 800px;" scrolling="no"
src="${ctx}/processInfo/edit.do?procDefId=${processDefinition.procDefId }"
frameBorder="0" id="frmrightChild" name="frmrightChild"
onload="iframeHeight('frmrightChild')" allowTransparency="true"></IFRAME>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,97 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.engine.repository.Deployment"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<title>导入流程模型</title>
<script>
$(document).ready(function() {
$('#file').ace_file_input({
no_file : '请您选择本地BPMN文件 ...',
btn_choose : '选 择',
btn_change : '选 择',
droppable : false,
onchange : null,
thumbnail : false
//| true | large
//whitelist:'gif|png|jpg|jpeg'
//blacklist:'exe|php'
//onchange:''
//
});
var flashSuccess = $("#flashSuccess").attr("value");
if (flashSuccess == "导入成功!") {
alert(flashSuccess);
art.dialog.opener.location.reload();
art.dialog.close();
} else {
if (flashSuccess != "") {
alert(flashSuccess);
}
//bindMask();
}
});
function onSubmit() {
if ($("#file").val() == "" || $("#file").val().length == 0) {
//unBindMask();
alert("请您选择本地文件!");
return false;
}
if(confirm("您确认导入流程吗?")){
setMask("main-container");
document.getElementById("deployFieldForm").submit();
}
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<div class="main-container" id="main-container">
<div class="widget-box">
<div class="widget-body">
<div class="widget-main no-padding">
<form id="deployFieldForm" name="deployFieldForm" action="${ctx}/procDefMgr/deploy.do" method="post" enctype="multipart/form-data">
<!-- <legend>Form</legend> -->
<fieldset>
<ol>
<li class="text-success"><b>暂只支持导入格式为*.zip、*.bar、*.bpmn\bpmn20.xml的模型文件不支持批量导入。</b></li>
<li class="text-success"><b>导入成功后可在(流程定义->已部署流程定义)菜单中管理该流程。</b></li>
</ol>
<div class="space-18"></div>
<input type="hidden" id="flashSuccess" value="${flashSuccess }" />
<input type="file" id="file" name="file"/>
</fieldset>
<div class="form-actions center">
<input type="button" class="btn btn-sm btn-primary"
id="submitButton" value="导 入" onclick="onSubmit();"/> <input
onclick="art.dialog.close();" type="button"
class="btn btn-sm btn-primary" value="关 闭" />
</div>
</form>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,82 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.engine.repository.Deployment"%>
<%@page import="com.blueland.bpm.engine.config.model.*" %>
<%@page import="com.blueland.bpm.common.page.*" %>
<%@page import="com.blueland.bpm.common.util.*" %>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>修改流程模型XML</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
var params = {
procDefId: $('#procDefId').val(),
bpmnXml: $('#bpmnXml').val(),
}
jQuery.ajax({
url: "${ctx}/procDefMgr/updateBpmnFile.do",
data: JSON.stringify(params),
contentType : 'application/json;charset=utf-8', //设置请求头信息
type: "POST",
success: function(resp)
{
alert(resp);
}
});
});
});
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="updateBpmnFileForm" name="updateBpmnFileForm" action="${ctx}/procDefMgr/updateBpmnFile.do" method="post">
<input id="procDefId" name="procDefId" value="${procDefId }" type="hidden"/>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div>
<h8>只允许管理员修改 </h8>
</div>
<div class="panel-body">
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<textarea name="bpmnXml" id="bpmnXml" style="width:920px;height:470px;">${bpmnXml }</textarea>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;margin-top: 15px">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton">
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
<button onclick="art.dialog.close();" type="button"
class="btn btn-sm btn-primary">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,138 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>待办列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
function createActivityUser(){
var url="${ctx}/setActivityUser/create.do";
showDiaLog(url,"新增环节人员",'800px','600px');
}
function editActivityUser(){
var url="${ctx}/setActivityUser/edit.do";
showDiaLog(url,"修改环节人员",'800px','600px');
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="procDefForm" name="procDefForm"
action="${ctx}/procDefMgr/list.do" method="post"
style="display: inline;">
<div class="position">
<div class="center">
<div class="left">
<div class="right">
<span>当前位置:流程管理 >> 表单设置</span>
</div>
</div>
</div>
</div>
<div class="box2" style="line-height:70%" panelTitle="全局表单" roller="false">
<table class="tableStyle" formMode="true" footer="normal">
<tr>
<td width="100px">表单URL</td>
<td colspan="7">
<input style="width: 600px" name="processPageUrl" id="processPageUrl" value="" />
</td>
</tr>
</table>
</div>
<div class="box2" style="line-height:70%" panelTitle="环节表单" roller="false">
<table class="tableStyle">
<tr>
<th width="60px">节点名称</th>
<th>跳转类型</th>
<th>环节表单</th>
</tr>
<%
BpmnModel bpmnModel = (BpmnModel) request.getAttribute("bpmnModel");
if (bpmnModel != null) {
List<org.activiti.bpmn.model.Process> processes = bpmnModel
.getProcesses();
for (int i = 0; i < processes.size(); i++) {
org.activiti.bpmn.model.Process process = (org.activiti.bpmn.model.Process) processes
.get(i);
Collection<FlowElement> flowElementList = process
.getFlowElements();
for (FlowElement flowElement : flowElementList) {
if (!UserTask.class.isInstance(flowElement)) {
continue;
}
UserTask userTask = (UserTask) flowElement;
%>
<tr class="<%=((i + 1) % 2 == 0 ? "odd" : "even")%>">
<td><%=userTask.getName()+"("+userTask.getId()+")"%> &nbsp;</td>
<td>
<%
if(userTask.getAssignee()!=null){
userTask.getCandidateUsers().add(userTask.getAssignee());
}
%>
<%if(userTask.getCandidateUsers()!=null&&!userTask.getCandidateUsers().isEmpty()){
%>
用户列表:<%=userTask.getCandidateUsers()%>&nbsp;&nbsp;
<%
}if(userTask.getCandidateOrgs()!=null&&!userTask.getCandidateOrgs().isEmpty()){
%>
组织:<%=userTask.getCandidateOrgs()%>&nbsp;&nbsp;
<%
}if(userTask.getCandidateGroups()!=null&&!userTask.getCandidateGroups().isEmpty()){
%>
角色:<%=userTask.getCandidateGroups()%>
<%
}
%></td>
</tr>
<%
}
}
}
%>
</table>
</div>
<br/>
</form>
</body>
</html>

View File

@@ -0,0 +1,217 @@
<%@page
import="com.blueland.bpm.engine.core.model.ProcessDefinitionModel"%>
<%@page import="com.blueland.bpm.engine.config.model.ProcessInfoConfig"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<%--<title>流程配置</title>--%>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
function changeImage(procDefId){
var url ="${ctx}/procDefMgr/getProcessImageWidthAndHeight.do";
//获取图片的宽高
$.ajax({
url : url,
data:{"procDefId":procDefId},
type : "POST",
dataType: "json",
success : function (data){
var imageWidth=parseInt(data.imageWidth)+20;
var imageHeight=parseInt(data.imageHeight)+30;
$("#processImage").attr("style","padding-left: 30px; display: inline; float: left; margin:20px auto 0;position: relative;background:url('${ctx}/procDefMgr/resource.do?resourceType=image&procDefId="+procDefId
+"') no-repeat;width:"+imageWidth+"px; height:"+
imageHeight+"px;");
$("#versionnumber").text(data.version);
}
});
}
function deleteDeploy(url,procDefId,deploymentId,cascode){
if(window.confirm("删除流程会级联删除该流程定义和运行数据,请谨慎操作!为了避免误操作,在删除操作的同时会要求您导出流程作为备份!")){
var downloadUrl="${ctx}/procDefMgr/exportProcessAllFile.do?resourceType=xml&procDefIds="+procDefId+"&exportall=1";
var winObj = window.open(downloadUrl);
var loop = setInterval(function() {
if(winObj.closed) {
clearInterval(loop);
setMask("main-container");
$.ajax({
url : url,
data:{"procDefId":procDefId,"deploymentId":deploymentId,"cascode":cascode},
type : "POST",
dataType: "json",
success : function (data){
//alert(data);
if(data.success){
alert("删除成功");
var procDefId1 = data.returnProcDefId;
if("" != procDefId1){
$("#procDefId").val(procDefId1);
$("#historyForm").submit();
}else{
var win = art.dialog.open.origin;
$("#procDefForm", win.document).submit();
}
}else{
alert("删除失败,原因是:"+data.reason);
}
}
});
}
}, 3000);
}
}
function exportProcessAllFile(processDefIds){
var url="${ctx}/procDefMgr/exportProcessAllFile.do?resourceType=xml&procDefIds="+processDefIds+"&exportall=1";
window.open(url);
}
function flowVersionCompare(){
var obj=getChooseProcDefId();
if(obj==false){
return;
}
var procDefName = $("#procDefName").val();
var height1 = window.parent.document.documentElement.clientHeight;
var height = (parseInt(height1)-45)+"px";
url ="${ctx}/procDefMgr/compareHistoryModel.do?procDefIdOld="+obj.procDefIdOld+"&procDefIdNew="+obj.procDefIdNew+"&nameOld="+obj.nameOld+"&nameNew="+obj.nameNew;
showFullDiaLog(url,'流程历史版本对比&nbsp;&nbsp;&nbsp;&nbsp;当前流程定义名称:'+procDefName);
}
function getChooseProcDefId(){
var appObj={};
var objOld={};
var objNew={};
var i = 0;
var procDefName = $("#procDefName").val();
var sortList = [];
$("input[name='chooseProcDefId']:checkbox:checked").each(function(item){
var list = $(this).val().split("^");
if(i==0){
objOld.procDefId=list[0];
objOld.name=procDefName+"_"+list[1];
objOld.sort = list[1];
}
if(i==1){
objNew.procDefId=list[0];
objNew.name=procDefName+"_"+list[1];
objNew.sort = list[1];
}
i++;
})
if(i<2){
alert("请选择两个需要对比的流程定义版本号!");
return false;
}else{
if(i>2){
alert("不能同时对比两个以上的历史版本");
return false;
}
}
if(objOld.sort > objNew.sort){
appObj.procDefIdOld=objNew.procDefId;
appObj.nameOld=objNew.name;
appObj.procDefIdNew=objOld.procDefId;
appObj.nameNew=objOld.name;
}else{
appObj.procDefIdOld=objOld.procDefId;
appObj.nameOld=objOld.name;
appObj.procDefIdNew=objNew.procDefId;
appObj.nameNew=objNew.name;
}
return appObj;
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<form id="historyForm" name="historyForm"
action="${ctx}/procDefMgr/getHistoryProcessDefModel.do" method="post"
style="display: inline;">
<input type="hidden" name="procDefId" id="procDefId"/>
<input type="hidden" name="procDefName" id="procDefName" value="${result[0].procDefName}"/>
<div style="margin:5px;">
<button type="button" onclick="flowVersionCompare()" class="btn btn-xs btn btn-primary">流程版本对比<i class="ace-icon fa fa-search-plus bigger-110"></i></button>
</div>
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"></th>
<th>流程定义版本号</th>
<th>最后更新时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${result}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td><input type="checkbox" name="chooseProcDefId" id="chooseProcDefId"
value="${item.procDefId}^${item.version}"></td>
<td><a href="javascript:void(0);" onclick="changeImage('${item.procDefId}');">${item.version}</a></td>
<td><fmt:formatDate value="${item.pdCreateTime}" pattern="yyyy-MM-dd hh:mm:ss"/></td>
<td>
<a href="javascript:void(0);" onclick="deleteDeploy('${ctx}/procDefMgr/history/delete.do','${item.procDefId}','${item.deploymentId}','true');">删除流程</a>&nbsp;&nbsp;
<c:if test="${ebpmAdmin}">
<a href="javascript:void(0)" onclick="showDiaLog('${ctx}/procDefMgr/editProcessFile.do?procDefId=${item.procDefId}','修改流程XML','1024px','600px');">修改流程XML</a>&nbsp;&nbsp;
<a onclick="showDiaLog('${ctx}/procDefMgr/config.do?procDefId=${item.procDefId}','配置','1224px','600px');" href="javascript:void(0);">配置流程</a>
<a href="javascript:void(0)" onclick="exportProcessAllFile('${item.procDefId}');">导出流程</a>&nbsp;&nbsp;
</c:if>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<div id=con >
<span></span>
<ul id=tags>
<li class="selectTag">当前版本<span id="versionnumber">${result[0].version}</span>的流程图如下:</li>
</ul>
<div id=tagContent>
<div class="tagContent selectTag" id="tagContent0" >
<div id="processImage" style="padding-left: 30px; display: inline; float: left; margin:20px auto 0;position: relative;background:url('${ctx}/procDefMgr/resource.do?resourceType=image&procDefId=${result[0].procDefId}') no-repeat;width:${imageWidth+20}px; height:${imageHeight+30}px;">
</div>
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,130 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.engine.repository.Deployment"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<base href="<%=basePath%>">
<title>导入流程模型</title>
<script>
$(document).ready(function() {
$('#file').ace_file_input({
no_file : '请您选择本地zip文件 ...',
btn_choose : '选 择',
btn_change : '选 择',
droppable : false,
onchange : null,
thumbnail : false
//| true | large
//whitelist:'gif|png|jpg|jpeg'
//blacklist:'exe|php'
//onchange:''
//
});
var flashSuccess = $("#flashSuccess").attr("value");
//alert(flashSuccess == "导入成功");
//alert(flashSuccess.indexOf("导入成功")!=-1);
if (flashSuccess == "导入成功") {
alert(flashSuccess);
// alert(1);
art.dialog.opener.location.reload();
} else {
if (flashSuccess != "") {
alert(flashSuccess);
}
//bindMask();
}
});
function onSubmit() {
if ($("#file").val() == "" || $("#file").val().length == 0) {
//unBindMask();
alert("请您选择本地文件!");
return false;
}
if(!getFileFormat()){
alert("请上传符合要求的文件!");
return false;
}
//else{
// alert("文件符合要求");
// return false;
//}
if(confirm("您确认导入流程吗?建议导入前导出流程做好备份!")){
setMask("main-container");
document.getElementById("deployFieldForm").submit();
}
}
//判断文件的格式与文件的大小
function getFileFormat(){
//var aa = "*.zip、*.bar、*.bpmn\bpmn20.xml";
var obj = document.getElementById('file');
var fileName = obj.value;
var fileExt=obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase();//获得文件后缀名
if(fileExt=='.zip' || fileExt=='.bar' || fileExt=='.bpmn' || fileName.indexOf("bpmn20.xml") > 0){
return true;
}else{
return false;
}
}
</script>
</head>
<body class="white-page">
<%@ include file="/commons/messages.jsp"%>
<div class="main-container" id="main-container">
<div class="widget-box">
<div class="widget-body">
<div class="widget-main no-padding">
<form id="deployFieldForm" name="deployFieldForm" action="${ctx}/procDefMgr/importProcessAllFile.do" method="post" enctype="multipart/form-data">
<!-- <legend>Form</legend> -->
<fieldset>
<ol>
<!-- <li class="text-success"><b>暂只支持导入格式为*.zip、*.bar、*.bpmn\bpmn20.xml的模型文件不支持批量导入。</b></li> -->
<li class="text-success"><b>只支持导入格式为*.zip流程文件。</b></li>
<li class="text-success"><b>导入成功后可在(流程定义->已部署流程定义)菜单中管理该流程。</b></li>
<li class="text-success"><b>导入流程包含流程配置、流程模型数据,但不包括角色及角色成员的数据。</b></li>
</ol>
<div class="space-18"></div>
<input type="radio" value="update" name="savetype" checked="checked"/>覆盖版本
<input type="radio" value="create" name="savetype"/>新建版本
<input type="hidden" id="flashSuccess" value="${flashSuccess }" />
<input type="file" id="file" name="file"/>
</fieldset>
<div class="form-actions center">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" onclick="onSubmit();">
导入
<i class="ace-icon fa fa-cloud-upload bigger-110"></i>
</button>
<button
onclick="art.dialog.close();" type="button"
class="btn btn-sm btn-primary">
关闭
<i class="ace-icon fa fa-times bigger-110"></i>
</button>
</div>
</form>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,437 @@
<%@page import="com.blueland.bpm.engine.core.model.ProcessDefinitionModel"%>
<%@page import="com.blueland.bpm.engine.config.model.ProcessInfoConfig"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="com.blueland.bpm.manage.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<jsp:include page="/pages/sysGlType/selectTypeTree.jsp" flush="false" />
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程配置</title>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css" rel="stylesheet" type="text/css" />
<script type='text/javascript' src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<link href="${ctx_js_plugins}/simpletable/simpletable.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 分页需要依赖的初始化动作
window.simpleTable = new SimpleTable('procDefForm','${page.thisPageNumber}','${page.pageSize}','${pageRequest.sortColumns}');
});
function publishProcess(url){
var pageNumber = ${page.thisPageNumber};
postAjax(url,'发布成功!',true,true,"procDefForm",pageNumber);
}
function converToModel(url){
postAjax(url,'操作成功!',false,true);
}
function deleteDeploy(url){
if(window.confirm("您确定删除流程定义及运行时的数据吗?")){
setMask("main-container");
$("#procDefForm").attr("action",url);
document.getElementById("procDefForm").submit();
}
}
function importProcessBpmnXml(){
var url="${ctx}/pages/procDefMgr/deployProcessFile.jsp";
showDiaLog(url,"导入流程模型",'600px','320px');
}
function importProcessConfigData(){
var url="${ctx}/pages/procDefMgr/importProcessConfigData.jsp";
showDiaLog(url,"导入流程",'600px','320px');
}
function getItemsProcDefId(){
var chk_value =[];
var procDefId="";
$("input[name='items']:checkbox:checked").each(function(){
chk_value.push($(this).val().split("^")[0]);
})
if(chk_value.length==0){
alert("请选择一项流程定义数据!");
}else{
if(chk_value.length>1){
alert("不能同时查看多条记录的流程图!");
return false;
}
var items=chk_value[0].split("=");
for(var i=0;i<items.length;i++){
if(items[0]=="processDefinitionId"){
procDefId=items[1];
}
}
}
return procDefId;
}
function exportProcessImage(){
var procDefId=getItemsProcDefId();
if(procDefId==""){
return;
}
var url="${ctx}/procDefMgr/viewImage.do?procDefId="+procDefId;
showDiaLogList(url,'流程图');
}
function editProcess(processDefId,processStartIsshow){
//if(processStartIsshow=="RELEASE"&&window.confirm("此流程为发布状态,点击配置后流程将处于未发布状态,您确定配置流程吗?")){
/* jQuery.ajax({
type: "POST",
url: "${ctx}/procDefMgr/unReleaseProcess.do",
data: {procDefId:processDefId},
success: function(resp)
{
//alert(resp);
}
}); */
//}
//序列化表单 保存查询条件页码则直接加在url之后在后台存入session中
var queryparams = $("#procDefForm").serialize();
window.location.href="${ctx}/procDefMgr/config.do?procDefId="+processDefId+"&"+queryparams+"&pageNumber="+${page.thisPageNumber};
}
function exportProcessAllFile(isall){
//判断是否选中全选
var url = "";
//if("checked"==checkbox){//全选
if("0"==isall){//全选
var totalCount = "${page.totalCount}";
if("0"==totalCount){
alert("当前没有符合要求的数据!!");
return;
}else{
url="${ctx}/procDefMgr/exportProcessAllFile.do?resourceType=xml&exportall=0";
}
}else{//非全选
var processDefIds = getItemsProcDefIds();
if(""==processDefIds){
return;
}
url="${ctx}/procDefMgr/exportProcessAllFile.do?resourceType=xml&procDefIds="+processDefIds+"&exportall=1";
}
window.open(url);
}
//获取选中的所有流程定义id值,返回的流程定义id数组
function getItemsProcDefIds(){
var chk_value =[];
var procDefIds=new Array();
$("input[name='items']:checkbox:checked").each(function(){
chk_value.push($(this).val().split("^")[0]);
});
if(chk_value.length==0){
alert("请选择流程定义数据!");
}else{
for(var n=0;n<chk_value.length;n++){
var items=chk_value[n].split("=");
if(items[0]=="processDefinitionId"){
procDefIds.push(items[1]);
}
}
}
return procDefIds;
}
function viewFlowFile(fileId){
var url = "<%=MyContants.BPM_FRONT_PATH%>"+"/ebpm-bpa-front/#/detail?fileId="+fileId+"&type=.bpmn&isMenu=false";
//window.open(url);
showDiaLog(url,'查看流程梳理-业务流程资产','1024px','600px');
}
function processTypeNameOnDbClick(name, value) {
$("#processTypeName").val(name);
$("#processTypeId").val(value);
}
//流程设计
function addBpmnModel(){
var obj=getItemsInfo();
if(!obj.flag){
return;
}
var url = "<%=MyContants.BPM_PROCESS_MODELER_PATH%>"+"#/bpmnModel?appId="+$("#appId").val()+"&procDefKey="+obj.procDefKey;
window.open (url,'流程建模','width='+(window.screen.availWidth-10)+',height='+(window.screen.availHeight-30)+ ',top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')
}
//拼装数据
function getItemsInfo(){
var obj ={
"procDefKey":"",
"flag":false
}
var chk_procDefKey =[];
var chk_procDefName =[];
$("input[name='items']:checkbox:checked").each(function(){
chk_procDefKey.push($(this).val().split("^")[1]);
})
if(chk_procDefKey.length>1){
alert("不能同时设计多个流程!");
return false;
}else if(chk_procDefKey.length==1){
obj.procDefKey = chk_procDefKey[0];
obj.flag=true;
}else if (chk_procDefKey.length==0) {
obj.flag=true;
}
return obj
}
</script>
</head>
<body>
<%@ include file="/commons/messages.jsp"%>
<form id="procDefForm" name="procDefForm"
action="${ctx}/procDefMgr/list.do" method="post"
style="display: inline;">
<input type="hidden" name="appId" id ="appId" value="<%=session.getAttribute("app_id")%>"/>
<input type="hidden" id="flag" name="flag" value="${flag}"/>
<!-- <input value="${query.processTypeId}" id="processTypeId"
name="processTypeId" maxlength="30" type="hidden" /> -->
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-heading">
<%--<h8>流程配置</h8>--%>
</div>
<div class="panel-body" id="panel-body" style="padding:3px;">
<div class="well well-sm" style="margin-bottom: 2px;">
<table border="0" cellspacing="0" cellpadding="0"
class="table-search">
<tr>
<td>流程定义KEY</td>
<td><input value="${query.processDefKey}"
id="processDefKey" name="processDefKey" maxlength="30" /></td>
<td>流程定义名称:</td>
<td><input value="${query.processDefName}"
id="processDefName" name="processDefName" maxlength="30" /></td>
<%--<td>流程类型:</td>
<td>
<!-- <select name="processTypeId">
<option value="">--请选择--</option>
<c:forEach items="${sysGlTypes}" var="item">
<option ${query.processTypeId==item.typeId?"selected":""}
value="${item.typeId}">${item.typeName}</option>
</c:forEach>
</select> -->
<input
<c:choose>
<c:when test="${not empty query.processTypeName}">
value="${query.processTypeName}"
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
name="processTypeName" id="processTypeName" readonly
onclick="showMenu('processTypeName','',''); return false;" />
<input
type="hidden" name="processTypeId" id="processTypeId"
preValue="${query.processTypeId}"
value="${query.processTypeId}" />
&lt;%&ndash; <a class="blue" href="javascript:void(0);"> &ndash;%&gt;
&lt;%&ndash; <i class="ace-icon fa fa-search bigger-130" &ndash;%&gt;
&lt;%&ndash; onclick="showMenu('processTypeName','',''); return false;"/> &ndash;%&gt;
&lt;%&ndash; </i></a>&ndash;%&gt;
</td>--%>
<td>发布状态:</td>
<td><select name="processMgrState">
<option value="">--请选择--</option>
<option ${query.processMgrState=='RELEASE'?"selected":""}
value="RELEASE">已发布</option>
<option ${query.processMgrState=='UPDATE'?"selected":""}
value="UPDATE">修订中</option>
<option ${query.processMgrState=='UNRELEASE'?"selected":""}
value="UNRELEASE">未发布</option>
</select></td>
<td><button type="submit" class="btn btn-xs btn-primary">查&nbsp;&nbsp;询
<i class="ace-icon fa fa-search bigger-110"></i></button></td>
</tr>
<tr>
<%--<td>可见状态:</td>
<td><select name="processStartIsshow">
<option value="">--请选择--</option>
<c:forEach items="${query.processStartIsshowMap}" var="item">
<option ${query.processStartIsshow==item.key?"selected":""}
value="${item.key }">${item.value}</option>
</c:forEach>
</select></td>--%>
<!--
<td>创建时间:</td>
<td><input value="" id="deploymentTime"
name="deploymentTime" maxlength="30"
onclick="WdatePicker({dateFmt:'yyyy-MM-dd'})" /></td>
-->
</tr>
<tr>
<td colspan="7">
<!--
<button type="button" onclick="importProcessBpmnXml();"
class="btn btn-xs btn-success">导入流程模型</button>
-->
<!-- <button type="button" onclick="importProcessConfigData();"
class="btn btn-xs btn-success">导入流程配置</button> -->
<button type="button" onclick="addBpmnModel()" class="btn btn-xs btn-success">
流程建模<i class="ace-icon fa fa-plus bigger-110"></i>
</button>
<button type="button" onclick="exportProcessImage();"
class="btn btn-xs btn btn-primary">查看流程图
<i class="ace-icon fa fa-search-plus bigger-110"></i></button>
<c:if test="${customSso != '1'}">
<button type="button" onclick="importProcessConfigData();"
class="btn btn-xs btn-success">导入流程
<i class="ace-icon fa fa-cloud-upload bigger-110"></i></button>
<button type="button" onclick="exportProcessAllFile('1');"
class="btn btn-xs btn-yellow">导出选中流程
<i class="ace-icon fa fa-cloud-download bigger-110"></i></button>
<button type="button" onclick="exportProcessAllFile('0');"
class="btn btn-xs btn-danger">导出全部流程
<i class="ace-icon fa fa-cloud-download bigger-110"></i></button>
<a href="${ctx}/procDefMgr/export.do" class="btn btn-xs btn-orange">
导出流程清单 <i class="ace-icon fa fa-cloud-download bigger-110"></i>
</a>
</c:if>
</td>
</tr>
</table>
</div>
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;">
<!-- <input type="checkbox" id="selectAll"
onclick="setAllCheckboxState('items',this.checked)"> -->
</th>
<!-- 排序时为th增加sortColumn即可,new SimpleTable('sortColumns')会为tableHeader自动增加排序功能; -->
<th style="width: 200px">流程定义KEY</th>
<th style="width: 60px;">版本号</th>
<th sortColumn="procDefName">流程定义名称</th>
<th sortColumn="deployTime" style="width: 150px">创建时间</th>
<th sortColumn="procDefVersion" style="width: 150px;">状态</th>
<th sortColumn="processStartIsshow" style="width: 150px;">是否可见</th>
<th style="width: 70px;">操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.result}" var="item" varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}">
<td ><input type="checkbox" name="items" id="items"
value="processDefinitionId=${item.processDefId}^${fn:split(item.processDefId,":")[0]}"></td>
<td class="td" title="${fn:split(item.processDefId,":")[0]}">${fn:split(item.processDefId,":")[0]}&nbsp;</td>
<td align="center" class="td" title="${fn:split(item.processDefId,":")[1]}">${fn:split(item.processDefId,":")[1]}&nbsp;</td>
<td class="td" title="${item.processDefName}">${item.processDefName}&nbsp;</td>
<td title=""><fmt:formatDate value="${item.createTime}" pattern="yyyy-MM-dd HH:mm:ss"/>
<td >
<c:choose>
<c:when test="${item.processMgrState=='RELEASE'}">
<span class="label label-success">已发布</span>
</c:when>
<c:when test="${item.processMgrState=='UPDATE'}">
<span class="label label-yellow">修订中</span>
</c:when>
<c:otherwise><span class="label label-danger">未发布</span></c:otherwise>
</c:choose>
</td>
<td align="center">
<c:choose>
<c:when test="${item.processStartIsshow=='Y'}">
可见
</c:when>
<c:otherwise>
不可见
</c:otherwise>
</c:choose>
</td>
<td>
<div class="btn-group">
<button data-toggle="dropdown"
class="btn btn-info btn-sm dropdown-toggle">
配置 <span class="ace-icon fa fa-caret-down icon-on-right"></span>
</button>
<ul
class="dropdown-menu dropdown-info dropdown-menu-right">
<li style="list-style: none;"><a
onclick="publishProcess('${ctx}/procDefMgr/releaseProcess.do?procDefId=${item.processDefId}');"
href="javascript:void(0);">发布流程</a></li>
<li style="list-style: none;"><a
onclick="editProcess('${item.processDefId}','${item.processStartIsshow}')"
href="javascript:void(0);">配置流程</a></li>
<%-- <li style="list-style: none;"><a href="javascript:void(0);"
onclick="converToModel('${ctx}/procDefMgr/convert-to-model.do?procDefId=${item.processDefId}');">转换成模型</a>
</li> --%>
<!--
<li><a
href="${ctx}/procDefMgr/exportProcessAllFile.do?resourceType=xml&procDefId=${item.processDefId}"
target="_blank">导出流程</a></li>
<li>
<li><a
href="${ctx}/procDefMgr/exportProcessResource.do?resourceType=xml&procDefId=${item.processDefId}"
target="_blank">导出流程模型</a></li>
<li><a
href="${ctx}/procDefMgr/exportProcessConfigData.do?procDefId=${item.processDefId}"
target="_blank">导出流程配置</a></li>
-->
<li style="list-style: none;"><a href="javascript:void(0)"
onclick="showDiaLog('${ctx}/procDefMgr/editProcessFile.do?procDefId=${item.processDefId}','修改流程XML','1024px','600px');">修改流程XML</a>
</li>
<li style="list-style: none;"><a href="javascript:void(0)"
onclick="showDiaLog('${ctx}/procDefMgr/getHistoryProcessDefModel.do?procDefId=${item.processDefId}','流程历史版本&nbsp;&nbsp;&nbsp;&nbsp;当前流程定义名称:${item.processDefName}','1024px','600px');">流程历史版本</a>
</li>
<c:if test="${not empty item.arisCode}">
<li style="list-style: none;"><a href="javascript:void(0)"
onclick="viewFlowFile(${item.arisCode})">流程资产</a>
</li>
</c:if>
<!-- <li><a href="javascript:void(0)"
onclick="deleteDeploy('${ctx}/procDefMgr/delete.do?procDefId=${item.processDefId}&deploymentId=${item.deploymentId}&cascode=true');">删除流程</a>
</li> -->
</ul>
</div>
<!-- /.btn-group -->
</td>
</tr>
</c:forEach>
</tbody>
</table>
<simpletable:pageToolbar page="${page}">
</simpletable:pageToolbar>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,276 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程通知提醒规则配置</title>
<link href="${ctx }/resource/js/plugins/loadmask/jquery.loadmask.css"
rel="stylesheet" type="text/css">
<script type="text/javascript"
src="${ctx }/resource/js/plugins/loadmask/jquery.loadmask.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var noticeScopes = '${noticeRemindConfig.noticeScopes}';
var arr = new Array();
arr = noticeScopes.split(',');
for (var i = 0; i < arr.length; i++) {
if (arr[i] == 'QC') {
$('#noticeScopes1').attr("checked", "true");
} else if (arr[i] == 'JB') {
$('#noticeScopes2').attr("checked", "true");
} else if (arr[i] == 'ZD') {
$('#noticeScopes3').attr("checked", "true");
}
}
var inp1 = $('#appManagerNames').get(0);
var inp2 = $('#appManagerIds').get(0);
var inp3 = $('#noticeScopes3').attr('checked');
if (inp3) {
inp1.setAttribute('readonly', 'true');
inp1.removeAttribute('disabled')
inp2.setAttribute('readonly', 'true');
inp2.removeAttribute('disabled')
} else {
inp1.setAttribute('disabled', 'disabled');
inp1.removeAttribute('readonly');
inp2.setAttribute('disabled', 'disabled');
inp2.removeAttribute('readonly');
}
$('#noticeScopes3').on('click', function() {
var inp1 = $('#appManagerNames').get(0);
var inp2 = $('#appManagerIds').get(0);
var inp3 = $('#noticeScopes3').attr('checked');
if (inp3) {
inp1.setAttribute('readonly', 'true');
inp1.removeAttribute('disabled')
inp2.setAttribute('readonly', 'true');
inp2.removeAttribute('disabled')
} else {
inp1.setAttribute('disabled', 'disabled');
inp1.removeAttribute('readonly');
inp2.setAttribute('disabled', 'disabled');
inp2.removeAttribute('readonly');
}
});
var inp4 = $('#activityDefNames').get(0);
var inp5 = $('#activityDefIds').get(0);
var inp6 = $('input:radio[name="noticeType"]:checked').val();
if (inp6 == '2') {
inp4.setAttribute('readonly', 'true');
inp4.removeAttribute('disabled')
inp5.setAttribute('readonly', 'true');
inp5.removeAttribute('disabled')
} else {
inp4.setAttribute('disabled', 'disabled');
inp4.removeAttribute('readonly');
inp5.setAttribute('disabled', 'disabled');
inp5.removeAttribute('readonly');
}
$(':radio').on('click', function() {
var inp4 = $('#activityDefNames').get(0);
var inp5 = $('#activityDefIds').get(0);
var inp6 = $('input:radio[name="noticeType"]:checked').val();
if (inp6 == '2') {
inp4.setAttribute('readonly', 'true');
inp4.removeAttribute('disabled')
inp5.setAttribute('readonly', 'true');
inp5.removeAttribute('disabled')
} else {
inp4.setAttribute('disabled', 'disabled');
inp4.removeAttribute('readonly');
inp5.setAttribute('disabled', 'disabled');
inp5.removeAttribute('readonly');
}
});
$("#submitButton").click(function() {
var noticeDrafters = $('#noticeScopes1').attr('checked');
var noticeOperator = $('#noticeScopes2').attr('checked');
var noticeUser = $('#noticeScopes3').attr('checked');
if (!noticeDrafters && !noticeOperator && !noticeUser) {
alert("提醒用户必选一个");
return false;
}
if (noticeUser) {
var appManagerIds = $("#appManagerIds").val();
if (appManagerIds == null || appManagerIds == '') {
alert("指定用户不能为空");
return false;
}
}
var noticeType = $('input:radio[name="noticeType"]:checked').val();
if (noticeType == null) {
alert("提醒规则必选一个");
return false;
}
if (noticeType == '2') {
var activityDefIds = $('#activityDefIds').val();
if (activityDefIds == null || activityDefIds == '') {
alert("指定环节不能为空");
return false;
}
}
var noticeContent = $.trim($('#noticeContent').val());
if (noticeContent == null || noticeContent == '') {
alert("提醒内容不能为空");
$('#noticeContent').focus();
return false;
}
setMask("main-container");
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/noticeRemindConfig/update.do",
data : $('#myform').serialize(),
success : function(resp) {
alert(resp);
$('#main-container').unmask();
if (resp == '操作成功') {
window.location.reload();
}
}
});
});
//清空
$("#refreshButton").click(function() {
var procDefId = $("#procDefId").val();
var noticeType = '${noticeRemindConfig.noticeType}';
if(noticeType == null || noticeType == ''){
refreshData();
return false;
}
setMask("main-container");
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/noticeRemindConfig/delete.do",
data : {
procDefId : procDefId
},
success : function(resp) {
alert(resp);
$('#main-container').unmask();
window.location.reload();
}
});
});
});
function createActUser(values, names) {
$("#appManagerIds").val(values.replace(/USER#/g, ""));
$("#appManagerNames").val(names);
}
function createActConfig(values, names) {
$("#activityDefIds").val(values);
$("#activityDefNames").val(names);
}
function refreshData(){
$("#appManagerNames").val("");
$("#appManagerIds").val("");
$("#activityDefNames").val("");
$("#activityDefIds").val("");
$("#noticeContent").val("");
$('input:checkbox[name=noticeScopes]').attr('checked', false);
$('input:radio[name=noticeType]').attr('checked',false);
}
</script>
</head>
<body style="font-size: 13px; font-family: 'Open Sans';">
<form action="${ctx}/noticeRemindConfig/update.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<input type="hidden" id="oldValue" /> <input type="hidden"
id="procDefId" name="procDefId"
value="${noticeRemindConfig.procDefId}" style="width: 200px;" />
<input type="hidden" id="procDefKey" name="procDefKey"
value="${noticeRemindConfig.procDefKey}" style="width: 200px;" />
<table class='table table-bordered' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<!-- 存放表单的区域 -->
<tr>
<td>提醒用户:</td>
<td colspan="3">
<!-- <div class="checkbox"> --> <label> <input
class="ace input-lg" type="checkbox" name="noticeScopes"
id="noticeScopes1" value="QC" /> <span class="lbl">通知起草人</span>
</label> <label> <input class="ace input-lg" type="checkbox"
name="noticeScopes" id="noticeScopes2" value="JB" /> <span
class="lbl">流程经办人</span>
</label> <label> <input class="ace input-lg" type="checkbox"
name="noticeScopes" id="noticeScopes3" value="ZD" /> <span
class="lbl">指定用户</span>
</label> <input style="width: 400px" type="text" name="noticeUserNames"
id="appManagerNames"
value="${noticeRemindConfig.noticeUserNames }"
disabled="disabled"
onclick="showDiaLog('${ctx}/pages/user_org_select.jsp?showTreeType=USER&isMultiSelect=true&roleFlag=false&orgId=0', '指定用户', '800px', '500px');" />
<input type="hidden" name="noticeUserIds" id="appManagerIds"
disabled="disabled" value="${noticeRemindConfig.noticeUserIds }" />
<!-- </div> -->
</td>
</tr>
<tr>
<td>提醒规则:</td>
<td colspan="3">
<!-- <div class="radio"> --> <label> <input
class="ace input-lg" type="radio" name="noticeType"
id="noticeType1" value="1"
<c:if test="${noticeRemindConfig.noticeType == '1'}">checked="checked"</c:if> />
<span class="lbl">办结提醒</span>
</label> <label> <input class="ace input-lg" type="radio"
name="noticeType" id="noticeType2" value="2"
<c:if test="${noticeRemindConfig.noticeType == '2'}">checked="checked"</c:if> />
<span class="lbl">指定环节提醒</span>
</label> <input style="width: 400px" type="text" name="activityDefNames"
id="activityDefNames"
value="${noticeRemindConfig.activityDefNames }"
disabled="disabled"
onclick="showDiaLog('${ctx}/noticeRemindConfig/selectActInfoConfigs.do?processDefId=${noticeRemindConfig.procDefId}', '选择节点', '800px', '500px');" />
<input type="hidden" name="activityDefIds" id="activityDefIds"
value="${noticeRemindConfig.activityDefIds}" /> <!-- </div> -->
</td>
</tr>
<tr>
<td>提醒内容:</td>
<td colspan="3"><span class="float_left"> <textarea
preValue="${noticeRemindConfig.noticeContent}"
onblur="moveout(this.id);" name="noticeContent"
id="noticeContent" style="width: 800px;">${noticeRemindConfig.noticeContent}</textarea>
</span></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" />
保存 <i class="ace-icon fa fa-save bigger-110"></i>
</button>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<button type="button" class="btn btn-sm btn-danger"
id="refreshButton" />
重置 <i class="ace-icon glyphicon glyphicon-refresh"></i>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../../../pages/sysGlType/selectTypeTree.jsp"
flush="false" />
</body>
</html>

View File

@@ -0,0 +1,108 @@
<%@page import="org.activiti.engine.repository.ProcessDefinition"%>
<%@page import="org.activiti.bpmn.model.*"%>
<%@page import="com.blueland.bpm.engine.config.model.*"%>
<%@page import="com.blueland.bpm.common.page.*"%>
<%@page import="com.blueland.bpm.common.util.*"%>
<%@page import="java.util.*"%>
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib tagdir="/WEB-INF/tags/simpletable" prefix="simpletable"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程环节列表</title>
<link href="${ctx_js_plugins}/simpletable/simpletable.css"
type="text/css" rel="stylesheet">
<script type="text/javascript"
src="${ctx_js_plugins}/simpletable/simpletable.js"></script>
<link href="${ctx}/resource/js/plugins/loadmask/jquery.loadmask.css"
rel="stylesheet" type="text/css" />
<script type='text/javascript'
src='${ctx}/resource/js/plugins/loadmask/jquery.loadmask.js'></script>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function(){
var retValus='';
var retNames='';
$('input[name="resources"]:checked').each(function(i){
if(i>0){
retValus += ",";
retNames += ",";
}
var trId = $(this).val();
retValus += $(this).val();
retNames += $('#'+trId).attr("dataName");
});
if(retValus == null || retValus == ''){
alert("请选择节点");
return false;
}
art.dialog.opener.createActConfig(retValus,retNames);
art.dialog.close();
});
});
</script>
</head>
<body id="content">
<form id="queryForm" name="queryForm"
action="${ctx}/actInfo/setActResource/list.do" method="post"
style="display: inline;">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body" style="padding: 3px;">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table id="sample-table-1"
class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th style="width: 25px;"><input type="checkbox"
onclick="setAllCheckboxState('resources',this.checked)"></th>
<th>节点ID</th>
<th>节点名称</th>
</tr>
</thead>
<tbody>
<c:forEach items="${actInfoConfigs}" var="item"
varStatus="status">
<tr class="${status.count % 2 == 0 ? 'odd' : 'even'}" id="${item.activityDefId}" dataName="${item.activityDefName}">
<td><input type="checkbox" name="resources"
value="${item.activityDefId}"></td>
<td>${item.activityDefId}</td>
<td>${item.activityDefName}&nbsp;</td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" />
确定
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
</div>
</div>
<!-- /.table-responsive -->
</div>
<!-- /span -->
</div>
</div>
</div>
</div>
</form>
</body>
</html>

View File

@@ -0,0 +1,185 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<hred>
<%@ include file="/commons/meta.jsp" %>
<link rel="stylesheet" href="${ctx}/resource/js/plugins/zTree/css/demo.css" type="text/css">
<link rel="stylesheet" href="${ctx}/resource/js/plugins/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css">
<script type="text/javascript" src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.core-3.4.js"></script>
<script type="text/javascript" src="${ctx}/resource/js/plugins/zTree/js/jquery.ztree.excheck-3.4.js"></script>
<SCRIPT type="text/javascript">
var p_inputObj;
var p_initParams1="";
var p_initParams2="";
var p_initParams3="";
var p_initParams4=false;
function createSetting(){
var setting = {
view: {
dblClickExpand: false,
expandSpeed: "slow",
selectedMulti: false
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/procDefMgr/getProcDefTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"assignTreeId":p_initParams1,"treeLevel":p_initParams2}
},
callback: {
onDblClick: onDblClick
}
};
return setting;
}
function createSettingCheck(){
var setting = {
check: {
enable: true,
chkboxType: {"Y":"", "N":""}
},
view: {
dblClickExpand: false,
expandSpeed: "slow"
},
data: {
simpleData: {
enable : true,
idKey : "id",
pIdKey : "pId" ,
DIY:"isAccessTopMenu"
}
},async: {
enable: true,
url:"${ctx}/procDefMgr/getProcDefTree.do",
autoParam:["id", "name=n","level=lv"],
otherParam:{"assignTreeId":p_initParams1,"treeLevel":p_initParams2}
},
callback: {
beforeClick: beforeClick,
onCheck: onCheck
}
};
return setting;
}
function beforeClick(treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("p_treeDept");
zTree.checkNode(treeNode, !treeNode.checked, null, true);
return false;
}
function onCheck(e, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("p_treeDept"),
nodes = zTree.getCheckedNodes(true),
name = "",
id="";
//nodes.sort(function compare(a,b){return a.id-b.id;});
for (var i=0, l=nodes.length; i<l; i++) {
if(nodes[i].level<=0||nodes[i].level<=p_initParams3)
continue;
name += nodes[i].name + ",";
id += nodes[i].id + ",";
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
try{
var fun=p_inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"')");
}catch(e){}
}
function onDblClick(e, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("p_treeDept"),
nodes = zTree.getSelectedNodes(),
name = "",
id="";
//nodes.sort(function compare(a,b){return a.id-b.id;});
for (var i=0, l=nodes.length; i<l; i++) {
if(nodes[i].level<=0||nodes[i].level<=p_initParams3)
return;
name += nodes[i].name + ",";
id += nodes[i].id + ",";
}
if (id.length > 0 ) id = id.substring(0, id.length-1);
if (name.length > 0 ) name = name.substring(0, name.length-1);
try{
var fun=p_inputObj+"OnDbClick";
eval(fun+"('"+name +"','"+id+"')");
}catch(e){}
hideMenu();
}
function showMenu(inputName,params1,params2,params3) {
//alert(params2);
p_initParams1=params1;
p_initParams2=params2;
p_initParams3=params3;
$.fn.zTree.init($("#p_treeDept"), createSetting());
p_inputObj=inputName;
var cityObj = $("#"+inputName);
var cityOffset = cityObj.offset();
$("#p_menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
$("body").bind("mousedown", onBodyDown);
}
function showMenu1(inputName,params1,params2,params3) {
//alert(params2);
p_initParams1=params1;
p_initParams2=params2;
p_initParams3=params3;
$.fn.zTree.init($("#p_treeDept"), createSettingCheck());
p_inputObj=inputName;
var cityObj = $("#"+inputName);
var cityOffset = cityObj.offset();
$("#p_menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
$("body").bind("mousedown", onBodyDown);
}
function hideMenu() {
$("#p_menuContent").fadeOut("fast");
$("body").unbind("mousedown", onBodyDown);
}
function onBodyDown(event) {
if (!(event.target.id == "p_menuBtn" || event.target.id == "p_menuContent" || $(event.target).parents("#p_menuContent").length>0)) {
hideMenu();
}
}
$(document).ready(function(){
//
});
</SCRIPT>
</HEAD>
<BODY>
<div id="p_menuContent" class="menuContent" style="z-index:1;display:none; position: absolute;">
<ul id="p_treeDept" class="ztree" style="margin-top:0; width:230px;height: auto;max-height: 300px;"></ul>
</div>
</BODY>
</HTML>

View File

@@ -0,0 +1,306 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/commons/taglibs.jsp"%>
<%@page import="com.blueland.bpm.manage.util.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/commons/meta.jsp"%>
<base href="<%=basePath%>">
<title>流程基础配置</title>
<script type="text/javascript">
$(document).ready(function() {
$("#submitButton").click(function() {
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
url : "${ctx}/processInfo/update.do",
data : $('#myform').serialize(),
success : function(resp) {
$("#isChange",window.parent.document).val("0");//保存完毕后把是否已修改还原成未修改
alert(resp);
}
});
});
$('#mprotocol').change(function(){
var val=$(this).children('option:selected').val();
if(val=="http"){
$("#otherSysDealStatus option[value='no']").attr("selected", "selected");
}else{
$("#otherSysDealStatus option[value='yes']").attr("selected", "selected");
}
});
//获取绑定的流程梳理的文件名称
if($("#arisCode").val() != null){
var url = "<%=MyContants.BPM_FILE_PATH%>"+"/ebpm-bpa-web/flow/getAtt?fileId="+$("#arisCode").val();
jQuery.ajax({
url : url,
type : "GET",
success : function(resp) {
$("#arisCodeName").val(resp.NAME);
}
});
}
});
function processTypeNameOnDbClick(name, value) {
//判断流程分类是否修改
moveout("processTypeId");
$("#processTypeName").val(name);
$("#processTypeId").val(value);
}
//焦点移出时对比现在的值和原来的值是否一致 如果不一致则修改父页面的是否修改的标记,标记为已修改
function moveout(id){
//获取父页面是否修改的标记
var isChange = $("#isChange",window.parent.document).val();
if(isChange==0){//如果父页面标记为未修改 则执行下面的操作
var preValue = $("#"+id).attr("preValue");
var value = $("#"+id).val();
if(preValue != value){
//设置标记为已修改
$("#isChange",window.parent.document).val("1");
}
}
}
function save(){
//用jquery中的ajax方法向服务器提交请求
jQuery.ajax({
type : "POST",
async : false,
url : "${ctx}/processInfo/update.do",
data : $('#myform').serialize(),
success : function(resp) {
//设置标记为已修改
$("#isChange",window.parent.document).val("0");//保存完毕后把是否已修改还原成未修改
alert(resp);
}
});
}
function arisCodeNameOnDbClick(name, value) {
$("#arisCodeName").val(name);
$("#arisCode").val(value);
}
function viewFlowFile(){
if($("#arisCode").val() != ""){
var url = "<%=MyContants.BPM_FRONT_PATH%>"+"/ebpm-bpa-front/#/detail?fileId="+$("#arisCode").val()+"&type=.bpmn&isMenu=false";
showDiaLog(url,'查看流程梳理-业务流程资产','1024px','600px');
}else{
alert("请选择流程梳理-业务流程")
}
}
</script>
</head>
<body style="font-size: 13px;font-family: 'Open Sans';" class="white-page">
<form action="${ctx}/processInfo/update.do" method="post"
id="myform">
<div class="main-container" id="main-container">
<div class="panel panel-primary">
<div class="panel-body">
<input type="hidden" id="oldValue"/>
<input type="hidden" id="processDefName" name="processDefName"
value="${processInfoConfig.processDefName}" style="width: 200px;" />
<input type="hidden" id="processDefId" name="processDefId"
value="${processInfoConfig.processDefId}" style="width: 200px;" />
<input type="hidden" id="processDefKey" name="processDefKey"
value="${processInfoConfig.processDefKey}" style="width: 200px;" />
<input type="hidden" id="processMgrState" name="processMgrState"
value="${processInfoConfig.processMgrState}" style="width: 200px;" />
<input type="hidden" id="processModelSyncState" name="processModelSyncState"
value="${processInfoConfig.processModelSyncState}" style="width: 200px;" />
<table class='table table-bordered form-table' border="0" cellspacing="0"
cellpadding="0" id="myTable">
<!-- 存放隐藏域的区域 -->
<!-- 存放表单的区域 -->
<tr>
<td>流程KEY</td>
<td>${processInfoConfig.processDefKey}</td>
<td>流程ID</td>
<td>${processInfoConfig.processDefId}</td>
</tr>
<tr>
<td>流程名称:</td>
<td>${processInfoConfig.processDefName}</td>
<td>流程版本号:</td>
<td>${processInfoConfig.processVersion}</td>
</tr>
<tr>
<td>流程类型:</td>
<td style="width: 250px;">
<input type="text"
<c:choose>
<c:when test="${not empty processInfoConfig.processTypeName}">
value="${processInfoConfig.processTypeName}"
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
name="processTypeName" id="processTypeName" readonly
onclick="showMenu('processTypeName','',''); return false;" />
<input
type="hidden" name="processTypeId" id="processTypeId"
value="${processInfoConfig.processTypeId}" />
<a class="blue" href="javascript:void(0);">
<i class="ace-icon fa fa-search bigger-130"
onclick="showMenu('processTypeName','',''); return false;"/>
</i></a>
</td>
<td>流程是否可见:</td>
<td>
<select name="processStartIsshow" id="processStartIsshow"
preValue="${processInfoConfig.processStartIsshow}"
onchange="moveout(this.id);">
<option value="Y" ${processInfoConfig.processStartIsshow=="Y"?"selected":""}>可见</option>
<option value="N" ${processInfoConfig.processStartIsshow=="N"?"selected":""}>不可见</option>
</select>
</td>
</tr>
<tr>
<td>流程排序号:</td>
<td><input type="text" name="processStartOrder"
preValue="${processInfoConfig.processStartOrder}"
onblur="moveout(this.id);"
value="${processInfoConfig.processStartOrder}"
id="processStartOrder" maxlength="200"
class="validate[length[0,1000]]"
onkeyup="this.value=this.value.replace(/\D/g,'')"
onafterpaste="this.value=this.value.replace(/\D/g,'')"/></td>
<td>流程更新时间:</td>
<td>${processInfoConfig.lastUpdateTimeString}</td>
<!--
<td>起草权限:</td>
<td><input type="text" name="processStartAuth" value=""
id="processStartAuth" class="validate[length[0,500]]" /></td>
-->
</tr>
<c:if test="${customSso != '1'}">
<tr>
<td rowspan="2" style="width: 200px;">桌面端相关配置:</td>
<td style="width: 100px;">环节表单路径</td>
<td colspan="3">
<input style="width: 600px" type="text" name="processPageUrl" value="${processInfoConfig.processPageUrl}" id="processPageUrl" class="validate[length[0,500]]" />
</td>
</tr>
<tr>
<td>处理协议</td>
<td colspan="3">
<select name="cprotocol" id="cprotocol">
<option value="hnzy:workitem" ${processInfoConfig.cprotocol=='hnzy:workitem'||processInfoConfig.cprotocol==null?'selected':''}>专用浏览器模式</option>
<option value="http" ${processInfoConfig.cprotocol=='http'?'selected':''}>普通浏览器模式</option>
</select>
</td>
</tr>
<tr>
<td rowspan="3">手机端相关配置:</td>
<td>环节表单路径</td>
<td colspan="3">
<input style="width: 600px" type="text" name="murl" value="${processInfoConfig.murl}" id="murl" class="validate[length[0,500]]" />
</td>
</tr>
<tr>
<td>处理协议</td>
<td colspan="3">
<select name="mprotocol" id="mprotocol">
<option value="none" ${processInfoConfig.mprotocol=='none'||processInfoConfig.mprotocol==null?'selected':''}>不支持手机处理</option>
<option value="http" ${processInfoConfig.mprotocol=='http'?'selected':''}>H5</option>
</select>
</td>
</tr>
<tr>
<td>处理状态</td>
<td colspan="3">
<select name="otherSysDealStatus" id="otherSysDealStatus">
<option value="" ${processInfoConfig.mprotocol==null?'selected':''}>请选择</option>
<option value="yes" ${processInfoConfig.otherSysDealStatus=='yes'?'selected':''}>仅阅读</option>
<option value="no" ${processInfoConfig.otherSysDealStatus=='no'?'selected':''}>可处理</option>
</select>
</td>
</tr>
<tr>
<td width="15%">流程业务处理类:</td>
<td colspan="3"><input style="width: 550px;" type="text"
name="processHandlerClassPath"
preValue="${processInfoConfig.processHandlerClassPath}"
onblur="moveout(this.id);"
value="${processInfoConfig.processHandlerClassPath}"
id="processHandlerClassPath" maxlength="200"
class="validate[length[0,1000]]" /></td>
</tr>
</c:if>
<%-- <tr>
<td width="15%">流程梳理-业务流程:</td>
<td colspan="3">
<input
<c:choose>
<c:when test="${not empty processInfoConfig.arisCode}">
value=""
</c:when>
<c:otherwise>
value="请选择"
</c:otherwise>
</c:choose>
name="arisCodeName" id="arisCodeName" readonly
onclick="showFlowFile('arisCodeName','',''); return false;" />
<input
type="hidden" name="arisCode" id="arisCode"
preValue="${processInfoConfig.arisCode}"
value="${processInfoConfig.arisCode}" />
<a class="blue" href="javascript:void(0);">
<i class="ace-icon fa fa-search bigger-130"
onclick="viewFlowFile()"/>
</i></a>
</td>
</tr> --%>
<!--
<tr>
<td>更新者:</td>
<td></td>
<td>更新时间:</td>
<td>${processInfoConfig.lastUpdateTimeString}</td>
</tr>
-->
<tr>
<td>流程备注:</td>
<td colspan="3"><span class="float_left"> <textarea
preValue="${processInfoConfig.remark}"
onblur="moveout(this.id);"
name="remark" id="remark" style="width: 550px;">${processInfoConfig.remark}</textarea>
</span></td>
</tr>
</table>
<div class="col-md-offset-1 col-md-9" style="text-align: center;">
<button type="button" class="btn btn-sm btn-primary"
id="submitButton" />
保存
<i class="ace-icon fa fa-save bigger-110"></i>
</button>
</div>
</div>
</div>
</div>
</form>
<jsp:include page="../../../pages/sysGlType/selectTypeTree.jsp" flush="false" />
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More