优化文档说明

pull/362/head
AlanScipio 2 years ago
parent 880916e493
commit 484012c995

@ -59,3 +59,7 @@ com.ruoyi
# 微服务架构模式的切换 # 微服务架构模式的切换
详见[微服务架构在不同模式下的切换](./STRUCTURE_MODE.md) 详见[微服务架构在不同模式下的切换](./STRUCTURE_MODE.md)
# 前端
运行和打包前端项目请参考[前端运行和发布](./ruoyi-ui/README.md)

@ -10,7 +10,7 @@
- ruoyi-file文件模块 - ruoyi-file文件模块
- ruoyi-job定时任务模块 - ruoyi-job定时任务模块
- 其他后续追加的业务模块... - 其他后续追加的业务模块...
2. nacos配置使用**GROUP_ALL_IN_1**分组 2. nacos配置使用**DEFAULT_GROUP**分组
3. ruoyi-system模块的入口启动类使用`com.ruoyi.system.RuoYiSystemApplication` 3. ruoyi-system模块的入口启动类使用`com.ruoyi.system.RuoYiSystemApplication`
4. 注解掉ruoyi-system模块里其他模式的入口启动类 4. 注解掉ruoyi-system模块里其他模式的入口启动类
5. 【可选】ruoyi-system模块的`bootstrap.yml`里,关闭配置项:`spring.main.allow-bean-definition-overriding: false` 5. 【可选】ruoyi-system模块的`bootstrap.yml`里,关闭配置项:`spring.main.allow-bean-definition-overriding: false`
@ -22,7 +22,7 @@
- ruoyi-file文件模块 - ruoyi-file文件模块
- ruoyi-job定时任务模块 - ruoyi-job定时任务模块
- 其他后续追加的业务模块... - 其他后续追加的业务模块...
2. nacos配置使用**DEFAULT_GROUP**分组 2. nacos配置使用**GROUP_ALL_IN_1**分组
3. ruoyi-system模块的入口启动类使用`com.ruoyi.SystemAllApplication` 3. ruoyi-system模块的入口启动类使用`com.ruoyi.SystemAllApplication`
4. 注解掉ruoyi-system模块里其他模式的入口启动类 4. 注解掉ruoyi-system模块里其他模式的入口启动类
5. ruoyi-system模块的`bootstrap.yml`里,确保开启配置项:`spring.main.allow-bean-definition-overriding: true` 5. ruoyi-system模块的`bootstrap.yml`里,确保开启配置项:`spring.main.allow-bean-definition-overriding: true`

@ -24,8 +24,8 @@ spring:
shared-configs: shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
# 指定分组 # 指定分组
# group: DEFAULT_GROUP #默认微服务组 group: DEFAULT_GROUP #默认微服务组
group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 #group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式
sentinel: sentinel:
# 取消控制台懒加载 # 取消控制台懒加载
eager: true eager: true

@ -91,20 +91,20 @@
<!-- =============================================================================== --> <!-- =============================================================================== -->
<!-- 可选部署:合并鉴权模块 --> <!-- 可选部署:合并鉴权模块 -->
<dependency> <!-- <dependency>-->
<groupId>com.ruoyi</groupId> <!-- <groupId>com.ruoyi</groupId>-->
<artifactId>ruoyi-auth</artifactId> <!-- <artifactId>ruoyi-auth</artifactId>-->
</dependency> <!-- </dependency>-->
<!-- 可选部署:合并文件模块 --> <!-- 可选部署:合并文件模块 -->
<dependency> <!-- <dependency>-->
<groupId>com.ruoyi</groupId> <!-- <groupId>com.ruoyi</groupId>-->
<artifactId>ruoyi-modules-file</artifactId> <!-- <artifactId>ruoyi-modules-file</artifactId>-->
</dependency> <!-- </dependency>-->
<!-- 可选部署:合并定时任务模块 --> <!-- 可选部署:合并定时任务模块 -->
<dependency> <!-- <dependency>-->
<groupId>com.ruoyi</groupId> <!-- <groupId>com.ruoyi</groupId>-->
<artifactId>ruoyi-modules-job</artifactId> <!-- <artifactId>ruoyi-modules-job</artifactId>-->
</dependency> <!-- </dependency>-->
</dependencies> </dependencies>

