[Open Source] Workflow System Based on Activiti7 and Compliant with the BPMN2.0 Specification
![[Open Source] Workflow System Based on Activiti7 and Compliant with the BPMN2.0 Specification](https://yy123.ink/api/img/1782593261062-hjqlxj.jpg)
1. Project Overview
The z6-BPM workflow system follows the BPMN2.0 specification and is developed based on Activiti7, featuring a frontend-backend separated architecture. It supports various approval actions, such as joint approval, additional approval, return, and rejection. It also supports multiple processing rules based on personnel, roles, positions, departments, and more. Built-in features include a workflow designer, form designer, task processing, and workflow monitoring.
The backend uses frameworks such as Spring Boot + My Batis + Security + Oauth2.0 + Redis and supports microservices.
2. Open Source License
Licensed under MIT
3. Screenshots

4. Feature Overview
1. The z6-BPM workflow system follows the BPMN2.0 specification and is developed based on Activiti7, featuring a frontend-backend separated architecture;
2. Designed and extended with features tailored to domestic approval workflows;
3. Supports various approval actions, such as joint approval, additional approval, return, and rejection;
4. Supports multiple processing rules based on personnel, roles, positions, departments, and more;
5. Built-in features include a workflow designer, form designer, task processing, and workflow monitoring;
6. Supports conditional branching, aggregation, and manual selection of execution paths;
7. Supports visual form design with no manual modeling required, providing a What You See Is What You Get (WYSIWYG) experience;
8. Supports microservices.
5. Tech Stack
Software Architecture
Backend: Spring Boot + My Batis + Security + Oauth2.0 + Redis
Database: mysql
Frontend: vue 2.0 + elementui
Microservices Architecture
Backend: Spring Boot, Spring Cloud Alibaba
Service Registry: Nacos
Authentication and Authorization: Security, Jwt, Redis
Traffic Control: Sentinel
Distributed Transactions: Seata (AT)
Distributed Tracing: SkyWalking
Database: mysql
Frontend: vue 2.0 + elementui
Installation Guide
-
After downloading the source code, open the doc/sql folder and execute the SQL scripts in the database. The database must be configured to be case-insensitive.
-
Open the project with IntelliJ IDEA and modify the z-six yml file.
-
Check the database connection and Redis configuration.
-
Add the SFTP configuration.
-
After confirming that everything is correct, run zsixapplication.
-
Delete package-lock.json under zsix-vue-bpm.
-
Open Terminal and run the command cd zsix-vue-bpm.
Using npm:
npm install --legacy-peer-deps
npm run server
Using yarn:
yarn install
yarn run server
System Deployment
1. Package z-six.
2. Package zsix-vue-bpm using the command npm run build.
3. Configure the packaged dist directory using Nginx.