diff --git a/README.md b/README.md index a87ea697..2844a0fe 100644 --- a/README.md +++ b/README.md @@ -59,3 +59,7 @@ com.ruoyi # 微服务架构模式的切换 详见[微服务架构在不同模式下的切换](./STRUCTURE_MODE.md) + +# 前端 + +运行和打包前端项目请参考[前端运行和发布](./ruoyi-ui/README.md) \ No newline at end of file diff --git a/STRUCTURE_MODE.md b/STRUCTURE_MODE.md index e3d2f2a4..c9ebf47a 100644 --- a/STRUCTURE_MODE.md +++ b/STRUCTURE_MODE.md @@ -10,7 +10,7 @@ - ruoyi-file(文件模块) - ruoyi-job(定时任务模块) - 其他后续追加的业务模块... -2. nacos配置使用**GROUP_ALL_IN_1**分组 +2. nacos配置使用**DEFAULT_GROUP**分组 3. ruoyi-system模块的入口启动类使用`com.ruoyi.system.RuoYiSystemApplication` 4. 注解掉ruoyi-system模块里其他模式的入口启动类 5. 【可选】ruoyi-system模块的`bootstrap.yml`里,关闭配置项:`spring.main.allow-bean-definition-overriding: false` @@ -22,7 +22,7 @@ - ruoyi-file(文件模块) - ruoyi-job(定时任务模块) - 其他后续追加的业务模块... -2. nacos配置使用**DEFAULT_GROUP**分组 +2. nacos配置使用**GROUP_ALL_IN_1**分组 3. ruoyi-system模块的入口启动类使用`com.ruoyi.SystemAllApplication` 4. 注解掉ruoyi-system模块里其他模式的入口启动类 5. ruoyi-system模块的`bootstrap.yml`里,确保开启配置项:`spring.main.allow-bean-definition-overriding: true` diff --git a/ruoyi-gateway/src/main/resources/bootstrap.yml b/ruoyi-gateway/src/main/resources/bootstrap.yml index e7b08c89..af645517 100644 --- a/ruoyi-gateway/src/main/resources/bootstrap.yml +++ b/ruoyi-gateway/src/main/resources/bootstrap.yml @@ -24,8 +24,8 @@ spring: shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} # 指定分组 -# group: DEFAULT_GROUP #默认微服务组 - group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 + group: DEFAULT_GROUP #默认微服务组 + #group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 sentinel: # 取消控制台懒加载 eager: true diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml index d005bbe7..4bc4f00c 100644 --- a/ruoyi-modules/ruoyi-system/pom.xml +++ b/ruoyi-modules/ruoyi-system/pom.xml @@ -91,20 +91,20 @@ - - com.ruoyi - ruoyi-auth - + + + + - - com.ruoyi - ruoyi-modules-file - + + + + - - com.ruoyi - ruoyi-modules-job - + + + + diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/SystemAllApplication.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/SystemAllApplication.java index 0a1e22f9..a8c29d32 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/SystemAllApplication.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/SystemAllApplication.java @@ -8,15 +8,15 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** - * 多合一启动器 + * all-in-one架构模式下的启动入口类 * * @author Alan Scipio * created on 2024/1/31 */ -@EnableCustomConfig -@EnableCustomSwagger2 -@EnableRyFeignClients -@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) +//@EnableCustomConfig +//@EnableCustomSwagger2 +//@EnableRyFeignClients +//@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) public class SystemAllApplication { public static void main(String[] args) { SpringApplication.run(SystemAllApplication.class, args); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java index 5d169c44..1ff73587 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java @@ -8,14 +8,14 @@ import com.ruoyi.common.security.annotation.EnableRyFeignClients; import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; /** - * 系统模块 + * 系统模块(常规模式) * * @author ruoyi */ -//@EnableCustomConfig -//@EnableCustomSwagger2 -//@EnableRyFeignClients -//@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) +@EnableCustomConfig +@EnableCustomSwagger2 +@EnableRyFeignClients +@SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class}) public class RuoYiSystemApplication { public static void main(String[] args) { SpringApplication.run(RuoYiSystemApplication.class, args); diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml index f8135f0f..2f930647 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml @@ -7,8 +7,8 @@ spring: application: # 应用名称 name: ruoyi-system - main: - allow-bean-definition-overriding: true # All-in-one模式下必须 +# main: +# allow-bean-definition-overriding: true # All-in-one模式下必须 profiles: # 环境配置 active: dev @@ -26,5 +26,5 @@ spring: shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} # 指定分组 -# group: DEFAULT_GROUP #默认微服务组 - group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 + group: DEFAULT_GROUP #默认微服务组 + #group: GROUP_ALL_IN_1 #多模块集成在system模块里的模式 diff --git a/ruoyi-ui/.env.development b/ruoyi-ui/.env.development index 5896347e..67043713 100644 --- a/ruoyi-ui/.env.development +++ b/ruoyi-ui/.env.development @@ -1,8 +1,8 @@ # 页面标题 VITE_APP_TITLE=RYAS管理系统 -# 开发环境配置 +# 环境指定 VITE_APP_ENV='development' -# 若依管理系统/开发环境 +# 后端api标识 VITE_APP_BASE_API='/dev-api' diff --git a/ruoyi-ui/.env.production b/ruoyi-ui/.env.production index 508fe962..47eef19b 100644 --- a/ruoyi-ui/.env.production +++ b/ruoyi-ui/.env.production @@ -1,10 +1,10 @@ # 页面标题 VITE_APP_TITLE=RYAS管理系统 -# 生产环境配置 +# 环境指定 VITE_APP_ENV='production' -# 若依管理系统/生产环境 +# 后端api标识 VITE_APP_BASE_API='/prod-api' # 是否在打包时开启压缩,支持 gzip 和 brotli diff --git a/ruoyi-ui/.env.staging b/ruoyi-ui/.env.staging index 11c939f7..27fb4481 100644 --- a/ruoyi-ui/.env.staging +++ b/ruoyi-ui/.env.staging @@ -1,10 +1,10 @@ # 页面标题 VITE_APP_TITLE=RYAS管理系统 -# 生产环境配置 +# 环境指定 VITE_APP_ENV='staging' -# 若依管理系统/生产环境 +# 后端api标识 VITE_APP_BASE_API='/stage-api' # 是否在打包时开启压缩,支持 gzip 和 brotli diff --git a/ruoyi-ui/README.md b/ruoyi-ui/README.md index d09d883b..cbdd6c04 100644 --- a/ruoyi-ui/README.md +++ b/ruoyi-ui/README.md @@ -1,143 +1,29 @@ -

