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-Vue 框架的银行客户网格化管理平台。
这是一个全栈项目:
- 前端:
ruoyi-ui/- Vue 2.6 + Element UI - 后端:
../ibs/- Java Spring Boot (若依框架)
常用命令
开发
# 安装依赖(建议使用国内镜像)
npm install --registry=https://registry.npmmirror.com
# 启动开发服务器 (默认端口80)
npm run dev
# Node.js 版本兼容性问题的启动方式
npm run dev_t
构建
# 构建生产环境
npm run build:prod
# 构建测试环境
npm run build:stage
# 构建预发布环境
npm run build:pre
代码质量
# ESLint 检查
npm run lint
Mock 服务
# 启动 Mock 服务器
npm run mock
项目架构
目录结构
ruoyi-ui/
├── src/
│ ├── api/ # API 接口层,按业务模块分组
│ ├── assets/ # 静态资源(图片、样式、图标SVG)
│ ├── components/ # 全局通用组件
│ ├── directive/ # Vue 自定义指令
│ ├── layout/ # 布局组件(侧边栏、头部等)
│ ├── map/ # 地图相关工具/配置
│ ├── plugins/ # 插件配置
│ ├── router/ # 路由配置
│ ├── store/ # Vuex 状态管理
│ ├── utils/ # 工具函数
│ ├── views/ # 页面组件
│ ├── App.vue # 根组件
│ ├── main.js # 入口文件
│ └── permission.js # 路由权限控制
├── public/
│ ├── baidu/ # 百度地图静态资源
│ └── index.html
├── mock/ # Mock 数据
├── .env.development # 开发环境配置
├── .env.production # 生产环境配置
└── .env.staging # 测试环境配置
核心业务模块
| 目录 | 功能 |
|---|---|
views/grid/ |
网格管理(创建、列表、地图、走访、绩效) |
views/customer/ |
客户管理(360视图、建档、客群、标签) |
views/system/ |
系统管理(用户、角色、菜单、字典) |
views/monitor/ |
系统监控(日志、在线用户、服务监控) |
views/configure/ |
配置管理(级别配置、参数设置、模板) |
views/approveCenter/ |
审批中心 |
views/gridSearch/ |
网格搜索(管户、绩效、公海池) |
API 层组织
API 请求按业务模块组织在 src/api/ 目录:
- 每个模块导出具体的请求函数
- 使用
src/utils/request.js中的 axios 实例 - 默认添加 Bearer Token 认证
- 统一错误处理(401/500/601等状态码)
状态管理 (Vuex)
Store 模块位于 src/store/modules/:
app- 应用状态(侧边栏、设备类型)user- 用户信息permission- 权限路由settings- 系统设置dict- 字典数据tagsView- 标签页视图featuredAreas- 特色区域rate- 汇率相关
使用 vuex-persistedstate 将 settings 持久化到 localStorage。
路由系统
- 路由分为
constantRoutes(静态路由)和dynamicRoutes(动态路由) - 动态路由基于用户权限(permissions)动态加载
- 使用
src/permission.js进行路由守卫和权限控制 - 支持嵌套路由和路由元信息配置
百度地图集成
项目深度集成百度地图 API:
- 静态资源位于
public/baidu/ - 地图相关 API 在
src/api/grid/下 - 支持 WebGL 渲染、绘制管理器、热力图等
环境变量配置
| 变量 | 说明 |
|---|---|
VUE_APP_BASE_API |
后端 API 基础路径 |
VUE_APP_MOCK_API |
Mock API 路径 |
VUE_APP_MOCK |
是否启用 Mock |
VUE_APP_STAGE_URL |
测试环境地址 |
VUE_APP_BAIDU_URL |
百度地图服务地址 |
VUE_APP_SHARP_URL |
SHARP 服务地址 |
代码规范
- ESLint 配置基于
plugin:vue/recommended - 使用单引号、2空格缩进
- 组件名使用 PascalCase
- pre-commit 钩子自动执行 lint-staged
全局组件
以下组件已全局注册,可直接使用:
Pagination- 分页组件RightToolbar- 表格工具栏Editor- 富文本编辑器FileUpload- 文件上传ImageUpload- 图片上传ImagePreview- 图片预览DictTag- 字典标签treeselect- 树形选择器DownloadBtn- 下载按钮
全局方法
通过 Vue.prototype 挂载的全局方法:
getDicts()- 获取字典数据getConfigKey()- 获取配置项parseTime()- 时间格式化resetForm()- 重置表单download()- 文件下载handleTree()- 处理树形数据