|
@@ -0,0 +1,162 @@
|
|
|
|
|
+
|
|
|
|
|
+## 🐯 平台简介
|
|
|
|
|
+
|
|
|
|
|
+> 有任何问题,或者想要的功能,可以在 _Issues_ 中提给艿艿。
|
|
|
|
|
+>
|
|
|
|
|
+> 😜 给项目点点 Star 吧,这对我们真的很重要!
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+* Java 后端:`master` 分支为 JDK 8 + Spring Boot 2.7,`master-jdk17` 分支为 JDK 17/21 + Spring Boot 3.2
|
|
|
|
|
+* 管理后台的电脑端:Vue3 提供 `element-plus`、`vben(ant-design-vue)` 两个版本,Vue2 提供 `element-ui` 版本
|
|
|
|
|
+* 后端采用 Spring Boot 多模块架构、MySQL + MyBatis Plus、Redis + Redisson
|
|
|
|
|
+* 数据库使用 MySQL等
|
|
|
|
|
+* 消息队列可使用 Event、Redis、RabbitMQ、Kafka、RocketMQ 等
|
|
|
|
|
+* 权限认证使用 Spring Security & Token & Redis,支持多终端、多种用户的认证系统,支持 SSO 单点登录
|
|
|
|
|
+* 支持加载动态权限菜单,按钮级别权限控制,Redis 缓存提升性能
|
|
|
|
|
+* 支持 SaaS 多租户,可自定义每个租户的权限,提供透明化的多租户底层封装
|
|
|
|
|
+* 高效率开发,使用代码生成器可以一键生成 Java、Vue 前后端代码、SQL 脚本、接口文档,支持单表、树表、主子表
|
|
|
|
|
+* 实时通信,采用 Spring WebSocket 实现,内置 Token 身份校验,支持 WebSocket 集群
|
|
|
|
|
+* 集成阿里云、腾讯云等短信渠道,集成 MinIO、阿里云、腾讯云、七牛云等云存储服务
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+## 🐼 内置功能
|
|
|
|
|
+
|
|
|
|
|
+系统内置多种多种业务功能,可以用于快速你的业务系统:
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+* 通用模块(必选):系统功能、基础设施
|
|
|
|
|
+* 业务系统(按需):AI 大模型
|
|
|
|
|
+
|
|
|
|
|
+> 友情提示:
|
|
|
|
|
+>
|
|
|
|
|
+> * 额外新增的功能,我们使用 🚀 标记。
|
|
|
|
|
+> * 重新实现的功能,我们使用 ⭐️ 标记。
|
|
|
|
|
+
|
|
|
|
|
+🙂 所有功能,都通过 **单元测试** 保证高质量。
|
|
|
|
|
+
|
|
|
|
|
+### 系统功能
|
|
|
|
|
+
|
|
|
|
|
+| | 功能 | 描述 |
|
|
|
|
|
+|-----|-------|---------------------------------|
|
|
|
|
|
+| | 用户管理 | 用户是系统操作者,该功能主要完成系统用户配置 |
|
|
|
|
|
+| ⭐️ | 在线用户 | 当前系统中活跃用户状态监控,支持手动踢下线 |
|
|
|
|
|
+| | 角色管理 | 角色菜单权限分配、设置角色按机构进行数据范围权限划分 |
|
|
|
|
|
+| | 菜单管理 | 配置系统菜单、操作权限、按钮权限标识等,本地缓存提供性能 |
|
|
|
|
|
+| | 部门管理 | 配置系统组织机构(公司、部门、小组),树结构展现支持数据权限 |
|
|
|
|
|
+| | 岗位管理 | 配置系统用户所属担任职务 |
|
|
|
|
|
+| 🚀 | 租户管理 | 配置系统租户,支持 SaaS 场景下的多租户功能 |
|
|
|
|
|
+| 🚀 | 租户套餐 | 配置租户套餐,自定每个租户的菜单、操作、按钮的权限 |
|
|
|
|
|
+| | 字典管理 | 对系统中经常使用的一些较为固定的数据进行维护 |
|
|
|
|
|
+| 🚀 | 短信管理 | 短信渠道、短息模板、短信日志,对接阿里云、腾讯云等主流短信平台 |
|
|
|
|
|
+| 🚀 | 邮件管理 | 邮箱账号、邮件模版、邮件发送日志,支持所有邮件平台 |
|
|
|
|
|
+| 🚀 | 站内信 | 系统内的消息通知,提供站内信模版、站内信消息 |
|
|
|
|
|
+| 🚀 | 操作日志 | 系统正常操作日志记录和查询,集成 Swagger 生成日志内容 |
|
|
|
|
|
+| ⭐️ | 登录日志 | 系统登录日志记录查询,包含登录异常 |
|
|
|
|
|
+| 🚀 | 错误码管理 | 系统所有错误码的管理,可在线修改错误提示,无需重启服务 |
|
|
|
|
|
+| | 通知公告 | 系统通知公告信息发布维护 |
|
|
|
|
|
+| 🚀 | 敏感词 | 配置系统敏感词,支持标签分组 |
|
|
|
|
|
+| 🚀 | 应用管理 | 管理 SSO 单点登录的应用,支持多种 OAuth2 授权方式 |
|
|
|
|
|
+| 🚀 | 地区管理 | 展示省份、城市、区镇等城市信息,支持 IP 对应城市 |
|
|
|
|
|
+
|
|
|
|
|
+ |
|
|
|
|
|
+
|
|
|
|
|
+### 基础设施
|
|
|
|
|
+
|
|
|
|
|
+| | 功能 | 描述 |
|
|
|
|
|
+|-----|-----------|----------------------------------------------|
|
|
|
|
|
+| 🚀 | 代码生成 | 前后端代码的生成(Java、Vue、SQL、单元测试),支持 CRUD 下载 |
|
|
|
|
|
+| 🚀 | 系统接口 | 基于 Swagger 自动生成相关的 RESTful API 接口文档 |
|
|
|
|
|
+| 🚀 | 数据库文档 | 基于 Screw 自动生成数据库文档,支持导出 Word、HTML、MD 格式 |
|
|
|
|
|
+| | 表单构建 | 拖动表单元素生成相应的 HTML 代码,支持导出 JSON、Vue 文件 |
|
|
|
|
|
+| 🚀 | 配置管理 | 对系统动态配置常用参数,支持 SpringBoot 加载 |
|
|
|
|
|
+| ⭐️ | 定时任务 | 在线(添加、修改、删除)任务调度包含执行结果日志 |
|
|
|
|
|
+| 🚀 | 文件服务 | 支持将文件存储到 S3(MinIO、阿里云、腾讯云、七牛云)、本地、FTP、数据库等 |
|
|
|
|
|
+| 🚀 | WebSocket | 提供 WebSocket 接入示例,支持一对一、一对多发送方式 |
|
|
|
|
|
+| 🚀 | API 日志 | 包括 RESTful API 访问日志、异常日志两部分,方便排查 API 相关的问题 |
|
|
|
|
|
+| | MySQL 监控 | 监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈 |
|
|
|
|
|
+| | Redis 监控 | 监控 Redis 数据库的使用情况,使用的 Redis Key 管理 |
|
|
|
|
|
+| 🚀 | 消息队列 | 基于 Redis 实现消息队列,Stream 提供集群消费,Pub/Sub 提供广播消费 |
|
|
|
|
|
+| 🚀 | Java 监控 | 基于 Spring Boot Admin 实现 Java 应用的监控 |
|
|
|
|
|
+| 🚀 | 链路追踪 | 接入 SkyWalking 组件,实现链路追踪 |
|
|
|
|
|
+| 🚀 | 日志中心 | 接入 SkyWalking 组件,实现日志中心 |
|
|
|
|
|
+| 🚀 | 服务保障 | 基于 Redis 实现分布式锁、幂等、限流功能,满足高并发场景 |
|
|
|
|
|
+| 🚀 | 日志服务 | 轻量级日志中心,查看远程服务器的日志 |
|
|
|
|
|
+| 🚀 | 单元测试 | 基于 JUnit + Mockito 实现单元测试,保证功能的正确性、代码的质量等 |
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+### AI 大模型
|
|
|
|
|
+
|
|
|
|
|
+演示地址:<https://doc.iocoder.cn/ai-preview/>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+## 🐨 技术栈
|
|
|
|
|
+
|
|
|
|
|
+### 模块
|
|
|
|
|
+
|
|
|
|
|
+| 项目 | 说明 |
|
|
|
|
|
+|-----------------------|--------------------|
|
|
|
|
|
+| `yudao-dependencies` | Maven 依赖版本管理 |
|
|
|
|
|
+| `yudao-framework` | Java 框架拓展 |
|
|
|
|
|
+| `yudao-server` | 管理后台 + 用户 APP 的服务端 |
|
|
|
|
|
+| `yudao-module-system` | 系统功能的 Module 模块 |
|
|
|
|
|
+| `yudao-module-infra` | 基础设施的 Module 模块 |
|
|
|
|
|
+| `yudao-module-ai` | AI 大模型的 Module 模块 |
|
|
|
|
|
+
|
|
|
|
|
+### 框架
|
|
|
|
|
+
|
|
|
|
|
+| 框架 | 说明 | 版本 | 学习指南 |
|
|
|
|
|
+|---------------------------------------------------------------------------------------------|------------------|----------------|----------------------------------------------------------------|
|
|
|
|
|
+| [Spring Boot](https://spring.io/projects/spring-boot) | 应用开发框架 | 3.4.5 | [文档](https://github.com/YunaiV/SpringBoot-Labs) |
|
|
|
|
|
+| [MySQL](https://www.mysql.com/cn/) | 数据库服务器 | 5.7 / 8.0+ | |
|
|
|
|
|
+| [Druid](https://github.com/alibaba/druid) | JDBC 连接池、监控组件 | 1.2.23 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
|
|
|
|
|
+| [MyBatis Plus](https://mp.baomidou.com/) | MyBatis 增强工具包 | 3.5.7 | [文档](http://www.iocoder.cn/Spring-Boot/MyBatis/?yudao) |
|
|
|
|
|
+| [Dynamic Datasource](https://dynamic-datasource.com/) | 动态数据源 | 4.3.1 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
|
|
|
|
|
+| [Redis](https://redis.io/) | key-value 数据库 | 5.0 / 6.0 /7.0 | |
|
|
|
|
|
+| [Redisson](https://github.com/redisson/redisson) | Redis 客户端 | 3.32.0 | [文档](http://www.iocoder.cn/Spring-Boot/Redis/?yudao) |
|
|
|
|
|
+| [Spring MVC](https://github.com/spring-projects/spring-framework/tree/master/spring-webmvc) | MVC 框架 | 6.1.10 | [文档](http://www.iocoder.cn/SpringMVC/MVC/?yudao) |
|
|
|
|
|
+| [Spring Security](https://github.com/spring-projects/spring-security) | Spring 安全框架 | 6.3.1 | [文档](http://www.iocoder.cn/Spring-Boot/Spring-Security/?yudao) |
|
|
|
|
|
+| [Hibernate Validator](https://github.com/hibernate/hibernate-validator) | 参数校验组件 | 8.0.1 | [文档](http://www.iocoder.cn/Spring-Boot/Validation/?yudao) |
|
|
|
|
|
+| [Flowable](https://github.com/flowable/flowable-engine) | 工作流引擎 | 7.0.0 | [文档](https://doc.iocoder.cn/bpm/) |
|
|
|
|
|
+| [Quartz](https://github.com/quartz-scheduler) | 任务调度组件 | 2.3.2 | [文档](http://www.iocoder.cn/Spring-Boot/Job/?yudao) |
|
|
|
|
|
+| [Springdoc](https://springdoc.org/) | Swagger 文档 | 2.3.0 | [文档](http://www.iocoder.cn/Spring-Boot/Swagger/?yudao) |
|
|
|
|
|
+| [SkyWalking](https://skywalking.apache.org/) | 分布式应用追踪系统 | 9.0.0 | [文档](http://www.iocoder.cn/Spring-Boot/SkyWalking/?yudao) |
|
|
|
|
|
+| [Spring Boot Admin](https://github.com/codecentric/spring-boot-admin) | Spring Boot 监控平台 | 3.3.2 | [文档](http://www.iocoder.cn/Spring-Boot/Admin/?yudao) |
|
|
|
|
|
+| [Jackson](https://github.com/FasterXML/jackson) | JSON 工具库 | 2.17.1 | |
|
|
|
|
|
+| [MapStruct](https://mapstruct.org/) | Java Bean 转换 | 1.6.3 | [文档](http://www.iocoder.cn/Spring-Boot/MapStruct/?yudao) |
|
|
|
|
|
+| [Lombok](https://projectlombok.org/) | 消除冗长的 Java 代码 | 1.18.34 | [文档](http://www.iocoder.cn/Spring-Boot/Lombok/?yudao) |
|
|
|
|
|
+| [JUnit](https://junit.org/junit5/) | Java 单元测试框架 | 5.10.1 | - |
|
|
|
|
|
+| [Mockito](https://github.com/mockito/mockito) | Java Mock 框架 | 5.7.0 | - |
|
|
|
|
|
+
|
|
|
|
|
+## 🐷 演示图
|
|
|
|
|
+
|
|
|
|
|
+### 系统功能
|
|
|
|
|
+
|
|
|
|
|
+| 模块 | biu | biu | biu |
|
|
|
|
|
+|----------|-----------------------------|---------------------------|--------------------------|
|
|
|
|
|
+| 登录 & 首页 |  |  |  |
|
|
|
|
|
+| 用户 & 应用 |  |  |  |
|
|
|
|
|
+| 租户 & 套餐 |  |  | - |
|
|
|
|
|
+| 部门 & 岗位 |  |  | - |
|
|
|
|
|
+| 菜单 & 角色 |  |  | - |
|
|
|
|
|
+| 审计日志 |  |  | - |
|
|
|
|
|
+| 短信 |  |  |  |
|
|
|
|
|
+| 字典 & 敏感词 |  |  |  |
|
|
|
|
|
+| 错误码 & 通知 |  |  | - |
|
|
|
|
|
+
|
|
|
|
|
+### 基础设施
|
|
|
|
|
+
|
|
|
|
|
+| 模块 | biu | biu | biu |
|
|
|
|
|
+|---------------|-------------------------------|-----------------------------|---------------------------|
|
|
|
|
|
+| 代码生成 |  |  | - |
|
|
|
|
|
+| 文档 |  |  | - |
|
|
|
|
|
+| 文件 & 配置 |  |  |  |
|
|
|
|
|
+| 定时任务 |  |  | - |
|
|
|
|
|
+| API 日志 |  |  | - |
|
|
|
|
|
+| MySQL & Redis |  |  | - |
|
|
|
|
|
+| 监控平台 |  |  |  |
|