@ -8,15 +8,15 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
/** /**
* * all-in-one
* *
* @author Alan Scipio * @author Alan Scipio
* created on 2024/1/31 * created on 2024/1/31
*/ */
@EnableCustomConfig //@EnableCustomConfig
@EnableCustomSwagger2 //@EnableCustomSwagger2
@EnableRyFeignClients //@EnableRyFeignClients
@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) //@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class})
public class SystemAllApplication { public class SystemAllApplication {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(SystemAllApplication.class, args); SpringApplication.run(SystemAllApplication.class, args);

@ -8,14 +8,14 @@ import com.ruoyi.common.security.annotation.EnableRyFeignClients;
import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
/** /**
* *
* *
* @author ruoyi * @author ruoyi
*/ */
//@EnableCustomConfig @EnableCustomConfig
//@EnableCustomSwagger2 @EnableCustomSwagger2
//@EnableRyFeignClients @EnableRyFeignClients
//@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) @SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class})
public class RuoYiSystemApplication { public class RuoYiSystemApplication {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(RuoYiSystemApplication.class, args); SpringApplication.run(RuoYiSystemApplication.class, args);

@ -7,8 +7,8 @@ spring:
application: application:
# 应用名称 # 应用名称
name: ruoyi-system name: ruoyi-system
main: # main:
allow-bean-definition-overriding: true # All-in-one模式下必须 # allow-bean-definition-overriding: true # All-in-one模式下必须
profiles: profiles:
# 环境配置 # 环境配置
active: dev active: dev
@ -26,5 +26,5 @@ spring:
shared-configs: shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
# 指定分组 # 指定分组
# group: DEFAULT_GROUP #默认微服务组 group: DEFAULT_GROUP #默认微服务组
group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 #group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式

@ -1,8 +1,8 @@
# 页面标题 # 页面标题
VITE_APP_TITLE=RYAS管理系统 VITE_APP_TITLE=RYAS管理系统
# 开发环境配置 # 环境指定
VITE_APP_ENV='development' VITE_APP_ENV='development'
# 若依管理系统/开发环境 # 后端api标识
VITE_APP_BASE_API='/dev-api' VITE_APP_BASE_API='/dev-api'

@ -1,10 +1,10 @@
# 页面标题 # 页面标题
VITE_APP_TITLE=RYAS管理系统 VITE_APP_TITLE=RYAS管理系统
# 生产环境配置 # 环境指定
VITE_APP_ENV='production' VITE_APP_ENV='production'
# 若依管理系统/生产环境 # 后端api标识
VITE_APP_BASE_API='/prod-api' VITE_APP_BASE_API='/prod-api'
# 是否在打包时开启压缩,支持 gzip 和 brotli # 是否在打包时开启压缩,支持 gzip 和 brotli

@ -1,10 +1,10 @@
# 页面标题 # 页面标题
VITE_APP_TITLE=RYAS管理系统 VITE_APP_TITLE=RYAS管理系统
# 生产环境配置 # 环境指定
VITE_APP_ENV='staging' VITE_APP_ENV='staging'
# 若依管理系统/生产环境 # 后端api标识
VITE_APP_BASE_API='/stage-api' VITE_APP_BASE_API='/stage-api'
# 是否在打包时开启压缩,支持 gzip 和 brotli # 是否在打包时开启压缩,支持 gzip 和 brotli

@ -1,143 +1,29 @@
<p align="center"> ## 启动运行
<img alt="logo" src="https://oscimg.oschina.net/oscnet/up-b99b286755aef70355a7084753f89cdb7c9.png">
</p>
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">RuoYi v3.6.3</h1>
<h4 align="center">基于 Vue3/Element Plus 和 Spring Boot/Spring Cloud & Alibaba 前后端分离的分布式微服务架构</h4>
<p align="center">
<a href="https://gitee.com/y_project/RuoYi-Cloud/stargazers"><img src="https://gitee.com/y_project/RuoYi-Cloud/badge/star.svg?theme=dark"></a>
<a href="https://gitee.com/y_project/RuoYi-Cloud"><img src="https://img.shields.io/badge/RuoYi-v3.6.3-brightgreen.svg"></a>
<a href="https://gitee.com/y_project/RuoYi-Cloud/blob/master/LICENSE"><img src="https://img.shields.io/github/license/mashape/apistatus.svg"></a>
</p>
## 平台简介
* 本仓库为前端技术栈 [Vue3](https://v3.cn.vuejs.org) + [Element Plus](https://element-plus.org/zh-CN) + [Vite](https://cn.vitejs.dev) 版本。
* 配套后端代码仓库地址[RuoYi-Cloud](https://gitee.com/y_project/RuoYi-Cloud) 或 [RuoYi-Cloud-Oracle](https://github.com/yangzongzhuan/RuoYi-Cloud-Oracle) 版本。
* 前端技术栈([Vue2](https://cn.vuejs.org) + [Element](https://github.com/ElemeFE/element) + [Vue CLI](https://cli.vuejs.org/zh)),请移步[RuoYi-Cloud](https://gitee.com/y_project/RuoYi-Cloud/tree/master/ruoyi-ui)。
* 阿里云折扣场:[点我进入](http://aly.ruoyi.vip),腾讯云秒杀场:[点我进入](http://txy.ruoyi.vip)&nbsp;&nbsp;
* 阿里云优惠券:[点我领取](https://www.aliyun.com/minisite/goods?userCode=brki8iof&share_source=copy_link),腾讯云优惠券:[点我领取](https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console)&nbsp;&nbsp;
## 前端运行
```bash ```bash
# 克隆项目
git clone https://github.com/yangzongzhuan/RuoYi-Cloud-Vue3.git
# 进入项目目录 # 进入项目目录
cd RuoYi-Cloud-Vue3 cd ruoyi-ui
# 安装依赖 # 安装依赖
yarn --registry=https://registry.npmmirror.com # 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npmmirror.com
# 启动服务 # 启动服务
yarn dev npm run dev
# 构建测试环境 yarn build:stage
# 构建生产环境 yarn build:prod
# 前端访问地址 http://localhost:80
``` ```
## 系统模块 ## 项目访问
~~~
com.ruoyi
├── ruoyi-ui // 前端框架 [80]
├── ruoyi-gateway // 网关模块 [8080]
├── ruoyi-auth // 认证中心 [9200]
├── ruoyi-api // 接口模块
│ └── ruoyi-api-system // 系统接口
├── ruoyi-common // 通用模块
│ └── ruoyi-common-core // 核心模块
│ └── ruoyi-common-datascope // 权限范围
│ └── ruoyi-common-datasource // 多数据源
│ └── ruoyi-common-log // 日志记录
│ └── ruoyi-common-redis // 缓存服务
│ └── ruoyi-common-security // 安全模块
│ └── ruoyi-common-swagger // 系统接口
├── ruoyi-modules // 业务模块
│ └── ruoyi-system // 系统模块 [9201]
│ └── ruoyi-gen // 代码生成 [9202]
│ └── ruoyi-job // 定时任务 [9203]
│ └── ruoyi-file // 文件服务 [9300]
├── ruoyi-visual // 图形化管理模块
│ └── ruoyi-visual-monitor // 监控中心 [9100]
├──pom.xml // 公共依赖
~~~
## 架构图
<img src="https://oscimg.oschina.net/oscnet/up-82e9722ecb846786405a904bafcf19f73f3.png"/>
## 内置功能 http://localhost:10001
端口号修改: vite.config.ts 中的 server.port 字段,点此查看 [vite 配置项](https://cn.vitejs.dev/config/)
1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 ## 发布
2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
3. 岗位管理:配置系统用户所属担任职务。
4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
7. 参数管理:对系统动态配置常用参数。
8. 通知公告:系统通知公告信息发布维护。
9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
10. 登录日志:系统登录日志记录查询包含登录异常。
11. 在线用户:当前系统中活跃用户状态监控。
12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
13. 代码生成前后端代码的生成java、html、xml、sql支持CRUD下载 。
14. 系统接口根据业务代码自动生成相关的api接口文档。
15. 服务监控监视当前系统CPU、内存、磁盘、堆栈等相关信息。
16. 在线构建器拖动表单元素生成相应的HTML代码。
17. 连接池监视监视当前系统数据库连接池状态可进行分析SQL找出系统性能瓶颈。
## 在线体验
- admin/admin123
- 陆陆续续收到一些打赏,为了更好的体验已用于演示服务器升级。谢谢各位小伙伴。
演示地址http://ruoyi.vip
文档地址http://doc.ruoyi.vip
## 演示图
<table>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/cd1f90be5f2684f4560c9519c0f2a232ee8.jpg"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/1cbcf0e6f257c7d3a063c0e3f2ff989e4b3.jpg"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-8074972883b5ba0622e13246738ebba237a.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-9f88719cdfca9af2e58b352a20e23d43b12.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-39bf2584ec3a529b0d5a3b70d15c9b37646.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-4148b24f58660a9dc347761e4cf6162f28f.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-b2d62ceb95d2dd9b3fbe157bb70d26001e9.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-d67451d308b7a79ad6819723396f7c3d77a.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/5e8c387724954459291aafd5eb52b456f53.jpg"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/644e78da53c2e92a95dfda4f76e6d117c4b.jpg"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-8370a0d02977eebf6dbf854c8450293c937.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-49003ed83f60f633e7153609a53a2b644f7.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-d4fe726319ece268d4746602c39cffc0621.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-c195234bbcd30be6927f037a6755e6ab69c.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-ece3fd37a3d4bb75a3926e905a3c5629055.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-92ffb7f3835855cff100fa0f754a6be0d99.png"/></td>
</tr>
<tr>
<td><img src="https://oscimg.oschina.net/oscnet/up-ff9e3066561574aca73005c5730c6a41f15.png"/></td>
<td><img src="https://oscimg.oschina.net/oscnet/up-5e4daac0bb59612c5038448acbcef235e3a.png"/></td>
</tr>
</table>
```bash
# 构建生产环境
npm run build:prod
## 若依微服务交流群 # 构建测试环境
npm run build:stage
```
QQ群 [![加入QQ群](https://img.shields.io/badge/已满-42799195-blue.svg)](https://jq.qq.com/?_wv=1027&k=yqInfq0S) [![加入QQ群](https://img.shields.io/badge/已满-170157040-blue.svg)](https://jq.qq.com/?_wv=1027&k=Oy1mb3p8) [![加入QQ群](https://img.shields.io/badge/已满-130643120-blue.svg)](https://jq.qq.com/?_wv=1027&k=rvxkJtXK) [![加入QQ群](https://img.shields.io/badge/已满-225920371-blue.svg)](https://jq.qq.com/?_wv=1027&k=0Ck3PvTe) [![加入QQ群](https://img.shields.io/badge/已满-201705537-blue.svg)](https://jq.qq.com/?_wv=1027&k=FnHHP4TT) [![加入QQ群](https://img.shields.io/badge/已满-236543183-blue.svg)](https://jq.qq.com/?_wv=1027&k=qdT1Ojpz) [![加入QQ群](https://img.shields.io/badge/已满-213618602-blue.svg)](https://jq.qq.com/?_wv=1027&k=nw3OiyXs) [![加入QQ群](https://img.shields.io/badge/已满-148794840-blue.svg)](https://jq.qq.com/?_wv=1027&k=kiU5WDls) [![加入QQ群](https://img.shields.io/badge/已满-118752664-blue.svg)](https://jq.qq.com/?_wv=1027&k=MtBy6YfT) [![加入QQ群](https://img.shields.io/badge/已满-101038945-blue.svg)](https://jq.qq.com/?_wv=1027&k=FqImHgH2) [![加入QQ群](https://img.shields.io/badge/已满-128355254-blue.svg)](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=G4jZ4EtdT50PhnMBudTnEwgonxkXOscJ&authKey=FkGHYfoTKlGE6wHdKdjH9bVoOgQjtLP9WM%2Fj7pqGY1msoqw9uxDiBo39E2mLgzYg&noverify=0&group_code=128355254) [![加入QQ群](https://img.shields.io/badge/179219821-blue.svg)](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=irnwcXhbLOQEv1g-TwGifjNTA_f4wZiA&authKey=4bpzEwhcUY%2FvsPDHvzYn6xfoS%2FtOArvZ%2BGXzfr7O0%2FEqLfkKA%2BuCDXlzHIFg8t93&noverify=0&group_code=179219821) 点击按钮入群。

@ -1,8 +1,8 @@
{ {
"name": "ruoyi", "name": "ruoyi",
"version": "3.6.3", "version": "3.6.3",
"description": "若依管理系统", "description": "RYAS管理系统",
"author": "若依", "author": "ruoyi",
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

@ -26,15 +26,16 @@ export default defineConfig(({ mode, command }) => {
// vite 相关配置 // vite 相关配置
server: { server: {
port: 10001, port: 10001,
host: true, host: true, //指定服务器应该监听哪个 IP 地址。 如果将此设置为 0.0.0.0 或者 true 将监听所有地址
open: true, open: true, //开发服务器启动时,自动在浏览器中打开应用程序
proxy: { proxy: {
// https://cn.vitejs.dev/config/#server-proxy // https://cn.vitejs.dev/config/#server-proxy
// 对后端接口进行代理生产环境通过nginx反代不需要在这里配置
'/dev-api': { '/dev-api': {
target: 'http://localhost:8080', target: 'http://localhost:8080',
changeOrigin: true, changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api/, '') rewrite: (p) => p.replace(/^\/dev-api/, '')
} },
} }
}, },
//fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file //fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file

Loading…
Cancel
Save