diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..a66b8e2f1
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,39 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+application-local.yml
+*.log
+
+rebel.xml
+.flattened-pom.xml
\ No newline at end of file
diff --git a/RELEASE.md b/RELEASE.md
new file mode 100644
index 000000000..a033ae0c1
--- /dev/null
+++ b/RELEASE.md
@@ -0,0 +1,2 @@
+# 发布记录
+
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 000000000..54d7e9150
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,100 @@
+
+
+ 4.0.0
+
+
+ cn.axzo.infra
+ axzo-parent
+ 2.4.13.5
+
+
+ cn.axzo
+ workflow-engine
+ pom
+ 1.0-SNAPSHOT
+ workflow-engine
+
+
+ 2.0.0-SNAPSHOT
+ 2.0.0-SNAPSHOT
+ 1.18.22
+ 1.4.2.Final
+
+
+
+
+
+
+ cn.axzo.infra
+ axzo-bom
+ ${axzo-bom.version}
+ pom
+ import
+
+
+ cn.axzo.infra
+ axzo-dependencies
+ ${axzo-dependencies.version}
+ pom
+ import
+
+
+
+
+
+
+
+
+ org.projectlombok
+ lombok
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+ junit
+ junit
+ test
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+
+ org.projectlombok
+ lombok
+ ${lombok.version}
+
+
+ org.mapstruct
+ mapstruct-processor
+ ${mapstruct.version}
+
+
+
+
+
+
+
+
+
+ axzo
+ axzo repository
+ https://nexus.axzo.cn/repository/axzo/
+
+
+ workflow-engine-server
+ workflow-engine-api
+
+
diff --git a/workflow-engine-api/pom.xml b/workflow-engine-api/pom.xml
new file mode 100644
index 000000000..051eeeef4
--- /dev/null
+++ b/workflow-engine-api/pom.xml
@@ -0,0 +1,22 @@
+
+
+ 4.0.0
+
+
+ workflow-engine
+ cn.axzo
+ 1.0-SNAPSHOT
+ ../pom.xml
+
+
+ workflow-engine-api
+ jar
+ workflow-engine-api
+
+
+
+ cn.axzo.framework
+ axzo-consumer-spring-cloud-starter
+
+
+
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/MicroArchetypeClient.java b/workflow-engine-api/src/main/java/cn/axzo/client/MicroArchetypeClient.java
new file mode 100644
index 000000000..88bbb849a
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/MicroArchetypeClient.java
@@ -0,0 +1,57 @@
+package cn.axzo.client;
+
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.page.PageResp;
+import cn.axzo.framework.domain.web.ApiException;
+import cn.axzo.framework.domain.web.result.ApiPageResult;
+import cn.axzo.framework.domain.web.result.ApiResult;
+import cn.axzo.client.feign.MicroArchetypeApi;
+import cn.axzo.client.model.NewUserReq;
+import cn.axzo.client.model.QueryUserReq;
+import cn.axzo.client.model.UpdateUserReq;
+import cn.axzo.client.model.UserRes;
+import cn.azxo.framework.common.model.CommonResponse;
+import lombok.RequiredArgsConstructor;
+
+import javax.validation.Valid;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/17
+ * @Description:
+ */
+@RequiredArgsConstructor
+public class MicroArchetypeClient {
+
+ private final MicroArchetypeApi api;
+
+ /**
+ * 老项目迁移使用
+ */
+ public UserRes createUser(@Valid NewUserReq req) {
+ CommonResponse apiResult = api.createUser(req);
+ if (apiResult.getCode() == 200) {
+ return apiResult.getData();
+ }
+ throw new RuntimeException(apiResult.getMsg());
+ }
+
+ /**
+ * 新项目使用
+ */
+ public UserRes updateUser(Long id, @Valid UpdateUserReq req) {
+ ApiResult apiResult = api.updateUser(id, req);
+ if (apiResult.isSuccess()) {
+ return apiResult.getData();
+ }
+ throw new ApiException(apiResult.getRespCode());
+ }
+
+ public PageResp fetchUsers(QueryUserReq req, PageQO page) {
+ ApiPageResult apiPageResult = api.fetchUsers(req.toQueryMap(), page);
+ if (apiPageResult.isSuccess()) {
+ return apiPageResult.toPage();
+ }
+ throw new ApiException(apiPageResult.getRespCode());
+ }
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/config/MicroArchetypeClientAutoConfiguration.java b/workflow-engine-api/src/main/java/cn/axzo/client/config/MicroArchetypeClientAutoConfiguration.java
new file mode 100644
index 000000000..9f14695f7
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/config/MicroArchetypeClientAutoConfiguration.java
@@ -0,0 +1,30 @@
+package cn.axzo.client.config;
+
+import cn.axzo.client.feign.MicroArchetypeApi;
+import cn.axzo.client.MicroArchetypeClient;
+import cn.axzo.client.feign.MicroArchetypeFallbackFactory;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/17
+ * @Description:
+ */
+@EnableFeignClients(basePackages = {"cn.axzo.client"})
+@Configuration
+public class MicroArchetypeClientAutoConfiguration {
+
+ @Bean
+ public MicroArchetypeFallbackFactory microArchetypeFallbackFactory() {
+ return new MicroArchetypeFallbackFactory();
+ }
+
+ @Bean
+ public MicroArchetypeClient microArchetypeClient(MicroArchetypeApi microArchetypeApi) {
+ return new MicroArchetypeClient(microArchetypeApi);
+ }
+
+
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApi.java b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApi.java
new file mode 100644
index 000000000..900d8d9aa
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApi.java
@@ -0,0 +1,34 @@
+package cn.axzo.client.feign;
+
+import cn.axzo.framework.context.client.QueryMap;
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.web.result.ApiPageResult;
+import cn.axzo.framework.domain.web.result.ApiResult;
+import cn.axzo.client.model.NewUserReq;
+import cn.axzo.client.model.UpdateUserReq;
+import cn.axzo.client.model.UserRes;
+import cn.azxo.framework.common.model.CommonResponse;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/17
+ * @Description:
+ */
+@FeignClient(name = "workflow-engine", url = "http://localhost:8899", fallbackFactory = MicroArchetypeFallbackFactory.class)
+public interface MicroArchetypeApi {
+
+ @PostMapping(value = "/api/v1/users", consumes = APPLICATION_JSON_VALUE)
+ CommonResponse createUser(@RequestBody NewUserReq req);
+
+ @PutMapping(value = "/api/v2/users/{id}", consumes = APPLICATION_JSON_VALUE)
+ ApiResult updateUser(@PathVariable("id") Long id, @RequestBody UpdateUserReq req);
+
+ @GetMapping(value = "/api/v2/users")
+ ApiPageResult fetchUsers(@RequestParam Map query, PageQO page);
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApiFallback.java b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApiFallback.java
new file mode 100644
index 000000000..28651542d
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeApiFallback.java
@@ -0,0 +1,53 @@
+package cn.axzo.client.feign;
+
+import cn.axzo.framework.client.feign.FeignFallback;
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.web.result.ApiPageResult;
+import cn.axzo.framework.domain.web.result.ApiResult;
+import cn.axzo.framework.jackson.utility.JSON;
+import cn.axzo.client.model.NewUserReq;
+import cn.axzo.client.model.UpdateUserReq;
+import cn.axzo.client.model.UserRes;
+import cn.azxo.framework.common.model.CommonResponse;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+
+import java.util.Map;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/17
+ * @Description:
+ */
+@Slf4j
+@RequiredArgsConstructor
+public class MicroArchetypeApiFallback implements MicroArchetypeApi {
+
+ private final FeignFallback fallback;
+
+ /**
+ * 老项目迁移使用
+ * @param req
+ * @return
+ */
+ @Override
+ public CommonResponse createUser(NewUserReq req) {
+ log.error("[workflow-engine-api] createUser fallback", fallback.getCause());
+ return CommonResponse.error("创建用户失败");
+ }
+
+ /**
+ * 新项目推荐使用
+ */
+ @Override
+ public ApiResult updateUser(Long id, UpdateUserReq req) {
+ log.error("[workflow-engine-api] updateUser fallback", fallback.getCause());
+ return fallback.resp();
+ }
+
+ @Override
+ public ApiPageResult fetchUsers(Map query, PageQO page) {
+ log.error("[workflow-engine-api] fetchUsers fallback", fallback.getCause());
+ return fallback.pageResp();
+ }
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeFallbackFactory.java b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeFallbackFactory.java
new file mode 100644
index 000000000..06ec4c74a
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/feign/MicroArchetypeFallbackFactory.java
@@ -0,0 +1,19 @@
+package cn.axzo.client.feign;
+
+import cn.axzo.framework.client.feign.FeignFallback;
+import cn.axzo.framework.domain.web.code.IRespCode;
+import cn.axzo.framework.domain.web.code.RespCode;
+import feign.hystrix.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+@Component
+public class MicroArchetypeFallbackFactory implements FallbackFactory {
+
+ // TODO: 2022/11/3 100-调整为具体的项目编号,XXX-调整为项目名
+ private final IRespCode respCode = new RespCode("100" + "91001", "XXX服务不可用");
+
+ @Override
+ public MicroArchetypeApiFallback create(Throwable cause) {
+ return new MicroArchetypeApiFallback(new FeignFallback(cause, respCode));
+ }
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/model/NewUserReq.java b/workflow-engine-api/src/main/java/cn/axzo/client/model/NewUserReq.java
new file mode 100644
index 000000000..9a87b7492
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/model/NewUserReq.java
@@ -0,0 +1,29 @@
+package cn.axzo.client.model;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Data
+public class NewUserReq {
+
+ @NotBlank(message = "名称不能为空")
+ private String name;
+
+ @NotNull
+ private Integer sex;
+
+ private Integer age;
+
+ private String phone;
+
+ private String email;
+
+ private String address;
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/model/QueryUserReq.java b/workflow-engine-api/src/main/java/cn/axzo/client/model/QueryUserReq.java
new file mode 100644
index 000000000..8768dbd17
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/model/QueryUserReq.java
@@ -0,0 +1,22 @@
+package cn.axzo.client.model;
+
+import cn.axzo.framework.context.client.IQueryMap;
+import cn.axzo.framework.context.client.QueryMap;
+import lombok.Data;
+
+@Data
+public class QueryUserReq implements IQueryMap {
+
+ private Long id;
+
+ private String name;
+
+ private String phone;
+
+ private String email;
+
+ @Override
+ public void append(QueryMap.Builder builder) {
+ builder.put("id", id).put("name", name).put("phone", phone).put("email", email);
+ }
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/model/UpdateUserReq.java b/workflow-engine-api/src/main/java/cn/axzo/client/model/UpdateUserReq.java
new file mode 100644
index 000000000..2aae9b18e
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/model/UpdateUserReq.java
@@ -0,0 +1,19 @@
+package cn.axzo.client.model;
+
+import lombok.Data;
+
+@Data
+public class UpdateUserReq {
+
+ private String name;
+
+ private Integer sex;
+
+ private Integer age;
+
+ private String phone;
+
+ private String email;
+
+ private String address;
+}
diff --git a/workflow-engine-api/src/main/java/cn/axzo/client/model/UserRes.java b/workflow-engine-api/src/main/java/cn/axzo/client/model/UserRes.java
new file mode 100644
index 000000000..7f4d22a97
--- /dev/null
+++ b/workflow-engine-api/src/main/java/cn/axzo/client/model/UserRes.java
@@ -0,0 +1,21 @@
+package cn.axzo.client.model;
+
+import lombok.Data;
+
+@Data
+public class UserRes {
+
+ private Long id;
+
+ private String name;
+
+ private Integer sex;
+
+ private Integer age;
+
+ private String phone;
+
+ private String email;
+
+ private String address;
+}
diff --git a/workflow-engine-api/src/main/resources/META-INF/spring.factories b/workflow-engine-api/src/main/resources/META-INF/spring.factories
new file mode 100644
index 000000000..6be11f863
--- /dev/null
+++ b/workflow-engine-api/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,2 @@
+org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+cn.axzo.micro.archetype.client.config.MicroArchetypeClientAutoConfiguration
\ No newline at end of file
diff --git a/workflow-engine-api/src/test/java/cn/axzo/maven/archetype/client/AppTest.java b/workflow-engine-api/src/test/java/cn/axzo/maven/archetype/client/AppTest.java
new file mode 100644
index 000000000..7d836fa05
--- /dev/null
+++ b/workflow-engine-api/src/test/java/cn/axzo/maven/archetype/client/AppTest.java
@@ -0,0 +1,14 @@
+package cn.axzo.maven.archetype.client;
+
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+/**
+ * Unit test for simple App.
+ */
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class AppTest {
+
+}
diff --git a/workflow-engine-server/pom.xml b/workflow-engine-server/pom.xml
new file mode 100644
index 000000000..de533e3e5
--- /dev/null
+++ b/workflow-engine-server/pom.xml
@@ -0,0 +1,54 @@
+
+
+
+ workflow-engine
+ cn.axzo
+ 1.0-SNAPSHOT
+ ../pom.xml
+
+ 4.0.0
+
+ workflow-engine-server
+ jar
+
+ workflow-engine-server
+
+
+
+ cn.axzo.framework
+ axzo-web-spring-boot-starter
+
+
+ cn.axzo.framework
+ axzo-spring-cloud-starter
+
+
+ cn.axzo.framework
+ axzo-consumer-spring-cloud-starter
+
+
+ cn.axzo.framework
+ axzo-processor-spring-boot-starter
+
+
+
+ cn.axzo.framework
+ axzo-mybatisplus-spring-boot-starter
+
+
+
+ cn.axzo.framework
+ axzo-swagger-yapi-spring-boot-starter
+
+
+
+ com.alibaba
+ druid-spring-boot-starter
+
+
+
+ cn.axzo.framework
+ axzo-logger-spring-boot-starter
+
+
+
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/Application.java b/workflow-engine-server/src/main/java/cn/axzo/server/Application.java
new file mode 100644
index 000000000..da431346b
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/Application.java
@@ -0,0 +1,13 @@
+package cn.axzo.server;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@MapperScan(value = {"cn.axzo.**.mapper"})
+@SpringBootApplication
+public class Application {
+ public static void main(String[] args) {
+ SpringApplication.run(Application.class, args);
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ErrorCode.java b/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ErrorCode.java
new file mode 100644
index 000000000..dab5fcf08
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ErrorCode.java
@@ -0,0 +1,27 @@
+package cn.axzo.server.common.enums;
+
+import cn.axzo.framework.domain.web.code.IProjectRespCode;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description: 响应码规范:一共8位,取值范围0~9,3位项目编号(首位不能为0)+2位模块编号+3位自定义编号
+ */
+@Getter
+@AllArgsConstructor
+public enum ErrorCode implements IProjectRespCode {
+
+ USER_NOT_EXISTS("01001", "用户不存在,id=%s"),
+ USER_PHONE_EMAIL_IS_NULL("01002", "电话和邮箱不能都为空");
+
+ private String code;
+ private String message;
+
+ @Override
+ public String getProjectCode() {
+ // 根据不同项目进行项目编码调整,可联系框架组获取项目编号(首位不能为0)
+ return "100";
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ResultCode.java b/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ResultCode.java
new file mode 100644
index 000000000..759b30be1
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/common/enums/ResultCode.java
@@ -0,0 +1,88 @@
+package cn.axzo.server.common.enums;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+public enum ResultCode {
+ /**
+ * 成功 [GET]
+ */
+ SUCCESS(200),
+ /**
+ * [POST/PUT/PATCH] 用户新建或修改数据成功
+ */
+ CREATED(201),
+ /**
+ * [*] 标识一个请求已经进入后台排队 (异步任务)
+ */
+ ACCEPTED(202),
+ /**
+ * [DELETE]: 用户删除数据成功
+ */
+ NO_CONTENT(204),
+ /**
+ * [POST/PUT/PATCH] 用户发出的请求有错误, 服务器没有进行新建或修改数据的操作, 该操作是幂等的.
+ */
+ FAIL(400),
+ /**
+ * [*] 标识没有权限 (令牌、用户名、密码错误)
+ */
+ UNAUTHORIZED(401),
+ /**
+ * [*] 标识用户得到授权(与401错误相对), 但是访问是被禁止的
+ */
+ FORBIDDEN(403),
+ /**
+ * [*] 用户发出的请求针对的是不存在的记录, 服务器没有进行操作
+ */
+ NOT_FOUND(404),
+ /**
+ * [GET] 用户请求的格式不可得 (比如用户请求JSON格式, 但是只有XML格式)
+ */
+ NOT_ACCEPTABLE(406),
+ /**
+ * [GET] 用户请求的资源被永久删除, 且不会再得到
+ */
+ GONE(410),
+ /**
+ * [POST/PUT/PATCH] 当创建一个对象时, 发生一个验证错误646
+ */
+ UNPROCESSABLE_ENTITY(422),
+ /**
+ * 服务器内部错误
+ */
+ INTERNAL_SERVER_ERROR(9999),
+ /**
+ * 通用业务异常
+ */
+ SERVICE_EXCEPTION_ERROR(9998),
+
+ /**
+ * ####业务的响应码####
+ * 按业务依次划分 :
+ * 一共6位, 第6位是业务代码 第1-5位响应码, 按业务不同码不同
+ * #100000 全局级别
+ */
+
+ /**
+ * 100001 当前用户被强制下线
+ */
+ CUSTOM_100001(100001),
+ /**
+ * 确认弹窗响应码
+ */
+ CUSTOM_100002(100002);
+
+ public int code;
+
+ ResultCode(int code) {
+ this.code = code;
+ }
+
+ public int getCode() {
+ return code;
+ }
+
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/common/util/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/common/util/package-info.java
new file mode 100644
index 000000000..617ff9025
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/common/util/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.common.util;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/HttpTraceLogFilter.java b/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/HttpTraceLogFilter.java
new file mode 100644
index 000000000..aea5e7de0
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/HttpTraceLogFilter.java
@@ -0,0 +1,259 @@
+package cn.axzo.server.config.filter;
+
+import cn.azxo.framework.common.constatns.Constants;
+import cn.azxo.framework.common.utils.LogUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONException;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.annotation.JSONField;
+import com.google.common.base.Strings;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+import org.apache.skywalking.apm.toolkit.trace.Trace;
+import org.apache.skywalking.apm.toolkit.trace.TraceContext;
+import org.slf4j.MDC;
+import org.springframework.core.Ordered;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.stereotype.Component;
+import org.springframework.web.filter.OncePerRequestFilter;
+import org.springframework.web.util.ContentCachingRequestWrapper;
+import org.springframework.web.util.ContentCachingResponseWrapper;
+import org.springframework.web.util.WebUtils;
+
+import javax.servlet.FilterChain;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.*;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/12/6 14:48
+ * @Description: Http接口日志记录
+ */
+@Slf4j
+@Component
+public class HttpTraceLogFilter extends OncePerRequestFilter implements Ordered {
+
+ private static final String X_REQUEST_ID = "x-request-id";
+
+ @Override
+ public int getOrder() {
+ return Ordered.LOWEST_PRECEDENCE - 10;
+ }
+
+ @Override
+ @Trace(operationName = "HttpTraceLogFilter")
+ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response,
+ FilterChain filterChain) throws ServletException, IOException {
+ String uri = request.getRequestURI();
+ String contextPath = request.getContextPath();
+ String url = uri.substring(contextPath.length());
+ //swagger 跳过
+ if (url.contains("api-docs") || url.contains("swagger") || url.contains("checkDeath")) {
+ filterChain.doFilter(request, response);
+ return;
+ }
+ //静态资源 跳过
+ if (url.contains(".")) {
+ filterChain.doFilter(request, response);
+ return;
+ }
+ if (!(request instanceof ContentCachingRequestWrapper)) {
+ request = new ContentCachingRequestWrapper(request);
+ }
+ if (!(response instanceof ContentCachingResponseWrapper)) {
+ response = new ContentCachingResponseWrapper(response);
+ }
+
+ String requestId = request.getHeader(X_REQUEST_ID);
+ if (Strings.isNullOrEmpty(requestId)) {
+ MDC.put(X_REQUEST_ID, getTraceId());
+ } else {
+ MDC.put(X_REQUEST_ID, requestId);
+ }
+ String ctxLogId = request.getHeader(Constants.CTX_LOG_ID_MDC);
+ if (Strings.isNullOrEmpty(ctxLogId)) {
+ MDC.put(Constants.CTX_LOG_ID_MDC, getTraceId());
+ } else {
+ MDC.put(Constants.CTX_LOG_ID_MDC, ctxLogId);
+ }
+
+ // 获取请求参数
+ String parameter = null;
+ String requestContentType = request.getHeader(HttpHeaders.CONTENT_TYPE);
+ if (requestContentType != null) {
+ if (requestContentType.startsWith(MediaType.APPLICATION_JSON_VALUE)) {
+ //Json
+ WrappedHttpServletRequest requestWrapper = new WrappedHttpServletRequest(request);
+ parameter = getRequestBody(requestWrapper);
+ request = requestWrapper;
+ } else if (requestContentType.startsWith(MediaType.APPLICATION_FORM_URLENCODED_VALUE)) {
+ //普通表单提交
+ parameter = JSON.toJSONString(request.getParameterMap());
+ } else if (requestContentType.startsWith(MediaType.MULTIPART_FORM_DATA_VALUE)) {
+ //文件表单提交
+ parameter = JSON.toJSONString("文件类型");
+ }
+ } else if (url.startsWith("/api")) {
+ if ("GET".equals(request.getMethod())) {
+ parameter = JSON.toJSONString(request.getParameterMap());
+ } else if ("POST".equals(request.getMethod())) {
+ WrappedHttpServletRequest requestWrapper = new WrappedHttpServletRequest(request);
+ parameter = getRequestBody(requestWrapper);
+ request = requestWrapper;
+ }
+ } else if ("GET".equals(request.getMethod())) {
+ parameter = JSON.toJSONString(request.getParameterMap());
+ }
+
+ long requestTime = System.currentTimeMillis();
+ try {
+ filterChain.doFilter(request, response);
+ } finally {
+ response.setHeader(Constants.CTX_LOG_ID_MDC, MDC.get(Constants.CTX_LOG_ID_MDC));
+ response.setHeader(X_REQUEST_ID, MDC.get(Constants.CTX_LOG_ID_MDC));
+
+ long latency = System.currentTimeMillis() - requestTime;
+ String responseBody = null;
+ int responseStatus = response.getStatus();
+ String responseContentType = response.getContentType();
+ //Json
+ if (responseContentType != null && responseContentType
+ .startsWith(MediaType.APPLICATION_JSON_VALUE)) {
+ responseBody = getResponseBody(response);
+ }
+ //记录日志
+ HttpTraceLog traceLog = new HttpTraceLog();
+ traceLog.setRequestContentType(requestContentType);
+ traceLog.setPath(url);
+ traceLog.setMethod(request.getMethod());
+ traceLog.setTimeTaken(latency);
+ traceLog.setParameter(parameter);
+ traceLog.setResponseContentType(responseContentType);
+ traceLog.setStatus(responseStatus);
+ traceLog.setResponseBody(responseBody);
+ traceLog.setRequestHeaders(getRequestHeader(request));
+ if (traceLog.getResponseCode() != null && traceLog.getResponseCode().equals(9999)) {
+ LogUtil.error(LogUtil.ErrorLevel.P0, LogUtil.ErrorType.ERROR_BUSINESS, JSON.toJSONString(traceLog));
+ } else if (traceLog.getResponseCode() != null && traceLog.getResponseCode().equals(9998)) {
+ log.warn(JSON.toJSONString(traceLog));
+ } else {
+ log.info(JSON.toJSONString(traceLog));
+ }
+ updateResponse(response);
+ // 清理链路id
+ MDC.clear();
+ }
+ }
+
+ private String getTraceId() {
+ String contextTraceId = TraceContext.traceId();
+ return Strings.isNullOrEmpty(contextTraceId)
+ ? UUID.randomUUID().toString().replaceAll("-", "") : contextTraceId;
+ }
+
+ private String getRequestBody(WrappedHttpServletRequest request) throws IOException {
+ // 获取请求参数
+ return request.getRequestParams();
+ }
+
+ @Trace(operationName = "HttpTraceLogFilter#getResponseBody")
+ private String getResponseBody(HttpServletResponse response) {
+ String responseBody = null;
+ ContentCachingResponseWrapper wrapper = WebUtils
+ .getNativeResponse(response, ContentCachingResponseWrapper.class);
+ if (wrapper != null) {
+ responseBody = new String(wrapper.getContentAsByteArray(), StandardCharsets.UTF_8);
+ }
+ return responseBody;
+ }
+
+ public Map getRequestHeader(HttpServletRequest request) {
+ Map ret = new HashMap<>();
+ Enumeration headerNames = request.getHeaderNames();
+ while (headerNames.hasMoreElements()) {
+ String headerName = headerNames.nextElement();
+ ret.put(headerName, request.getHeader(headerName));
+ }
+ return ret;
+ }
+
+ @Trace(operationName = "HttpTraceLogFilter#updateResponse")
+ private void updateResponse(HttpServletResponse response) throws IOException {
+ ContentCachingResponseWrapper responseWrapper = WebUtils
+ .getNativeResponse(response, ContentCachingResponseWrapper.class);
+ Objects.requireNonNull(responseWrapper).copyBodyToResponse();
+ }
+
+ @Data
+ @Builder
+ @AllArgsConstructor
+ @NoArgsConstructor
+ private static class HttpTraceLog {
+
+ /**
+ * 路径
+ */
+ private String path;
+ /**
+ * 参数
+ */
+ @JSONField(jsonDirect = true)
+ private String parameter;
+ private String requestContentType;
+ private String responseContentType;
+ private String method;
+ private Long timeTaken;
+ private Integer status;
+ /**
+ * 业务Code
+ */
+ private Integer responseCode;//业务返回码
+ /**
+ * 响应参数
+ */
+ @JSONField(jsonDirect = true)
+ private String responseBody;
+
+ @JSONField(jsonDirect = true)
+ private Map requestHeaders;
+
+ public String getParameter() {
+ if (parameter == null) {
+ return parameter;
+ } else {
+ return parameter.replaceAll("\n", "").replaceAll("\t", "").replaceAll("\r", "");
+ }
+ }
+
+ public String getResponseBody() {
+ if (responseBody == null) {
+ return responseBody;
+ } else {
+ return responseBody.replaceAll("\n", "").replaceAll("\t", "").replaceAll("\r", "");
+ }
+ }
+
+ public void setResponseBody(String responseBody) {
+ if (StringUtils.isBlank(responseBody)) {
+ return;
+ }
+ this.responseBody = responseBody;
+ JSONObject responseJson = null;
+ try {
+ responseJson = JSONObject.parseObject(responseBody);
+ this.responseCode = responseJson.getInteger("code");
+ } catch (JSONException e) {
+ log.debug("ResponseBody非JSON返回", e);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/WrappedHttpServletRequest.java b/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/WrappedHttpServletRequest.java
new file mode 100644
index 000000000..f492539a1
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/config/filter/WrappedHttpServletRequest.java
@@ -0,0 +1,91 @@
+package cn.axzo.server.config.filter;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import javax.servlet.ReadListener;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+
+import org.apache.commons.io.IOUtils;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/12/6 14:56
+ * @Description:
+ */
+public class WrappedHttpServletRequest extends HttpServletRequestWrapper {
+
+ private byte[] bytes;
+ private WrappedServletInputStream wrappedServletInputStream;
+
+ public WrappedHttpServletRequest(HttpServletRequest request) throws IOException {
+ super(request);
+ // 读取输入流里的请求参数,并保存到bytes里
+ bytes = IOUtils.toByteArray(request.getInputStream());
+ ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
+ this.wrappedServletInputStream = new WrappedServletInputStream(byteArrayInputStream);
+ // 很重要,把post参数重新写入请求流
+ reWriteInputStream();
+ }
+
+ /**
+ * 把参数重新写进请求里
+ */
+ public void reWriteInputStream() {
+ wrappedServletInputStream
+ .setStream(new ByteArrayInputStream(bytes != null ? bytes : new byte[0]));
+ }
+
+ @Override
+ public ServletInputStream getInputStream() throws IOException {
+ return wrappedServletInputStream;
+ }
+
+ @Override
+ public BufferedReader getReader() throws IOException {
+ return new BufferedReader(new InputStreamReader(wrappedServletInputStream));
+ }
+
+ /**
+ * 获取post参数,可以自己再转为相应格式
+ */
+ public String getRequestParams() throws IOException {
+ return new String(bytes, this.getCharacterEncoding());
+ }
+
+ private class WrappedServletInputStream extends ServletInputStream {
+
+ private InputStream stream;
+
+ public WrappedServletInputStream(InputStream stream) {
+ this.stream = stream;
+ }
+
+ public void setStream(InputStream stream) {
+ this.stream = stream;
+ }
+
+ @Override
+ public int read() throws IOException {
+ return stream.read();
+ }
+
+ @Override
+ public boolean isFinished() {
+ return true;
+ }
+
+ @Override
+ public boolean isReady() {
+ return true;
+ }
+
+ @Override
+ public void setReadListener(ReadListener readListener) {
+ }
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/config/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/config/package-info.java
new file mode 100644
index 000000000..6811b4170
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/config/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.config;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/consumer/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/consumer/package-info.java
new file mode 100644
index 000000000..4f6ad4bc5
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/consumer/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.consumer;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/controller/HealthCheckController.java b/workflow-engine-server/src/main/java/cn/axzo/server/controller/HealthCheckController.java
new file mode 100644
index 000000000..a8d340239
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/controller/HealthCheckController.java
@@ -0,0 +1,22 @@
+package cn.axzo.server.controller;
+
+import cn.axzo.framework.web.http.ApiResponse;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/11/25 18:00
+ * @Description: 健康检查接口
+ */
+@RestController
+public class HealthCheckController {
+
+ /**
+ * 探活
+ */
+ @GetMapping("/checkDeath")
+ public ApiResponse checkDeath() {
+ return ApiResponse.ok("ok");
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/controller/app/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/controller/app/package-info.java
new file mode 100644
index 000000000..7aef0da0b
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/controller/app/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.controller.app;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserController.java b/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserController.java
new file mode 100644
index 000000000..1cfaae519
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserController.java
@@ -0,0 +1,76 @@
+package cn.axzo.server.controller.web;
+
+import cn.axzo.server.service.user.UserService;
+import cn.axzo.server.service.dto.request.user.NewUserDTO;
+import cn.axzo.server.service.dto.request.user.UpdateUserDTO;
+import cn.axzo.server.service.dto.request.user.UserQO;
+import cn.axzo.server.service.dto.response.user.UserVO;
+import cn.azxo.framework.common.model.CommonPageResponse;
+import cn.azxo.framework.common.model.CommonResponse;
+import com.github.xiaoymin.knife4j.annotations.ApiSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Slf4j
+@Api(tags = "web-用户信息接口")
+@ApiSupport(author = "田立勇")
+@RequestMapping("/api/v1")
+@RestController
+@RequiredArgsConstructor
+public class UserController {
+
+ private final UserService userService;
+
+ @ApiOperation(value = "创建用户")
+ @PostMapping("/users")
+ public CommonResponse createUser(@Valid @RequestBody NewUserDTO dto) {
+ log.info("REST request to save user : {}", dto);
+ // 校验入参
+ dto.valid();
+ UserVO result = userService.create(dto);
+ return CommonResponse.success(result);
+ }
+
+ @ApiOperation(value = "修改用户")
+ @PutMapping("/users/{id}")
+ public CommonResponse updateUser(@ApiParam("用户ID") @PathVariable Long id,
+ @Valid @RequestBody UpdateUserDTO dto) {
+ log.info("REST request to update user : {}", dto);
+ // 校验入参
+ dto.valid();
+ UserVO result = userService.update(id, dto);
+ return CommonResponse.success(result);
+ }
+
+ @ApiOperation("获取用户列表")
+ @GetMapping("/users")
+ public CommonResponse> getUsers(@Valid UserQO userQO) {
+ CommonPageResponse results = userService.queryByPage(userQO);
+ return CommonResponse.success(results);
+ }
+
+ @ApiOperation("获取用户详情")
+ @GetMapping("/users/{id}")
+ public CommonResponse getUser(@ApiParam("用户ID") @PathVariable Long id) {
+ UserVO result = userService.getOne(id);
+ return CommonResponse.success(result);
+ }
+
+ @ApiOperation("删除用户")
+ @DeleteMapping("/users/{id}")
+ public CommonResponse deleteUser(@ApiParam("用户ID") @PathVariable Long id) {
+ userService.delete(id);
+ return CommonResponse.success();
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserResource.java b/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserResource.java
new file mode 100644
index 000000000..8965fbc81
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/controller/web/UserResource.java
@@ -0,0 +1,78 @@
+package cn.axzo.server.controller.web;
+
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.page.PageResp;
+import cn.axzo.framework.web.http.ApiResponse;
+import cn.axzo.framework.web.http.ApiPageResponse;
+import cn.axzo.server.service.dto.request.user.NewUserDTO;
+import cn.axzo.server.service.dto.request.user.UpdateUserDTO;
+import cn.axzo.server.service.dto.request.user.UserQO1;
+import cn.axzo.server.service.dto.response.user.UserVO;
+import cn.axzo.server.service.user.UserService;
+import com.github.xiaoymin.knife4j.annotations.ApiSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/10/28
+ * @Description: 新项目搭建推荐方式
+ */
+@Slf4j
+@Api(tags = "web-用户信息接口")
+@ApiSupport(author = "田立勇")
+@RequestMapping("/api/v2")
+@RestController
+@RequiredArgsConstructor
+public class UserResource {
+
+ private final UserService userService;
+
+ @ApiOperation(value = "创建用户")
+ @PostMapping("/users")
+ public ApiResponse createUser(@Valid @RequestBody NewUserDTO dto) {
+ log.info("REST request to save user : {}", dto);
+ // 校验入参
+ dto.valid();
+ UserVO result = userService.create(dto);
+ return ApiResponse.ok(result);
+ }
+
+ @ApiOperation(value = "修改用户")
+ @PutMapping("/users/{id}")
+ public ApiResponse updateUser(@ApiParam("用户ID") @PathVariable Long id,
+ @Valid @RequestBody UpdateUserDTO dto) {
+ log.info("REST request to update user : {}", dto);
+ // 校验入参
+ dto.valid();
+ UserVO result = userService.update(id, dto);
+ return ApiResponse.ok(result);
+ }
+
+ @ApiOperation("获取用户列表")
+ @GetMapping("/users")
+ public ApiPageResponse getUsers(@ModelAttribute UserQO1 userQo, PageQO page) {
+ PageResp results = userService.find(userQo, page);
+ return ApiPageResponse.ok(results);
+ }
+
+ @ApiOperation("获取用户详情")
+ @GetMapping("/users/{id}")
+ public ApiResponse getUser(@ApiParam("用户ID") @PathVariable Long id) {
+ UserVO result = userService.getOne(id);
+ return ApiResponse.ok(result);
+ }
+
+ @ApiOperation("删除用户")
+ @DeleteMapping("/users/{id}")
+ public ApiResponse deleteUser(@ApiParam("用户ID") @PathVariable Long id) {
+ userService.delete(id);
+ return ApiResponse.ok();
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/job/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/job/package-info.java
new file mode 100644
index 000000000..3c55ff9b7
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/job/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.job;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/repository/UserDao.java b/workflow-engine-server/src/main/java/cn/axzo/server/repository/UserDao.java
new file mode 100644
index 000000000..8cc37ea34
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/repository/UserDao.java
@@ -0,0 +1,55 @@
+package cn.axzo.server.repository;
+
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.server.repository.mapper.UserMapper;
+import cn.axzo.server.service.dto.request.user.UserQO;
+import cn.axzo.server.service.dto.request.user.UserQO1;
+import cn.axzo.server.repository.entity.user.User;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Repository;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Repository
+@RequiredArgsConstructor
+public class UserDao extends ServiceImpl {
+
+ private final UserMapper userMapper;
+
+ public User findById(Long id) {
+ return userMapper.selectById(id);
+ }
+
+ public void delete(Long id) {
+ userMapper.deleteById(id);
+ }
+
+ public IPage queryByPage(UserQO userQO) {
+ return userMapper.selectPage(userQO.toPage(),
+ Wrappers.lambdaQuery(User.class)
+ .eq(userQO.getId() != null, User::getId, userQO.getId())
+ .like(StringUtils.isNotBlank(userQO.getName()), User::getName, userQO.getName())
+ .like(StringUtils.isNotBlank(userQO.getPhone()), User::getPhone, userQO.getPhone())
+ .like(StringUtils.isNotBlank(userQO.getEmail()), User::getEmail, userQO.getEmail())
+ .orderByDesc(User::getCreateAt)
+ );
+ }
+
+ public IPage find(UserQO1 userQO, PageQO page) {
+ return userMapper.selectPage(page.toPage(),
+ Wrappers.lambdaQuery(User.class)
+ .eq(userQO.getId() != null, User::getId, userQO.getId())
+ .like(StringUtils.isNotBlank(userQO.getName()), User::getName, userQO.getName())
+ .like(StringUtils.isNotBlank(userQO.getPhone()), User::getPhone, userQO.getPhone())
+ .like(StringUtils.isNotBlank(userQO.getEmail()), User::getEmail, userQO.getEmail())
+ .orderByDesc(User::getCreateAt)
+ );
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/package-info.java
new file mode 100644
index 000000000..080ed3f8d
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.repository.entity;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/user/User.java b/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/user/User.java
new file mode 100644
index 000000000..7d38f1d38
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/repository/entity/user/User.java
@@ -0,0 +1,27 @@
+package cn.axzo.server.repository.entity.user;
+
+import cn.axzo.framework.data.mybatisplus.model.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Data
+@TableName("b_user")
+public class User extends BaseEntity {
+
+ private String name;
+
+ private Integer sex;
+
+ private Integer age;
+
+ private String phone;
+
+ private String email;
+
+ private String address;
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/repository/mapper/UserMapper.java b/workflow-engine-server/src/main/java/cn/axzo/server/repository/mapper/UserMapper.java
new file mode 100644
index 000000000..1d327a11e
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/repository/mapper/UserMapper.java
@@ -0,0 +1,14 @@
+package cn.axzo.server.repository.mapper;
+
+import cn.axzo.server.repository.entity.user.User;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Mapper
+public interface UserMapper extends BaseMapper {
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/EntityConverter.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/EntityConverter.java
new file mode 100644
index 000000000..dc730bd7d
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/EntityConverter.java
@@ -0,0 +1,15 @@
+package cn.axzo.server.service.converter;
+
+import java.util.List;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+public interface EntityConverter{
+
+ V toVo(E var);
+
+ List toVo(List var);
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/UserConverter.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/UserConverter.java
new file mode 100644
index 000000000..7ecd14aea
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/converter/UserConverter.java
@@ -0,0 +1,26 @@
+package cn.axzo.server.service.converter;
+
+import cn.axzo.server.service.dto.request.user.NewUserDTO;
+import cn.axzo.server.service.dto.request.user.UpdateUserDTO;
+import cn.axzo.server.service.dto.response.user.UserVO;
+import cn.axzo.server.repository.entity.user.User;
+import org.mapstruct.Mapper;
+import org.mapstruct.MappingTarget;
+
+import static org.mapstruct.NullValueCheckStrategy.ALWAYS;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Mapper(
+ componentModel = "spring",
+ nullValueCheckStrategy = ALWAYS
+)
+public interface UserConverter extends EntityConverter {
+
+ User toEntity(NewUserDTO dto);
+
+ void updateEntity(UpdateUserDTO dto, @MappingTarget User user);
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/package-info.java
new file mode 100644
index 000000000..f08b807aa
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.service.dto.request;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/NewUserDTO.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/NewUserDTO.java
new file mode 100644
index 000000000..0b51793a3
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/NewUserDTO.java
@@ -0,0 +1,44 @@
+package cn.axzo.server.service.dto.request.user;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Data
+public class NewUserDTO {
+
+ @ApiModelProperty(value = "名称", position = 1)
+ @NotBlank(message = "名称不能为空")
+ private String name;
+
+ @ApiModelProperty(value = "性别", position = 2)
+ @NotNull
+ private Integer sex;
+
+ @ApiModelProperty(value = "年龄", position = 3)
+ private Integer age;
+
+ @ApiModelProperty(value = "电话", position = 4)
+ private String phone;
+
+ @ApiModelProperty(value = "邮箱", position = 5)
+ private String email;
+
+ @ApiModelProperty(value = "地址", position = 6)
+ private String address;
+
+ public void valid() {
+ // 电话和邮箱不能都为空
+ if (StringUtils.isEmpty(phone) && StringUtils.isEmpty(email)) {
+ throw new RuntimeException("电话和邮箱不能都为空");
+ }
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UpdateUserDTO.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UpdateUserDTO.java
new file mode 100644
index 000000000..e80a855a2
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UpdateUserDTO.java
@@ -0,0 +1,47 @@
+package cn.axzo.server.service.dto.request.user;
+
+import cn.axzo.framework.domain.web.ApiException;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+import static cn.axzo.server.common.enums.ErrorCode.USER_PHONE_EMAIL_IS_NULL;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Data
+public class UpdateUserDTO {
+
+ @ApiModelProperty(value = "名称", position = 1)
+ @NotBlank(message = "名称不能为空")
+ private String name;
+
+ @ApiModelProperty(value = "性别", position = 2)
+ @NotNull
+ private Integer sex;
+
+ @ApiModelProperty(value = "年龄", position = 3)
+ private Integer age;
+
+ @ApiModelProperty(value = "电话", position = 4)
+ private String phone;
+
+ @ApiModelProperty(value = "邮箱", position = 5)
+ private String email;
+
+ @ApiModelProperty(value = "地址", position = 6)
+ private String address;
+
+ public void valid() {
+ // 电话和邮箱不能都为空
+ if (StringUtils.isEmpty(phone) && StringUtils.isEmpty(email)) {
+ throw new ApiException(USER_PHONE_EMAIL_IS_NULL);
+ }
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO.java
new file mode 100644
index 000000000..dd388f928
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO.java
@@ -0,0 +1,26 @@
+package cn.axzo.server.service.dto.request.user;
+
+import cn.axzo.framework.domain.page.PageQO;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Data
+public class UserQO extends PageQO {
+
+ @ApiParam("主键")
+ private Long id;
+
+ @ApiParam("姓名")
+ private String name;
+
+ @ApiParam("手机")
+ private String phone;
+
+ @ApiParam("邮箱")
+ private String email;
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO1.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO1.java
new file mode 100644
index 000000000..7adfe38e3
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/request/user/UserQO1.java
@@ -0,0 +1,26 @@
+package cn.axzo.server.service.dto.request.user;
+
+import cn.axzo.framework.domain.page.PageQO;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/5
+ * @Description:
+ */
+@Data
+public class UserQO1 {
+
+ @ApiParam("主键")
+ private Long id;
+
+ @ApiParam("姓名")
+ private String name;
+
+ @ApiParam("手机")
+ private String phone;
+
+ @ApiParam("邮箱")
+ private String email;
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/package-info.java
new file mode 100644
index 000000000..d8c8a7e66
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.service.dto.response;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/user/UserVO.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/user/UserVO.java
new file mode 100644
index 000000000..c7931ad05
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/dto/response/user/UserVO.java
@@ -0,0 +1,34 @@
+package cn.axzo.server.service.dto.response.user;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Data
+public class UserVO {
+
+ @ApiModelProperty(value = "id", position = 1)
+ private Long id;
+
+ @ApiModelProperty(value = "名称", position = 2)
+ private String name;
+
+ @ApiModelProperty(value = "性别", position = 3)
+ private Integer sex;
+
+ @ApiModelProperty(value = "年龄", position = 4)
+ private Integer age;
+
+ @ApiModelProperty(value = "电话", position = 5)
+ private String phone;
+
+ @ApiModelProperty(value = "邮箱", position = 6)
+ private String email;
+
+ @ApiModelProperty(value = "地址", position = 7)
+ private String address;
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/event/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/event/package-info.java
new file mode 100644
index 000000000..8f0753195
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/event/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.service.event;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/manager/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/manager/package-info.java
new file mode 100644
index 000000000..f05df3e34
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/manager/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.service.manager;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/user/UserService.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/user/UserService.java
new file mode 100644
index 000000000..8a6d99b3a
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/user/UserService.java
@@ -0,0 +1,29 @@
+package cn.axzo.server.service.user;
+
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.page.PageResp;
+import cn.axzo.server.service.dto.request.user.NewUserDTO;
+import cn.axzo.server.service.dto.request.user.UpdateUserDTO;
+import cn.axzo.server.service.dto.request.user.UserQO;
+import cn.axzo.server.service.dto.request.user.UserQO1;
+import cn.axzo.server.service.dto.response.user.UserVO;
+import cn.azxo.framework.common.model.CommonPageResponse;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+public interface UserService {
+ UserVO create(NewUserDTO dto);
+
+ UserVO update(Long id, UpdateUserDTO dto);
+
+ UserVO getOne(Long id);
+
+ void delete(Long id);
+
+ CommonPageResponse queryByPage(UserQO userQO);
+
+ PageResp find(UserQO1 userQo, PageQO page);
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/user/impl/UserServiceImpl.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/user/impl/UserServiceImpl.java
new file mode 100644
index 000000000..61b476a76
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/user/impl/UserServiceImpl.java
@@ -0,0 +1,82 @@
+package cn.axzo.server.service.user.impl;
+
+import cn.axzo.framework.domain.page.PageQO;
+import cn.axzo.framework.domain.page.PageResp;
+import cn.axzo.framework.domain.web.ApiException;
+import cn.axzo.server.common.enums.ErrorCode;
+import cn.axzo.server.service.dto.request.user.NewUserDTO;
+import cn.axzo.server.service.dto.request.user.UpdateUserDTO;
+import cn.axzo.server.service.dto.request.user.UserQO;
+import cn.axzo.server.service.dto.request.user.UserQO1;
+import cn.axzo.server.service.dto.response.user.UserVO;
+import cn.axzo.server.repository.entity.user.User;
+import cn.axzo.server.repository.UserDao;
+import cn.axzo.server.service.user.UserService;
+import cn.axzo.server.service.converter.UserConverter;
+import cn.azxo.framework.common.model.CommonPageResponse;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @Author: liyong.tian
+ * @Date: 2022/9/2
+ * @Description:
+ */
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class UserServiceImpl implements UserService {
+
+ private final UserConverter userConverter;
+
+ private final UserDao userDao;
+
+ @Override
+ public UserVO create(NewUserDTO dto) {
+ User user = userConverter.toEntity(dto);
+ userDao.save(user);
+ return userConverter.toVo(user);
+ }
+
+ @Override
+ public UserVO update(Long id, UpdateUserDTO dto) {
+ User user = userDao.findById(id);
+ if (user == null) {
+ throw new ApiException(ErrorCode.USER_NOT_EXISTS, id);
+ }
+ userConverter.updateEntity(dto, user);
+ return userConverter.toVo(user);
+ }
+
+ @Override
+ public UserVO getOne(Long id) {
+ User user = userDao.findById(id);
+ return userConverter.toVo(user);
+ }
+
+ @Override
+ public void delete(Long id) {
+ userDao.delete(id);
+ }
+
+ @Override
+ public CommonPageResponse queryByPage(UserQO userQo) {
+ IPage page = userDao.queryByPage(userQo);
+ List userList = page.getRecords();
+ if (CollectionUtils.isEmpty(userList)) {
+ return CommonPageResponse.zero(userQo.getPage(), userQo.getPageSize());
+ }
+ return new CommonPageResponse<>(page.getCurrent(), page.getSize(), page.getTotal(), userConverter.toVo(page.getRecords()));
+ }
+
+ @Override
+ public PageResp find(UserQO1 userQo, PageQO page) {
+ IPage userPage = userDao.find(userQo, page);
+ return PageResp.list(userPage, userConverter.toVo(userPage.getRecords()));
+ }
+}
diff --git a/workflow-engine-server/src/main/java/cn/axzo/server/service/validator/package-info.java b/workflow-engine-server/src/main/java/cn/axzo/server/service/validator/package-info.java
new file mode 100644
index 000000000..b19065c22
--- /dev/null
+++ b/workflow-engine-server/src/main/java/cn/axzo/server/service/validator/package-info.java
@@ -0,0 +1 @@
+package cn.axzo.server.service.validator;
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/resources/bootstrap.yml b/workflow-engine-server/src/main/resources/bootstrap.yml
new file mode 100644
index 000000000..3f09cd4b0
--- /dev/null
+++ b/workflow-engine-server/src/main/resources/bootstrap.yml
@@ -0,0 +1,37 @@
+spring:
+ application:
+ name: archetype-micro-standard
+ cloud:
+ nacos:
+ config:
+ server-addr: ${NACOS_HOST:test-nacos.axzo.cn}:${NACOS_PORT:80}
+ file-extension: yaml
+ namespace: ${NACOS_NAMESPACE_ID:f3c0f0d2-bac4-4498-bee7-9c3636b3afdf}
+ prefix: ${spring.application.name}
+ profiles:
+ active: ${NACOS_PROFILES_ACTIVE:test}
+ include: swagger
+ main:
+ allow-bean-definition-overriding: true
+
+logging:
+ level:
+ com.alibaba.nacos.client.config.impl: WARN
+
+management:
+ endpoint:
+ metrics:
+ enabled: true
+ prometheus:
+ enabled: true
+ endpoints:
+ web:
+ exposure:
+ include: "*"
+ metrics:
+ export:
+ prometheus:
+ enabled: true
+
+knife4j:
+ enable: true
diff --git a/workflow-engine-server/src/main/resources/logback-spring.xml b/workflow-engine-server/src/main/resources/logback-spring.xml
new file mode 100644
index 000000000..922ff2459
--- /dev/null
+++ b/workflow-engine-server/src/main/resources/logback-spring.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/workflow-engine-server/src/main/resources/sql/bpm-activiti.sql b/workflow-engine-server/src/main/resources/sql/bpm-activiti.sql
new file mode 100644
index 000000000..d9dc0f6e3
--- /dev/null
+++ b/workflow-engine-server/src/main/resources/sql/bpm-activiti.sql
@@ -0,0 +1,696 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server : 127.0.0.1
+ Source Server Type : MySQL
+ Source Server Version : 80026
+ Source Host : localhost:3306
+ Source Schema : ruoyi-vue-pro
+
+ Target Server Type : MySQL
+ Target Server Version : 80026
+ File Encoding : 65001
+
+ Date: 23/01/2022 01:30:47
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for ACT_EVT_LOG
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_EVT_LOG`;
+CREATE TABLE `ACT_EVT_LOG` (
+ `LOG_NR_` bigint NOT NULL AUTO_INCREMENT,
+ `TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_STAMP_` timestamp(3) NOT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DATA_` longblob,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `LOCK_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `IS_PROCESSED_` tinyint DEFAULT '0',
+ PRIMARY KEY (`LOG_NR_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_GE_BYTEARRAY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_GE_BYTEARRAY`;
+CREATE TABLE `ACT_GE_BYTEARRAY` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `BYTES_` longblob,
+ `GENERATED_` tinyint DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_BYTEARR_DEPL` (`DEPLOYMENT_ID_`),
+ CONSTRAINT `ACT_FK_BYTEARR_DEPL` FOREIGN KEY (`DEPLOYMENT_ID_`) REFERENCES `ACT_RE_DEPLOYMENT` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_GE_PROPERTY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_GE_PROPERTY`;
+CREATE TABLE `ACT_GE_PROPERTY` (
+ `NAME_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `VALUE_` varchar(300) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ PRIMARY KEY (`NAME_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_ACTINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_ACTINST`;
+CREATE TABLE `ACT_HI_ACTINST` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `ACT_ID_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CALL_PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_ACT_INST_START` (`START_TIME_`),
+ KEY `ACT_IDX_HI_ACT_INST_END` (`END_TIME_`),
+ KEY `ACT_IDX_HI_ACT_INST_PROCINST` (`PROC_INST_ID_`,`ACT_ID_`),
+ KEY `ACT_IDX_HI_ACT_INST_EXEC` (`EXECUTION_ID_`,`ACT_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_ATTACHMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_ATTACHMENT`;
+CREATE TABLE `ACT_HI_ATTACHMENT` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `URL_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CONTENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_` datetime(3) DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_HI_ATTACHMENT
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_HI_COMMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_COMMENT`;
+CREATE TABLE `ACT_HI_COMMENT` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_` datetime(3) NOT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACTION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `MESSAGE_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `FULL_MSG_` longblob,
+ PRIMARY KEY (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_DETAIL
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_DETAIL`;
+CREATE TABLE `ACT_HI_DETAIL` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VAR_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ `TIME_` datetime(3) NOT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_DETAIL_PROC_INST` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_DETAIL_ACT_INST` (`ACT_INST_ID_`),
+ KEY `ACT_IDX_HI_DETAIL_TIME` (`TIME_`),
+ KEY `ACT_IDX_HI_DETAIL_NAME` (`NAME_`),
+ KEY `ACT_IDX_HI_DETAIL_TASK_ID` (`TASK_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_IDENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_IDENTITYLINK`;
+CREATE TABLE `ACT_HI_IDENTITYLINK` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `GROUP_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_USER` (`USER_ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_TASK` (`TASK_ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_PROCINST` (`PROC_INST_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_PROCINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_PROCINST`;
+CREATE TABLE `ACT_HI_PROCINST` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `BUSINESS_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `START_USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `END_ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUPER_PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `PROC_INST_ID_` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_PRO_INST_END` (`END_TIME_`),
+ KEY `ACT_IDX_HI_PRO_I_BUSKEY` (`BUSINESS_KEY_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_TASKINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_TASKINST`;
+CREATE TABLE `ACT_HI_TASKINST` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `CLAIM_TIME_` datetime(3) DEFAULT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `PRIORITY_` int DEFAULT NULL,
+ `DUE_DATE_` datetime(3) DEFAULT NULL,
+ `FORM_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_TASK_INST_PROCINST` (`PROC_INST_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_VARINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_VARINST`;
+CREATE TABLE `ACT_HI_VARINST` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VAR_TYPE_` varchar(100) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `LAST_UPDATED_TIME_` datetime(3) DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_PROCVAR_PROC_INST` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_PROCVAR_NAME_TYPE` (`NAME_`,`VAR_TYPE_`),
+ KEY `ACT_IDX_HI_PROCVAR_TASK_ID` (`TASK_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_PROCDEF_INFO
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_PROCDEF_INFO`;
+CREATE TABLE `ACT_PROCDEF_INFO` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `INFO_JSON_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_UNIQ_INFO_PROCDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_IDX_INFO_PROCDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_INFO_JSON_BA` (`INFO_JSON_ID_`),
+ CONSTRAINT `ACT_FK_INFO_JSON_BA` FOREIGN KEY (`INFO_JSON_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_INFO_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_PROCDEF_INFO
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RE_DEPLOYMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_DEPLOYMENT`;
+CREATE TABLE `ACT_RE_DEPLOYMENT` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `DEPLOY_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `ENGINE_VERSION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `VERSION_` int DEFAULT '1',
+ `PROJECT_RELEASE_VERSION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RE_MODEL
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_MODEL`;
+CREATE TABLE `ACT_RE_MODEL` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LAST_UPDATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `VERSION_` int DEFAULT NULL,
+ `META_INFO_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EDITOR_SOURCE_VALUE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EDITOR_SOURCE_EXTRA_VALUE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_MODEL_SOURCE` (`EDITOR_SOURCE_VALUE_ID_`),
+ KEY `ACT_FK_MODEL_SOURCE_EXTRA` (`EDITOR_SOURCE_EXTRA_VALUE_ID_`),
+ KEY `ACT_FK_MODEL_DEPLOYMENT` (`DEPLOYMENT_ID_`),
+ CONSTRAINT `ACT_FK_MODEL_DEPLOYMENT` FOREIGN KEY (`DEPLOYMENT_ID_`) REFERENCES `ACT_RE_DEPLOYMENT` (`ID_`),
+ CONSTRAINT `ACT_FK_MODEL_SOURCE` FOREIGN KEY (`EDITOR_SOURCE_VALUE_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_MODEL_SOURCE_EXTRA` FOREIGN KEY (`EDITOR_SOURCE_EXTRA_VALUE_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RE_PROCDEF
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_PROCDEF`;
+CREATE TABLE `ACT_RE_PROCDEF` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VERSION_` int NOT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `RESOURCE_NAME_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DGRM_RESOURCE_NAME_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `HAS_START_FORM_KEY_` tinyint DEFAULT NULL,
+ `HAS_GRAPHICAL_NOTATION_` tinyint DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `ENGINE_VERSION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `APP_VERSION_` int DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_UNIQ_PROCDEF` (`KEY_`,`VERSION_`,`TENANT_ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_DEADLETTER_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_DEADLETTER_JOB`;
+CREATE TABLE `ACT_RU_DEADLETTER_JOB` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_EXCEPTION` (`EXCEPTION_STACK_ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_DEADLETTER_JOB
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_EVENT_SUBSCR
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_EVENT_SUBSCR`;
+CREATE TABLE `ACT_RU_EVENT_SUBSCR` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `EVENT_TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EVENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACTIVITY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CONFIGURATION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATED_` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_EVENT_SUBSCR_CONFIG_` (`CONFIGURATION_`),
+ KEY `ACT_FK_EVENT_EXEC` (`EXECUTION_ID_`),
+ CONSTRAINT `ACT_FK_EVENT_EXEC` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_EVENT_SUBSCR
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_EXECUTION
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_EXECUTION`;
+CREATE TABLE `ACT_RU_EXECUTION` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `BUSINESS_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SUPER_EXEC_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `IS_ACTIVE_` tinyint DEFAULT NULL,
+ `IS_CONCURRENT_` tinyint DEFAULT NULL,
+ `IS_SCOPE_` tinyint DEFAULT NULL,
+ `IS_EVENT_SCOPE_` tinyint DEFAULT NULL,
+ `IS_MI_ROOT_` tinyint DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `CACHED_ENT_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) DEFAULT NULL,
+ `START_USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `LOCK_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `IS_COUNT_ENABLED_` tinyint DEFAULT NULL,
+ `EVT_SUBSCR_COUNT_` int DEFAULT NULL,
+ `TASK_COUNT_` int DEFAULT NULL,
+ `JOB_COUNT_` int DEFAULT NULL,
+ `TIMER_JOB_COUNT_` int DEFAULT NULL,
+ `SUSP_JOB_COUNT_` int DEFAULT NULL,
+ `DEADLETTER_JOB_COUNT_` int DEFAULT NULL,
+ `VAR_COUNT_` int DEFAULT NULL,
+ `ID_LINK_COUNT_` int DEFAULT NULL,
+ `APP_VERSION_` int DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_EXEC_BUSKEY` (`BUSINESS_KEY_`),
+ KEY `ACT_IDC_EXEC_ROOT` (`ROOT_PROC_INST_ID_`),
+ KEY `ACT_FK_EXE_PROCINST` (`PROC_INST_ID_`),
+ KEY `ACT_FK_EXE_PARENT` (`PARENT_ID_`),
+ KEY `ACT_FK_EXE_SUPER` (`SUPER_EXEC_`),
+ KEY `ACT_FK_EXE_PROCDEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_EXE_PARENT` FOREIGN KEY (`PARENT_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE,
+ CONSTRAINT `ACT_FK_EXE_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_EXE_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `ACT_FK_EXE_SUPER` FOREIGN KEY (`SUPER_EXEC_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+
+-- ----------------------------
+-- Table structure for ACT_RU_IDENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_IDENTITYLINK`;
+CREATE TABLE `ACT_RU_IDENTITYLINK` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `GROUP_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_IDENT_LNK_USER` (`USER_ID_`),
+ KEY `ACT_IDX_IDENT_LNK_GROUP` (`GROUP_ID_`),
+ KEY `ACT_IDX_ATHRZ_PROCEDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_TSKASS_TASK` (`TASK_ID_`),
+ KEY `ACT_FK_IDL_PROCINST` (`PROC_INST_ID_`),
+ CONSTRAINT `ACT_FK_ATHRZ_PROCEDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_IDL_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TSKASS_TASK` FOREIGN KEY (`TASK_ID_`) REFERENCES `ACT_RU_TASK` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+
+-- ----------------------------
+-- Table structure for ACT_RU_INTEGRATION
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_INTEGRATION`;
+CREATE TABLE `ACT_RU_INTEGRATION` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `FLOW_NODE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATED_DATE_` timestamp(3) NULL DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_INT_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_INT_PROC_INST` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_INT_PROC_DEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_INT_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE,
+ CONSTRAINT `ACT_FK_INT_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_INT_PROC_INST` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_INTEGRATION
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_JOB`;
+CREATE TABLE `ACT_RU_JOB` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_JOB_EXCEPTION` (`EXCEPTION_STACK_ID_`),
+ CONSTRAINT `ACT_FK_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_JOB
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_SUSPENDED_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_SUSPENDED_JOB`;
+CREATE TABLE `ACT_RU_SUSPENDED_JOB` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_EXCEPTION` (`EXCEPTION_STACK_ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_SUSPENDED_JOB
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_TASK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_TASK`;
+CREATE TABLE `ACT_RU_TASK` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `BUSINESS_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DELEGATION_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PRIORITY_` int DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `DUE_DATE_` datetime(3) DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `FORM_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CLAIM_TIME_` datetime(3) DEFAULT NULL,
+ `APP_VERSION_` int DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_TASK_CREATE` (`CREATE_TIME_`),
+ KEY `ACT_FK_TASK_EXE` (`EXECUTION_ID_`),
+ KEY `ACT_FK_TASK_PROCINST` (`PROC_INST_ID_`),
+ KEY `ACT_FK_TASK_PROCDEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_TASK_EXE` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TASK_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_TASK_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_TIMER_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_TIMER_JOB`;
+CREATE TABLE `ACT_RU_TIMER_JOB` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_TIMER_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_TIMER_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_TIMER_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_TIMER_JOB_EXCEPTION` (`EXCEPTION_STACK_ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_RU_TIMER_JOB
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for ACT_RU_VARIABLE
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_VARIABLE`;
+CREATE TABLE `ACT_RU_VARIABLE` (
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_VARIABLE_TASK_ID` (`TASK_ID_`),
+ KEY `ACT_FK_VAR_EXE` (`EXECUTION_ID_`),
+ KEY `ACT_FK_VAR_PROCINST` (`PROC_INST_ID_`),
+ KEY `ACT_FK_VAR_BYTEARRAY` (`BYTEARRAY_ID_`),
+ CONSTRAINT `ACT_FK_VAR_BYTEARRAY` FOREIGN KEY (`BYTEARRAY_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_VAR_EXE` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_VAR_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin;
+
+SET FOREIGN_KEY_CHECKS = 1;
diff --git a/workflow-engine-server/src/main/resources/sql/bpm-flowable.sql b/workflow-engine-server/src/main/resources/sql/bpm-flowable.sql
new file mode 100644
index 000000000..797ee850e
--- /dev/null
+++ b/workflow-engine-server/src/main/resources/sql/bpm-flowable.sql
@@ -0,0 +1,1376 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server : 127.0.0.1
+ Source Server Type : MySQL
+ Source Server Version : 80026
+ Source Host : localhost:3306
+ Source Schema : ruoyi-vue-pro-flowable
+
+ Target Server Type : MySQL
+ Target Server Version : 80026
+ File Encoding : 65001
+
+ Date: 06/03/2022 15:04:36
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for ACT_EVT_LOG
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_EVT_LOG`;
+CREATE TABLE `ACT_EVT_LOG`
+(
+ `LOG_NR_` bigint NOT NULL AUTO_INCREMENT,
+ `TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_STAMP_` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DATA_` longblob,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `LOCK_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `IS_PROCESSED_` tinyint DEFAULT '0',
+ PRIMARY KEY (`LOG_NR_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_GE_BYTEARRAY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_GE_BYTEARRAY`;
+CREATE TABLE `ACT_GE_BYTEARRAY`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `BYTES_` longblob,
+ `GENERATED_` tinyint DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_BYTEARR_DEPL` (`DEPLOYMENT_ID_`),
+ CONSTRAINT `ACT_FK_BYTEARR_DEPL` FOREIGN KEY (`DEPLOYMENT_ID_`) REFERENCES `ACT_RE_DEPLOYMENT` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+
+-- ----------------------------
+-- Table structure for ACT_GE_PROPERTY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_GE_PROPERTY`;
+CREATE TABLE `ACT_GE_PROPERTY`
+(
+ `NAME_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `VALUE_` varchar(300) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ PRIMARY KEY (`NAME_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_GE_PROPERTY
+-- ----------------------------
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('batch.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('cfg.execution-related-entities-count', 'true', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('cfg.task-related-entities-count', 'true', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('common.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('entitylink.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('eventsubscription.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('identitylink.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('job.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('next.dbid', '1', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('schema.history', 'create(6.7.0.0)', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('task.schema.version', '6.7.0.0', 1);
+INSERT INTO `ACT_GE_PROPERTY`
+VALUES ('variable.schema.version', '6.7.0.0', 1);
+
+-- ----------------------------
+-- Table structure for ACT_HI_ACTINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_ACTINST`;
+CREATE TABLE `ACT_HI_ACTINST`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT '1',
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `ACT_ID_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CALL_PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `TRANSACTION_ORDER_` int DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_ACT_INST_START` (`START_TIME_`),
+ KEY `ACT_IDX_HI_ACT_INST_END` (`END_TIME_`),
+ KEY `ACT_IDX_HI_ACT_INST_PROCINST` (`PROC_INST_ID_`, `ACT_ID_`),
+ KEY `ACT_IDX_HI_ACT_INST_EXEC` (`EXECUTION_ID_`, `ACT_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_ATTACHMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_ATTACHMENT`;
+CREATE TABLE `ACT_HI_ATTACHMENT`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `URL_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CONTENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_` datetime(3) DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_COMMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_COMMENT`;
+CREATE TABLE `ACT_HI_COMMENT`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TIME_` datetime(3) NOT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACTION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `MESSAGE_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `FULL_MSG_` longblob,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_DETAIL
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_DETAIL`;
+CREATE TABLE `ACT_HI_DETAIL`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VAR_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ `TIME_` datetime(3) NOT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_DETAIL_PROC_INST` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_DETAIL_ACT_INST` (`ACT_INST_ID_`),
+ KEY `ACT_IDX_HI_DETAIL_TIME` (`TIME_`),
+ KEY `ACT_IDX_HI_DETAIL_NAME` (`NAME_`),
+ KEY `ACT_IDX_HI_DETAIL_TASK_ID` (`TASK_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_ENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_ENTITYLINK`;
+CREATE TABLE `ACT_HI_ENTITYLINK`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `LINK_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HIERARCHY_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_ENT_LNK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_HI_ENT_LNK_REF_SCOPE` (`REF_SCOPE_ID_`, `REF_SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_HI_ENT_LNK_ROOT_SCOPE` (`ROOT_SCOPE_ID_`, `ROOT_SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_HI_ENT_LNK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`, `LINK_TYPE_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_IDENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_IDENTITYLINK`;
+CREATE TABLE `ACT_HI_IDENTITYLINK`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `GROUP_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_USER` (`USER_ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_TASK` (`TASK_ID_`),
+ KEY `ACT_IDX_HI_IDENT_LNK_PROCINST` (`PROC_INST_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_PROCINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_PROCINST`;
+CREATE TABLE `ACT_HI_PROCINST`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT '1',
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `BUSINESS_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `START_USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `END_ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUPER_PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CALLBACK_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CALLBACK_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REFERENCE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REFERENCE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROPAGATED_STAGE_INST_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `PROC_INST_ID_` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_PRO_INST_END` (`END_TIME_`),
+ KEY `ACT_IDX_HI_PRO_I_BUSKEY` (`BUSINESS_KEY_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_TASKINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_TASKINST`;
+CREATE TABLE `ACT_HI_TASKINST`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT '1',
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROPAGATED_STAGE_INST_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `CLAIM_TIME_` datetime(3) DEFAULT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `PRIORITY_` int DEFAULT NULL,
+ `DUE_DATE_` datetime(3) DEFAULT NULL,
+ `FORM_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `LAST_UPDATED_TIME_` datetime(3) DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_TASK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_TASK_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_TASK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_TASK_INST_PROCINST` (`PROC_INST_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_TSK_LOG
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_TSK_LOG`;
+CREATE TABLE `ACT_HI_TSK_LOG`
+(
+ `ID_` bigint NOT NULL AUTO_INCREMENT,
+ `TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `TIME_STAMP_` timestamp(3) NOT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DATA_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_HI_VARINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_HI_VARINST`;
+CREATE TABLE `ACT_HI_VARINST`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT '1',
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VAR_TYPE_` varchar(100) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `LAST_UPDATED_TIME_` datetime(3) DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_HI_PROCVAR_NAME_TYPE` (`NAME_`, `VAR_TYPE_`),
+ KEY `ACT_IDX_HI_VAR_SCOPE_ID_TYPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_VAR_SUB_ID_TYPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_HI_PROCVAR_PROC_INST` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_HI_PROCVAR_TASK_ID` (`TASK_ID_`),
+ KEY `ACT_IDX_HI_PROCVAR_EXE` (`EXECUTION_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_BYTEARRAY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_BYTEARRAY`;
+CREATE TABLE `ACT_ID_BYTEARRAY`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `BYTES_` longblob,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_GROUP
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_GROUP`;
+CREATE TABLE `ACT_ID_GROUP`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_INFO
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_INFO`;
+CREATE TABLE `ACT_ID_INFO`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `USER_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `VALUE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PASSWORD_` longblob,
+ `PARENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_MEMBERSHIP
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_MEMBERSHIP`;
+CREATE TABLE `ACT_ID_MEMBERSHIP`
+(
+ `USER_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `GROUP_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ PRIMARY KEY (`USER_ID_`, `GROUP_ID_`),
+ KEY `ACT_FK_MEMB_GROUP` (`GROUP_ID_`),
+ CONSTRAINT `ACT_FK_MEMB_GROUP` FOREIGN KEY (`GROUP_ID_`) REFERENCES `ACT_ID_GROUP` (`ID_`),
+ CONSTRAINT `ACT_FK_MEMB_USER` FOREIGN KEY (`USER_ID_`) REFERENCES `ACT_ID_USER` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_PRIV
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_PRIV`;
+CREATE TABLE `ACT_ID_PRIV`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_UNIQ_PRIV_NAME` (`NAME_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_PRIV_MAPPING
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_PRIV_MAPPING`;
+CREATE TABLE `ACT_ID_PRIV_MAPPING`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PRIV_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `GROUP_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_PRIV_MAPPING` (`PRIV_ID_`),
+ KEY `ACT_IDX_PRIV_USER` (`USER_ID_`),
+ KEY `ACT_IDX_PRIV_GROUP` (`GROUP_ID_`),
+ CONSTRAINT `ACT_FK_PRIV_MAPPING` FOREIGN KEY (`PRIV_ID_`) REFERENCES `ACT_ID_PRIV` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_PROPERTY
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_PROPERTY`;
+CREATE TABLE `ACT_ID_PROPERTY`
+(
+ `NAME_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `VALUE_` varchar(300) COLLATE utf8_bin DEFAULT NULL,
+ `REV_` int DEFAULT NULL,
+ PRIMARY KEY (`NAME_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Records of ACT_ID_PROPERTY
+-- ----------------------------
+INSERT INTO `ACT_ID_PROPERTY`
+VALUES ('schema.version', '6.7.0.0', 1);
+
+-- ----------------------------
+-- Table structure for ACT_ID_TOKEN
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_TOKEN`;
+CREATE TABLE `ACT_ID_TOKEN`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TOKEN_VALUE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TOKEN_DATE_` timestamp(3) NULL DEFAULT NULL,
+ `IP_ADDRESS_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_AGENT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TOKEN_DATA_` varchar(2000) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_ID_USER
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_ID_USER`;
+CREATE TABLE `ACT_ID_USER`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `FIRST_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `LAST_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DISPLAY_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EMAIL_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PWD_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PICTURE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_PROCDEF_INFO
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_PROCDEF_INFO`;
+CREATE TABLE `ACT_PROCDEF_INFO`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `INFO_JSON_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_UNIQ_INFO_PROCDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_IDX_INFO_PROCDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_INFO_JSON_BA` (`INFO_JSON_ID_`),
+ CONSTRAINT `ACT_FK_INFO_JSON_BA` FOREIGN KEY (`INFO_JSON_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_INFO_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RE_DEPLOYMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_DEPLOYMENT`;
+CREATE TABLE `ACT_RE_DEPLOYMENT`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `DEPLOY_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `DERIVED_FROM_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DERIVED_FROM_ROOT_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_DEPLOYMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ENGINE_VERSION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RE_MODEL
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_MODEL`;
+CREATE TABLE `ACT_RE_MODEL`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LAST_UPDATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `VERSION_` int DEFAULT NULL,
+ `META_INFO_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EDITOR_SOURCE_VALUE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EDITOR_SOURCE_EXTRA_VALUE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_FK_MODEL_SOURCE` (`EDITOR_SOURCE_VALUE_ID_`),
+ KEY `ACT_FK_MODEL_SOURCE_EXTRA` (`EDITOR_SOURCE_EXTRA_VALUE_ID_`),
+ KEY `ACT_FK_MODEL_DEPLOYMENT` (`DEPLOYMENT_ID_`),
+ CONSTRAINT `ACT_FK_MODEL_DEPLOYMENT` FOREIGN KEY (`DEPLOYMENT_ID_`) REFERENCES `ACT_RE_DEPLOYMENT` (`ID_`),
+ CONSTRAINT `ACT_FK_MODEL_SOURCE` FOREIGN KEY (`EDITOR_SOURCE_VALUE_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_MODEL_SOURCE_EXTRA` FOREIGN KEY (`EDITOR_SOURCE_EXTRA_VALUE_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RE_PROCDEF
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RE_PROCDEF`;
+CREATE TABLE `ACT_RE_PROCDEF`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `KEY_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `VERSION_` int NOT NULL,
+ `DEPLOYMENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `RESOURCE_NAME_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DGRM_RESOURCE_NAME_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `HAS_START_FORM_KEY_` tinyint DEFAULT NULL,
+ `HAS_GRAPHICAL_NOTATION_` tinyint DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `ENGINE_VERSION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DERIVED_FROM_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DERIVED_FROM_ROOT_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DERIVED_VERSION_` int NOT NULL DEFAULT '0',
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_UNIQ_PROCDEF` (`KEY_`, `VERSION_`, `DERIVED_VERSION_`, `TENANT_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_ACTINST
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_ACTINST`;
+CREATE TABLE `ACT_RU_ACTINST`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT '1',
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `ACT_ID_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CALL_PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) NOT NULL,
+ `END_TIME_` datetime(3) DEFAULT NULL,
+ `DURATION_` bigint DEFAULT NULL,
+ `TRANSACTION_ORDER_` int DEFAULT NULL,
+ `DELETE_REASON_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_RU_ACTI_START` (`START_TIME_`),
+ KEY `ACT_IDX_RU_ACTI_END` (`END_TIME_`),
+ KEY `ACT_IDX_RU_ACTI_PROC` (`PROC_INST_ID_`),
+ KEY `ACT_IDX_RU_ACTI_PROC_ACT` (`PROC_INST_ID_`, `ACT_ID_`),
+ KEY `ACT_IDX_RU_ACTI_EXEC` (`EXECUTION_ID_`),
+ KEY `ACT_IDX_RU_ACTI_EXEC_ACT` (`EXECUTION_ID_`, `ACT_ID_`),
+ KEY `ACT_IDX_RU_ACTI_TASK` (`TASK_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_DEADLETTER_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_DEADLETTER_JOB`;
+CREATE TABLE `ACT_RU_DEADLETTER_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CORRELATION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_DEADLETTER_JOB_EXCEPTION_STACK_ID` (`EXCEPTION_STACK_ID_`),
+ KEY `ACT_IDX_DEADLETTER_JOB_CUSTOM_VALUES_ID` (`CUSTOM_VALUES_ID_`),
+ KEY `ACT_IDX_DEADLETTER_JOB_CORRELATION_ID` (`CORRELATION_ID_`),
+ KEY `ACT_IDX_DJOB_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_DJOB_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_DJOB_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_DEADLETTER_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_DEADLETTER_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_CUSTOM_VALUES` FOREIGN KEY (`CUSTOM_VALUES_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_DEADLETTER_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_ENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_ENTITYLINK`;
+CREATE TABLE `ACT_RU_ENTITYLINK`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `LINK_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REF_SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HIERARCHY_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_ENT_LNK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_ENT_LNK_REF_SCOPE` (`REF_SCOPE_ID_`, `REF_SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_ENT_LNK_ROOT_SCOPE` (`ROOT_SCOPE_ID_`, `ROOT_SCOPE_TYPE_`, `LINK_TYPE_`),
+ KEY `ACT_IDX_ENT_LNK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`, `LINK_TYPE_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_EVENT_SUBSCR
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_EVENT_SUBSCR`;
+CREATE TABLE `ACT_RU_EVENT_SUBSCR`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `EVENT_TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EVENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACTIVITY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CONFIGURATION_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATED_` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_EVENT_SUBSCR_CONFIG_` (`CONFIGURATION_`),
+ KEY `ACT_FK_EVENT_EXEC` (`EXECUTION_ID_`),
+ CONSTRAINT `ACT_FK_EVENT_EXEC` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_EXECUTION
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_EXECUTION`;
+CREATE TABLE `ACT_RU_EXECUTION`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `BUSINESS_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SUPER_EXEC_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ROOT_PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `IS_ACTIVE_` tinyint DEFAULT NULL,
+ `IS_CONCURRENT_` tinyint DEFAULT NULL,
+ `IS_SCOPE_` tinyint DEFAULT NULL,
+ `IS_EVENT_SCOPE_` tinyint DEFAULT NULL,
+ `IS_MI_ROOT_` tinyint DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `CACHED_ENT_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_ACT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `START_TIME_` datetime(3) DEFAULT NULL,
+ `START_USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `LOCK_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `IS_COUNT_ENABLED_` tinyint DEFAULT NULL,
+ `EVT_SUBSCR_COUNT_` int DEFAULT NULL,
+ `TASK_COUNT_` int DEFAULT NULL,
+ `JOB_COUNT_` int DEFAULT NULL,
+ `TIMER_JOB_COUNT_` int DEFAULT NULL,
+ `SUSP_JOB_COUNT_` int DEFAULT NULL,
+ `DEADLETTER_JOB_COUNT_` int DEFAULT NULL,
+ `EXTERNAL_WORKER_JOB_COUNT_` int DEFAULT NULL,
+ `VAR_COUNT_` int DEFAULT NULL,
+ `ID_LINK_COUNT_` int DEFAULT NULL,
+ `CALLBACK_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CALLBACK_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REFERENCE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `REFERENCE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROPAGATED_STAGE_INST_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_EXEC_BUSKEY` (`BUSINESS_KEY_`),
+ KEY `ACT_IDC_EXEC_ROOT` (`ROOT_PROC_INST_ID_`),
+ KEY `ACT_IDX_EXEC_REF_ID_` (`REFERENCE_ID_`),
+ KEY `ACT_FK_EXE_PROCINST` (`PROC_INST_ID_`),
+ KEY `ACT_FK_EXE_PARENT` (`PARENT_ID_`),
+ KEY `ACT_FK_EXE_SUPER` (`SUPER_EXEC_`),
+ KEY `ACT_FK_EXE_PROCDEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_EXE_PARENT` FOREIGN KEY (`PARENT_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE,
+ CONSTRAINT `ACT_FK_EXE_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_EXE_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `ACT_FK_EXE_SUPER` FOREIGN KEY (`SUPER_EXEC_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`) ON DELETE CASCADE
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_EXTERNAL_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_EXTERNAL_JOB`;
+CREATE TABLE `ACT_RU_EXTERNAL_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CORRELATION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_EXTERNAL_JOB_EXCEPTION_STACK_ID` (`EXCEPTION_STACK_ID_`),
+ KEY `ACT_IDX_EXTERNAL_JOB_CUSTOM_VALUES_ID` (`CUSTOM_VALUES_ID_`),
+ KEY `ACT_IDX_EXTERNAL_JOB_CORRELATION_ID` (`CORRELATION_ID_`),
+ KEY `ACT_IDX_EJOB_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_EJOB_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_EJOB_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ CONSTRAINT `ACT_FK_EXTERNAL_JOB_CUSTOM_VALUES` FOREIGN KEY (`CUSTOM_VALUES_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_EXTERNAL_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_HISTORY_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_HISTORY_JOB`;
+CREATE TABLE `ACT_RU_HISTORY_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ADV_HANDLER_CFG_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_IDENTITYLINK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_IDENTITYLINK`;
+CREATE TABLE `ACT_RU_IDENTITYLINK`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `GROUP_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `USER_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_IDENT_LNK_USER` (`USER_ID_`),
+ KEY `ACT_IDX_IDENT_LNK_GROUP` (`GROUP_ID_`),
+ KEY `ACT_IDX_IDENT_LNK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_IDENT_LNK_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_IDENT_LNK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_ATHRZ_PROCEDEF` (`PROC_DEF_ID_`),
+ KEY `ACT_FK_TSKASS_TASK` (`TASK_ID_`),
+ KEY `ACT_FK_IDL_PROCINST` (`PROC_INST_ID_`),
+ CONSTRAINT `ACT_FK_ATHRZ_PROCEDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_IDL_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TSKASS_TASK` FOREIGN KEY (`TASK_ID_`) REFERENCES `ACT_RU_TASK` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_JOB`;
+CREATE TABLE `ACT_RU_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CORRELATION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_JOB_EXCEPTION_STACK_ID` (`EXCEPTION_STACK_ID_`),
+ KEY `ACT_IDX_JOB_CUSTOM_VALUES_ID` (`CUSTOM_VALUES_ID_`),
+ KEY `ACT_IDX_JOB_CORRELATION_ID` (`CORRELATION_ID_`),
+ KEY `ACT_IDX_JOB_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_JOB_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_JOB_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_JOB_CUSTOM_VALUES` FOREIGN KEY (`CUSTOM_VALUES_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_SUSPENDED_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_SUSPENDED_JOB`;
+CREATE TABLE `ACT_RU_SUSPENDED_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CORRELATION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_SUSPENDED_JOB_EXCEPTION_STACK_ID` (`EXCEPTION_STACK_ID_`),
+ KEY `ACT_IDX_SUSPENDED_JOB_CUSTOM_VALUES_ID` (`CUSTOM_VALUES_ID_`),
+ KEY `ACT_IDX_SUSPENDED_JOB_CORRELATION_ID` (`CORRELATION_ID_`),
+ KEY `ACT_IDX_SJOB_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_SJOB_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_SJOB_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_SUSPENDED_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_SUSPENDED_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_CUSTOM_VALUES` FOREIGN KEY (`CUSTOM_VALUES_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_SUSPENDED_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_TASK
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_TASK`;
+CREATE TABLE `ACT_RU_TASK`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PROPAGATED_STAGE_INST_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `PARENT_TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DESCRIPTION_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_DEF_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ASSIGNEE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `DELEGATION_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PRIORITY_` int DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `DUE_DATE_` datetime(3) DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUSPENSION_STATE_` int DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ `FORM_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CLAIM_TIME_` datetime(3) DEFAULT NULL,
+ `IS_COUNT_ENABLED_` tinyint DEFAULT NULL,
+ `VAR_COUNT_` int DEFAULT NULL,
+ `ID_LINK_COUNT_` int DEFAULT NULL,
+ `SUB_TASK_COUNT_` int DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_TASK_CREATE` (`CREATE_TIME_`),
+ KEY `ACT_IDX_TASK_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_TASK_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_TASK_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_TASK_EXE` (`EXECUTION_ID_`),
+ KEY `ACT_FK_TASK_PROCINST` (`PROC_INST_ID_`),
+ KEY `ACT_FK_TASK_PROCDEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_TASK_EXE` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TASK_PROCDEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_TASK_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_TIMER_JOB
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_TIMER_JOB`;
+CREATE TABLE `ACT_RU_TIMER_JOB`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `CATEGORY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `LOCK_EXP_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `LOCK_OWNER_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `EXCLUSIVE_` tinyint(1) DEFAULT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROCESS_INSTANCE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_DEF_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `ELEMENT_NAME_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_DEFINITION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CORRELATION_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RETRIES_` int DEFAULT NULL,
+ `EXCEPTION_STACK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `EXCEPTION_MSG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `DUEDATE_` timestamp(3) NULL DEFAULT NULL,
+ `REPEAT_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `HANDLER_CFG_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `CUSTOM_VALUES_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` timestamp(3) NULL DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_TIMER_JOB_EXCEPTION_STACK_ID` (`EXCEPTION_STACK_ID_`),
+ KEY `ACT_IDX_TIMER_JOB_CUSTOM_VALUES_ID` (`CUSTOM_VALUES_ID_`),
+ KEY `ACT_IDX_TIMER_JOB_CORRELATION_ID` (`CORRELATION_ID_`),
+ KEY `ACT_IDX_TIMER_JOB_DUEDATE` (`DUEDATE_`),
+ KEY `ACT_IDX_TJOB_SCOPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_TJOB_SUB_SCOPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_TJOB_SCOPE_DEF` (`SCOPE_DEFINITION_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_TIMER_JOB_EXECUTION` (`EXECUTION_ID_`),
+ KEY `ACT_FK_TIMER_JOB_PROCESS_INSTANCE` (`PROCESS_INSTANCE_ID_`),
+ KEY `ACT_FK_TIMER_JOB_PROC_DEF` (`PROC_DEF_ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_CUSTOM_VALUES` FOREIGN KEY (`CUSTOM_VALUES_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_EXCEPTION` FOREIGN KEY (`EXCEPTION_STACK_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_EXECUTION` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_PROC_DEF` FOREIGN KEY (`PROC_DEF_ID_`) REFERENCES `ACT_RE_PROCDEF` (`ID_`),
+ CONSTRAINT `ACT_FK_TIMER_JOB_PROCESS_INSTANCE` FOREIGN KEY (`PROCESS_INSTANCE_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for ACT_RU_VARIABLE
+-- ----------------------------
+DROP TABLE IF EXISTS `ACT_RU_VARIABLE`;
+CREATE TABLE `ACT_RU_VARIABLE`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `NAME_` varchar(255) COLLATE utf8_bin NOT NULL,
+ `EXECUTION_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `PROC_INST_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TASK_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `BYTEARRAY_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `DOUBLE_` double DEFAULT NULL,
+ `LONG_` bigint DEFAULT NULL,
+ `TEXT_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ `TEXT2_` varchar(4000) COLLATE utf8_bin DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ KEY `ACT_IDX_RU_VAR_SCOPE_ID_TYPE` (`SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_IDX_RU_VAR_SUB_ID_TYPE` (`SUB_SCOPE_ID_`, `SCOPE_TYPE_`),
+ KEY `ACT_FK_VAR_BYTEARRAY` (`BYTEARRAY_ID_`),
+ KEY `ACT_IDX_VARIABLE_TASK_ID` (`TASK_ID_`),
+ KEY `ACT_FK_VAR_EXE` (`EXECUTION_ID_`),
+ KEY `ACT_FK_VAR_PROCINST` (`PROC_INST_ID_`),
+ CONSTRAINT `ACT_FK_VAR_BYTEARRAY` FOREIGN KEY (`BYTEARRAY_ID_`) REFERENCES `ACT_GE_BYTEARRAY` (`ID_`),
+ CONSTRAINT `ACT_FK_VAR_EXE` FOREIGN KEY (`EXECUTION_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`),
+ CONSTRAINT `ACT_FK_VAR_PROCINST` FOREIGN KEY (`PROC_INST_ID_`) REFERENCES `ACT_RU_EXECUTION` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+-- ----------------------------
+-- Table structure for FLW_CHANNEL_DEFINITION
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_CHANNEL_DEFINITION`;
+CREATE TABLE `FLW_CHANNEL_DEFINITION`
+(
+ `ID_` varchar(255) NOT NULL,
+ `NAME_` varchar(255) DEFAULT NULL,
+ `VERSION_` int DEFAULT NULL,
+ `KEY_` varchar(255) DEFAULT NULL,
+ `CATEGORY_` varchar(255) DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(255) DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) DEFAULT NULL,
+ `TENANT_ID_` varchar(255) DEFAULT NULL,
+ `RESOURCE_NAME_` varchar(255) DEFAULT NULL,
+ `DESCRIPTION_` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_IDX_CHANNEL_DEF_UNIQ` (`KEY_`, `VERSION_`, `TENANT_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_EV_DATABASECHANGELOG
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_EV_DATABASECHANGELOG`;
+CREATE TABLE `FLW_EV_DATABASECHANGELOG`
+(
+ `ID` varchar(255) NOT NULL,
+ `AUTHOR` varchar(255) NOT NULL,
+ `FILENAME` varchar(255) NOT NULL,
+ `DATEEXECUTED` datetime NOT NULL,
+ `ORDEREXECUTED` int NOT NULL,
+ `EXECTYPE` varchar(10) NOT NULL,
+ `MD5SUM` varchar(35) DEFAULT NULL,
+ `DESCRIPTION` varchar(255) DEFAULT NULL,
+ `COMMENTS` varchar(255) DEFAULT NULL,
+ `TAG` varchar(255) DEFAULT NULL,
+ `LIQUIBASE` varchar(20) DEFAULT NULL,
+ `CONTEXTS` varchar(255) DEFAULT NULL,
+ `LABELS` varchar(255) DEFAULT NULL,
+ `DEPLOYMENT_ID` varchar(10) DEFAULT NULL
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_EV_DATABASECHANGELOGLOCK
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_EV_DATABASECHANGELOGLOCK`;
+CREATE TABLE `FLW_EV_DATABASECHANGELOGLOCK`
+(
+ `ID` int NOT NULL,
+ `LOCKED` bit(1) NOT NULL,
+ `LOCKGRANTED` datetime DEFAULT NULL,
+ `LOCKEDBY` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`ID`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_EVENT_DEFINITION
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_EVENT_DEFINITION`;
+CREATE TABLE `FLW_EVENT_DEFINITION`
+(
+ `ID_` varchar(255) NOT NULL,
+ `NAME_` varchar(255) DEFAULT NULL,
+ `VERSION_` int DEFAULT NULL,
+ `KEY_` varchar(255) DEFAULT NULL,
+ `CATEGORY_` varchar(255) DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(255) DEFAULT NULL,
+ `TENANT_ID_` varchar(255) DEFAULT NULL,
+ `RESOURCE_NAME_` varchar(255) DEFAULT NULL,
+ `DESCRIPTION_` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`ID_`),
+ UNIQUE KEY `ACT_IDX_EVENT_DEF_UNIQ` (`KEY_`, `VERSION_`, `TENANT_ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_EVENT_DEPLOYMENT
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_EVENT_DEPLOYMENT`;
+CREATE TABLE `FLW_EVENT_DEPLOYMENT`
+(
+ `ID_` varchar(255) NOT NULL,
+ `NAME_` varchar(255) DEFAULT NULL,
+ `CATEGORY_` varchar(255) DEFAULT NULL,
+ `DEPLOY_TIME_` datetime(3) DEFAULT NULL,
+ `TENANT_ID_` varchar(255) DEFAULT NULL,
+ `PARENT_DEPLOYMENT_ID_` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_EVENT_RESOURCE
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_EVENT_RESOURCE`;
+CREATE TABLE `FLW_EVENT_RESOURCE`
+(
+ `ID_` varchar(255) NOT NULL,
+ `NAME_` varchar(255) DEFAULT NULL,
+ `DEPLOYMENT_ID_` varchar(255) DEFAULT NULL,
+ `RESOURCE_BYTES_` longblob,
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb4
+ COLLATE = utf8mb4_general_ci;
+
+-- ----------------------------
+-- Table structure for FLW_RU_BATCH
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_RU_BATCH`;
+CREATE TABLE `FLW_RU_BATCH`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `TYPE_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `SEARCH_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SEARCH_KEY2_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) NOT NULL,
+ `COMPLETE_TIME_` datetime(3) DEFAULT NULL,
+ `STATUS_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `BATCH_DOC_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+
+-- ----------------------------
+-- Table structure for FLW_RU_BATCH_PART
+-- ----------------------------
+DROP TABLE IF EXISTS `FLW_RU_BATCH_PART`;
+CREATE TABLE `FLW_RU_BATCH_PART`
+(
+ `ID_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `REV_` int DEFAULT NULL,
+ `BATCH_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TYPE_` varchar(64) COLLATE utf8_bin NOT NULL,
+ `SCOPE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SUB_SCOPE_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SCOPE_TYPE_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `SEARCH_KEY_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `SEARCH_KEY2_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `CREATE_TIME_` datetime(3) NOT NULL,
+ `COMPLETE_TIME_` datetime(3) DEFAULT NULL,
+ `STATUS_` varchar(255) COLLATE utf8_bin DEFAULT NULL,
+ `RESULT_DOC_ID_` varchar(64) COLLATE utf8_bin DEFAULT NULL,
+ `TENANT_ID_` varchar(255) COLLATE utf8_bin DEFAULT '',
+ PRIMARY KEY (`ID_`),
+ KEY `FLW_IDX_BATCH_PART` (`BATCH_ID_`),
+ CONSTRAINT `FLW_FK_BATCH_PART_PARENT` FOREIGN KEY (`BATCH_ID_`) REFERENCES `FLW_RU_BATCH` (`ID_`)
+) ENGINE = InnoDB
+ DEFAULT CHARSET = utf8mb3
+ COLLATE = utf8_bin;
+
+
+SET FOREIGN_KEY_CHECKS = 1;
diff --git a/workflow-engine-server/src/test/java/cn/axzo/maven/archetype/server/AppTest.java b/workflow-engine-server/src/test/java/cn/axzo/maven/archetype/server/AppTest.java
new file mode 100644
index 000000000..f5b53190e
--- /dev/null
+++ b/workflow-engine-server/src/test/java/cn/axzo/maven/archetype/server/AppTest.java
@@ -0,0 +1,14 @@
+package cn.axzo.maven.archetype.server;
+
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+/**
+ * Unit test for simple App.
+ */
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class AppTest {
+
+}