新增内容: 1. 添加 AGENTS.md 和 CLAUDE.md AI 助手配置文件 2. 添加安全修复说明文档 (doc/security-fixes.md) 3. 新增单元测试用例: - fund-common: TenantContextHolderTest, UserContextHolderTest, PageResultTest, ResultTest - fund-sys: AuthServiceImplTest, RoleServiceImplTest, TenantServiceImplTest 修改内容: 1. 数据库初始化脚本更新 (fund_sys_init.sql) 2. 前端依赖更新 (package.json) 3. 登录和密码管理功能优化: - 管理后台和移动端登录页面 - 密码修改功能 4. 租户上下文处理优化 (TenantLineHandlerImpl) 5. 网关过滤器增强: - TenantGatewayFilter 租户过滤 - TokenAuthFilter 认证过滤 6. Controller 层代码优化 7. DTO 和 Service 层代码改进 技术改进: - 密码加密方式从 BCrypt 改为 MD5(前后端一致) - 登录验证流程优化,支持多租户 - 增加日志输出便于调试 - 代码规范性和可维护性提升
34 lines
2.1 KiB
Markdown
34 lines
2.1 KiB
Markdown
# Repository Guidelines
|
||
|
||
## 项目结构与模块组织
|
||
- 后端为 Maven 多模块 Spring Boot 工程。核心服务位于 `fund-*` 模块(如 `fund-sys`、`fund-cust`、`fund-proj`、`fund-gateway`),共享代码在 `fund-common`。
|
||
- 前端为独立 Vite 项目:管理端在 `fund-admin`,移动端 H5 在 `fund-mobile`。
|
||
- 运维与打包相关内容在 `scripts/`、`deploy/`、`docker/`、`assembly/`。前端构建先生成各模块 `dist/`,再通过 `scripts/build-frontend.sh` 复制到 `deploy/`;后端构建产物也统一放置在 `deploy/`。
|
||
|
||
## 构建、测试与本地开发命令
|
||
- `mvn -q -DskipTests package`: 在仓库根目录构建所有后端模块。
|
||
- `mvn test`: 运行后端单元测试(依赖 Spring Boot Test)。
|
||
- `cd fund-admin && npm install && npm run dev`: 本地启动管理端。
|
||
- `cd fund-mobile && npm install && npm run dev`: 本地启动移动端。
|
||
- `./scripts/build-frontend.sh [admin|mobile]`: 构建单个或全部前端。
|
||
- `./scripts/docker-build.sh build-all`: 构建后端服务 Docker 镜像。
|
||
- `docker-compose up -d`: 启动 `docker-compose.yml` 中定义的本地依赖/服务。
|
||
|
||
## 编码风格与命名规范
|
||
- Java 采用常规 Spring Boot 风格,包名格式如 `com.fundplatform.{模块}.{层级}`。
|
||
- 后端类命名按职责清晰命名(如 `CustomerController`、`CustomerServiceImpl`)。
|
||
- 前端 TypeScript/Vue 没有统一的格式化配置,保持与现有代码风格一致。
|
||
|
||
## 测试指南
|
||
- 后端测试放在各模块 `src/test/java`,通过 `mvn test` 运行。
|
||
- 前端 `package.json` 未配置测试脚本,若新增测试需同时引入对应测试工具。
|
||
|
||
## 提交与拉取请求规范
|
||
- Git 历史显示轻量 Conventional Commits 风格,建议使用 `feat:`、`fix:` 等前缀,描述简洁明确。
|
||
- PR 需说明范围;有需求单则关联;涉及 UI(`fund-admin`、`fund-mobile`)请附截图。
|
||
- 涉及配置或部署脚本的变更(`scripts/`、`deploy/`、`docker/`)需显式说明。
|
||
|
||
## 配置与运行说明
|
||
- 服务启动脚本读取 `conf/env.properties` 和 `conf/service.properties`(见 `scripts/start.sh`)。
|
||
- 根 `pom.xml` 指定 Java 版本为 `21`。
|