[Open Source] Workflow Engine, a DingTalk-style Approval Process Designer Crafted for China's Unique Approval Workflows

Open SourceProcess Management
2026-06-28 04:50 4 次浏览 • 1 次下载 0KB
[Open Source] Workflow Engine, a DingTalk-style Approval Process Designer Crafted for China's Unique Approval Workflows

1. Project Overview

FlowLong Workflow: A Truly China-Built Workflow Engine, JSON-Based Instance Models, a DingTalk-Style Approval Process Designer, Carefully Crafted for Chinese Approval Scenarios ❗

2. Open Source License

Licensed under AGPL-3.0

3. Screenshots

Image

Image

Image

4. Feature Overview

FlowLong Workflow: A Truly China-Built Workflow Engine, JSON-Based Instance Models, a DingTalk-Style Approval Process Designer, Carefully Crafted for Chinese Approval Scenarios ❗

FlowLong Workflow

  • Project Description: FlowLong, whose Chinese name is Feilong (Flying Dragon), represents the beautiful vision of a flying dragon soaring into the sky!

The English abbreviation FLW stands for FlowLong Workflow.

Chinese-Style Workflow Operation Concepts

Supported Features

Feature Description

Sequential Countersignature

Multiple people can be assigned to the same approval node, such as A, B, and C. They receive pending tasks sequentially: A approves first, and only after A submits the approval can B proceed. All participants must approve before the process moves to the next approval node.

Parallel Countersignature

Multiple people can be assigned to the same approval node, such as A, B, and C. All three receive pending tasks simultaneously. All participants must approve before the process moves to the next approval node.

Any-One Approval

Multiple handlers are assigned to a workflow approval node. The process can move to the next node as soon as any one of them completes the task.

Weighted Voting

Multiple people can be assigned to the same approval node, such as A, B, and C, with different voting weights assigned to each person. The process can move to the next node when the voting weight ratio exceeds 50%.

CC Notification

Notify the corresponding people in the CC list of the approval results.

Rejection

Reset the approval process and send it back to a specified node for re-approval. Rejection is also called returning or sending back. Supported options include returning to the applicant, returning to the previous step, and returning to any specified node.

Assignment

Allows users to independently decide on task transfer, delegation, primary handling, and other arrangements.

Transfer

A transfers the task to B for approval. After B approves, the process moves to the next node.

Delegation

A delegates the task to B for approval. After B approves, the task is returned to A. After A approves, the process moves to the next node.

Jump

Allows the current workflow instance to jump to any processing node.

Take Back

Before the current handler processes the document, the submitter from the previous node is allowed to take it back.

Revoke

The workflow initiator can revoke the workflow.

Add Signer

Allows the current handler to add additional handlers to the current processing node as needed.

Remove Approver

Remove handlers before the current handler takes action.

Claim

Claim public tasks.

Mark as Read

Display whether a task has been viewed.

Reminder

Notify the handler of the current active task to process it.

Communication

Communicate with the handler of the current active task.

Terminate

Terminate a workflow instance at any node.

Features

Lightweight Yet Powerful

The engine core uses only 8 tables to implement logical data storage. Model structures are stored in JSON format, making them simple and intuitive.

Component-Based Integration

Adopts a component-based design for easy integration into any development platform. Its plug-and-play interface design enables more flexible custom extensions.

Chinese-Style Approval

Supports Chinese-style approval features such as dynamic signer addition, arbitrary rejection, take-back, revocation, read confirmation, and communication.

5. Tech Stack

Structure Overview

The following is a brief introduction to the project's core structure.

|- db                               Directory for storing database files
|- flowlong-core                    Workflow core library
|- flowlong-mybatis-plus            Data access layer, used by default MybatisPlus Of course, you can also adapt it to other implementations. ORM
|- flowlong-solon-example           Solon Demo Examples
|- flowlong-solon-plugin            Solon Start Plugin
|- flowlong-spring-boot-example     SpringBoot Demo Examples
|- flowlong-spring-boot-starter     SpringBoot Start Plugin
|- build.gradle                     Gradle Dependency Management
|- pom.xml                          Maven Dependency Management

Other Notes

  • Implemented using MybatisPlus as the ORM layer.

  • The backend design references the open-source SnakerFlow workflow entity classification.

  • References design concepts from mainstream workflow engines, including Flowable and Camunda.

#1
资源直链https://gitee.com/aizuda/flowlong
去下载
星河码客

发现和分享优质开源项目,传承互联网精神,为开发者服务。

关于本站

联系我们

微信/广告合作:ITcloub (备注星河码客)

免责声明:本站资源版权归原作者所有,仅供学习与交流。如有侵权,请通过「关于我们 - 侵权投诉」联系删除。

Powered by Nuxt · Deployed on Cloudflare