wuwenyi 2 týždňov pred
rodič
commit
6ec627782d

+ 4 - 4
src/main/resources/application-test.yml

@@ -1,9 +1,9 @@
 spring:
 spring:
   datasource:
   datasource:
-    url: jdbc:h2:mem:testdb;MODE=MySQL;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
-    driver-class-name: org.h2.Driver
-    username: sa
-    password:
+    url: jdbc:mysql://localhost:3306/qqflowengine_test?useUnicode=true&characterEncoding=utf8mb4&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    username: root
+    password: root
   sql:
   sql:
     init:
     init:
       mode: always
       mode: always

+ 25 - 24
src/main/resources/data-test.sql

@@ -1,4 +1,4 @@
-INSERT INTO sys_dept (id, dept_name, dept_code, parent_id, sort_order, status) VALUES
+REPLACE INTO sys_dept (id, dept_name, dept_code, parent_id, sort_order, status) VALUES
 (1, '总裁办', 'CEO', 0, 1, 1),
 (1, '总裁办', 'CEO', 0, 1, 1),
 (2, '技术部', 'TECH', 0, 2, 1),
 (2, '技术部', 'TECH', 0, 2, 1),
 (3, '财务部', 'FIN', 0, 3, 1),
 (3, '财务部', 'FIN', 0, 3, 1),
@@ -6,19 +6,19 @@ INSERT INTO sys_dept (id, dept_name, dept_code, parent_id, sort_order, status) V
 (5, '前端组', 'FE', 2, 1, 1),
 (5, '前端组', 'FE', 2, 1, 1),
 (6, '后端组', 'BE', 2, 2, 1);
 (6, '后端组', 'BE', 2, 2, 1);
 
 
