4.7 KiB
4.7 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
项目概述
这是一个基于若依框架(RuoYi v3.8.8)的全栈银行客户关系管理系统,扩展了自定义业务逻辑,用于客户关系管理、基于网格的片区管理和移动端办公支持。
技术栈:
- 后端:Spring Boot 2.5.14、Java 1.8、Maven 多模块项目
- 前端:Vue 2.6 + Vant UI(移动端 H5 应用)
- 数据库:MySQL + MyBatis Plus ORM
- 缓存:Redis + JWT 认证
- API 文档:Swagger 3.0
构建与运行命令
后端(Maven)
# 构建整个项目(跳过测试)
mvn clean package -Dmaven.test.skip=true
# 或使用便捷脚本:
bin/package.bat # 构建
bin/run.bat # 运行(启动 RuoYiApplication)
bin/clean.bat # 清理构建产物
构建后的可执行 JAR 位于 ruoyi-admin/target/ruoyi-admin.jar。
前端(Vue H5)
cd szzh-h5
npm install # 安装依赖
npm run serve # 开发服务器(dev 模式)
npm run build # 生产环境构建
npm run build:dev # 开发环境构建
架构
Maven 模块结构
ruoyi/ # 父 POM
├── ruoyi-admin/ # 主应用入口(RuoYiApplication)
├── ruoyi-framework/ # 框架核心(安全、配置、拦截器)
├── ruoyi-system/ # 系统管理(用户、角色、部门、菜单)
├── ruoyi-common/ # 通用工具类和基类
├── ruoyi-quartz/ # 定时任务支持
├── ruoyi-generator/ # 代码生成工具
└── ibs/ # 自定义业务逻辑模块
IBS 业务模块(ibs/src/main/java/com/ruoyi/ibs)
核心业务域包含以下子模块:
| 模块 | 功能说明 |
|---|---|
app |
企业微信(QYWeiXin)集成、认证 |
audio |
音频录制和处理 |
cmpm |
客户经理关系管理(移交、认领、调整) |
custmap |
客户地图可视化和收藏位置 |
customerselect |
客户筛选和基于 CSV 标签的选择 |
dashboard |
仪表盘数据、营销活动、通知 |
datavisual |
拜访轨迹和区域数据可视化 |
draw |
地图绘制图层及审核工作流 |
grid |
地理网格管理、虚拟网格、地址解析 |
list |
客户列表(零售、商户)、家庭成员、营销活动 |
qxhy |
第三方集成(清香和一) |
rules |
业务关系规则引擎 |
tabs |
客户详情标签页和列表信息 |
task |
拜访任务、预约、工作记录、反馈 |
前端结构(szzh-h5/src)
views/
├── cart/ # 购物车功能
├── category/ # 分类管理
├── customer/ # 客户视图
├── dashboard/ # 仪表盘视图
├── grid/ # 网格管理视图
├── login/ # 认证登录
├── map/ # 地图功能
├── visitingTask/ # 拜访任务管理
└── workBench/ # 工作台视图
关键配置
环境配置文件
application.yml- 基础配置application-dev.yml- 开发环境application-pre.yml- 预生产环境application-uat.yml- UAT 环境application-pro.yml- 生产环境
重要路径
- MyBatis Mapper 文件:
ibs/src/main/resources/mapper/**/*.xml - 类型处理器:
com.ruoyi.ibs.handler - 上传路径(Windows):
D:/ruoyi/files/ - 上传路径(Linux):
/home/webapp/ruoyi/files/
代码规范
后端包结构(每个模块)
com.ruoyi.ibs.{module}/
├── controller/ # REST 接口
├── domain/
│ ├── entity/ # 数据库实体(@TableName)
│ ├── dto/ # 请求 DTO
│ └── vo/ # 响应 VO
├── mapper/ # MyBatis Mapper
└── service/
├── I{Xxx}Service # 接口
└── impl/
└── {Xxx}ServiceImpl # 实现
命名规范
- Controller 以
Controller结尾 - Service 接口以
I开头(如IGridService) - Service 实现以
ServiceImpl结尾 - DTO 以
DTO结尾(数据传输对象) - VO 以
VO结尾(视图对象) - 实体类使用
@TableName注解映射表名
认证与安全
- 基于 JWT 的认证,可配置令牌过期时间(默认 3000 分钟)
- Token 请求头:
Authorization - Spring Security 实现基于角色的访问控制
- 在
/system/*、/monitor/*、/tool/*路径启用 XSS 过滤
开发注意事项
- 热部署默认禁用(
spring.devtools.restart.enabled: false) com.ruoyi包的日志级别为debug- 使用 Druid 连接池
- PageHelper 配置为 MySQL 分页方言
- 主应用入口:
ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java