# 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`。