diff --git a/mdp-lcode-bootstrap/pom.xml b/mdp-lcode-bootstrap/pom.xml
index 0ce5c13..f334ec6 100644
--- a/mdp-lcode-bootstrap/pom.xml
+++ b/mdp-lcode-bootstrap/pom.xml
@@ -14,12 +14,7 @@
com.mdp
- mdp-oauth2-client-cloud
- ${mdp.version}
-
-
- com.mdp
- mdp-cloud-starter
+ mdp-boot-starter
${mdp.version}
diff --git a/mdp-lcode-bootstrap/src/main/java/com/mdp/LcodeApplication.java b/mdp-lcode-bootstrap/src/main/java/com/mdp/LcodeApplication.java
index 46d1da9..7fcc45b 100644
--- a/mdp-lcode-bootstrap/src/main/java/com/mdp/LcodeApplication.java
+++ b/mdp-lcode-bootstrap/src/main/java/com/mdp/LcodeApplication.java
@@ -2,10 +2,11 @@ package com.mdp;
import org.springframework.boot.SpringApplication;
-import org.springframework.cloud.client.SpringCloudApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
-@SpringCloudApplication
+@SpringBootApplication
+//@SpringCloudApplication
@EnableRedisHttpSession
//@EnableSwagger2
public class LcodeApplication {
diff --git a/mdp-lcode-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java b/mdp-lcode-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java
index 7f330d3..61633e3 100644
--- a/mdp-lcode-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java
+++ b/mdp-lcode-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java
@@ -33,6 +33,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
http.authorizeRequests().antMatchers("/actuator/**","/**/safe/app/auth**",
"/**/sys/userTpaInvite/checkInviteId",
"/**/sys/user/addUserNoAuth",
+ "/**/login/token",
"/**/sys/user/noauth/detail",
"/**/sys/userFans/fansCpd",
"/**/sys/userSvr/list",
@@ -60,6 +61,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
"/").permitAll().anyRequest().authenticated();
http.oauth2Client().and().logout().disable();
http.oauth2Login();
+ http.formLogin().disable();
http.oauth2ResourceServer().jwt().decoder(jwtDecoder).jwtAuthenticationConverter(jwtConverter);
http.csrf().disable();
}
diff --git a/mdp-lcode-bootstrap/src/main/resources/application-prod.yml b/mdp-lcode-bootstrap/src/main/resources/application-prod.yml
index 69b5839..80696cd 100644
--- a/mdp-lcode-bootstrap/src/main/resources/application-prod.yml
+++ b/mdp-lcode-bootstrap/src/main/resources/application-prod.yml
@@ -29,7 +29,7 @@ management:
spring:
cloud:
consul:
- host: 134.175.57.249
+ host: 127.0.0.1
port: 8500
inetutils:
preferredNetworks[0]: ^10\.
@@ -273,14 +273,14 @@ logging:
# mdp平台授权验证服务器访问地址 cloud环境下换成 http://gate,本地调试如果不起验证服务器,可改为 https://www.qingqinkj.com/api/m1/oauth2/oauth2
# 客户端必须在数据库表adm.oauth_client_details中配置,否则无法访问
mdp:
- api-gate: http://gate
+ api-gate: http://127.0.0.1:7014
platform-branch-id: platform-branch-001
#配置图片文件上传下载的相关参数
arc:
- image-upload-root-path: /home/mall/m1/arcfile/images
- image-download-base-uri: https://www.maimengcloud.com/api/m1/arc/
- file-upload-root-path: /home/mall/m1/arcfile/files
- file-download-base-uri: https://www.maimengcloud.com/api/m1/arc/
+ image-upload-root-path: D:/arcfile/images
+ image-download-base-uri: https://127.0.1:7014/
+ file-upload-root-path: D:/arcfile/files
+ file-download-base-uri: https://127.0.1:7014/
# 站点语言类型cn\en等
site-type: cn
jwt:
diff --git a/mdp-lcode-cloud-bootstrap/README.md b/mdp-lcode-cloud-bootstrap/README.md
new file mode 100644
index 0000000..e69de29
diff --git a/mdp-lcode-cloud-bootstrap/pom.xml b/mdp-lcode-cloud-bootstrap/pom.xml
new file mode 100644
index 0000000..6802912
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/pom.xml
@@ -0,0 +1,58 @@
+
+
+ 4.0.0
+ mdp-lcode-cloud-bootstrap
+ jar
+ mdp-lcode-cloud-bootstrap 低代码启动器
+
+ com.mdp
+ mdp-lcode-backend
+ 2.0.0-RELEASE
+
+
+
+
+
+
+ com.mdp
+ mdp-cloud-starter
+ ${mdp.version}
+
+
+ com.mdp
+ mdp-oauth2-client-cloud
+ ${mdp.version}
+
+
+ com.mdp
+ mdp-lcode
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-deploy-plugin
+
+ true
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
+
+
+
+ 低代码启动器
+
\ No newline at end of file
diff --git a/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/LcodeApplication.java b/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/LcodeApplication.java
new file mode 100644
index 0000000..7fcc45b
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/LcodeApplication.java
@@ -0,0 +1,19 @@
+package com.mdp;
+
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
+
+@SpringBootApplication
+//@SpringCloudApplication
+@EnableRedisHttpSession
+//@EnableSwagger2
+public class LcodeApplication {
+
+
+ public static void main(String[] args) {
+ SpringApplication.run(LcodeApplication.class,args);
+
+ }
+}
diff --git a/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java b/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java
new file mode 100644
index 0000000..61633e3
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/java/com/mdp/WebSecurityConfig.java
@@ -0,0 +1,68 @@
+package com.mdp;
+
+
+import com.mdp.safe.client.jwt.JwtAuthenticationConverter;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.config.annotation.web.builders.WebSecurity;
+import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
+import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+import org.springframework.security.oauth2.jwt.JwtDecoder;
+
+@EnableWebSecurity
+public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
+
+ @Autowired
+ JwtAuthenticationConverter jwtConverter;
+
+ @Autowired
+ JwtDecoder jwtDecoder;
+
+ @Override
+ public void configure(WebSecurity web) throws Exception {
+ web.ignoring().antMatchers("/webjars/**");
+ }
+
+ /**
+ * 允许匿名访问所有接口 主要是 oauth 接口
+ * @param http
+ * @throws Exception
+ */
+ @Override
+ protected void configure(HttpSecurity http) throws Exception {
+ http.authorizeRequests().antMatchers("/actuator/**","/**/safe/app/auth**",
+ "/**/sys/userTpaInvite/checkInviteId",
+ "/**/sys/user/addUserNoAuth",
+ "/**/login/token",
+ "/**/sys/user/noauth/detail",
+ "/**/sys/userFans/fansCpd",
+ "/**/sys/userSvr/list",
+ "/**/sys/user/crowd/list",
+ "/**/sys/branch/add",
+ "/**/sys/branch/list",
+ "/**/sys/branch/listBranchNoAuth",
+ "/**/sys/branch/addBranchNoAuth",
+ "/**/sys/dept/listDeptAndChidlDeptByBranchIdNoAuth",
+ "/**/sys/dept/addDeptNoAuth",
+ "/**/sys/userDept/batchEditNoauth",
+ "/**/list/byItemCode",
+ "/**/list/byItemIds",
+ "/**/sys/userTpa/list",
+ "/app/appTpAuth/list",
+ "/**/menuModuleBranch/list",
+ "/**/item/dicts",
+ "/**/list/sysParam",
+ "/swagger-ui.html",
+ "/webjars/**",
+ "/swagger-ui/**",
+ "/swagger-resources/**",
+ "/v2/*",
+ "/csrf",
+ "/").permitAll().anyRequest().authenticated();
+ http.oauth2Client().and().logout().disable();
+ http.oauth2Login();
+ http.formLogin().disable();
+ http.oauth2ResourceServer().jwt().decoder(jwtDecoder).jwtAuthenticationConverter(jwtConverter);
+ http.csrf().disable();
+ }
+}
\ No newline at end of file
diff --git a/mdp-lcode-cloud-bootstrap/src/main/resources/application-prod.yml b/mdp-lcode-cloud-bootstrap/src/main/resources/application-prod.yml
new file mode 100644
index 0000000..d97d95e
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/resources/application-prod.yml
@@ -0,0 +1,292 @@
+server:
+ port: 7014
+ servlet:
+ context-path:
+ session:
+ timeout: 43200
+ storeType: none
+ tomcat:
+ max-swallow-size: -1
+ util:
+ http:
+ parser:
+ HttpParser: requestTargetAllow=|{}[]
+ error:
+ include-exception: true
+ include-stacktrace: ALWAYS
+ include-message: ALWAYS
+ compression:
+ enabled: true
+ min-response-size: 1024
+ mime-types: application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/css,image/*
+
+management:
+ endpoints:
+ web:
+ exposure:
+ include: metrics,httptrace
+
+spring:
+ cloud:
+ consul:
+ host: 134.175.57.249
+ port: 8500
+ inetutils:
+ preferredNetworks[0]: ^10\.
+ preferredNetworks[1]: ^172\.
+ discovery:
+ prefer-ip-address: true
+ healthCheckInterval: 15s
+ servlet:
+ multipart:
+ max-file-size: 10MB
+ max-request-size: 10MB
+ # 安全模块
+ security:
+ oauth2:
+ resourceserver:
+ jwt:
+ jwk-set-uri: ${mdp.oauth2.server.uri}/oauth2/jwks
+ client:
+ # 下面配置 password 模式
+ registration:
+ password-client:
+ provider: def-oauth-server
+ client-id: ${spring.application.name}
+ client-secret: ${spring.application.name}-8888
+ authorization-grant-type: password
+ scope: all
+ # 下面配置 client_credentials 模式
+ def-client:
+ provider: def-oauth-server
+ client-id: ${spring.application.name}
+ client-secret: ${spring.application.name}-8888
+ authorization-grant-type: client_credentials
+ scope: all
+ # 下面配置authorization_code模式
+ code-client:
+ provider: def-oauth-server
+ client-id: ${spring.application.name}
+ client-secret: ${spring.application.name}-8888
+ authorization-grant-type: authorization_code
+ # 授权码模式下需要配置重定向地址
+ redirect-uri: ${messages.base-uri}/authorized
+ scope: all
+ provider:
+ def-oauth-server:
+ # 授权码方式获取code
+ authorization-uri: ${mdp.oauth2.server.uri}/oauth2/authorize
+ # 获取token接口
+ token-uri: ${mdp.oauth2.server.uri}/oauth2/token
+ mail:
+ host: smtp.mxhichina.com
+ port: 25
+ username: kf@qingqinkj.com
+ password: QqKj@169$458
+ default-encoding: UTF-8
+ properties:
+ mail:
+ smtp:
+ auth: true
+ starttls:
+ enable: true
+ required: true
+ socketFactoryClass: javax.net.ssl.SSLSocketFactory
+ debug: true
+ jackson:
+ mapper:
+ default-view-inclusion: false
+ date-format: yyyy-MM-dd HH:mm:ss
+ time-zone: GMT+8
+ serialization:
+ indent_output: true
+ fail_on_empty_beans: false
+ deserialization:
+ fail_on_unknown_properties: false
+ parser:
+ allow_unquoted_control_chars: true
+ allow_single_quotes: true
+
+ mvc:
+ date-format: yyyy-MM-dd HH:mm:ss
+ ## quartz定时任务,采用数据库方式
+ quartz:
+ job-store-type: jdbc
+ initialize-schema: embedded
+ #定时任务启动开关,true-开 false-关
+ auto-startup: false
+ #启动时更新己存在的Job
+ overwrite-existing-jobs: false
+ properties:
+ org:
+ quartz:
+ scheduler:
+ instanceName: MyScheduler
+ instanceId: AUTO
+ jobStore:
+ class: org.quartz.impl.jdbcjobstore.JobStoreTX
+ driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
+ tablePrefix: QRTZ_
+ isClustered: true
+ misfireThreshold: 60000
+ clusterCheckinInterval: 10000
+ threadPool:
+ class: org.quartz.simpl.SimpleThreadPool
+ threadCount: 10
+ threadPriority: 5
+ threadsInheritContextClassLoaderOfInitializingThread: true
+ jpa:
+ open-in-view: false
+ activiti:
+ check-process-definitions: false
+ #启用作业执行器
+ async-executor-activate: false
+ #启用异步执行器
+ job-executor-activate: false
+ aop:
+ proxy-target-class: true
+ #配置freemarker
+ freemarker:
+ # 设置模板后缀名
+ suffix: .ftl
+ # 设置文档类型
+ content-type: text/html
+ # 设置页面编码格式
+ charset: UTF-8
+ # 设置页面缓存
+ cache: false
+ prefer-file-system-access: false
+ # 设置ftl文件路径
+ template-loader-path:
+ - classpath:/templates
+ resource:
+ static-locations: classpath:/static/,classpath:/public/
+ autoconfigure:
+ exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
+ datasource:
+ primary: master
+ strict: false,
+ druid:
+ stat-view-servlet:
+ enabled: true
+ loginUsername: root
+ loginPassword: 123456
+ allow:
+ web-stat-filter:
+ enabled: true
+ dynamic:
+ druid: # 全局druid参数,绝大部分值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
+ # 连接池的配置信息
+ # 初始化大小,最小,最大
+ initial-size: 5
+ min-idle: 5
+ maxActive: 20
+ # 配置获取连接等待超时的时间
+ maxWait: 60000
+ # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+ timeBetweenEvictionRunsMillis: 60000
+ # 配置一个连接在池中最小生存的时间,单位是毫秒
+ minEvictableIdleTimeMillis: 300000
+ validationQuery: SELECT 1
+ testWhileIdle: true
+ testOnBorrow: false
+ testOnReturn: false
+ # 打开PSCache,并且指定每个连接上PSCache的大小
+ poolPreparedStatements: true
+ maxPoolPreparedStatementPerConnectionSize: 20
+ # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
+ filters: stat,wall,slf4j
+ # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
+ connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+ datasource:
+ master:
+ # url: jdbc:mysql://124.223.85.6:31605/erp?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+ #username: zchcgl
+ #password: zchcgl123!@#
+ #driver-class-name: com.mysql.cj.jdbc.Driver
+
+ url: jdbc:mysql://123.207.117.5:3306/adm?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=CTT
+ username: root
+ password: 1qaz@WSX
+ driver-class-name: com.mysql.cj.jdbc.Driver
+
+
+ # 多数据源配置
+ #multi-datasource1:
+ #url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
+ #username: root
+ #password: root
+ #driver-class-name: com.mysql.cj.jdbc.Driver
+ mem-ds:
+ url: jdbc:mysql://123.207.117.5:3306/adm?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=CTT
+ username: root
+ password: 1qaz@WSX
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ mall-ds:
+ url: jdbc:mysql://123.207.117.5:3306/adm?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=CTT
+ username: root
+ password: 1qaz@WSX
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ arc-ds:
+ url: jdbc:mysql://123.207.117.5:3306/arc?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=CTT
+ username: root
+ password: 1qaz@WSX
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ #redis 配置
+ redis:
+ database: 0
+ host: 134.175.57.249
+ timeout: 300s
+ lettuce:
+ pool:
+ max-active: 8 #最大连接数据库连接数,设 -1 为没有限制
+ max-idle: 20 #最大等待连接中的数量,设 0 为没有限制
+ max-wait: 10000 #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
+ min-idle: 8 #最小等待连接中的数量,设 0 为没有限制
+ shutdown-timeout: 100ms
+ password: QqKj*123
+ port: 6379
+#mybatis plus 设置
+mybatis-plus:
+ mapper-locations: classpath*:/**/**Mapper.xml
+ global-config:
+ # 关闭MP3.0自带的banner
+ banner: false
+ db-config:
+ #主键类型 0:"数据库ID自增",1:"该类型为未设置主键类型", 2:"用户输入ID",3:"全局唯一ID (数字类型唯一ID)", 4:"全局唯一ID UUID",5:"字符串全局唯一ID (idWorker 的字符串表示)";
+ id-type: ASSIGN_ID
+ # 默认数据库表下划线命名
+ table-underline: true
+ logic-delete-value: 1
+ logic-not-delete-value: 0
+ configuration:
+ # 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+ # 返回类型为Map,显示null对应的字段
+ call-setters-on-nulls: true
+
+#Mybatis输出sql日志
+logging:
+ level:
+ org.jeecg.modules.system.mapper : info
+
+# mdp平台授权验证服务器访问地址 cloud环境下换成 http://gate,本地调试如果不起验证服务器,可改为 https://www.qingqinkj.com/api/m1/oauth2/oauth2
+# 客户端必须在数据库表adm.oauth_client_details中配置,否则无法访问
+mdp:
+ api-gate: http://gate
+ platform-branch-id: platform-branch-001
+ #配置图片文件上传下载的相关参数
+ arc:
+ image-upload-root-path: /home/mall/m1/arcfile/images
+ image-download-base-uri: https://www.maimengcloud.com/api/m1/arc/
+ file-upload-root-path: /home/mall/m1/arcfile/files
+ file-download-base-uri: https://www.maimengcloud.com/api/m1/arc/
+ # 站点语言类型cn\en等
+ site-type: cn
+ jwt:
+ # 如果不对接oauth2授权中心,jwt将有本地系统自行分发自行验证 设为false
+ connect-oauth2-server: true
+ oauth2:
+ server:
+ uri: http://oauth2server
+
diff --git a/mdp-lcode-cloud-bootstrap/src/main/resources/application.yml b/mdp-lcode-cloud-bootstrap/src/main/resources/application.yml
new file mode 100644
index 0000000..c3d71f3
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/resources/application.yml
@@ -0,0 +1,5 @@
+spring:
+ application:
+ name: lcode
+ profiles:
+ active: prod
\ No newline at end of file
diff --git a/mdp-lcode-cloud-bootstrap/src/main/resources/locale/message_zh.properties b/mdp-lcode-cloud-bootstrap/src/main/resources/locale/message_zh.properties
new file mode 100644
index 0000000..da88fd9
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/resources/locale/message_zh.properties
@@ -0,0 +1,8 @@
+# 消息转换器,格式为:
+# 技术错误码=业务错误码+消息
+# 支持动态数据转换.如下面重试次数是通过程序传入的.
+# errcode01=[0760881]您输入的密码不正确,请重新输入,您还可以再试{0}次.
+#
+#
+#tips001=[0760000]网络不给力,请稍后再试.
+t123456162Service27=[0760001]测试错误码转义
diff --git a/mdp-lcode-cloud-bootstrap/src/main/resources/logback-spring.xml b/mdp-lcode-cloud-bootstrap/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..7b32990
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/resources/logback-spring.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+ [%X{gloNo}][%d{yyyy-MM-dd HH:mm:ss}][%-5level][%logger][%X{reqNo}] -%msg%n
+
+
+
+
+
+ logs/mdp_lcode.log
+
+ logs/mdp_lcode.%d{yyyy-MM-dd}.%i.log
+
+ 20
+ 100MB
+
+
+ [%X{gloNo}][%d{yyyy-MM-dd HH:mm:ss}][%-5level][%logger][%X{reqNo}] -%msg%n
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mdp-lcode-cloud-bootstrap/src/main/resources/stencilset_bpmn.json b/mdp-lcode-cloud-bootstrap/src/main/resources/stencilset_bpmn.json
new file mode 100644
index 0000000..485f59e
--- /dev/null
+++ b/mdp-lcode-cloud-bootstrap/src/main/resources/stencilset_bpmn.json
@@ -0,0 +1,1329 @@
+{
+ "title" : "流程编辑器",
+ "namespace" : "http://b3mn.org/stencilset/bpmn2.0#",
+ "description" : "BPMN流程编辑器",
+ "propertyPackages" : [ {
+ "name" : "process_idpackage",
+ "properties" : [ {
+ "id" : "process_id",
+ "type" : "String",
+ "title" : "流程唯一标识",
+ "value" : "未定义",
+ "description" : "流程定义唯一的标识",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "overrideidpackage",
+ "properties" : [ {
+ "id" : "overrideid",
+ "type" : "String",
+ "title" : "ID",
+ "value" : "",
+ "description" : "元素的唯一标识",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "namepackage",
+ "properties" : [ {
+ "id" : "name",
+ "type" : "String",
+ "title" : "名称",
+ "value" : "",
+ "description" : "BPMN元素的描述名称.",
+ "popular" : true,
+ "refToView" : "text_name"
+ } ]
+ }, {
+ "name" : "documentationpackage",
+ "properties" : [ {
+ "id" : "documentation",
+ "type" : "Text",
+ "title" : "文档",
+ "value" : "",
+ "description" : "BPMN元素的描述名称.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "process_authorpackage",
+ "properties" : [ {
+ "id" : "process_author",
+ "type" : "String",
+ "title" : "流程作者",
+ "value" : "",
+ "description" : "流程定义的作者.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "process_versionpackage",
+ "properties" : [ {
+ "id" : "process_version",
+ "type" : "String",
+ "title" : "流程版本字符串(仅限于文档)",
+ "value" : "",
+ "description" : "文档的目的为版本标识",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "process_namespacepackage",
+ "properties" : [ {
+ "id" : "process_namespace",
+ "type" : "String",
+ "title" : "流程分类",
+ "value" : "",
+ "description" : "流程分类,如请假,项目,工资,招投标,招聘等.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "asynchronousdefinitionpackage",
+ "properties" : [ {
+ "id" : "asynchronousdefinition",
+ "type" : "Boolean",
+ "title" : "异步",
+ "value" : "false",
+ "description" : "定义异步的活动.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "exclusivedefinitionpackage",
+ "properties" : [ {
+ "id" : "exclusivedefinition",
+ "type" : "Boolean",
+ "title" : "排它性",
+ "value" : "false",
+ "description" : "定义排它的活动.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "executionlistenerspackage",
+ "properties" : [ {
+ "id" : "executionlisteners",
+ "type" : "multiplecomplex",
+ "title" : "执行监听器",
+ "value" : "",
+ "description" : "活动、流程、流程跳转,开始、结事事件的监听器,可以通过监听器动态改变业务数据等",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "tasklistenerspackage",
+ "properties" : [ {
+ "id" : "tasklisteners",
+ "type" : "multiplecomplex",
+ "title" : "任务监听器",
+ "value" : "",
+ "description" : "人工任务的监听器,可以通过设置监听器,动态改变执行人等,如'${taskUserService}'为从动态用户库中取出该节点对应的执行人进行执行任务",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "eventlistenerspackage",
+ "properties" : [ {
+ "id" : "eventlisteners",
+ "type" : "multiplecomplex",
+ "title" : "事件监听器",
+ "value" : "",
+ "description" : "监听Activiti引擎的任何发生的事件. 同样可能是任何抛出的信号、信息、出错的事件。",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "usertaskassignmentpackage",
+ "properties" : [ {
+ "id" : "usertaskassignment",
+ "type" : "Complex",
+ "title" : "任务派遣",
+ "value" : "",
+ "description" : "人工任务的派遣的定义,也可以通过类似 '${assignee}'或者'${initiator}'等表达式指向流程变量,多实例中的变量等",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "formpropertiespackage",
+ "properties" : [ {
+ "id" : "formproperties",
+ "type" : "Complex",
+ "title" : "表单属性",
+ "value" : "",
+ "description" : "定义带有属性列表的表单",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "formkeydefinitionpackage",
+ "properties" : [ {
+ "id" : "formkeydefinition",
+ "type" : "String",
+ "title" : "表单的标识Key",
+ "value" : "",
+ "description" : "表单的Key(指向定义的Form).",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "duedatedefinitionpackage",
+ "properties" : [ {
+ "id" : "duedatedefinition",
+ "type" : "String",
+ "title" : "到期的日期",
+ "value" : "",
+ "description" : "人工任务的到期日期",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "prioritydefinitionpackage",
+ "properties" : [ {
+ "id" : "prioritydefinition",
+ "type" : "String",
+ "title" : "优先级",
+ "value" : "",
+ "description" : "人工任务的优先级.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "duedatedefinitionpackage",
+ "properties" : [ {
+ "id" : "duedatedefinition",
+ "type" : "String",
+ "title" : "到期的日期",
+ "value" : "",
+ "description" : "人工任务的到期日期.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "servicetaskclasspackage",
+ "properties" : [ {
+ "id" : "servicetaskclass",
+ "type" : "String",
+ "title" : "类名",
+ "value" : "",
+ "description" : "实现服务任务逻辑的类.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "servicetaskexpressionpackage",
+ "properties" : [ {
+ "id" : "servicetaskexpression",
+ "type" : "String",
+ "title" : "表达式",
+ "value" : "",
+ "description" : "定义服务任务逻辑的表达式.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "servicetaskdelegateexpressionpackage",
+ "properties" : [ {
+ "id" : "servicetaskdelegateexpression",
+ "type" : "String",
+ "title" : "代理的表达式",
+ "value" : "",
+ "description" : "通过代理表达式定义任务服务逻辑",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "servicetaskfieldspackage",
+ "properties" : [ {
+ "id" : "servicetaskfields",
+ "type" : "Complex",
+ "title" : "类的字段",
+ "value" : "",
+ "description" : "字段扩展",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "servicetaskresultvariablepackage",
+ "properties" : [ {
+ "id" : "servicetaskresultvariable",
+ "type" : "String",
+ "title" : "变量名结果",
+ "value" : "",
+ "description" : "流程变量存储服务任务的执行结果.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "scriptformatpackage",
+ "properties" : [ {
+ "id" : "scriptformat",
+ "type" : "String",
+ "title" : "脚本格式化",
+ "value" : "",
+ "description" : "脚本任务的脚本格式化.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "scripttextpackage",
+ "properties" : [ {
+ "id" : "scripttext",
+ "type" : "Text",
+ "title" : "脚本",
+ "value" : "",
+ "description" : "脚本任务的脚本内容.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "ruletask_rulespackage",
+ "properties" : [ {
+ "id" : "ruletask_rules",
+ "type" : "String",
+ "title" : "规则",
+ "value" : "",
+ "description" : "规则任务的规则.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "ruletask_variables_inputpackage",
+ "properties" : [ {
+ "id" : "ruletask_variables_input",
+ "type" : "String",
+ "title" : "输入变量",
+ "value" : "",
+ "description" : "规则任务的输入变量.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "ruletask_excludepackage",
+ "properties" : [ {
+ "id" : "ruletask_exclude",
+ "type" : "Boolean",
+ "title" : "排除",
+ "value" : "false",
+ "description" : "使用作为排它性的规则属性",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "ruletask_resultpackage",
+ "properties" : [ {
+ "id" : "ruletask_result",
+ "type" : "String",
+ "title" : "结果变量",
+ "value" : "",
+ "description" : "规则任务的结果变量",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtasktopackage",
+ "properties" : [ {
+ "id" : "mailtaskto",
+ "type" : "Text",
+ "title" : "发往",
+ "value" : "",
+ "description" : "接收者,格式为邮件。多个接收者请用逗号分割的列表来定义 ",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtaskfrompackage",
+ "properties" : [ {
+ "id" : "mailtaskfrom",
+ "type" : "Text",
+ "title" : "来自",
+ "value" : "",
+ "description" : "发送者的邮箱.若不提供,默认将使用配置中的来源地址.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtasksubjectpackage",
+ "properties" : [ {
+ "id" : "mailtasksubject",
+ "type" : "Text",
+ "title" : "标题",
+ "value" : "",
+ "description" : "Email中的标题.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtaskccpackage",
+ "properties" : [ {
+ "id" : "mailtaskcc",
+ "type" : "Text",
+ "title" : "抄送",
+ "value" : "",
+ "description" : "抄送的Email地址,多个接收者请用逗号分隔开。",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtaskbccpackage",
+ "properties" : [ {
+ "id" : "mailtaskbcc",
+ "type" : "Text",
+ "title" : "暗抄送",
+ "value" : "",
+ "description" : "暗抄送的Email地址. 多个接收者请用逗号分隔开",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtasktextpackage",
+ "properties" : [ {
+ "id" : "mailtasktext",
+ "type" : "Text",
+ "title" : "内容",
+ "value" : "",
+ "description" : "Email中的内容, 案例一需要发送纯文件的邮件. 可使用Html格式的邮件进行发送,若邮件的接收的客户端不支持这种格式,客户端可转为纯文本的邮件",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtaskhtmlpackage",
+ "properties" : [ {
+ "id" : "mailtaskhtml",
+ "type" : "Text",
+ "title" : "Html",
+ "value" : "",
+ "description" : "HTML中的一片段作为邮件的内容.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "mailtaskcharsetpackage",
+ "properties" : [ {
+ "id" : "mailtaskcharset",
+ "type" : "String",
+ "title" : "字符类型",
+ "value" : "",
+ "description" : "对于很多非英语语言来说,允许更改邮件的编码设置是必要的 ",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "callactivitycalledelementpackage",
+ "properties" : [ {
+ "id" : "callactivitycalledelement",
+ "type" : "String",
+ "title" : "调用元素",
+ "value" : "",
+ "description" : "流程引用.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "callactivityinparameterspackage",
+ "properties" : [ {
+ "id" : "callactivityinparameters",
+ "type" : "Complex",
+ "title" : "输入参数",
+ "value" : "",
+ "description" : "定义输入参数",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "callactivityoutparameterspackage",
+ "properties" : [ {
+ "id" : "callactivityoutparameters",
+ "type" : "Complex",
+ "title" : "输出参数",
+ "value" : "",
+ "description" : "输出参数的定义",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "cameltaskcamelcontextpackage",
+ "properties" : [ {
+ "id" : "cameltaskcamelcontext",
+ "type" : "String",
+ "title" : "Camel 上下文",
+ "value" : "",
+ "description" : "可选的Camel 上下文定义,若为空,则使用系统缺省的.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "muletaskendpointurlpackage",
+ "properties" : [ {
+ "id" : "muletaskendpointurl",
+ "type" : "String",
+ "title" : "端点URL",
+ "value" : "",
+ "description" : "发送消息到Mule的必须的端点URL",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "muletasklanguagepackage",
+ "properties" : [ {
+ "id" : "muletasklanguage",
+ "type" : "String",
+ "title" : "语言",
+ "value" : "",
+ "description" : "必须的语言定义来解析装载的表达式,如JUEL.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "muletaskpayloadexpressionpackage",
+ "properties" : [ {
+ "id" : "muletaskpayloadexpression",
+ "type" : "String",
+ "title" : "装载的表达式",
+ "value" : "",
+ "description" : "发送至Mule的必须执行的消息定义",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "muletaskresultvariablepackage",
+ "properties" : [ {
+ "id" : "muletaskresultvariable",
+ "type" : "String",
+ "title" : "结果的变量",
+ "value" : "",
+ "description" : "可选的装载返回的结果的变量",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "conditionsequenceflowpackage",
+ "properties" : [ {
+ "id" : "conditionsequenceflow",
+ "type" : "Complex",
+ "title" : "跳转条件",
+ "value" : "",
+ "description" : "流程跳线的条件定义,可以输入表达式 如同意 ${agree=='1'},不同意 ${agree=='0'},流程发起人 ${userid=='xxx'},发起部门${deptid==''} ,主办${sponsors}等表达式。其中agree/userid/deptid为内置参数,一定存在的",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "defaultflowpackage",
+ "properties" : [ {
+ "id" : "defaultflow",
+ "type" : "Boolean",
+ "title" : "默认跳线",
+ "value" : "false",
+ "description" : "定义默认为顺序跳转",
+ "popular" : true,
+ "refToView" : "default"
+ } ]
+ }, {
+ "name" : "conditionalflowpackage",
+ "properties" : [ {
+ "id" : "conditionalflow",
+ "type" : "Boolean",
+ "title" : "条件的跳线",
+ "value" : "false",
+ "description" : "定义条件的跳线",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "timercycledefinitionpackage",
+ "properties" : [ {
+ "id" : "timercycledefinition",
+ "type" : "String",
+ "title" : "时间周期 (e.g. R3/PT10H)",
+ "value" : "",
+ "description" : "定义ISO-8601时间周期.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "timerdatedefinitionpackage",
+ "properties" : [ {
+ "id" : "timerdatedefinition",
+ "type" : "String",
+ "title" : "时间周期(ISO-8601格式标准)",
+ "value" : "",
+ "description" : "定义(ISO-8601格式标准)的定时器.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "timerdurationdefinitionpackage",
+ "properties" : [ {
+ "id" : "timerdurationdefinition",
+ "type" : "String",
+ "title" : "持续的时间 (e.g. PT5M)",
+ "value" : "",
+ "description" : "定义(ISO-8601)持续的定时器",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "timerenddatedefinitionpackage",
+ "properties" : [ {
+ "id" : "timerenddatedefinition",
+ "type" : "String",
+ "title" : "结束的时间格式ISO-8601",
+ "value" : "",
+ "description" : "定义带(ISO-8601 duration)定时器.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "messagerefpackage",
+ "properties" : [ {
+ "id" : "messageref",
+ "type" : "String",
+ "title" : "消息引用",
+ "value" : "",
+ "description" : "Define the message name.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "signalrefpackage",
+ "properties" : [ {
+ "id" : "signalref",
+ "type" : "String",
+ "title" : "信号引用",
+ "value" : "",
+ "description" : "定义信号的名称.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "errorrefpackage",
+ "properties" : [ {
+ "id" : "errorref",
+ "type" : "String",
+ "title" : "错误引用",
+ "value" : "",
+ "description" : "定义错误.",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "cancelactivitypackage",
+ "properties" : [ {
+ "id" : "cancelactivity",
+ "type" : "Boolean",
+ "title" : "取消的活动",
+ "value" : "true",
+ "description" : "活动允许取消",
+ "popular" : true,
+ "refToView" : [ "frame", "frame2" ]
+ } ]
+ }, {
+ "name" : "initiatorpackage",
+ "properties" : [ {
+ "id" : "initiator",
+ "type" : "String",
+ "title" : "初始化器",
+ "value" : "",
+ "description" : "流程定义的初始初始化器",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "textpackage",
+ "properties" : [ {
+ "id" : "text",
+ "type" : "String",
+ "title" : "Text",
+ "value" : "",
+ "description" : "文本注释",
+ "popular" : true,
+ "refToView" : "text"
+ } ]
+ }, {
+ "name" : "multiinstance_typepackage",
+ "properties" : [ {
+ "id" : "multiinstance_type",
+ "type" : "kisbpm-multiinstance",
+ "title" : "多实例类型",
+ "value" : "None",
+ "description" : "通过不同的循环类型,重复的活动执行(并行、串行)可显示",
+ "popular" : true,
+ "refToView" : "multiinstance"
+ } ]
+ }, {
+ "name" : "multiinstance_cardinalitypackage",
+ "properties" : [ {
+ "id" : "multiinstance_cardinality",
+ "type" : "String",
+ "title" : "实例个数 (多实例)",
+ "value" : "",
+ "description" : "定义多实例的基数.指循环执行多少此该实例",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "multiinstance_collectionpackage",
+ "properties" : [ {
+ "id" : "multiinstance_collection",
+ "type" : "String",
+ "title" : "执行人集合(多实例)",
+ "value" : "",
+ "description" : "多实例下定义定义执行人集合.指放入流程变量中的集合元素,比如流程变量中自定义了多个人的列表组 assigneeList,这里可以填'assigneeList',代表任务最终将分配给该集合的每个人,也可以使用类似'${myService.resolveUsersForTask()}'的语法来获取用户列表",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "multiinstance_variablepackage",
+ "properties" : [ {
+ "id" : "multiinstance_variable",
+ "type" : "String",
+ "title" : "元素的变量(多实例)",
+ "value" : "",
+ "description" : "为多实例定义变量元素,代指assigneeList中的一个元素,一般使用'assignee'",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "multiinstance_conditionpackage",
+ "properties" : [ {
+ "id" : "multiinstance_condition",
+ "type" : "String",
+ "title" : "完成条件(多实例)",
+ "value" : "",
+ "description" : "定义多实例的完成条件.比如半数或者半数以上完成,就算全部完成,可以这样写'${nrOfCompletedInstances/nrOfInstances >= 0.5 }'",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "isforcompensationpackage",
+ "properties" : [ {
+ "id" : "isforcompensation",
+ "type" : "Boolean",
+ "title" : "作为修正",
+ "value" : "false",
+ "description" : "标识当前活动为修正执行活动。值补偿流程,比如客户订房流程中,发生了退房事件,可以添加一个服务节点,作为修正节点",
+ "popular" : true,
+ "refToView" : "compensation"
+ } ]
+ }, {
+ "name" : "sequencefloworderpackage",
+ "properties" : [ {
+ "id" : "sequencefloworder",
+ "type" : "Complex",
+ "title" : "流程顺序",
+ "value" : "",
+ "description" : "流程跳出线的顺序",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "signaldefinitionspackage",
+ "properties" : [ {
+ "id" : "signaldefinitions",
+ "type" : "multiplecomplex",
+ "title" : "信号定义",
+ "value" : "",
+ "description" : "信号定义",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "messagedefinitionspackage",
+ "properties" : [ {
+ "id" : "messagedefinitions",
+ "type" : "multiplecomplex",
+ "title" : "消息定义",
+ "value" : "",
+ "description" : "消息定义",
+ "popular" : true
+ } ]
+ }, {
+ "name" : "istransactionpackage",
+ "properties" : [ {
+ "id" : "istransaction",
+ "type" : "Boolean",
+ "title" : "作为子流程的事务",
+ "value" : "false",
+ "description" : "标识子流程作为事务类型",
+ "popular" : true,
+ "refToView" : "border"
+ } ]
+ } ],
+ "stencils" : [ {
+ "type" : "node",
+ "id" : "BPMNDiagram",
+ "title" : "BPMN流程图",
+ "description" : "BPMN2的流程图.",
+ "view" : "\n",
+ "icon" : "diagram.png",
+ "groups" : [ "Diagram" ],
+ "mayBeRoot" : true,
+ "hide" : true,
+ "propertyPackages" : [ "process_idpackage", "namepackage", "documentationpackage", "process_authorpackage", "process_versionpackage", "process_namespacepackage", "executionlistenerspackage", "eventlistenerspackage", "signaldefinitionspackage", "messagedefinitionspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ ]
+ }, {
+ "type" : "node",
+ "id" : "StartNoneEvent",
+ "title" : "开始事件",
+ "description" : "无特定触发器的开始事件",
+ "view" : "\n",
+ "icon" : "startevent/none.png",
+ "groups" : [ "开始事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "initiatorpackage", "formkeydefinitionpackage", "formpropertiespackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "Startevents_all", "StartEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "StartTimerEvent",
+ "title" : "开始事件(触发器)",
+ "description" : "带定时器触发的开始事件",
+ "view" : "\n",
+ "icon" : "startevent/timer.png",
+ "groups" : [ "开始事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "timercycledefinitionpackage", "timerdatedefinitionpackage", "timerdurationdefinitionpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "Startevents_all", "StartEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "StartSignalEvent",
+ "title" : "开始事件(信号)",
+ "description" : "通过信号触发开始事件",
+ "view" : "\n",
+ "icon" : "startevent/signal.png",
+ "groups" : [ "开始事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "signalrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "Startevents_all", "StartEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "StartMessageEvent",
+ "title" : "开始事件(消息)",
+ "description" : "通过消息触发开始事件",
+ "view" : "\n",
+ "icon" : "startevent/message.png",
+ "groups" : [ "开始事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "messagerefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "Startevents_all", "StartEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "StartErrorEvent",
+ "title" : "开始事件(错误)",
+ "description" : "用于捕获BPMN抛出的错误的开始事件",
+ "view" : "\n",
+ "icon" : "startevent/error.png",
+ "groups" : [ "开始事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "errorrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "Startevents_all", "StartEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "UserTask",
+ "title" : "人工任务",
+ "description" : "指派给特定人来执行的人工任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.user.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "usertaskassignmentpackage", "formkeydefinitionpackage", "duedatedefinitionpackage", "prioritydefinitionpackage", "formpropertiespackage", "tasklistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ServiceTask",
+ "title" : "服务任务",
+ "description" : "带有服务逻辑的自动任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.service.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "servicetaskclasspackage", "servicetaskexpressionpackage", "servicetaskdelegateexpressionpackage", "servicetaskfieldspackage", "servicetaskresultvariablepackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ScriptTask",
+ "title" : "脚本任务",
+ "description" : "带有脚本逻辑的自动任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.script.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "scriptformatpackage", "scripttextpackage", "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "BusinessRule",
+ "title" : "业务规则的任务",
+ "description" : "带有业务规则的自动任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.business.rule.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "ruletask_rulespackage", "ruletask_variables_inputpackage", "ruletask_excludepackage", "ruletask_resultpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ReceiveTask",
+ "title" : "接收任务",
+ "description" : "等待接收信号来触发的任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.receive.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ManualTask",
+ "title" : "手工任务",
+ "description" : "不带任何逻辑的自动任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.manual.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "MailTask",
+ "title" : "邮件任务",
+ "description" : "邮箱任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.send.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "mailtasktopackage", "mailtaskfrompackage", "mailtasksubjectpackage", "mailtaskccpackage", "mailtaskbccpackage", "mailtasktextpackage", "mailtaskhtmlpackage", "mailtaskcharsetpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "CamelTask",
+ "title" : "Camel任务",
+ "description" : "发送消息给Camel容器的任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.camel.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "cameltaskcamelcontextpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "MuleTask",
+ "title" : "Mule 任务",
+ "description" : "发送消息给Mule容器的任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.mule.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage", "muletaskendpointurlpackage", "muletasklanguagepackage", "muletaskpayloadexpressionpackage", "muletaskresultvariablepackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "SendTask",
+ "title" : "发送任务",
+ "description" : "发送消息的任务",
+ "view" : "\n",
+ "icon" : "activity/list/type.send.png",
+ "groups" : [ "活动" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "ActivitiesMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "SubProcess",
+ "title" : "子流程",
+ "description" : "子流程范围的流程",
+ "view" : "\n",
+ "icon" : "activity/expanded.subprocess.png",
+ "groups" : [ "结构模块" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "istransactionpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EventSubProcess",
+ "title" : "子流程的事件",
+ "description" : "子流程范围的事件",
+ "view" : "\n",
+ "icon" : "activity/event.subprocess.png",
+ "groups" : [ "结构模块" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "CallActivity",
+ "title" : "调用活动",
+ "description" : "调用的活动",
+ "view" : "\n",
+ "icon" : "activity/task.png",
+ "groups" : [ "结构模块" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "executionlistenerspackage", "callactivitycalledelementpackage", "callactivityinparameterspackage", "callactivityoutparameterspackage", "multiinstance_typepackage", "multiinstance_cardinalitypackage", "multiinstance_collectionpackage", "multiinstance_variablepackage", "multiinstance_conditionpackage", "isforcompensationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "Activity", "sequence_start", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ExclusiveGateway",
+ "title" : "单一网关",
+ "description" : "单一选择的网关",
+ "view" : "\n\n",
+ "icon" : "gateway/exclusive.databased.png",
+ "groups" : [ "网关" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "sequencefloworderpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "GatewaysMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ParallelGateway",
+ "title" : "并行网关",
+ "description" : "并行执行的网关",
+ "view" : "\n\n",
+ "icon" : "gateway/parallel.png",
+ "groups" : [ "网关" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "sequencefloworderpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "GatewaysMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "InclusiveGateway",
+ "title" : "包含网关",
+ "description" : "满足条件的包含性的网关",
+ "view" : "\n\n",
+ "icon" : "gateway/inclusive.png",
+ "groups" : [ "网关" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "sequencefloworderpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "GatewaysMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EventGateway",
+ "title" : "事件网关",
+ "description" : "事件网关",
+ "view" : "\n\n",
+ "icon" : "gateway/eventbased.png",
+ "groups" : [ "网关" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "asynchronousdefinitionpackage", "exclusivedefinitionpackage", "sequencefloworderpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "GatewaysMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundaryErrorEvent",
+ "title" : "边界出错事件",
+ "description" : "捕获BPMN的错误的边界事件",
+ "view" : "\n",
+ "icon" : "catching/error.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "errorrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundaryTimerEvent",
+ "title" : "边界的定时事件",
+ "description" : "A boundary event with a timer trigger",
+ "view" : "\n",
+ "icon" : "catching/timer.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "timercycledefinitionpackage", "timerdatedefinitionpackage", "timerdurationdefinitionpackage", "timerenddatedefinitionpackage", "cancelactivitypackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundarySignalEvent",
+ "title" : "边界信号事件",
+ "description" : "带有事件触发器的边界事件",
+ "view" : "\n",
+ "icon" : "catching/signal.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "signalrefpackage", "cancelactivitypackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundaryMessageEvent",
+ "title" : "边界消息事件",
+ "description" : "带有消息触发器的边界事件",
+ "view" : "\n",
+ "icon" : "catching/message.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "messagerefpackage", "cancelactivitypackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundaryCancelEvent",
+ "title" : "边界取消事件",
+ "description" : "边界取消事件",
+ "view" : "\n",
+ "icon" : "catching/cancel.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary" ]
+ }, {
+ "type" : "node",
+ "id" : "BoundaryCompensationEvent",
+ "title" : "边界修正事件",
+ "description" : "边界修正事件",
+ "view" : "\n",
+ "icon" : "catching/compensation.png",
+ "groups" : [ "边界事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "BoundaryEventsMorph", "IntermediateEventOnActivityBoundary", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "CatchTimerEvent",
+ "title" : "捕捉中间定时器的事件",
+ "description" : "带有捕捉定时器触发的事件",
+ "view" : "\n",
+ "icon" : "catching/timer.png",
+ "groups" : [ "中间捕获事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "timercycledefinitionpackage", "timerdatedefinitionpackage", "timerdurationdefinitionpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "sequence_end", "CatchEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "CatchSignalEvent",
+ "title" : "中间信号捕获事件",
+ "description" : "信号触发的中间捕获事件",
+ "view" : "\n",
+ "icon" : "catching/signal.png",
+ "groups" : [ "中间捕获事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "signalrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "sequence_end", "CatchEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "CatchMessageEvent",
+ "title" : "中间消息捕获事件",
+ "description" : "消息触发的中间捕获事件",
+ "view" : "\n",
+ "icon" : "catching/message.png",
+ "groups" : [ "中间捕获事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "messagerefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "sequence_start", "sequence_end", "CatchEventsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ThrowNoneEvent",
+ "title" : "无触发的中间事件",
+ "description" : "无特定触发器的中间事件",
+ "view" : "\n",
+ "icon" : "throwing/none.png",
+ "groups" : [ "中间捕获事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ThrowEventsMorph", "sequence_start", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "ThrowSignalEvent",
+ "title" : "抛出信号的中间事件",
+ "description" : "通过信号触发器的中间事件",
+ "view" : "\n",
+ "icon" : "throwing/signal.png",
+ "groups" : [ "中间捕获事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "signalrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ThrowEventsMorph", "sequence_start", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EndNoneEvent",
+ "title" : "结束事件",
+ "description" : "无特定触发器的结束事件",
+ "view" : "\n",
+ "icon" : "endevent/none.png",
+ "groups" : [ "结束事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "EndEventsMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EndErrorEvent",
+ "title" : "结束事件(出错)",
+ "description" : "抛出错误的结束事件",
+ "view" : "\n",
+ "icon" : "endevent/error.png",
+ "groups" : [ "结束事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage", "errorrefpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "EndEventsMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EndCancelEvent",
+ "title" : "结束事件(取消)",
+ "description" : "取消的结束事件",
+ "view" : "\n",
+ "icon" : "endevent/cancel.png",
+ "groups" : [ "结束事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "EndEventsMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "EndTerminateEvent",
+ "title" : "结束事件(终止)",
+ "description" : "终止类型的结束事件",
+ "view" : "\n",
+ "icon" : "endevent/terminate.png",
+ "groups" : [ "结束事件" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "executionlistenerspackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "EndEventsMorph", "sequence_end", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "Pool",
+ "title" : "泳道",
+ "description" : "用来结构化流程定义的泳道",
+ "view" : "\n",
+ "icon" : "swimlane/pool.png",
+ "groups" : [ "泳道" ],
+ "layout" : [ {
+ "type" : "layout.bpmn2_0.pool"
+ } ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "process_idpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "canContainArtifacts", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "Lane",
+ "title" : "区域",
+ "description" : "结构化流程定义的区域",
+ "view" : "\n",
+ "icon" : "swimlane/lane.png",
+ "groups" : [ "泳道" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "PoolChild", "canContainArtifacts", "all" ]
+ }, {
+ "type" : "edge",
+ "id" : "SequenceFlow",
+ "title" : "顺序跳转线",
+ "description" : "顺序跳转线定义了不同活动节点执行的顺序",
+ "view" : "\r\n",
+ "icon" : "connector/sequenceflow.png",
+ "groups" : [ "连接对象" ],
+ "layout" : [ {
+ "type" : "layout.bpmn2_0.sequenceflow"
+ } ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "conditionsequenceflowpackage", "executionlistenerspackage", "defaultflowpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ConnectingObjectsMorph", "all" ]
+ }, {
+ "type" : "edge",
+ "id" : "MessageFlow",
+ "title" : "消息跳转线",
+ "description" : "用来连接不同泳道中的元素的消息跳转",
+ "view" : "\r\n",
+ "icon" : "connector/messageflow.png",
+ "groups" : [ "连接对象" ],
+ "layout" : [ {
+ "type" : "layout.bpmn2_0.sequenceflow"
+ } ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ConnectingObjectsMorph", "all" ]
+ }, {
+ "type" : "edge",
+ "id" : "Association",
+ "title" : "关联说明",
+ "description" : "为元素关联文本说明",
+ "view" : "\r\n",
+ "icon" : "connector/association.undirected.png",
+ "groups" : [ "连接对象" ],
+ "layout" : [ {
+ "type" : "layout.bpmn2_0.sequenceflow"
+ } ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ConnectingObjectsMorph", "all" ]
+ }, {
+ "type" : "edge",
+ "id" : "DataAssociation",
+ "title" : "数据关联说明",
+ "description" : "为活动节点关联数据元素",
+ "view" : "\r\n",
+ "icon" : "connector/association.unidirectional.png",
+ "groups" : [ "连接对象" ],
+ "layout" : [ {
+ "type" : "layout.bpmn2_0.sequenceflow"
+ } ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "ConnectingObjectsMorph", "all" ]
+ }, {
+ "type" : "node",
+ "id" : "TextAnnotation",
+ "title" : "文本关联",
+ "description" : "关联一组元素进行文本描述",
+ "view" : "\n",
+ "icon" : "artifact/text.annotation.png",
+ "groups" : [ "文档注释" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage", "textpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "all" ]
+ }, {
+ "type" : "node",
+ "id" : "DataStore",
+ "title" : "数据存储",
+ "description" : "引用一数据存储",
+ "view" : "\r\n\r\n",
+ "icon" : "dataobject/data.store.png",
+ "groups" : [ "文档注释" ],
+ "propertyPackages" : [ "overrideidpackage", "namepackage", "documentationpackage" ],
+ "hiddenPropertyPackages" : [ ],
+ "roles" : [ "all" ]
+ } ],
+ "rules" : {
+ "cardinalityRules" : [ {
+ "role" : "Startevents_all",
+ "incomingEdges" : [ {
+ "role" : "SequenceFlow",
+ "maximum" : 0
+ } ]
+ }, {
+ "role" : "Endevents_all",
+ "outgoingEdges" : [ {
+ "role" : "SequenceFlow",
+ "maximum" : 0
+ } ]
+ } ],
+ "connectionRules" : [ {
+ "role" : "SequenceFlow",
+ "connects" : [ {
+ "from" : "sequence_start",
+ "to" : [ "sequence_end" ]
+ } ]
+ }, {
+ "role" : "Association",
+ "connects" : [ {
+ "from" : "sequence_start",
+ "to" : [ "TextAnnotation" ]
+ }, {
+ "from" : "sequence_end",
+ "to" : [ "TextAnnotation" ]
+ }, {
+ "from" : "TextAnnotation",
+ "to" : [ "sequence_end" ]
+ }, {
+ "from" : "BoundaryCompensationEvent",
+ "to" : [ "sequence_end" ]
+ }, {
+ "from" : "TextAnnotation",
+ "to" : [ "sequence_start" ]
+ }, {
+ "from" : "BoundaryCompensationEvent",
+ "to" : [ "sequence_start" ]
+ } ]
+ }, {
+ "role" : "DataAssociation",
+ "connects" : [ {
+ "from" : "sequence_start",
+ "to" : [ "DataStore" ]
+ }, {
+ "from" : "sequence_end",
+ "to" : [ "DataStore" ]
+ }, {
+ "from" : "DataStore",
+ "to" : [ "sequence_end" ]
+ }, {
+ "from" : "DataStore",
+ "to" : [ "sequence_start" ]
+ } ]
+ }, {
+ "role" : "IntermediateEventOnActivityBoundary",
+ "connects" : [ {
+ "from" : "Activity",
+ "to" : [ "IntermediateEventOnActivityBoundary" ]
+ } ]
+ } ],
+ "containmentRules" : [ {
+ "role" : "BPMNDiagram",
+ "contains" : [ "all" ]
+ }, {
+ "role" : "SubProcess",
+ "contains" : [ "sequence_start", "sequence_end", "from_task_event", "to_task_event", "EventSubProcess", "TextAnnotation", "DataStore" ]
+ }, {
+ "role" : "EventSubProcess",
+ "contains" : [ "sequence_start", "sequence_end", "from_task_event", "to_task_event", "TextAnnotation", "DataStore" ]
+ }, {
+ "role" : "Pool",
+ "contains" : [ "Lane" ]
+ }, {
+ "role" : "Lane",
+ "contains" : [ "sequence_start", "sequence_end", "EventSubProcess", "TextAnnotation", "DataStore" ]
+ } ],
+ "morphingRules" : [ {
+ "role" : "ActivitiesMorph",
+ "baseMorphs" : [ "UserTask" ],
+ "preserveBounds" : true
+ }, {
+ "role" : "GatewaysMorph",
+ "baseMorphs" : [ "ExclusiveGateway" ]
+ }, {
+ "role" : "StartEventsMorph",
+ "baseMorphs" : [ "StartNoneEvent" ]
+ }, {
+ "role" : "EndEventsMorph",
+ "baseMorphs" : [ "StartNoneEvent" ]
+ }, {
+ "role" : "CatchEventsMorph",
+ "baseMorphs" : [ "CatchTimerEvent" ]
+ }, {
+ "role" : "ThrowEventsMorph",
+ "baseMorphs" : [ "ThrowNoneEvent" ]
+ }, {
+ "role" : "BoundaryEventsMorph",
+ "baseMorphs" : [ "ThrowNoneEvent" ]
+ }, {
+ "role" : "BoundaryCompensationEvent",
+ "baseMorphs" : [ "BoundaryCompensationEvent" ]
+ }, {
+ "role" : "TextAnnotation",
+ "baseMorphs" : [ "TextAnnotation" ]
+ }, {
+ "role" : "DataStore",
+ "baseMorphs" : [ "DataStore" ]
+ } ]
+ }
+}
\ No newline at end of file
diff --git a/mdp-lcode/src/test/java/com/mdp/WebSecurityConfig.java b/mdp-lcode/src/test/java/com/mdp/WebSecurityConfig.java
index 5175a55..02153f8 100644
--- a/mdp-lcode/src/test/java/com/mdp/WebSecurityConfig.java
+++ b/mdp-lcode/src/test/java/com/mdp/WebSecurityConfig.java
@@ -32,6 +32,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("/actuator/**","/**/safe/app/auth**",
"/**/sys/userTpaInvite/checkInviteId",
+ "/**/login/token",
"/**/sys/user/noauth/detail",
"/**/sys/userFans/fansCpd",
"/**/sys/userSvr/list",
diff --git a/pom.xml b/pom.xml
index 3211973..0856c2c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,6 +14,7 @@
mdp-lcode
mdp-lcode-bootstrap
+ mdp-lcode-cloud-bootstrap
@@ -30,6 +31,11 @@
mdp-lcode-bootstrap
${mdp.version}
+
+ com.mdp
+ mdp-lcode-cloud-bootstrap
+ ${mdp.version}
+
低代码系统