vault backup: 2026-05-10 21:47:14

This commit is contained in:
2026-05-10 21:47:14 +08:00
parent 276f1a7a59
commit 6dd33dc802
2 changed files with 15 additions and 16 deletions
+14 -15
View File
@@ -10,17 +10,16 @@ final_homework/
├── user-frontend/ # 候选人用户端前端(React + Vite) ├── user-frontend/ # 候选人用户端前端(React + Vite)
├── web-gin-service/ # Gin Web网关服务 ├── web-gin-service/ # Gin Web网关服务
├── logic-grpc-service/ # gRPC核心业务服务 ├── logic-grpc-service/ # gRPC核心业务服务
├── api/ # Protobuf 定义 & API文档 ├── proto/ # Protobuf 定义
│ ├── proto/ │ └── v1/
│ │ └── v1/ │ ├── auth.proto # 认证相关
│ │ ├── auth.proto # 认证相关 │ ├── job.proto # 岗位相关
│ │ ├── job.proto # 岗位相关 │ ├── application.proto # 投递相关
│ │ ├── application.proto # 投递相关 │ ├── profile.proto # 候选人档案
│ │ ├── profile.proto # 候选人档案 │ ├── resume.proto # 简历/OSS上传
│ │ ├── resume.proto # 简历/OSS上传 │ └── chat.proto # AI对话
│ │ └── chat.proto # AI对话 ├── api.md # 前后端接口说明文档
│ ├── api.md # 前后端接口说明文档 ├── db.md # 数据库设计文档
│ └── db.md # 数据库设计文档
├── README.md # 启动部署指南 + 项目亮点 ├── README.md # 启动部署指南 + 项目亮点
└── answer.md # 拓展设计方案(OpenClaw/Hermes集成思路) └── answer.md # 拓展设计方案(OpenClaw/Hermes集成思路)
``` ```
@@ -314,12 +313,12 @@ logic-grpc-service/
--- ---
## 六、Protobuf 定义(`api/proto/v1/`) ## 六、Protobuf 定义(`proto/v1/`)
所有 proto 文件统一放在 `api/proto/v1/`,供 `web-gin-service` 和 `logic-grpc-service` 共同引用。 所有 proto 文件统一放在 `proto/v1/`,供 `web-gin-service` 和 `logic-grpc-service` 共同引用。
``` ```
api/proto/v1/ proto/v1/
├── common.proto # 公共定义(Response code/msg, Pagination) ├── common.proto # 公共定义(Response code/msg, Pagination)
├── auth.proto # AuthService: Login, Register, VerifyToken ├── auth.proto # AuthService: Login, Register, VerifyToken
├── job.proto # JobService: CreateJob, UpdateJob, ListJobs, DeleteJob ├── job.proto # JobService: CreateJob, UpdateJob, ListJobs, DeleteJob
@@ -553,6 +552,6 @@ graph TB
## 八、开发建议 ## 八、开发建议
1. **前后端各自独立运行**:每个 `frontend/` 用 `npm run dev` 启动 Vite 开发服务器,通过 `vite.config.ts` 中的 `server.proxy` 将 `/api/*` 代理到 `localhost:8080`(Web-Gin)。 1. **前后端各自独立运行**:每个 `frontend/` 用 `npm run dev` 启动 Vite 开发服务器,通过 `vite.config.ts` 中的 `server.proxy` 将 `/api/*` 代理到 `localhost:8080`(Web-Gin)。
2. **Proto 先行**:先写好 `api/proto/v1/` 下的所有 `.proto` 文件,再各自 `protoc` 生成代码,避免来回改接口。 2. **Proto 先行**:先写好 `proto/v1/` 下的所有 `.proto` 文件,再各自 `protoc` 生成代码,避免来回改接口。
3. **前端共享模式**:HR端和用户端都遵循「API层 → Store层 → 页面层」三层分离,可抽取公共的 Axios client 和类型定义作为参考。 3. **前端共享模式**:HR端和用户端都遵循「API层 → Store层 → 页面层」三层分离,可抽取公共的 Axios client 和类型定义作为参考。
4. **环境变量隔离**:两个前端的 `.env`、后端的 `.env` 全部加 `.gitignore`,使用 `.env.example` 作为模板提交。 4. **环境变量隔离**:两个前端的 `.env`、后端的 `.env` 全部加 `.gitignore`,使用 `.env.example` 作为模板提交。
+1 -1
View File
@@ -170,7 +170,7 @@ final_homework/
### 3.3 验收标准 ### 3.3 验收标准
- [ ] `protoc --go_out=... --go-grpc_out=...` 在 `api/proto/v1/` 下编译通过 - [ ] `protoc --go_out=... --go-grpc_out=...` 在 `proto/v1/` 下编译通过
- [ ] 生成的 Go 代码存在于两个服务的 `proto/gen/v1/` 目录 - [ ] 生成的 Go 代码存在于两个服务的 `proto/gen/v1/` 目录
- [ ] 所有 RPC 方法签名覆盖项目需求文档中的全部接口 - [ ] 所有 RPC 方法签名覆盖项目需求文档中的全部接口