AntFlow 开源OA审批工作流系统技术文档

【免费下载链接】AntFlow-activiti 🐜AntFlow is an activiti based,🛩︎battle tested,enterprise grade workflow engine.It is easy to use,easy to maintenance. If you love it,please ⭐️ it 🐜 AntFlow是一款基于Activiti深度定制的,久经生产考验的企业级低代码工作流平台,包含前端设计器和后端代码。设计上参考了钉钉工作流,比钉钉工作流功能更强大,更易于扩展,可以作为钉钉工作流的开源替代。如果喜欢请给颗⭐️,你的鼓励是我在开源路上前进的最大动力 【免费下载链接】AntFlow-activiti 项目地址: https://gitcode.com/zypqqgc/AntFlow

1. 安装指南

1.1 环境要求

  • Java版本: Java 8-21 (主分支为Java 8版本,如需使用新版本请切换至java17_support分支)
  • 数据库: MySQL 5.7+
  • 其他依赖:
    • Activiti 5.23
    • Spring Boot 2.7.17
    • MybatisPlus 3.5.1

1.2 数据库配置

  1. 创建MySQL数据库实例
  2. 执行项目中的SQL初始化脚本
  3. 修改application.yml中的数据库连接配置

2. 项目安装方式

2.1 源码安装

git clone https://github.com/xxx/AntFlow.git
cd AntFlow
# 使用Java 8
mvn clean install
# 或使用Java 17+
git checkout java17_support
mvn clean install

2.2 Docker部署

docker pull antflow/official-image:latest
docker run -p 8080:8080 -e DB_URL=jdbc:mysql://your-db-host:3306/antflow antflow/official-image

3. 项目使用说明

3.1 系统初始化

  1. 启动应用后访问 http://localhost:8080
  2. 使用默认管理员账号登录(admin/admin123)
  3. 初始化系统角色和权限

3.2 工作流配置

  1. 进入"流程设计"界面
  2. 通过拖拽方式添加审批节点
  3. 配置节点属性:
    • 审批人设置
    • 条件分支配置
    • 表单字段映射
  4. 保存并发布流程

3.3 流程监控

  1. 管理员可在"流程监控"界面查看所有运行中的流程
  2. 支持按条件筛选流程实例
  3. 可查看每个流程的审批路径和当前状态

4. 项目API使用文档

4.1 核心API接口

4.1.1 流程启动API
@PostMapping("/process/start")
public Response startProcess(
    @RequestParam String processDefinitionKey,
    @RequestBody Map<String, Object> variables) {
    // 实现代码
}
4.1.2 任务审批API
@PostMapping("/task/complete")
public Response completeTask(
    @RequestParam String taskId,
    @RequestBody ApprovalVO approvalVO) {
    // 实现代码
}
4.1.3 流程查询API
@GetMapping("/process/instances")
public Response queryProcessInstances(
    @RequestParam(required = false) String processDefinitionKey,
    @RequestParam(required = false) String starter) {
    // 实现代码
}

4.2 业务集成接口

AntFlow提供了标准接口IWorkflowBusinessService,开发者只需实现该接口即可将业务系统与工作流引擎集成:

public interface IWorkflowBusinessService {
    /**
     * 获取业务表单数据
     */
    BusinessFormDTO getBusinessFormData(String businessKey);
    
    /**
     * 业务审批回调
     */
    void onApprovalComplete(String businessKey, ApprovalResult result);
}

5. 高级功能

5.1 条件分支配置

  1. 支持基于表单字段的条件表达式
  2. 支持多条件组合(AND/OR)
  3. 提供可视化条件配置面板

5.2 审批人设置

  1. 支持固定审批人
  2. 支持按角色/部门指定
  3. 支持动态审批人(基于发起人关系)

5.3 流程版本控制

  1. 自动维护流程定义版本
  2. 支持流程回退到历史版本
  3. 新版本发布不影响运行中的流程实例

6. 常见问题解答

Q: 如何添加自定义表单字段? A: 在流程设计器中点击"表单设计"选项卡,可添加和配置自定义字段

Q: 如何实现会签功能? A: 在审批节点属性中设置"多人审批"选项,并选择"全部通过"或"一人通过"策略

Q: 系统支持哪些数据库? A: 目前官方支持MySQL 5.7+,但可通过修改数据源配置支持其他关系型数据库

【免费下载链接】AntFlow-activiti 🐜AntFlow is an activiti based,🛩︎battle tested,enterprise grade workflow engine.It is easy to use,easy to maintenance. If you love it,please ⭐️ it 🐜 AntFlow是一款基于Activiti深度定制的,久经生产考验的企业级低代码工作流平台,包含前端设计器和后端代码。设计上参考了钉钉工作流,比钉钉工作流功能更强大,更易于扩展,可以作为钉钉工作流的开源替代。如果喜欢请给颗⭐️,你的鼓励是我在开源路上前进的最大动力 【免费下载链接】AntFlow-activiti 项目地址: https://gitcode.com/zypqqgc/AntFlow

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