-INSERT INTO sys_user (id, username, password, real_name, phone, email, dept_id, employee_type, status) VALUES
-(1, 'admin', '$2b$12$B2r04wTw.x8QETBh3AA5WeZF5fPW3fiBCUQgJ1Jy5zY.E0T9fO1aC', '超级管理员', '13800138000', 'admin@qqflow.com', 1, 'super_admin', 0),
-(2, 'zhangsan', '$2b$12$B2r04wTw.x8QETBh3AA5WeZF5fPW3fiBCUQgJ1Jy5zY.E0T9fO1aC', '张三', '13800138001', 'zhangsan@qqflow.com', 2, 'common_user', 0),
-(3, 'lisi', '$2b$12$B2r04wTw.x8QETBh3AA5WeZF5fPW3fiBCUQgJ1Jy5zY.E0T9fO1aC', '李四', '13800138002', 'lisi@qqflow.com', 3, 'dept_manager', 0),
-(4, 'wangwu', '$2b$12$B2r04wTw.x8QETBh3AA5WeZF5fPW3fiBCUQgJ1Jy5zY.E0T9fO1aC', '王五', '13800138003', 'wangwu@qqflow.com', 4, 'flow_manager', 0);
+REPLACE INTO sys_user (id, username, password, real_name, phone, email, dept_id, employee_type, status) VALUES
+(1, 'admin', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', '超级管理员', '13800138000', 'admin@qqflow.com', 1, 'super_admin', 0),
+(2, 'zhangsan', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', '张三', '13800138001', 'zhangsan@qqflow.com', 2, 'common_user', 0),
+(3, 'lisi', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', '李四', '13800138002', 'lisi@qqflow.com', 3, 'dept_manager', 0),
+(4, 'wangwu', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', '王五', '13800138003', 'wangwu@qqflow.com', 4, 'flow_manager', 0);
 
 
-INSERT INTO sys_role (id, role_code, role_name, role_scope, parent_id, dept_id, status) VALUES
-(1, 'super_admin', '超级管理员', 'platform', 0, 1, 1),
-(2, 'flow_admin', '流程管理员', 'tenant', 0, 1, 1),
-(3, 'normal_user', '普通用户', 'tenant', 0, 2, 1),
-(4, 'dept_manager', '部门经理', 'tenant', 3, 3, 1);
+REPLACE INTO sys_role (id, role_code, role_name, role_scope, parent_id, dept_id, username, password, status) VALUES
+(1, 'super_admin', '超级管理员', 'platform', 0, 1, 'role_super_admin', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', 1),
+(2, 'flow_admin', '流程管理员', 'tenant', 0, 1, 'role_flow_admin', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', 1),
+(3, 'normal_user', '普通用户', 'tenant', 0, 2, 'role_normal_user', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', 1),
+(4, 'dept_manager', '部门经理', 'tenant', 0, 3, 'role_dept_manager', '$2a$10$Wnh8Jnt2AGHNNu1XTyyNveqkXvE1BnuzvHt1xS5AL3YdDif/7iXta', 1);
 
 
-INSERT INTO sys_menu (id, menu_name, menu_type, permission, parent_id, sort_order, component, icon, status) VALUES
+REPLACE INTO sys_menu (id, menu_name, menu_type, permission, parent_id, sort_order, component, icon, status) VALUES
 (1, '系统管理', 0, NULL, 0, 1, NULL, 'Setting', 1),
 (1, '系统管理', 0, NULL, 0, 1, NULL, 'Setting', 1),
 (2, '用户管理', 1, 'system:user:list', 1, 1, 'system/user/index', 'User', 1),
 (2, '用户管理', 1, 'system:user:list', 1, 1, 'system/user/index', 'User', 1),
 (3, '角色管理', 1, 'system:role:list', 1, 2, 'system/role/index', 'Role', 1),
 (3, '角色管理', 1, 'system:role:list', 1, 2, 'system/role/index', 'Role', 1),
@@ -27,7 +27,8 @@ INSERT INTO sys_menu (id, menu_name, menu_type, permission, parent_id, sort_orde
 (6, '流程定义', 1, 'flow:definition:list', 4, 2, 'flow/definition/index', 'Document', 1),
 (6, '流程定义', 1, 'flow:definition:list', 4, 2, 'flow/definition/index', 'Document', 1),
 (7, '审批中心', 0, NULL, 0, 3, NULL, 'Stamp', 1),
 (7, '审批中心', 0, NULL, 0, 3, NULL, 'Stamp', 1),
 (8, '我的待办', 1, 'flow:task:todo', 7, 1, 'flow/task/todo', 'Bell', 1),
 (8, '我的待办', 1, 'flow:task:todo', 7, 1, 'flow/task/todo', 'Bell', 1),
-(9, '我的流程', 1, 'flow:instance:mine', 7, 2, 'flow/instance/mine', 'List', 1),
+(17, '我的已办', 1, 'flow:task:handled', 7, 2, 'flow/task/handled', 'CircleCheck', 1),
+(9, '我的流程', 1, 'flow:instance:mine', 7, 3, 'flow/instance/mine', 'List', 1),
 (10, '新增用户', 2, 'system:user:create', 2, 1, NULL, NULL, 1),
 (10, '新增用户', 2, 'system:user:create', 2, 1, NULL, NULL, 1),
 (11, '编辑用户', 2, 'system:user:update', 2, 2, NULL, NULL, 1),
 (11, '编辑用户', 2, 'system:user:update', 2, 2, NULL, NULL, 1),
 (12, '删除用户', 2, 'system:user:delete', 2, 3, NULL, NULL, 1),
 (12, '删除用户', 2, 'system:user:delete', 2, 3, NULL, NULL, 1),
@@ -36,15 +37,15 @@ INSERT INTO sys_menu (id, menu_name, menu_type, permission, parent_id, sort_orde
 (15, '审批通过', 2, 'flow:task:approve', 8, 1, NULL, NULL, 1),
 (15, '审批通过', 2, 'flow:task:approve', 8, 1, NULL, NULL, 1),
 (16, '审批拒绝', 2, 'flow:task:reject', 8, 2, NULL, NULL, 1);
 (16, '审批拒绝', 2, 'flow:task:reject', 8, 2, NULL, NULL, 1);
 
 
-INSERT INTO sys_user_role (user_id, role_id) VALUES
-(1, 1),
-(2, 4),
-(3, 3),
-(4, 3);
+REPLACE INTO sys_user_role (id, user_id, role_id) VALUES
+(1, 1, 1),
+(2, 2, 4),
+(3, 3, 3),
+(4, 4, 3);
 
 
-INSERT INTO sys_role_menu (role_id, menu_id) VALUES
-(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9),
-(1, 10), (1, 11), (1, 12), (1, 13), (1, 14), (1, 15), (1, 16),
-(2, 4), (2, 5), (2, 6), (2, 13), (2, 14),
-(3, 7), (3, 8), (3, 9), (3, 15), (3, 16),
-(4, 7), (4, 8), (4, 9), (4, 15), (4, 16);
+REPLACE INTO sys_role_menu (id, role_id, menu_id) VALUES
+(1, 1, 1), (2, 1, 2), (3, 1, 3), (4, 1, 4), (5, 1, 5), (6, 1, 6), (7, 1, 7), (8, 1, 8), (9, 1, 9),
+(10, 1, 10), (11, 1, 11), (12, 1, 12), (13, 1, 13), (14, 1, 14), (15, 1, 15), (16, 1, 16), (32, 1, 17),
+(17, 2, 4), (18, 2, 5), (19, 2, 6), (20, 2, 13), (21, 2, 14),
+(22, 3, 7), (23, 3, 8), (24, 3, 9), (25, 3, 15), (26, 3, 16),
+(27, 4, 7), (28, 4, 8), (29, 4, 9), (30, 4, 15), (31, 4, 16);

+ 21 - 19
src/main/resources/schema-test.sql

@@ -9,8 +9,8 @@ CREATE TABLE IF NOT EXISTS sys_user (
     employee_type VARCHAR(20) DEFAULT 'common_user',
     employee_type VARCHAR(20) DEFAULT 'common_user',
     status TINYINT DEFAULT 0,
     status TINYINT DEFAULT 0,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
-);
+    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS sys_role (
 CREATE TABLE IF NOT EXISTS sys_role (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -19,9 +19,11 @@ CREATE TABLE IF NOT EXISTS sys_role (
     role_scope VARCHAR(20) DEFAULT 'tenant',
     role_scope VARCHAR(20) DEFAULT 'tenant',
     parent_id BIGINT DEFAULT 0,
     parent_id BIGINT DEFAULT 0,
     dept_id BIGINT DEFAULT 0,
     dept_id BIGINT DEFAULT 0,
+    username VARCHAR(50),
+    password VARCHAR(100),
     status TINYINT DEFAULT 1,
     status TINYINT DEFAULT 1,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS sys_menu (
 CREATE TABLE IF NOT EXISTS sys_menu (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -33,21 +35,21 @@ CREATE TABLE IF NOT EXISTS sys_menu (
     component VARCHAR(200),
     component VARCHAR(200),
     icon VARCHAR(50),
     icon VARCHAR(50),
     status TINYINT DEFAULT 1
     status TINYINT DEFAULT 1
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS sys_user_role (
 CREATE TABLE IF NOT EXISTS sys_user_role (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     user_id BIGINT NOT NULL,
     user_id BIGINT NOT NULL,
     role_id BIGINT NOT NULL,
     role_id BIGINT NOT NULL,
     UNIQUE KEY uk_user_role (user_id, role_id)
     UNIQUE KEY uk_user_role (user_id, role_id)
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS sys_role_menu (
 CREATE TABLE IF NOT EXISTS sys_role_menu (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     role_id BIGINT NOT NULL,
     role_id BIGINT NOT NULL,
     menu_id BIGINT NOT NULL,
     menu_id BIGINT NOT NULL,
     UNIQUE KEY uk_role_menu (role_id, menu_id)
     UNIQUE KEY uk_role_menu (role_id, menu_id)
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS sys_dept (
 CREATE TABLE IF NOT EXISTS sys_dept (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -58,7 +60,7 @@ CREATE TABLE IF NOT EXISTS sys_dept (
     sort_order INT DEFAULT 0,
     sort_order INT DEFAULT 0,
     status TINYINT DEFAULT 1,
     status TINYINT DEFAULT 1,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS bpm_process_definition (
 CREATE TABLE IF NOT EXISTS bpm_process_definition (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -73,9 +75,9 @@ CREATE TABLE IF NOT EXISTS bpm_process_definition (
     create_by BIGINT,
     create_by BIGINT,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     update_by BIGINT,
     update_by BIGINT,
-    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
     deleted TINYINT DEFAULT 0
     deleted TINYINT DEFAULT 0
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS bpm_process_instance (
 CREATE TABLE IF NOT EXISTS bpm_process_instance (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -88,13 +90,13 @@ CREATE TABLE IF NOT EXISTS bpm_process_instance (
     form_data TEXT,
     form_data TEXT,
     current_node_id VARCHAR(50),
     current_node_id VARCHAR(50),
     status TINYINT DEFAULT 0,
     status TINYINT DEFAULT 0,
-    result TINYINT,
+    result VARCHAR(20),
     start_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     start_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    end_time TIMESTAMP,
+    end_time TIMESTAMP NULL,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
     deleted TINYINT DEFAULT 0
     deleted TINYINT DEFAULT 0
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS bpm_approval_task (
 CREATE TABLE IF NOT EXISTS bpm_approval_task (
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
     id BIGINT PRIMARY KEY AUTO_INCREMENT,
@@ -105,18 +107,18 @@ CREATE TABLE IF NOT EXISTS bpm_approval_task (
     assignee_id BIGINT,
     assignee_id BIGINT,
     assignee_type VARCHAR(20),
     assignee_type VARCHAR(20),
     task_status TINYINT DEFAULT 0,
     task_status TINYINT DEFAULT 0,
-    approval_result TINYINT,
+    approval_result VARCHAR(20),
     approval_comment TEXT,
     approval_comment TEXT,
     attachment_urls TEXT,
     attachment_urls TEXT,
-    timeout_time TIMESTAMP,
+    timeout_time TIMESTAMP NULL,
     timeout_action VARCHAR(20),
     timeout_action VARCHAR(20),
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
-    handle_time TIMESTAMP,
+    handle_time TIMESTAMP NULL,
     deleted TINYINT DEFAULT 0
     deleted TINYINT DEFAULT 0
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
 
 CREATE TABLE IF NOT EXISTS bpm_approval_record (
 CREATE TABLE IF NOT EXISTS bpm_approval_record (
-    id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
+    id BIGINT PRIMARY KEY AUTO_INCREMENT,
     task_id BIGINT NOT NULL,
     task_id BIGINT NOT NULL,
     instance_id BIGINT NOT NULL,
     instance_id BIGINT NOT NULL,
     node_id VARCHAR(50) NOT NULL,
     node_id VARCHAR(50) NOT NULL,
@@ -129,4 +131,4 @@ CREATE TABLE IF NOT EXISTS bpm_approval_record (
     attachment_urls TEXT,
     attachment_urls TEXT,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     deleted TINYINT DEFAULT 0
     deleted TINYINT DEFAULT 0
-);
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;