1
This commit is contained in:
@@ -1,235 +0,0 @@
|
|||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# CLAUDE.md
|
|
||||||
|
|
||||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
||||||
|
|
||||||
## 项目概述
|
|
||||||
|
|
||||||
这是一个综合性的 **RuoYi-Vue 企业管理系统**,并集成了跨境电商 **ERP 功能**。项目主要包含:
|
|
||||||
|
|
||||||
* **RuoYi-Vue 核心**:基于 Spring Boot 后端和 Vue.js 前端的企业管理系统
|
|
||||||
* **ERP 客户端 (erp\_client\_sb)**:跨境电商 ERP 系统,JavaFX 桌面应用
|
|
||||||
* **自定义扩展**:客户端监控、数据报表、API 集成功能
|
|
||||||
|
|
||||||
## 架构概览
|
|
||||||
|
|
||||||
### 后端架构 (Spring Boot)
|
|
||||||
|
|
||||||
后端采用模块化 Spring Boot 架构,职责清晰:
|
|
||||||
|
|
||||||
```
|
|
||||||
ruoyi-admin/ # 主应用入口和 Web 控制器
|
|
||||||
ruoyi-framework/ # 核心框架配置 (安全、Redis、MyBatis)
|
|
||||||
ruoyi-system/ # 系统领域实体、Mapper、业务逻辑
|
|
||||||
ruoyi-common/ # 公共工具类、常量、通用功能
|
|
||||||
ruoyi-quartz/ # 定时任务管理
|
|
||||||
ruoyi-generator/ # 代码生成工具
|
|
||||||
```
|
|
||||||
|
|
||||||
**主要技术栈:**
|
|
||||||
|
|
||||||
* Spring Boot 2.5.15 (Java 17)
|
|
||||||
* Spring Security 5.7.12 + JWT 认证
|
|
||||||
* MyBatis + PageHelper 分页插件
|
|
||||||
* MySQL 数据库 + Redis 缓存与会话管理
|
|
||||||
* Druid 1.2.23 连接池
|
|
||||||
* Swagger 3.0.0 API 文档
|
|
||||||
* Selenium 4.34.0 和 WebMagic 1.0.3 网页自动化
|
|
||||||
|
|
||||||
### 前端架构 (Vue.js)
|
|
||||||
|
|
||||||
前端是一个基于 Vue 2.6.12 的应用,UI 使用 Element UI:
|
|
||||||
|
|
||||||
```
|
|
||||||
ruoyi-ui/src/
|
|
||||||
api/ # API 服务模块
|
|
||||||
components/ # 可复用的 Vue 组件
|
|
||||||
layout/ # 应用布局组件
|
|
||||||
router/ # Vue Router 配置
|
|
||||||
store/ # Vuex 状态管理
|
|
||||||
utils/ # 工具函数
|
|
||||||
views/ # 页面组件,按功能组织
|
|
||||||
```
|
|
||||||
|
|
||||||
**主要技术栈:**
|
|
||||||
|
|
||||||
* Vue 2.6.12 + Vue Router 3.4.9
|
|
||||||
* Element UI 2.15.14
|
|
||||||
* Vuex 3.6.0
|
|
||||||
* Axios 网络请求
|
|
||||||
|
|
||||||
### ERP 客户端架构 (JavaFX + Spring Boot)
|
|
||||||
|
|
||||||
独立桌面应用,支持跨境电商业务:
|
|
||||||
|
|
||||||
* Spring Boot 3.5.4 + JavaFX 17.0.1 UI
|
|
||||||
* SQLite 3.42.0 数据库 + JPA/Hibernate
|
|
||||||
* Playwright 1.54.0 和 WebMagic 1.0.3 数据采集
|
|
||||||
* HutoolUtils 5.8.36 工具包
|
|
||||||
* 七牛云存储集成
|
|
||||||
* 多平台支持(亚马逊、日本乐天、Shopee 等)
|
|
||||||
|
|
||||||
## 常用开发命令
|
|
||||||
|
|
||||||
### 后端 (Maven)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 构建打包
|
|
||||||
mvn clean package
|
|
||||||
|
|
||||||
# 启动 Spring Boot 应用
|
|
||||||
mvn spring-boot:run
|
|
||||||
|
|
||||||
# 从 ruoyi-admin 模块运行
|
|
||||||
cd ruoyi-admin && mvn spring-boot:run
|
|
||||||
|
|
||||||
# 跳过测试打包
|
|
||||||
mvn clean package -DskipTests
|
|
||||||
|
|
||||||
# 运行测试
|
|
||||||
mvn test
|
|
||||||
|
|
||||||
# Windows 运行脚本
|
|
||||||
ry.bat
|
|
||||||
```
|
|
||||||
|
|
||||||
### 前端 (Vue.js)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd ruoyi-ui
|
|
||||||
|
|
||||||
# 安装依赖
|
|
||||||
npm install
|
|
||||||
# 国内镜像源安装
|
|
||||||
npm install --registry=https://registry.npmmirror.com
|
|
||||||
|
|
||||||
# 启动开发服务 (默认端口 80)
|
|
||||||
npm run dev
|
|
||||||
|
|
||||||
# 生产环境构建
|
|
||||||
npm run build:prod
|
|
||||||
|
|
||||||
# 测试环境构建
|
|
||||||
npm run build:stage
|
|
||||||
```
|
|
||||||
|
|
||||||
### ERP 客户端 (JavaFX)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd erp_client_sb
|
|
||||||
|
|
||||||
# 启动应用
|
|
||||||
mvn spring-boot:run
|
|
||||||
|
|
||||||
# 打包可执行 JAR
|
|
||||||
mvn clean package
|
|
||||||
|
|
||||||
# 使用 JavaFX 插件运行
|
|
||||||
mvn javafx:run
|
|
||||||
|
|
||||||
# 运行测试
|
|
||||||
mvn test
|
|
||||||
```
|
|
||||||
|
|
||||||
## 核心配置说明
|
|
||||||
|
|
||||||
### 数据库
|
|
||||||
|
|
||||||
* **主库**:MySQL (Druid 连接池)
|
|
||||||
* **Redis**:缓存、会话、分布式锁
|
|
||||||
* **MyBatis**:XML SQL 映射,内置分页
|
|
||||||
* **ERP 客户端**:SQLite 本地存储
|
|
||||||
|
|
||||||
### 安全与认证
|
|
||||||
|
|
||||||
* **JWT**:无状态认证,可配置过期时间
|
|
||||||
* **Spring Security**:基于角色的访问控制
|
|
||||||
* **CORS**:跨域通信
|
|
||||||
* **XSS 防护**:输入过滤
|
|
||||||
|
|
||||||
### API 设计
|
|
||||||
|
|
||||||
* **RESTful 风格**:标准 HTTP 动词和状态码
|
|
||||||
* **客户端监控接口**:ERP 客户端状态上报
|
|
||||||
* **匿名访问**:如 `/monitor/client/api/**`
|
|
||||||
* **统一分页**:PageHelper 插件
|
|
||||||
* **统一响应格式**:AjaxResult 封装
|
|
||||||
* **跨域配置**:CORS 支持
|
|
||||||
* **Swagger 接口文档**:`/swagger-ui/index.html`
|
|
||||||
|
|
||||||
## 开发流程
|
|
||||||
|
|
||||||
### 新功能开发
|
|
||||||
|
|
||||||
1. 后端:在 `ruoyi-system/domain/` 新建实体
|
|
||||||
2. 数据库:在 `ruoyi-system/mapper/` 增加 Mapper
|
|
||||||
3. 服务层:实现业务逻辑
|
|
||||||
4. 控制层:在 `ruoyi-admin/web/controller/` 增加接口
|
|
||||||
5. 前端:开发 Vue 页面和 API 模块
|
|
||||||
6. 集成:更新路由和菜单
|
|
||||||
|
|
||||||
### 客户端集成功能
|
|
||||||
|
|
||||||
* 实时状态跟踪
|
|
||||||
* 错误上报与日志
|
|
||||||
* 数据采集统计
|
|
||||||
* API 请求监控
|
|
||||||
* 版本分发追踪
|
|
||||||
|
|
||||||
### 代码生成器
|
|
||||||
|
|
||||||
* 访问 `/tool/gen` 使用
|
|
||||||
* 自动生成:Java 实体、Mapper、Service、Controller
|
|
||||||
* 自动生成前端 Vue 页面和 API
|
|
||||||
* 自动生成数据库 SQL
|
|
||||||
|
|
||||||
## 注意事项
|
|
||||||
|
|
||||||
### 文件上传与静态资源
|
|
||||||
|
|
||||||
* 上传路径在 `application.yml` 中配置 (`ruoyi.profile`)
|
|
||||||
* 支持本地存储和七牛云存储
|
|
||||||
* 静态资源路径 `/profile/**`
|
|
||||||
* 前端开发服务器端口:80 (可在 `vue.config.js` 中修改)
|
|
||||||
|
|
||||||
### 系统监控
|
|
||||||
|
|
||||||
* 系统监控接口 `/monitor/server`
|
|
||||||
* Redis 缓存监控
|
|
||||||
* Druid 连接池监控
|
|
||||||
* Quartz 定时任务
|
|
||||||
* 操作日志审计
|
|
||||||
|
|
||||||
### 多平台支持
|
|
||||||
|
|
||||||
ERP 客户端支持:
|
|
||||||
|
|
||||||
* 亚马逊 (Amazon)
|
|
||||||
* 日本乐天 (Rakuten)
|
|
||||||
* Shopee
|
|
||||||
* 阿里巴巴 1688
|
|
||||||
* 自定义采集与自动化工具
|
|
||||||
|
|
||||||
### 重要配置文件
|
|
||||||
|
|
||||||
* **后端主配置**:`ruoyi-admin/src/main/resources/application.yml`
|
|
||||||
* **数据库配置**:`application-druid.yml`
|
|
||||||
* **前端配置**:`ruoyi-ui/vue.config.js`
|
|
||||||
* **Maven 配置**:根目录 `pom.xml`(父项目)和各模块 `pom.xml`
|
|
||||||
* **ERP 客户端配置**:`erp_client_sb/src/main/resources/application.yml`
|
|
||||||
|
|
||||||
### 常见问题排查
|
|
||||||
|
|
||||||
* **端口冲突**:前端默认端口 80,可在 `vue.config.js` 修改
|
|
||||||
* **跨域问题**:检查 `CorsConfig.java` 和 `vue.config.js` 代理配置
|
|
||||||
* **数据库连接**:检查 `application-druid.yml` 中的数据库连接配置
|
|
||||||
* **Maven 依赖**:使用阿里云镜像加速依赖下载
|
|
||||||
---
|
|
||||||
|
|
||||||
⚠️ **额外要求**:回答时必须使用中文。
|
|
||||||
⚠️ **代码规范要求**:代码必须遵循CLAUDE.md中的规范,代码简洁度和性能优先。
|
|
||||||
💡 **操作提示**:在每次修改代码前,先向我说明修改的思路和方案,我确认同意后再进行代码更改。
|
|
||||||
|
|
||||||
---
|
|
||||||
211
CLAUDE.md
211
CLAUDE.md
@@ -1,211 +0,0 @@
|
|||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# CLAUDE.md
|
|
||||||
|
|
||||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
||||||
|
|
||||||
## 项目概述
|
|
||||||
|
|
||||||
这是一个基于 **RuoYi-Vue 3.9.0** 的企业管理系统,集成了跨境电商 ERP 功能。项目包含:
|
|
||||||
|
|
||||||
* **RuoYi-Vue 核心**:基于 Spring Boot 2.5.15 后端和 Vue.js 2.6.12 前端的企业管理平台
|
|
||||||
* **ERP 客户端 (erp_client_sb)**:独立的跨境电商 ERP 桌面应用 (JavaFX + Spring Boot 3.5.4)
|
|
||||||
* **客户端监控扩展**:实时监控、数据报表、API 集成等自定义功能
|
|
||||||
|
|
||||||
## 项目架构
|
|
||||||
|
|
||||||
### 主项目模块结构 (Maven 多模块)
|
|
||||||
|
|
||||||
```
|
|
||||||
ruoyi-admin/ # 主应用入口,Web 控制器层
|
|
||||||
ruoyi-framework/ # 核心框架配置 (Spring Security, Redis, MyBatis)
|
|
||||||
ruoyi-system/ # 系统核心模块 (实体类、Mapper、Service)
|
|
||||||
ruoyi-common/ # 公共工具类和常量定义
|
|
||||||
ruoyi-quartz/ # 定时任务管理模块
|
|
||||||
ruoyi-generator/ # 代码生成器模块
|
|
||||||
ruoyi-ui/ # Vue.js 前端应用
|
|
||||||
erp_client_sb/ # 独立的跨境电商 ERP 客户端
|
|
||||||
```
|
|
||||||
|
|
||||||
### 技术栈详情
|
|
||||||
|
|
||||||
**后端 (Spring Boot 2.5.15)**
|
|
||||||
- Java 17 + Maven 3.11.0
|
|
||||||
- Spring Security 5.7.12 + JWT 0.9.1 认证
|
|
||||||
- MyBatis + PageHelper 1.4.7 分页
|
|
||||||
- MySQL + Redis 缓存
|
|
||||||
- Druid 1.2.23 连接池
|
|
||||||
- Swagger 3.0.0 API 文档
|
|
||||||
- FastJSON 2.0.57 JSON 处理
|
|
||||||
|
|
||||||
**前端 (Vue.js 2.6.12)**
|
|
||||||
- Element UI 2.15.14 组件库
|
|
||||||
- Vue Router 3.4.9 + Vuex 3.6.0
|
|
||||||
- Axios 0.28.1 HTTP 客户端
|
|
||||||
- ECharts 5.4.0 图表库
|
|
||||||
- Webpack 构建 (vue-cli-service 4.4.6)
|
|
||||||
|
|
||||||
**ERP 客户端 (JavaFX + Spring Boot 3.5.4)**
|
|
||||||
- OpenJFX 17.0.1 桌面 UI
|
|
||||||
- SQLite 3.42.0 本地数据库 + JPA/Hibernate
|
|
||||||
- WebMagic 1.0.3 + Selenium 4.23.0 网页爬取
|
|
||||||
- HutoolUtils 5.8.36 工具库
|
|
||||||
- 七牛云 7.12.1 存储服务
|
|
||||||
|
|
||||||
## 常用开发命令
|
|
||||||
|
|
||||||
### 后端开发 (Maven)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 启动主应用 (推荐)
|
|
||||||
cd ruoyi-admin && mvn spring-boot:run
|
|
||||||
|
|
||||||
# 从根目录启动
|
|
||||||
mvn spring-boot:run -pl ruoyi-admin
|
|
||||||
|
|
||||||
# 打包部署
|
|
||||||
mvn clean package -DskipTests
|
|
||||||
|
|
||||||
# 运行测试
|
|
||||||
mvn test
|
|
||||||
|
|
||||||
# 编译项目
|
|
||||||
mvn clean compile
|
|
||||||
```
|
|
||||||
|
|
||||||
### 前端开发 (npm)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd ruoyi-ui
|
|
||||||
|
|
||||||
# 安装依赖 (建议使用国内镜像)
|
|
||||||
npm install --registry=https://registry.npmmirror.com
|
|
||||||
|
|
||||||
# 启动开发服务器 (端口 80)
|
|
||||||
npm run dev
|
|
||||||
|
|
||||||
# 生产环境构建
|
|
||||||
npm run build:prod
|
|
||||||
|
|
||||||
# 测试环境构建
|
|
||||||
npm run build:stage
|
|
||||||
```
|
|
||||||
|
|
||||||
### ERP 客户端开发
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd erp_client_sb
|
|
||||||
|
|
||||||
# 启动 JavaFX 应用
|
|
||||||
mvn spring-boot:run
|
|
||||||
# 或者
|
|
||||||
mvn javafx:run
|
|
||||||
|
|
||||||
# 打包可执行 JAR
|
|
||||||
mvn clean package
|
|
||||||
```
|
|
||||||
|
|
||||||
## 核心配置与架构要点
|
|
||||||
|
|
||||||
### Maven 依赖管理
|
|
||||||
|
|
||||||
- 使用阿里云 Maven 镜像 (maven.aliyun.com)
|
|
||||||
- 父 POM 统一管理版本号和依赖
|
|
||||||
- 安全版本覆盖:Tomcat 9.0.106, Logback 1.2.13, Spring Framework 5.3.39
|
|
||||||
|
|
||||||
### 前端开发配置
|
|
||||||
|
|
||||||
- **开发服务器**:端口 80,支持热重载
|
|
||||||
- **代理配置**:`vue.config.js` 中配置后端 API 代理 (`http://8.138.23.49:8080`)
|
|
||||||
- **构建优化**:Gzip 压缩、代码分割、Element UI 单独打包
|
|
||||||
|
|
||||||
### 数据库与缓存
|
|
||||||
|
|
||||||
- **MySQL**:主数据库,通过 Druid 连接池管理
|
|
||||||
- **Redis**:会话存储、缓存、分布式锁
|
|
||||||
- **SQLite**:ERP 客户端本地数据存储
|
|
||||||
|
|
||||||
### 安全与认证
|
|
||||||
|
|
||||||
- **JWT 无状态认证**:支持多终端
|
|
||||||
- **RBAC 权限模型**:角色-菜单-按钮权限
|
|
||||||
- **跨域配置**:支持前后端分离部署
|
|
||||||
- **XSS 防护**:输入过滤和输出编码
|
|
||||||
|
|
||||||
## 开发工作流
|
|
||||||
|
|
||||||
### 新功能开发标准流程
|
|
||||||
|
|
||||||
1. **后端开发**:
|
|
||||||
- 在 `ruoyi-system/src/main/java/com/ruoyi/system/domain/` 创建实体类
|
|
||||||
- 在 `ruoyi-system/src/main/java/com/ruoyi/system/mapper/` 创建 Mapper 接口
|
|
||||||
- 在 `ruoyi-system/src/main/resources/mapper/system/` 创建 MyBatis XML
|
|
||||||
- 在 `ruoyi-system/src/main/java/com/ruoyi/system/service/` 实现业务逻辑
|
|
||||||
- 在 `ruoyi-admin/src/main/java/com/ruoyi/web/controller/` 创建 REST 控制器
|
|
||||||
|
|
||||||
2. **前端开发**:
|
|
||||||
- 在 `ruoyi-ui/src/api/` 创建 API 服务模块
|
|
||||||
- 在 `ruoyi-ui/src/views/` 创建页面组件
|
|
||||||
- 更新路由配置和菜单权限
|
|
||||||
|
|
||||||
3. **代码生成器**:
|
|
||||||
- 访问 `/tool/gen` 快速生成 CRUD 代码
|
|
||||||
- 支持 Java、Vue、SQL 代码自动生成
|
|
||||||
|
|
||||||
### 客户端集成开发
|
|
||||||
|
|
||||||
ERP 客户端提供的核心功能:
|
|
||||||
- 多平台数据采集 (Amazon, Rakuten, Shopee, 1688)
|
|
||||||
- 实时状态监控与错误上报
|
|
||||||
- 与主系统的 API 集成 (`/monitor/client/api/**`)
|
|
||||||
|
|
||||||
## 重要配置文件
|
|
||||||
|
|
||||||
### 后端配置
|
|
||||||
- **主配置**:`ruoyi-admin/src/main/resources/application.yml`
|
|
||||||
- **数据源配置**:`ruoyi-admin/src/main/resources/application-druid.yml`
|
|
||||||
- **Maven 配置**:根目录 `pom.xml` (父 POM)
|
|
||||||
|
|
||||||
### 前端配置
|
|
||||||
- **构建配置**:`ruoyi-ui/vue.config.js`
|
|
||||||
- **包管理**:`ruoyi-ui/package.json`
|
|
||||||
|
|
||||||
### ERP 客户端配置
|
|
||||||
- **应用配置**:`erp_client_sb/src/main/resources/application.yml`
|
|
||||||
- **Maven 配置**:`erp_client_sb/pom.xml`
|
|
||||||
|
|
||||||
## 系统监控与工具
|
|
||||||
|
|
||||||
### 内置监控功能
|
|
||||||
- 系统性能监控:`/monitor/server`
|
|
||||||
- Redis 缓存监控:缓存信息查询和命令统计
|
|
||||||
- Druid 连接池监控:SQL 性能分析
|
|
||||||
- 在线用户监控:当前活跃用户状态
|
|
||||||
- 操作日志:系统操作记录和异常日志
|
|
||||||
|
|
||||||
### API 文档
|
|
||||||
- Swagger UI:`/swagger-ui/index.html`
|
|
||||||
- 自动生成的接口文档
|
|
||||||
|
|
||||||
## 部署和环境
|
|
||||||
|
|
||||||
### 开发环境要求
|
|
||||||
- **Java**:JDK 17
|
|
||||||
- **Node.js**:>= 8.9
|
|
||||||
- **npm**:>= 3.0.0
|
|
||||||
- **MySQL**:5.7+ 或 8.0+
|
|
||||||
- **Redis**:6.0+
|
|
||||||
|
|
||||||
### 常见问题排查
|
|
||||||
- **端口冲突**:前端默认 80 端口,可在 `vue.config.js` 修改
|
|
||||||
- **跨域问题**:检查 `vue.config.js` 代理配置和后端 CORS 设置
|
|
||||||
- **Maven 依赖**:已配置阿里云镜像加速
|
|
||||||
- **JavaFX 运行**:确保 JDK 包含 JavaFX 模块或单独安装 OpenJFX
|
|
||||||
---
|
|
||||||
|
|
||||||
⚠️ **额外要求**:回答时必须使用中文。
|
|
||||||
💡 **操作提示**:在每次修改代码前,我会先向您说明修改的思路和方案,请您确认同意后再进行代码更改。
|
|
||||||
|
|
||||||
|
|
||||||
---
|
|
||||||
Reference in New Issue
Block a user