# Lyzsys 项目介绍 ## 📖 目录 - [项目简介](#项目简介) - [核心特性](#核心特性) - [技术架构](#技术架构) - [功能模块](#功能模块) - [快速开始](#快速开始) - [项目展示](#项目展示) - [适用场景](#适用场景) - [开源协议](#开源协议) --- ## 项目简介 Lyzsys 是一个**企业级后台管理系统**,基于 Spring Boot + Vue 3 技术栈构建,采用前后端分离架构。项目集成了丰富的企业级功能,包括权限管理、工作流、多租户、AI 集成等,适用于各类企业管理系统的快速开发。 ### 项目定位 - **快速开发平台**: 提供完整的代码生成器和脚手架,快速构建业务系统 - **企业级框架**: 内置权限、工作流、多租户等企业通用功能 - **微服务就绪**: 模块化设计,便于未来微服务化改造 - **AI 集成**: 原生支持多个 AI 服务提供商,便于构建智能化应用 ### 版本说明 | 版本 | JDK 8 + Spring Boot 2.7 | JDK 17/21 + Spring Boot 3.2 | |------|-------------------------|----------------------------| | 【完整版】lyzsys | `master` 分支 | `master-jdk17` 分支 | | 【精简版】lyzsys-mini | `mini` 分支 | `mini-jdk17` 分支 | - **完整版**: 包括系统功能、基础设施、工作流、商城、CRM、ERP、AI 等所有模块 - **精简版**: 只包括系统功能和基础设施,适用于简单场景 --- ## 核心特性 ### 🎯 技术特性 #### 1. 模块化架构 - **Maven 多模块**: 清晰的模块划分,便于维护和扩展 - **前后端分离**: 独立部署,提升开发效率 - **微服务就绪**: 模块化设计便于微服务化改造 #### 2. 权限管理 - **RBAC 权限模型**: 基于角色的访问控制 - **数据权限**: 支持全部、本部门、本部门及以下、仅本人等数据权限 - **按钮级权限**: 细粒度的功能权限控制 - **动态菜单**: 根据权限动态生成菜单 #### 3. 多租户支持 - **SaaS 多租户**: 原生支持多租户场景 - **租户隔离**: 数据库级别的租户隔离 - **租户套餐**: 灵活的租户权限配置 #### 4. 工作流引擎 - **Flowable 集成**: 强大的工作流引擎 - **双设计器**: BPMN 标准设计器 + 仿钉钉/飞书简易设计器 - **流程管理**: 支持会签、或签、驳回、转办、委派等复杂流程操作 #### 5. AI 集成 - **多 AI 支持**: 支持 OpenAI、通义千问、文心一言等多个 AI 服务 - **AI 聊天**: 内置 AI 对话功能 - **AI 绘图**: 支持 AI 图片生成 - **知识库**: AI 知识库管理和检索 #### 6. 开发效率 - **代码生成器**: 一键生成前后端代码、SQL 脚本、接口文档 - **在线表单**: 拖拽式表单设计器 - **报表设计**: 可视化报表和大屏设计器 - **API 文档**: 自动生成 Swagger/Knife4j 接口文档 ### 🛡️ 安全特性 - **Spring Security**: 企业级安全框架 - **JWT 认证**: 无状态认证机制 - **密码加密**: BCrypt 加密存储 - **API 加密**: 支持请求/响应加密 - **XSS 防护**: 内置 XSS 过滤器 - **操作日志**: 完整的操作审计日志 ### ⚡ 性能特性 - **Redis 缓存**: 高性能缓存支持 - **数据库优化**: MyBatis Plus 增强,支持分页、排序、筛选 - **分布式锁**: 基于 Redisson 的分布式锁 - **消息队列**: 异步处理提升性能 - **连接池**: Druid 监控的数据库连接池 --- ## 技术架构 ### 整体架构 ``` ┌─────────────────────────────────────────────────────────────┐ │ 前端应用 │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ lyzsys-ui- │ │ lyzsys-ui- │ │ lyzsys-mall- │ │ │ │ admin-vue3 │ │ admin-uniapp │ │ uniapp │ │ │ │ (PC端管理) │ │ (移动端管理) │ │ (用户App) │ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ lyzsys-server │ │ (后端服务启动模块) │ └─────────────────────────────────────────────────────────────┘ │ ┌─────────────────────┼─────────────────────┐ │ │ │ ▼ ▼ ▼ ┌──────────────┐ ┌──────────────────┐ ┌──────────────┐ │ lyzsys- │ │ lyzsys-module-xxx│ │lyzsys- │ │ framework │ │ (业务模块) │ │dependencies │ │ (框架组件) │ │ │ │ (依赖管理) │ └──────────────┘ └──────────────────┘ └──────────────┘ │ ├─── lyzsys-common (通用组件) ├─── lyzsys-spring-boot-starter-web (Web 封装) ├─── lyzsys-spring-boot-starter-security (安全认证) ├─── lyzsys-spring-boot-starter-mybatis (数据库) ├─── lyzsys-spring-boot-starter-redis (缓存) ├─── lyzsys-spring-boot-starter-biz-tenant (多租户) └─── ... │ ┌─────────────────────┼─────────────────────┐ │ │ │ ▼ ▼ ▼ ┌──────────────┐ ┌──────────────────┐ ┌──────────────┐ │ MySQL │ │ Redis │ │ MinIO │ │ (主数据库) │ │ (缓存数据库) │ │ (文件存储) │ └──────────────┘ └──────────────────┘ └──────────────┘ ``` ### 技术选型 #### 后端技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Spring Boot | 2.7.18 | 应用开发框架 | | Spring Security | 5.8.16 | 安全框架 | | MyBatis Plus | 3.5.15 | ORM 增强框架 | | Flowable | 6.8.0 | 工作流引擎 | | Redisson | 3.52.0 | 分布式锁客户端 | | Quartz | 2.3.2 | 定时任务 | | Knife4j | 3.0.3 | API 文档 | | MySQL | 5.7+ | 关系型数据库 | | Redis | 5.0+ | 缓存数据库 | #### 前端技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Vue | 3.2+ | 渐进式 JavaScript 框架 | | TypeScript | 4.x | JavaScript 超集 | | Vite | 4.x | 构建工具 | | Element Plus | 2.x | UI 组件库 | | Pinia | 2.x | 状态管理 | | Vue Router | 4.x | 路由管理 | | ECharts | 5.x | 数据可视化 | | WangEditor | 5.x | 富文本编辑器 | --- ## 功能模块 ### 核心模块(必选) #### 1. 系统功能模块 (lyzsys-module-system) 提供系统基础功能,是整个系统的基础。 | 功能 | 说明 | |------|------| | 用户管理 | 用户的增删改查、密码重置、导入导出 | | 角色管理 | 角色权限分配、数据权限配置 | | 菜单管理 | 动态菜单配置、按钮权限标识 | | 部门管理 | 组织机构树形结构管理 | | 岗位管理 | 用户岗位配置 | | 字典管理 | 系统字典项维护 | | 参数配置 | 系统动态参数配置 | | 通知公告 | 系统通知发布管理 | | 操作日志 | 用户操作审计日志 | | 登录日志 | 登录成功/失败日志 | | 在线用户 | 当前在线用户监控,支持踢出 | | 租户管理 | SaaS 租户配置 | | 租户套餐 | 租户权限套餐管理 | #### 2. 基础设施模块 (lyzsys-module-infra) 提供技术基础设施功能。 | 功能 | 说明 | |------|------| | 代码生成 | 可视化代码生成,支持单表、树表、主子表 | | 表单构建 | 拖拽式表单设计器 | | 系统接口 | Swagger/Knife4j 接口文档 | | 数据库文档 | Screw 自动生成数据库文档 | | 文件管理 | 支持本地、MinIO、阿里云、腾讯云等存储 | | 定时任务 | Quartz 在线定时任务管理 | | API 日志 | 接口访问日志、异常日志 | | MySQL 监控 | 数据库连接池监控 | | Redis 监控 | Redis 使用情况监控 | | 服务监控 | Spring Boot Admin 监控 | | 链路追踪 | SkyWalking 链路追踪集成 | | 日志中心 | 远程日志查看 | | 服务保障 | 分布式锁、幂等、限流、熔断 | | 消息队列 | Redis 消息队列支持 | ### 业务模块(可选) #### 3. 工作流模块 (lyzsys-module-bpm) 基于 Flowable 的业务流程管理。 | 功能 | 说明 | |------|------| | 流程模型 | BPMN 2.0 流程建模 | | 流程设计 | BPMN 设计器 + 简易设计器 | | 流程实例 | 流程实例管理、发起、审批 | | 任务管理 | 待办、已办、抄送任务 | | 表单管理 | 流程表单配置 | | 流程监听 | 流程事件监听配置 | #### 4. 支付模块 (lyzsys-module-pay) 统一的支付接入平台。 | 功能 | 说明 | |------|------| | 应用管理 | 支付应用配置 | | 支付渠道 | 微信支付、支付宝等渠道接入 | | 支付订单 | 支付订单管理 | | 退款订单 | 退款订单管理 | | 回调通知 | 支付回调处理 | #### 5. 会员模块 (lyzsys-module-member) C 端会员管理功能。 | 功能 | 说明 | |------|------| | 会员管理 | 会员信息管理 | | 会员标签 | 会员标签体系 | | 会员等级 | 会员等级配置 | | 会员分组 | 会员分组管理 | | 积分签到 | 积分规则、签到记录 | #### 6. 商城模块 (lyzsys-module-mall) 完整的电商系统。 | 功能 | 说明 | |------|------| | 商品管理 | 商品、分类、品牌管理 | | 营销管理 | 优惠券、满减、秒杀等活动 | | 订单管理 | 订单、售后、退款管理 | | 购物车 | 购物车管理 | | 收货地址 | 用户地址管理 | | 物流管理 | 物流公司、物流跟踪 | | 统计分析 | 销售统计、商品分析 | #### 7. CRM 模块 (lyzsys-module-crm) 客户关系管理。 | 功能 | 说明 | |------|------| | 客户管理 | 客户信息管理 | | 联系人 | 客户联系人管理 | | 商机管理 | 销售商机跟进 | | 合同管理 | 合同签订、管理 | | 回款管理 | 回款计划、记录 | | 产品管理 | CRM 产品管理 | #### 8. ERP 模块 (lyzsys-module-erp) 企业资源计划。 | 功能 | 说明 | |------|------| | 采购管理 | 采购订单、入库单 | | 销售管理 | 销售订单、出库单 | | 库存管理 | 库存查询、库存预警 | | 产品管理 | 产品、物料管理 | | 供应商管理 | 供应商信息管理 | #### 9. AI 模块 (lyzsys-module-ai) AI 大模型集成。 | 功能 | 说明 | |------|------| | AI 聊天 | 对话式 AI 交互 | | AI 绘图 | AI 图片生成 | | 知识库 | AI 知识库管理 | | API 管理 | AI API 密钥管理 | #### 10. 报表模块 (lyzsys-module-report) 数据报表和大屏。 | 功能 | 说明 | |------|------| | 报表设计 | 可视化报表设计器 | | 大屏设计 | 拖拽式大屏设计器 | | 数据源 | 多种数据源支持 | #### 11. 微信公众号 (lyzsys-module-mp) 微信公众号管理。 | 功能 | 说明 | |------|------| | 账号管理 | 公众号配置 | | 粉丝管理 | 粉丝信息、标签管理 | | 消息管理 | 消息发送、接收 | | 自动回复 | 关注、关键词、消息回复 | | 菜单管理 | 公众号菜单配置 | | 素材管理 | 图片、视频等素材管理 | | 图文管理 | 图文素材管理 | #### 12. IoT 物联网 (lyzsys-module-iot) 物联网设备管理。 | 功能 | 说明 | |------|------| | 设备管理 | 设备注册、管理 | | 产品管理 | IoT 产品定义 | | 属性定义 | 设备属性配置 | | 数据采集 | 设备数据采集 | | 场景联动 | 设备场景规则 | --- ## 快速开始 ### 环境要求 | 软件 | 版本要求 | 必需 | |------|----------|------| | JDK | 8+ | √ | | MySQL | 5.7+ | √ | | Redis | 5.0+ | √ | | Node.js | 16+ | √ | | Maven | 3.6+ | √ | ### 后端启动 ```bash # 1. 克隆项目 git clone https://github.com/your-org/lyzsys.git cd lyzsys/lyzsys_backend # 2. 导入数据库 mysql -u root -p < sql/lyzsys.sql # 3. 修改配置 vi lyzsys-server/src/main/resources/application.yaml # 配置数据库、Redis 连接信息 # 4. 启动后端 cd lyzsys-server mvn spring-boot:run ``` 访问: http://localhost:48080/doc.html ### 前端启动 ```bash # 1. 安装依赖 cd lyzsys-ui-admin pnpm install # 2. 启动开发服务器 pnpm dev ``` 访问: http://localhost:5173 默认账号: `admin` / `admin123` --- ## 项目展示 ### 系统功能 | 登录 & 首页 | 用户 & 应用 | 租户 & 套餐 | 部门 & 岗位 | |------------|------------|------------|------------| | ![登录](../.image/登录.jpg) | ![用户管理](../.image/用户管理.jpg) | ![租户管理](../.image/租户管理.jpg) | ![部门管理](../.image/部门管理.jpg) | | 菜单 & 角色 | 审计日志 | 短信管理 | 字典 & 敏感词 | |------------|------------|------------|------------| | ![菜单管理](../.image/菜单管理.jpg) | ![操作日志](../.image/操作日志.jpg) | ![短信渠道](../.image/短信渠道.jpg) | ![字典类型](../.image/字典类型.jpg) | ### 工作流程 | 流程模型 | 我的流程 | 待办 & 已办 | OA 请假 | |---------|---------|-----------|---------| | ![流程模型](../.image/流程模型-列表.jpg) | ![我的流程](../.image/我的流程-列表.jpg) | ![任务列表](../.image/任务列表-待办.jpg) | ![OA请假](../.image/OA请假-列表.jpg) | ### 基础设施 | 代码生成 | 文档 | 文件 & 配置 | 定时任务 | |---------|-----|------------|---------| | ![代码生成](../.image/代码生成.jpg) | ![系统接口](../.image/系统接口.jpg) | ![文件配置](../.image/文件配置.jpg) | ![定时任务](../.image/定时任务.jpg) | --- ## 适用场景 ### 适用行业 - **互联网**: SaaS 平台、内容管理、用户系统 - **制造业**: ERP、MES、设备管理 - **零售电商**: 商城系统、CRM、会员管理 - **金融服务**: 风控系统、审批流程 - **政府机构**: OA 系统、审批平台 - **教育培训**: 在线教育、学员管理 - **医疗健康**: HIS 系统、预约管理 ### 适用场景 1. **企业内部系统**: OA、ERP、CRM、HR 等管理系统 2. **SaaS 平台**: 多租户 SaaS 应用开发 3. **电商系统**: 商城、订单、支付系统 4. **审批系统**: 工作流、审批流程定制 5. **AI 应用**: AI 对话、AI 知识库、AI 绘图 --- ## 开源协议 本项目采用 **MIT 协议**开源,这意味着: ✅ 个人和企业可以 100% 免费使用 ✅ 可以用于商业项目,无需保留类作者、Copyright 信息 ✅ 可以自由修改、分发、二次开发 ✅ 无任何商业版本限制 > 严肃声明:现在、未来都不会有商业版本,所有代码全部开源! --- ## 相关资源 ### 官方资源 - **在线文档**: https://doc.iocoder.cn - **视频教程**: https://doc.iocoder.cn/video/ - **Gitee 仓库**: https://gitee.com/zhijiantianya/ruoyi-vue-pro - **GitHub 仓库**: https://github.com/YunaiV/ruoyi-vue-pro ### 参考项目 本项目基于以下开源项目进行二次开发和优化: - **RuoYi-Vue**: 优秀的后台管理系统框架 - **Yudao Framework**: 芋道源码框架 ### 技术支持 - **文档中心**: 完整的开发文档和使用指南 - **视频教程**: 从零开始的视频教程 - **社区支持**: GitHub Issues、Gitee Issues --- ## 更新日志 ### v1.0.0 (2025-01-19) - 🎉 首次发布 Lyzsys 系统 - ✨ 完整的系统功能和基础设施 - ✨ 工作流模块 (BPM) - ✨ 支付模块 (Pay) - ✨ 会员模块 (Member) - ✨ 商城模块 (Mall) - ✨ CRM 模块 - ✨ ERP 模块 - ✨ AI 模块 - ✨ 微信公众号模块 (MP) - ✨ IoT 物联网模块 - 🐛 修复已知问题 - 📝 完善开发文档 --- **项目**: Lyzsys 企业级后台管理系统 **版本**: v1.0.0 **更新**: 2025-01-19 **团队**: Lyzsys 开发团队