[开源]一款轻量级通用权限管理后台系统框架,含低代码工作流引擎

开源系统流程管理
2026-06-28 06:09 4 次浏览 • 0 次下载 0KB
[开源]一款轻量级通用权限管理后台系统框架,含低代码工作流引擎

一、开源项目简介

Blue Admin

基于 Spring Boot 3 + Vue 3 构建的轻量级通用权限管理后台系统框架,前后端分离架构,开箱即用。 框架内部实现了一套完全独立设计开发的低代码工作流引擎(非集成开源BPM产品),能轻松接入常用OA流程审批业务,欢迎大家多多体验。

二、开源协议

使用Apache-2.0开源协议

三、界面展示

页面展示

图片
图片
图片
图片
图片

四、功能概述

功能特性

  • 完整的RBAC权限控制(用户-角色-权限)
  • 模块化设计,代码结构清晰
  • 内置基础权限管理、系统功能、定时任务模块
  • 内置低代码工作流引擎,支持流程跳转(同意/拒绝/退回/转办/加签/撤销/重新发起/抄送)以及审批流程中间节点数据修改等功能
  • 内置AI助手功能【基于 spring AI 已支持 deepseek(聊天)、openai(聊天,上下文理解,文生图,图片识别功能) api 接入】
  • 前后端crud代码一键生成
  • 前后端分离架构,restful api 设计
  • 支持动态路由和页面权限控制
  • JWT身份认证与鉴权

工作流引擎开发计划

功能

状态

备注

流程定义配置

已完成

基础属性配置/表单配置/流程节点配置

流程版本管理

已完成

 

流程跳转基础功能

已完成

同意/拒绝/退回/撤销/重新发起

流程通知消息

已完成

流程跳转会给相应的处理人发送通知消息/待办消息

过程节点数据修改

已完成

流程过程节点支持审批数据修改(通过流程定义中的表单配置字段为可修改类型)

多人审批(会签/或签)

已完成

会签-需所有人审批同意,不限顺序/或签-只需一名审批人同意或拒绝即可

自选审批人

已完成

根据流程节点配置的用户/角色/部门信息可自选单个或多个满足权限配置的用户进行下一节点审批

流程功能扩展

已完成

抄送/转办/加签

优化代码

进行中

 

五、技术选型

技术栈

后端(blue-boot)

  • 核心框架
    : Spring Boot 3.2
  • 持久层
    : MyBatis-Plus 3.5
  • 数据库
    : MySQL 5.7/8.0
  • 任务调度
    : Quartz
  • 工具集
    : Lombok, Hutool ...

前端(blue-boot-vue)

  • 核心框架
    : Vue 3.5.10 + JavaScript
  • UI组件
    : Element Plus
  • 状态管理
    : Pinia
  • 路由管理
    : Vue Router 4
  • 构建工具
    : Vite 4

目前项目共有四个分支

  • master:整合了下面分支所有功能
  • base:包含基础权限管理、系统功能、定时任务模块功能
  • extend-ai:在base基础上添加了ai助手功能(基于spring AI调用模型api)
  • extend-workflow:在base基础上添加了低代码工作流引擎

启动项目

后端启动

  • 安装 JDK 17+ 、 Maven 3.8+ 、 mysql5.7/8.0 、redis 、rabbitmq
  • 创建 MySQL 数据库,执行 initial-scripts 中的SQL脚本
  • 修改 application.yml 中的数据库/redis/rabbitmq连接配置(如需使用AI功能,请在application.yml中需额外配置api-key和base-url)

前端启动

  • 安装 Node.js 16+
  • npm install 安装依赖
  • npm run dev(开发环境启动) npm run start(生产环境启动)

项目结构

blue-admin
├── blue-boot                 # 后端项目
│   ├── blue-dependencies     # 项目依赖
│   ├── blue-main             # 项目启动
│   ├── blue-module           # 模块化
│   │   ├── blue-common           # 公共模块
│   │   ├── blue-controller       # 控制层
│   │   ├── blue-entity           # 实体类
│   │   ├── blue-mapper           # 数据持久层
│   │   ├── blue-service          # 业务逻辑层
│   │   └── blue-scheduled        # 任务调度
│   ├── blue-sync             # 数据同步消费端
│   ├── initial-scripts       # 数据库初始化脚本
│   └── pom.xml               # Maven父POM
│
└── blue-boot-vue             # 前端项目
    ├── src
    │   ├── api               # 接口封装
    │   ├── assets            # 静态资源
    │   ├── components        # 公共组件
    │   ├── router            # 路由配置
    │   └── views             # 页面组件
    ├── .env.development      # 开发环境配置
    ├── .env.production       # 生产环境配置
    └── package.json          # 依赖管理