- logo -

-

RuoYi v3.6.3

-

基于 Vue3/Element Plus 和 Spring Boot/Spring Cloud & Alibaba 前后端分离的分布式微服务架构

-

- - - -

- -## 平台简介 - -* 本仓库为前端技术栈 [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)   -* 阿里云优惠券:[点我领取](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)   - -## 前端运行 +## 启动运行 ```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 - -# 构建测试环境 yarn build:stage -# 构建生产环境 yarn build:prod -# 前端访问地址 http://localhost:80 +npm run dev ``` -## 系统模块 - -~~~ -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 // 公共依赖 -~~~ - -## 架构图 - - +## 项目访问 -## 内置功能 +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 - -## 演示图 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+## 发布 +```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) 点击按钮入群。 \ No newline at end of file diff --git a/ruoyi-ui/package.json b/ruoyi-ui/package.json index 6aadaa15..30147cdc 100644 --- a/ruoyi-ui/package.json +++ b/ruoyi-ui/package.json @@ -1,8 +1,8 @@ { "name": "ruoyi", "version": "3.6.3", - "description": "若依管理系统", - "author": "若依", + "description": "RYAS管理系统", + "author": "ruoyi", "license": "MIT", "type": "module", "scripts": { diff --git a/ruoyi-ui/public/favicon.ico b/ruoyi-ui/public/favicon.ico index 121ffe20..515c8999 100644 Binary files a/ruoyi-ui/public/favicon.ico and b/ruoyi-ui/public/favicon.ico differ diff --git a/ruoyi-ui/public/ruoyi.ico b/ruoyi-ui/public/ruoyi.ico new file mode 100644 index 00000000..121ffe20 Binary files /dev/null and b/ruoyi-ui/public/ruoyi.ico differ diff --git a/ruoyi-ui/src/assets/logo/logo.png b/ruoyi-ui/src/assets/logo/logo.png index e2637602..8a1cf5be 100644 Binary files a/ruoyi-ui/src/assets/logo/logo.png and b/ruoyi-ui/src/assets/logo/logo.png differ diff --git a/ruoyi-ui/src/assets/logo/logo_ruoyi.png b/ruoyi-ui/src/assets/logo/logo_ruoyi.png new file mode 100644 index 00000000..e2637602 Binary files /dev/null and b/ruoyi-ui/src/assets/logo/logo_ruoyi.png differ diff --git a/ruoyi-ui/vite.config.js b/ruoyi-ui/vite.config.js index 49726dc8..84eb8524 100644 --- a/ruoyi-ui/vite.config.js +++ b/ruoyi-ui/vite.config.js @@ -26,15 +26,16 @@ export default defineConfig(({ mode, command }) => { // vite 相关配置 server: { port: 10001, - host: true, - open: true, + host: true, //指定服务器应该监听哪个 IP 地址。 如果将此设置为 0.0.0.0 或者 true 将监听所有地址 + open: true, //开发服务器启动时,自动在浏览器中打开应用程序 proxy: { // https://cn.vitejs.dev/config/#server-proxy + // 对后端接口进行代理,生产环境通过nginx反代不需要在这里配置 '/dev-api': { target: 'http://localhost:8080', changeOrigin: true, rewrite: (p) => p.replace(/^\/dev-api/, '') - } + }, } }, //fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file