v4.2 冲刺版+每日推送+支付修复+全量代码评审
## 新增功能 - 冲刺版 ¥49.9/月:完整支付→激活→权益扣减链路 - 每日一题定时推送(@nestjs/schedule,早8点微信订阅消息) - miniprogram-ci 编译上传脚本(scripts/upload-mp.js) ## Bug修复 - 套餐值统一:vip→growth/sprint(interview轮次限制、analyze次数检查) - member/pay 移除开发绕过:改为订单校验后激活 - progress→report 参数名不匹配:id→interviewId - result.vue resume.create() 参数传错(对象→独立参数) - resume.vue analyze请求缺少Authorization header - bank.vue contribution请求缺少Authorization header - member.vue startPay() 缺少try/catch导致网络错误崩溃 - login.vue 调试面板 v-if="true" 生产泄漏 ## 配置 - 微信支付生产证书就位(商户号1113760598) - .env 清理冗余文件(删除.example/.production) - WX_NOTIFY_URL 更新为 zhiyinwx.yzrcloud.cn ## 文档 - PROJECT-STATUS.md v4.1→v4.2,状态全面更新 - DEPLOYMENT.md 新增小程序编译上传章节、清理检查清单
This commit is contained in:
+197
-343
@@ -1,9 +1,9 @@
|
||||
# 职引 — 技术架构文档 v3.0
|
||||
# 职引 — 技术架构文档 v4.0
|
||||
|
||||
> 版本: v3.0
|
||||
> 日期: 2026-06-01
|
||||
> 状态: 重新定位后
|
||||
> 定位: 应届生/实习生 AI 面试教练
|
||||
> **版本**: v4.0
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 完成
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
|
||||
@@ -17,403 +17,256 @@
|
||||
| Vue | 3.4 | 框架 |
|
||||
| TypeScript | 5.x | 类型安全 |
|
||||
| Vite | 5.x | 构建工具 |
|
||||
| Pinia | 2.x | 状态管理(用户状态、面试会话) |
|
||||
| SCSS | - | 样式预处理 |
|
||||
|
||||
### 1.2 后端
|
||||
|
||||
| 技术 | 版本 | 用途 |
|
||||
|------|------|------|
|
||||
| Node.js | 18+ | 运行环境 |
|
||||
| NestJS | 10.x | 框架(模块化,适合快速迭代) |
|
||||
| MongoDB + Mongoose | 7.x | 数据库(灵活 schema,适合快速迭代) |
|
||||
| MongoDB Atlas | - | 免费层起步,0 成本启动 |
|
||||
| JWT | - | 用户认证(微信登录对接后使用) |
|
||||
| NestJS | 10.x | 框架 |
|
||||
| MongoDB + Mongoose | 7.x | 数据库 |
|
||||
| JWT | - | 认证 |
|
||||
| class-validator | - | 参数校验 |
|
||||
| 微信支付 | - | 会员付费(Phase 1.5 接入) |
|
||||
|
||||
### 1.3 AI 能力
|
||||
|
||||
| 技术 | 用途 | 优先级 |
|
||||
|------|------|--------|
|
||||
| opencode-go (deepseek-v4-flash) | 面试模拟、简历诊断、面试报告 | 主用 |
|
||||
| opencode-go (deepseek-v4-flash) | 面试模拟、简历诊断、报告 | 主用 |
|
||||
| NVIDIA (stepfun-ai/step-3.5-flash) | 主用不可用时自动切换 | 备用 |
|
||||
|
||||
### 1.4 部署
|
||||
|
||||
| 技术 | 用途 |
|
||||
|------|------|
|
||||
| 腾讯云轻量应用服务器 | 后端部署(个人开发者友好,已 ICP 备案) |
|
||||
| 微信小程序云开发(可选) | 静态资源 + 云函数(快速原型) |
|
||||
| Nginx | 反向代理(HTTPS 终止) |
|
||||
| 腾讯云轻量应用服务器 | 后端部署(已 ICP 备案) |
|
||||
| Nginx | 反向代理(HTTPS 终止) + H5 静态文件服务 |
|
||||
| PM2 | 进程管理 |
|
||||
|
||||
**生产域名**:
|
||||
| 域名 | 用途 | 指向 |
|
||||
|------|------|------|
|
||||
| `zhiyinwx.yzrcloud.cn` | 后端 API(小程序服务端 + H5 API) | Nginx → `localhost:3006` |
|
||||
| `zhiyin.yzrcloud.cn` | H5 网页端 | `/www/wwwroot/zhiyin.yzrcloud.cn` |
|
||||
|
||||
---
|
||||
|
||||
## 二、项目结构(简化版,MVP 优先)
|
||||
## 二、项目结构
|
||||
|
||||
```
|
||||
zhiyin/
|
||||
├── zhiyin-app/ # 小程序前端
|
||||
│ ├── src/
|
||||
│ │ ├── pages/ # 页面
|
||||
│ │ │ ├── index/ # 首页(岗位选择 + 面试入口)
|
||||
│ │ │ ├── interview/ # 面试模拟(核心页面)
|
||||
│ │ │ ├── report/ # 面试报告
|
||||
│ │ │ ├── history/ # 历史面试记录
|
||||
│ │ │ ├── resume/ # 简历诊断(Phase 1.5)
|
||||
│ │ │ ├── internship/ # 实习搜索聚合(MVP 跳转模式)
|
||||
│ │ │ ├── user/ # 个人中心
|
||||
│ │ │ └── member/ # 会员中心(Phase 1.5)
|
||||
│ │ ├── components/ # 组件
|
||||
│ │ ├── services/ # API 服务
|
||||
│ │ ├── stores/ # Pinia 状态
|
||||
│ │ ├── styles/ # 全局样式
|
||||
│ │ ├── utils/ # 工具函数
|
||||
│ │ ├── App.vue
|
||||
│ │ └── main.ts
|
||||
│ ├── package.json
|
||||
│ ├── vite.config.js
|
||||
│ └── manifest.json # 小程序配置(AI 深度合成类目已通过)
|
||||
│ └── src/
|
||||
│ ├── pages/ # 16 个页面
|
||||
│ │ ├── index/ # 首页(Tab: 面试)
|
||||
│ │ ├── interview/ # 面试模拟
|
||||
│ │ ├── report/ # 面试报告
|
||||
│ │ ├── history/ # 历史记录(Tab: 面经)
|
||||
│ │ ├── user/ # 个人中心(Tab: 我的)
|
||||
│ │ ├── login/ # 登录/注册
|
||||
│ │ ├── member/ # 会员中心
|
||||
│ │ ├── progress/ # 进步轨迹雷达图
|
||||
│ │ ├── contribute/ # 面经贡献
|
||||
│ │ ├── resume/ # 简历诊断/优化
|
||||
│ │ ├── result/ # 优化结果
|
||||
│ │ ├── internship/ # 实习搜索
|
||||
│ │ ├── admin/ # 管理后台
|
||||
│ │ ├── about/ # 关于
|
||||
│ │ ├── agreement/ # 用户协议
|
||||
│ │ └── privacy/ # 隐私政策
|
||||
│ ├── services/api.ts # API 服务封装
|
||||
│ ├── config.ts # 全局配置/端点定义
|
||||
│ ├── pages.json # 路由表(3 Tab + 13 页面)
|
||||
│ └── manifest.json # 小程序配置
|
||||
│
|
||||
├── backend/ # 后端服务
|
||||
│ ├── src/
|
||||
│ │ ├── common/ # 公共模块
|
||||
│ │ │ ├── filters/ # 异常过滤器
|
||||
│ │ │ ├── guards/ # 权限守卫(JWT)
|
||||
│ │ │ ├── interceptors/ # 拦截器(日志、响应格式)
|
||||
│ │ │ └── utils/ # 工具函数
|
||||
│ │ ├── config/ # 配置文件(数据库、AI API、微信)
|
||||
│ │ ├── dto/ # 数据传输对象
|
||||
│ │ ├── modules/ # 业务模块(MVP 只做 3 个核心模块)
|
||||
│ │ │ ├── interview/ # 面试模块(核心,P0)
|
||||
│ │ │ ├── user/ # 用户模块(微信登录,P0)
|
||||
│ │ │ ├── resume/ # 简历模块(Phase 1.5,P1)
|
||||
│ │ │ ├── member/ # 会员模块(Phase 1.5,P1)
|
||||
│ │ │ ├── internship/ # 实习搜索模块(MVP 跳转,P1)
|
||||
│ │ │ └── knowledge/ # 知识图谱模块(Phase 2,P2)
|
||||
│ │ ├── ai/ # AI 能力封装(opencode-go + NVIDIA 切换)
|
||||
│ │ ├── wechat/ # 微信相关(登录、支付、订阅消息)
|
||||
│ │ ├── app.module.ts
|
||||
│ │ └── main.ts
|
||||
│ ├── package.json
|
||||
│ └── tsconfig.json
|
||||
├── backend/ # 后端服务 (NestJS)
|
||||
│ └── src/
|
||||
│ ├── main.ts # 入口(端口 3006, 前缀 /api)
|
||||
│ ├── app.module.ts # 根模块(导入全部 14 个子模块)
|
||||
│ ├── common/ # 公共模块
|
||||
│ │ ├── decorators/ # @CurrentUser, @Public
|
||||
│ │ ├── guards/ # JwtAuthGuard
|
||||
│ │ ├── strategies/ # JwtStrategy
|
||||
│ │ └── filters/ # AllExceptionsFilter
|
||||
│ └── modules/ # 15 个业务模块
|
||||
│ ├── user/ # 用户(手机/邮箱/密码/微信登录)
|
||||
│ ├── interview/ # AI 面试(核心,含进度追踪)
|
||||
│ ├── ai/ # AI 调用封装(主/备切换)
|
||||
│ ├── analyze/ # 简历诊断/优化 AI 分析
|
||||
│ ├── resume/ # 简历 CRUD
|
||||
│ ├── member/ # 会员套餐/状态
|
||||
│ ├── payment/ # 微信支付 v3(签名/解密/回调)
|
||||
│ ├── positions/ # 热门岗位维护
|
||||
│ ├── upload/ # 文件上传
|
||||
│ ├── admin/ # 管理后台 API
|
||||
│ ├── email/ # 邮件发送
|
||||
│ ├── progress/ # 进步轨迹四维统计
|
||||
│ ├── contribution/ # 面经贡献 + 公司题库
|
||||
│ ├── daily-question/ # 每日一题(待完善推送)
|
||||
│ └── schemas/ # 共享数据模型(5 个 schema)
|
||||
│
|
||||
└── docs/ # 项目文档
|
||||
├── PRODUCT-PLAN.md # 产品规划(✅ 已更新 v3.0)
|
||||
├── ARCHITECTURE.md # 架构文档(✅ 当前文件)
|
||||
├── FEATURE-LIST.md # 功能清单(待更新)
|
||||
├── ROADMAP.md # 路线图(待更新)
|
||||
└── PROJECT-STATUS.md # 进度文档(待更新)
|
||||
└── docs/ # 项目文档
|
||||
├── PRODUCT-PLAN.md
|
||||
├── ARCHITECTURE.md
|
||||
├── FEATURE-LIST.md
|
||||
├── ROADMAP.md
|
||||
├── PROJECT-STATUS.md
|
||||
├── DEPLOYMENT.md
|
||||
└── WECHAT-CHECKLIST.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 三、核心数据模型(简化,快速迭代)
|
||||
## 三、数据模型
|
||||
|
||||
### 3.1 用户(User)
|
||||
|
||||
```javascript
|
||||
{
|
||||
_id: ObjectId,
|
||||
openid: String, // 微信 openid(唯一标识)
|
||||
nickname: String, // 微信昵称
|
||||
avatar: String, // 微信头像
|
||||
targetPosition: String, // 目标岗位(校招热门岗位)
|
||||
targetIndustry: String, // 目标行业
|
||||
memberStatus: { // 会员状态
|
||||
type: String, // free/vip
|
||||
expireAt: Date,
|
||||
},
|
||||
usage: { // 使用统计
|
||||
dailyInterviewCount: Number, // 每日面试次数
|
||||
totalInterviewCount: Number, // 总面试次数
|
||||
lastResetDate: Date,
|
||||
},
|
||||
createdAt: Date,
|
||||
updatedAt: Date
|
||||
}
|
||||
### 3.1 用户 (User)
|
||||
```
|
||||
phone, wxOpenid, email, password, nickname, avatar
|
||||
plan (free/growth), remaining, vipExpireAt
|
||||
role (user/admin), isSystemAdmin
|
||||
interviewCount
|
||||
```
|
||||
|
||||
### 3.2 面试会话(Interview)—— 核心模型
|
||||
|
||||
```javascript
|
||||
{
|
||||
_id: ObjectId,
|
||||
userId: ObjectId,
|
||||
position: String, // 面试岗位(如"前端工程师")
|
||||
status: String, // pending/active/completed
|
||||
rounds: [{ // 问答轮次
|
||||
question: String, // AI 问题
|
||||
answer: String, // 用户回答
|
||||
feedback: { // AI 反馈
|
||||
score: Number, // 本题得分(0-100)
|
||||
comment: String, // 评语
|
||||
suggestion: String, // 改进建议
|
||||
referenceAnswer: String, // 参考回答思路
|
||||
},
|
||||
createdAt: Date,
|
||||
}],
|
||||
summary: { // 面试总结
|
||||
totalScore: Number, // 总分(0-100)
|
||||
strengths: [String], // 优势
|
||||
weaknesses: [String], // 不足
|
||||
suggestions: [String], // 综合建议
|
||||
dimensionScores: { // 各维度得分
|
||||
logic: Number, // 逻辑思维
|
||||
expression: Number, // 表达能力
|
||||
professionalism: Number, // 专业度
|
||||
stability: Number, // 情绪稳定性
|
||||
},
|
||||
},
|
||||
createdAt: Date,
|
||||
completedAt: Date
|
||||
}
|
||||
### 3.2 面试 (Interview)
|
||||
```
|
||||
userId, position, status (in_progress/completed)
|
||||
messages[{role, content, score, feedback, suggestion}]
|
||||
totalScore, questionCount
|
||||
summary{dimensionScores{logic,expression,professionalism,stability}, strengths, weaknesses, suggestions}
|
||||
```
|
||||
|
||||
### 3.3 简历(Resume)—— Phase 1.5
|
||||
|
||||
```javascript
|
||||
{
|
||||
_id: ObjectId,
|
||||
userId: ObjectId,
|
||||
title: String, // 简历标题
|
||||
originalContent: String, // 原始内容
|
||||
targetPosition: String, // 目标岗位
|
||||
createdAt: Date,
|
||||
updatedAt: Date
|
||||
}
|
||||
### 3.3 进步轨迹 (Progress)
|
||||
```
|
||||
userId, totalInterviews, completedInterviews
|
||||
avgLogic, avgExpression, avgProfessionalism, avgStability
|
||||
streak, lastInterviewDate, streakHistory
|
||||
recentScores[{interviewId, date, position, totalScore, dimensions}]
|
||||
```
|
||||
|
||||
### 3.4 岗位题库(QuestionBank)—— Phase 2 知识图谱前置
|
||||
### 3.4 面经贡献 (Contribution)
|
||||
```
|
||||
userId, interviewId, company, position, rounds, questions, experience, tags, verified
|
||||
```
|
||||
|
||||
```javascript
|
||||
{
|
||||
_id: ObjectId,
|
||||
position: String, // 岗位名称(如"前端工程师")
|
||||
category: String, // 分类(技术/职能/AI专项)
|
||||
difficulty: String, // 难度(junior/mid/senior)
|
||||
questions: [{
|
||||
content: String, // 问题内容
|
||||
type: String, // 类型(basic/algorithm/project/behavioral)
|
||||
referenceAnswer: String, // 参考回答
|
||||
tags: [String], // 标签(如"闭包"、"贪心算法")
|
||||
}],
|
||||
createdAt: Date,
|
||||
updatedAt: Date
|
||||
}
|
||||
### 3.5 公司题库 (CompanyBank)
|
||||
```
|
||||
company, position
|
||||
questions[{content, type, referenceAnswer, difficulty, frequency, tags}]
|
||||
contributionCount, viewCount
|
||||
```
|
||||
|
||||
### 3.6 每日一题 (DailyQuestion)
|
||||
```
|
||||
position, question, referenceAnswer, category, date, pushed
|
||||
```
|
||||
|
||||
### 3.7 支付订单 (PaymentOrder)
|
||||
```
|
||||
outTradeNo, userId, amount, status, channel (native/jsapi)
|
||||
paidAt, wxTransactionId, refundAmount, refundedAt
|
||||
```
|
||||
|
||||
### 3.8 简历/岗位
|
||||
```
|
||||
Resume: userId, title, originalContent, targetPosition
|
||||
HotPosition: name, salary, company, icon, sort, active
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 四、API 接口设计(MVP 核心接口)
|
||||
## 四、API 接口总览
|
||||
|
||||
### 4.1 用户模块(微信登录)
|
||||
### 4.1 用户 (prefix: `/api/user`)
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `/send-code` | 发送手机验证码 |
|
||||
| POST | `/login` | 手机号+验证码登录 |
|
||||
| POST | `/send-email-code` | 发送邮箱验证码 |
|
||||
| POST | `/email-login` | 邮箱+验证码登录 |
|
||||
| POST | `/password-login` | 邮箱+密码登录 |
|
||||
| POST | `/register` | 邮箱+密码注册 |
|
||||
| POST | `/wx-login` | 微信静默登录 |
|
||||
| GET | `/info` | 获取用户信息 |
|
||||
| PUT | `/update` | 更新用户信息 |
|
||||
| GET | `/usage` | 获取使用额度 |
|
||||
| POST | `/set-password` | 设置密码 |
|
||||
|
||||
| 接口 | 方法 | 路径 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 微信登录 | POST | /api/user/wx-login | 微信授权登录,返回 token |
|
||||
| 获取用户信息 | GET | /api/user/info | 获取用户信息 |
|
||||
| 更新用户信息 | PUT | /api/user/update | 更新目标岗位/行业 |
|
||||
### 4.2 面试 (prefix: `/api/interview`)
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `/create` | 创建面试 |
|
||||
| POST | `/:id/answer` | 提交回答 |
|
||||
| POST | `/:id/complete` | 完成面试生成报告 |
|
||||
| GET | `/:id` | 获取面试详情 |
|
||||
| GET | `/list/all` | 面试历史列表 |
|
||||
| GET | `/stats/mine` | 用户统计 |
|
||||
|
||||
### 4.2 面试模块(核心)
|
||||
### 4.3 简历/AI 分析 (prefix: `/api/analyze`, `/api/resume`)
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `/analyze/diagnosis` | AI 简历诊断 |
|
||||
| POST | `/analyze/optimize` | AI 简历优化 |
|
||||
| POST | `/resume/create` | 创建简历 |
|
||||
| GET | `/resume/list` | 简历列表 |
|
||||
| DELETE | `/resume/:id` | 删除简历 |
|
||||
|
||||
| 接口 | 方法 | 路径 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 创建面试 | POST | /api/interview/create | 创建面试会话(选岗位) |
|
||||
| 获取面试 | GET | /api/interview/:id | 获取面试详情 |
|
||||
| 面试列表 | GET | /api/interview/list | 获取用户面试列表 |
|
||||
| 提交回答 | POST | /api/interview/:id/answer | 提交本轮回答 |
|
||||
| 获取反馈 | GET | /api/interview/:id/feedback | 获取本轮反馈 |
|
||||
| 结束面试 | POST | /api/interview/:id/complete | 结束面试生成报告 |
|
||||
### 4.4 会员/支付 (prefix: `/api/member`, `/api/payment`)
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `/member/plans` | 套餐配置 |
|
||||
| GET | `/member/status` | 会员状态 |
|
||||
| POST | `/member/pay` | ⚠️ 开发绕过(上线前移除) |
|
||||
| POST | `/payment/create` | 创建 Native 支付订单 |
|
||||
| POST | `/payment/jsapi` | 创建 JSAPI 支付 |
|
||||
| POST | `/payment/notify` | 微信支付回调 |
|
||||
| POST | `/payment/query` | 查询订单状态 |
|
||||
|
||||
### 4.3 实习搜索模块(MVP 跳转模式)
|
||||
### 4.5 Phase 0.5 (prefix: `/api/progress`, `/api/contribution`, `/api/daily-question`)
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `/progress` | 进步轨迹数据 |
|
||||
| GET | `/progress/stats` | 进步轨迹统计 |
|
||||
| POST | `/contribution` | 提交面经贡献 |
|
||||
| GET | `/contribution/my` | 我的贡献列表 |
|
||||
| GET | `/contribution/company/:c/position/:p` | 公司题库查询 |
|
||||
| GET | `/contribution/company/:c` | 公司岗位列表 |
|
||||
| GET | `/daily-question` | 获取每日一题 |
|
||||
| GET | `/daily-question/position/:p` | 按岗位获取题目 |
|
||||
|
||||
| 接口 | 方法 | 路径 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 实习搜索 | GET | /api/internship/search | 搜索实习岗位(聚合入口) |
|
||||
| 热门实习 | GET | /api/internship/hot | 热门实习岗位列表 |
|
||||
|
||||
> MVP 阶段:不存数据,只做搜索聚合入口(跳转模式),低成本验证用户需求。
|
||||
|
||||
### 4.4 简历模块(Phase 1.5)
|
||||
|
||||
| 接口 | 方法 | 路径 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 创建简历 | POST | /api/resume/create | 创建简历记录 |
|
||||
| 诊断简历 | POST | /api/resume/diagnosis | AI 诊断简历问题 |
|
||||
|
||||
### 4.5 会员模块(Phase 1.5)
|
||||
|
||||
| 接口 | 方法 | 路径 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 会员订阅 | POST | /api/member/subscribe | 微信支付订阅 |
|
||||
| 获取会员状态 | GET | /api/member/status | 获取会员信息 |
|
||||
### 4.6 其他
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `/positions/hot` | 热门岗位 |
|
||||
| POST | `/upload` | 文件上传 |
|
||||
| GET | `/admin/*` | 管理后台接口 |
|
||||
|
||||
---
|
||||
|
||||
## 五、AI 面试模拟核心流程
|
||||
## 五、部署架构
|
||||
|
||||
```
|
||||
用户选择岗位
|
||||
微信小程序 (用户端) H5 浏览器 (用户端)
|
||||
↓ HTTPS ↓ HTTPS
|
||||
zhiyinwx.yzrcloud.cn zhiyin.yzrcloud.cn
|
||||
↓ ↓
|
||||
Nginx 反向代理 (腾讯云轻量应用服务器) Nginx 静态文件服务
|
||||
↓ ↓
|
||||
backend (NestJS :3006) /www/wwwroot/zhiyin.yzrcloud.cn/
|
||||
↓
|
||||
创建面试会话(/api/interview/create)
|
||||
↓
|
||||
AI 生成第一题(基于岗位 + 用户简历)
|
||||
↓
|
||||
用户语音/文字回答
|
||||
↓
|
||||
提交回答(/api/interview/:id/answer)
|
||||
↓
|
||||
AI 实时反馈(评分 + 评语 + 建议 + 参考回答)
|
||||
↓
|
||||
AI 追问(基于回答内容)
|
||||
↓
|
||||
循环(通常 5-8 轮)
|
||||
↓
|
||||
用户结束面试
|
||||
↓
|
||||
生成面试报告(/api/interview/:id/complete)
|
||||
↓
|
||||
展示报告(总分 + 各维度得分 + 优劣势 + 建议)
|
||||
```
|
||||
|
||||
### 5.1 AI Prompt 设计要点
|
||||
|
||||
**系统提示词(System Prompt)**:
|
||||
```
|
||||
你是一位专业的校招面试官,正在面试一位应聘{position}岗位的应届毕业生。
|
||||
请根据以下要求进行了面试:
|
||||
1. 问题要符合校招难度(不要求工作经验)
|
||||
2. 结合应聘岗位提出专业问题
|
||||
3. 根据考生回答进行针对性追问
|
||||
4. 每次回答后给出评分(0-100)和具体改进建议
|
||||
5. 面试共 5-8 轮,涵盖基础、项目、算法(如适用)、行为问题
|
||||
```
|
||||
|
||||
**反馈提示词(Feedback Prompt)**:
|
||||
```
|
||||
请对以下面试回答进行评分和反馈:
|
||||
问题:{question}
|
||||
回答:{answer}
|
||||
岗位:{position}
|
||||
|
||||
输出格式(JSON):
|
||||
{
|
||||
"score": 85,
|
||||
"comment": "回答逻辑清晰,但缺少具体案例...",
|
||||
"suggestion": "建议结合项目经历,用STAR法则组织回答",
|
||||
"referenceAnswer": "参考回答思路:..."
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 六、部署架构
|
||||
|
||||
```
|
||||
微信小程序 (用户端)
|
||||
↓ HTTPS
|
||||
Nginx 反向代理(腾讯云轻量应用服务器)
|
||||
↓
|
||||
backend (NestJS :3000)
|
||||
↓
|
||||
MongoDB Atlas (数据库)
|
||||
MongoDB Atlas / 自建 MongoDB
|
||||
↓
|
||||
AI API (opencode-go → NVIDIA 主备切换)
|
||||
```
|
||||
|
||||
### 6.1 合规优势
|
||||
|
||||
- ✅ **ICP 备案已完成**(合规运营基础)
|
||||
- ✅ **AI 深度合成类目已通过**(可立即上线,竞品需 3-6 个月)
|
||||
- ✅ 微信小程序已配置(manifest.json)
|
||||
|
||||
---
|
||||
|
||||
## 七、关键技术决策
|
||||
## 六、安全与合规
|
||||
|
||||
### 7.1 为什么继续用 NestJS + MongoDB?
|
||||
|
||||
- 已有代码基础,重写浪费时间
|
||||
- NestJS 模块化适合快速迭代(MVP → Phase 1.5 → Phase 2)
|
||||
- MongoDB 灵活的数据模型适合快速改 schema(早期频繁迭代)
|
||||
- 个人开发者能 hold 住(社区资源丰富)
|
||||
|
||||
### 7.2 为什么 MVP 先做 3 个核心模块?
|
||||
|
||||
- **面试模块**(核心差异,必须做好)
|
||||
- **用户模块**(微信登录,0 门槛)
|
||||
- **实习搜索**(跳转模式,低成本验证需求)
|
||||
|
||||
其他模块(简历、会员、知识图谱)MVP 后按优先级加入。
|
||||
|
||||
### 7.3 为什么实习搜索用跳转模式?
|
||||
|
||||
- 不存数据 = 0 合规风险
|
||||
- 不爬数据 = 0 维护成本
|
||||
- 只做聚合搜索入口 = 低成本验证用户需求
|
||||
- 如果需求验证成功,Phase 1.5 再做"精选实习岗位"(人工整理)
|
||||
|
||||
### 7.4 AI 模型选型
|
||||
|
||||
- **主用**:opencode-go (deepseek-v4-flash) — 性能优先,成本低
|
||||
- **备用**:NVIDIA (stepfun-ai/step-3.5-flash) — 主用不可用时自动降级
|
||||
- **合规**:已备案,可合法提供 AI 服务
|
||||
|
||||
---
|
||||
|
||||
## 八、MVP 开发优先级
|
||||
|
||||
### P0(Week 1-2,必须完成)
|
||||
|
||||
- [ ] 微信登录对接(/api/user/wx-login)
|
||||
- [ ] 岗位选择页面(校招热门 20+ 岗位,含 AI 岗位)
|
||||
- [ ] AI 面试模拟核心逻辑(多轮对话)
|
||||
- [ ] 每轮反馈评分接口(/api/interview/:id/feedback)
|
||||
- [ ] 面试报告生成(/api/interview/:id/complete)
|
||||
- [ ] 历史面试记录查看(/api/interview/list)
|
||||
|
||||
### P1(Week 3-4,PMF 验证后)
|
||||
|
||||
- [ ] 简历诊断功能(复用已有代码)
|
||||
- [ ] 会员系统开发(¥9.9/月)
|
||||
- [ ] 微信支付对接
|
||||
- [ ] 实习搜索聚合入口(跳转模式)
|
||||
|
||||
### P2(Week 5-8,增强功能)
|
||||
|
||||
- [ ] AI 岗位专属题库(算法/大模型)
|
||||
- [ ] 技能缺口分析
|
||||
- [ ] 知识图谱(校招岗位-技能映射)
|
||||
- [ ] 精选实习岗位(人工整理)
|
||||
|
||||
---
|
||||
|
||||
## 九、性能与扩展性考虑
|
||||
|
||||
### 9.1 性能优化
|
||||
|
||||
- AI 调用异步化(避免阻塞用户操作)
|
||||
- 面试报告生成用队列(防止并发超时)
|
||||
- MongoDB 索引优化(userId, position, createdAt)
|
||||
|
||||
### 9.2 扩展性考虑
|
||||
|
||||
- 模块化设计(NestJS 天然支持)
|
||||
- AI 模型可插拔(opencode-go / NVIDIA / 未来接入其他模型)
|
||||
- 数据库分片预留(用户量大的时候)
|
||||
- 微信支付/订阅消息可替换(如果未来做独立 App)
|
||||
|
||||
---
|
||||
|
||||
## 十、安全风险与应对
|
||||
|
||||
| 风险 | 影响 | 应对 |
|
||||
|------|------|------|
|
||||
| AI 内容合规 | 微信下架 | 严格遵守微信 AI 内容规范;敏感词过滤;人工审核机制 |
|
||||
| 用户数据泄露 | 信任危机 | HTTPS 全站;数据库访问权限控制;不存敏感信息 |
|
||||
| 微信登录伪造 | 账户被盗 | 签名验证;openid 绑定校验 |
|
||||
| AI API 费用失控 | 成本飙升 | 限制每日调用次数;监控告警;备用模型自动切换 |
|
||||
- ✅ ICP 备案已完成
|
||||
- ✅ AI 深度合成类目已通过
|
||||
- ✅ JWT 认证全局守卫(白名单接口 @Public 放行)
|
||||
- ✅ 请求限流 (10次/分钟)
|
||||
- ⚠️ 生产环境需配置:强 JWT_SECRET、CORS 白名单、HTTPS、移除固定验证码
|
||||
|
||||
---
|
||||
|
||||
@@ -421,6 +274,7 @@ AI API (opencode-go → NVIDIA 主备切换)
|
||||
|
||||
| 日期 | 变更内容 | 操作人 |
|
||||
|------|----------|--------|
|
||||
| 2026-05-14 | 职引项目启动,架构文档初版 | AI |
|
||||
| 2026-05-15 | 方向调整:简历工具 → AI 职业发展平台 | AI |
|
||||
| 2026-06-01 | **重新架构**:专注校招,简化 MVP,价格 ¥9.9/月,合规优势 | AI |
|
||||
| 2026-05-14 | 初版 | AI |
|
||||
| 2026-06-01 | 重新架构:专注校招 | AI |
|
||||
| 2026-06-09 | 全面重写:匹配真实 15 模块 + 16 页面 + API 清单 | AI |
|
||||
| 2026-06-09 | 更新部署架构:添加生产域名 zhiyinwx.yzrcloud.cn / zhiyin.yzrcloud.cn | 小之 |
|
||||
|
||||
+123
-131
@@ -1,12 +1,16 @@
|
||||
# 职引 - 部署文档
|
||||
|
||||
> **最后更新**: 2026-06-09
|
||||
> **生产环境**: 已部署(服务器已购 + 域名已配)
|
||||
|
||||
## 目录
|
||||
1. [环境要求](#环境要求)
|
||||
2. [后端部署](#后端部署)
|
||||
3. [前端部署(H5)](#前端部署h5)
|
||||
4. [微信小程序部署](#微信小程序部署)
|
||||
5. [数据库初始化](#数据库初始化)
|
||||
6. [监控和日志](#监控和日志)
|
||||
2. [生产域名](#生产域名)
|
||||
3. [后端部署](#后端部署)
|
||||
4. [前端部署(H5)](#前端部署h5)
|
||||
5. [微信小程序部署](#微信小程序部署)
|
||||
6. [数据库初始化](#数据库初始化)
|
||||
7. [安全检查清单](#安全检查清单)
|
||||
|
||||
---
|
||||
|
||||
@@ -22,7 +26,19 @@
|
||||
### 本地开发
|
||||
- **Node.js**: 18.x
|
||||
- **MongoDB**: 本地或云服务
|
||||
- **HBuilderX**: uni-app 开发
|
||||
- **后端端口**: 3006(默认)
|
||||
- **前端端口**: 8085(Vite 开发服务器)
|
||||
|
||||
---
|
||||
|
||||
## 生产域名
|
||||
|
||||
| 用途 | 域名 | 指向 |
|
||||
|------|------|------|
|
||||
| 后端 API(小程序服务端) | `https://zhiyinwx.yzrcloud.cn` | Nginx → `http://localhost:3006` |
|
||||
| H5 网页端 | `https://zhiyin.yzrcloud.cn` | 静态目录 `/www/wwwroot/zhiyin.yzrcloud.cn` |
|
||||
|
||||
端口固定为 **3006**,由 `main.ts` 中 `process.env.PORT || 3006` 控制。
|
||||
|
||||
---
|
||||
|
||||
@@ -31,141 +47,142 @@
|
||||
### 1. 安装依赖
|
||||
```bash
|
||||
cd backend
|
||||
npm install --production
|
||||
npm install
|
||||
```
|
||||
|
||||
### 2. 配置环境变量
|
||||
复制 `.env.example` 为 `.env.production` 并修改:
|
||||
```bash
|
||||
cp .env.example .env.production
|
||||
vim .env.production # 修改生产配置
|
||||
创建 `.env` 文件(参考 `backend/.env`):
|
||||
```env
|
||||
MONGODB_URI=mongodb://localhost:27017/zhiyin
|
||||
JWT_SECRET=your-strong-secret-at-least-32-chars
|
||||
PORT=3006
|
||||
AI_PRIMARY_KEY=your-deepseek-key
|
||||
AI_BACKUP_KEY=your-nvidia-key
|
||||
WECHAT_APPID=your-appid
|
||||
WECHAT_MCHID=your-mchid
|
||||
WECHAT_API_KEY=your-api-v3-key
|
||||
WECHAT_SERIAL_NO=your-cert-serial
|
||||
WECHAT_PRIVATE_KEY_PATH=/path/to/apiclient_key.pem
|
||||
WX_DAILY_QUESTION_TMPL=在微信公众平台配置的订阅消息模板ID
|
||||
```
|
||||
|
||||
**关键配置项**:
|
||||
- `MONGODB_URI`: 生产数据库地址
|
||||
- `JWT_SECRET`: 强密钥(至少32字符)
|
||||
- `PORT`: 生产端口(推荐 3000)
|
||||
- `WECHAT_APPID` / `WECHAT_SECRET`: 小程序生产凭证
|
||||
|
||||
### 3. 编译 TypeScript
|
||||
### 3. 编译并启动
|
||||
```bash
|
||||
npm run build
|
||||
npm run build # 编译 TypeScript → dist/
|
||||
node dist/main.js # 启动(或使用 PM2)
|
||||
```
|
||||
|
||||
### 4. 使用 PM2 启动
|
||||
### 4. PM2 进程管理
|
||||
```bash
|
||||
# 安装 PM2
|
||||
npm install -g pm2
|
||||
|
||||
# 启动应用
|
||||
pm2 start dist/main.js --name zhiyin-backend
|
||||
|
||||
# 设置开机自启
|
||||
pm2 startup
|
||||
pm2 save
|
||||
pm2 startup && pm2 save
|
||||
```
|
||||
|
||||
### 5. 配置 Nginx 反向代理
|
||||
### 5. Nginx 反向代理(后端 API)
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name api.yourdomain.com;
|
||||
listen 443 ssl http2;
|
||||
server_name zhiyinwx.yzrcloud.cn;
|
||||
|
||||
ssl_certificate /etc/nginx/ssl/yzrcloud.cn.pem;
|
||||
ssl_certificate_key /etc/nginx/ssl/yzrcloud.cn.key;
|
||||
|
||||
location / {
|
||||
proxy_pass http://localhost:3000;
|
||||
proxy_pass http://localhost:3006;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
}
|
||||
}
|
||||
|
||||
# HTTP → HTTPS 跳转
|
||||
server {
|
||||
listen 80;
|
||||
server_name zhiyinwx.yzrcloud.cn;
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 前端部署(H5)
|
||||
|
||||
### 1. 修改 API 地址
|
||||
编辑 `zhiyin-app/config/api.js`:
|
||||
```javascript
|
||||
export const BASE_URL = 'https://api.yourdomain.com/api'
|
||||
### 1. 配置 API 地址
|
||||
编辑 `zhiyin-app/.env.production`:
|
||||
```env
|
||||
VITE_API_BASE_URL=https://zhiyinwx.yzrcloud.cn/api
|
||||
```
|
||||
|
||||
### 2. 编译 H5
|
||||
### 2. 编译
|
||||
```bash
|
||||
cd zhiyin-app
|
||||
npm run build:h5
|
||||
# 输出: dist/build/h5/
|
||||
```
|
||||
|
||||
### 3. 部署到 Web 服务器
|
||||
将 `dist/build/h5/` 目录上传到服务器:
|
||||
```bash
|
||||
# 使用 scp 上传
|
||||
scp -r dist/build/h5/* user@your-server:/var/www/zhiyin/
|
||||
|
||||
# 或使用 FTP/SSH 上传
|
||||
scp -r dist/build/h5/* user@your-server:/www/wwwroot/zhiyin.yzrcloud.cn/
|
||||
```
|
||||
|
||||
### 4. 配置 Nginx
|
||||
### 4. Nginx 配置
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name yourdomain.com;
|
||||
|
||||
root /var/www/zhiyin;
|
||||
listen 443 ssl http2;
|
||||
server_name zhiyin.yzrcloud.cn;
|
||||
root /www/wwwroot/zhiyin.yzrcloud.cn;
|
||||
index index.html;
|
||||
|
||||
ssl_certificate /etc/nginx/ssl/yzrcloud.cn.pem;
|
||||
ssl_certificate_key /etc/nginx/ssl/yzrcloud.cn.key;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# 静态资源缓存
|
||||
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf)$ {
|
||||
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff2?|ttf)$ {
|
||||
expires 1y;
|
||||
add_header Cache-Control "public, immutable";
|
||||
}
|
||||
}
|
||||
|
||||
# HTTP → HTTPS 跳转
|
||||
server {
|
||||
listen 80;
|
||||
server_name zhiyin.yzrcloud.cn;
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 微信小程序部署
|
||||
|
||||
### 1. 修改配置
|
||||
编辑 `zhiyin-app/manifest.json`:
|
||||
```json
|
||||
{
|
||||
"mp-weixin": {
|
||||
"appid": "your-production-appid"
|
||||
}
|
||||
}
|
||||
```
|
||||
### 1. 修改 manifest.json
|
||||
编辑 `zhiyin-app/manifest.json`,填写正式 appid。
|
||||
|
||||
### 2. 编译小程序
|
||||
### 2. 编译
|
||||
```bash
|
||||
cd zhiyin-app
|
||||
npm run build:mp-weixin
|
||||
# 输出: dist/build/mp-weixin/
|
||||
```
|
||||
|
||||
### 3. 使用微信开发者工具上传
|
||||
1. 打开微信开发者工具
|
||||
2. 导入 `dist/build/mp-weixin/` 目录
|
||||
3. 点击「上传」按钮
|
||||
4. 填写版本号和项目备注
|
||||
5. 登录微信公众平台提交审核
|
||||
|
||||
### 4. 提交审核前检查
|
||||
- ✅ 已配置合法域名(在微信公众平台)
|
||||
- ✅ 已通过 AI 深度合成类目审批
|
||||
- ✅ 已配置隐私协议和用户协议
|
||||
- ✅ 已测试所有核心功能
|
||||
1. 导入 `dist/build/mp-weixin/`
|
||||
2. 点击「上传」
|
||||
3. 登录微信公众平台提交审核
|
||||
|
||||
---
|
||||
|
||||
## 数据库初始化
|
||||
|
||||
### 1. 创建数据库和用户
|
||||
```bash
|
||||
mongo
|
||||
> use zhiyin
|
||||
@@ -176,84 +193,59 @@ mongo
|
||||
})
|
||||
```
|
||||
|
||||
### 2. 创建索引
|
||||
```bash
|
||||
cd backend
|
||||
node scripts/create-indexes.js
|
||||
```
|
||||
|
||||
### 3. 初始化管理员账号(可选)
|
||||
```bash
|
||||
node scripts/create-admin.js
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 监控和日志
|
||||
## 小程序编译上传
|
||||
|
||||
### 1. 日志配置
|
||||
使用 PM2 查看日志:
|
||||
### 环境要求
|
||||
```bash
|
||||
pm2 logs zhiyin-backend
|
||||
pm2 logs zhiyin-backend --lines 100
|
||||
# 安装 miniprogram-ci(已在项目 devDeps 中)
|
||||
cd zhiyin-app && npm install --save-dev miniprogram-ci
|
||||
```
|
||||
|
||||
### 2. 错误监控
|
||||
推荐集成:
|
||||
- **Sentry**: 错误追踪
|
||||
- **PM2 Plus**: 进程监控
|
||||
- **MongoDB Atlas**: 数据库监控
|
||||
### 配置
|
||||
确保以下文件就位:
|
||||
- `dist/build/mp-weixin/` — uni-app 构建输出(`npm run build:mp-weixin`)
|
||||
- 微信小程序私钥文件:`/root/opencode-workspace/微信小程序参数/宇之然AI磁场appid/private.wxf466b3c3bc411ffc.key`
|
||||
- `project.config.json`(构建时自动生成,appid: wxf466b3c3bc411ffc)
|
||||
|
||||
### 3. 性能监控
|
||||
### 编译与预览上传
|
||||
```bash
|
||||
# 查看进程状态
|
||||
pm2 monit
|
||||
cd zhiyin-app
|
||||
|
||||
# 查看资源占用
|
||||
pm2 list
|
||||
# 构建微信小程序
|
||||
npm run build:mp-weixin
|
||||
|
||||
# 预览(生成二维码)
|
||||
node scripts/upload-mp.js
|
||||
|
||||
# 直接上传(修改脚本中 ci.preview → ci.upload)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q1: MongoDB 连接失败
|
||||
**A**: 检查 `.env.production` 中的 `MONGODB_URI` 是否正确,确保数据库可访问。
|
||||
|
||||
### Q2: 微信小程序请求失败
|
||||
**A**: 确保在微信公众平台配置了合法域名(必须是 HTTPS)。
|
||||
|
||||
### Q3: AI 调用失败
|
||||
**A**: 检查 `AI_PRIMARY_KEY` 和 `AI_BACKUP_KEY` 是否正确,确保 API 额度充足。
|
||||
### 版本号
|
||||
当前线上版本:**1.0.3**(见 note.txt)
|
||||
|
||||
---
|
||||
|
||||
## 安全检查清单
|
||||
|
||||
- [ ] 已修改默认 JWT_SECRET
|
||||
- [ ] 已禁用开发模式的固定验证码
|
||||
- [ ] 已配置 CORS 白名单
|
||||
- [ ] 已启用 HTTPS
|
||||
- [ ] 已配置 MongoDB 访问权限
|
||||
- [ ] 已移除控制台日志(生产环境)
|
||||
- [ ] 已配置速率限制(防止滥用)
|
||||
- [ ] 修改默认 JWT_SECRET(当前已有环境变量值)
|
||||
- [ ] 移除开发模式的固定验证码 123456
|
||||
- [x] 移除 `member/pay` 开发绕过(已改为真实订单校验)
|
||||
- [x] 套餐值统一:vip → growth/sprint(采访轮次、分析次数不再受限)
|
||||
- [ ] 配置 CORS 白名单(当前: `origin: '*'`)
|
||||
- [ ] 启用 HTTPS
|
||||
- [ ] 配置 MongoDB 访问权限
|
||||
- [ ] 移除 console.log(生产环境)
|
||||
- [x] 配置微信支付生产密钥(证书已验证)
|
||||
- [x] 配置微信小程序密钥(appid: wxf466b3c3bc411ffc)
|
||||
- [ ] 配置每日一题订阅消息模板 ID(WX_DAILY_QUESTION_TMPL)
|
||||
|
||||
---
|
||||
|
||||
## 回滚方案
|
||||
## 变更记录
|
||||
|
||||
如果需要回滚到上一个版本:
|
||||
```bash
|
||||
# 1. 查看 PM2 历史
|
||||
pm2 logs zhiyin-backend --lines 1000
|
||||
|
||||
# 2. 重启到上一个版本
|
||||
pm2 restart zhiyin-backend --version <previous-version>
|
||||
|
||||
# 3. 数据库回滚(如有迁移)
|
||||
mongorestore --uri="<connection-string>" --drop backup/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**最后更新**: 2026-06-02
|
||||
| 日期 | 变更内容 | 操作者 |
|
||||
|------|----------|--------|
|
||||
| 2026-06-09 | 初版 | AI |
|
||||
| 2026-06-09 | 更新生产域名:zhiyinwx.yzrcloud.cn(API :3006)、zhiyin.yzrcloud.cn(H5 静态目录) | 小之 |
|
||||
|
||||
+87
-77
@@ -1,44 +1,45 @@
|
||||
# 职引 · 完整功能清单 v4.0
|
||||
# 职引 · 完整功能清单 v4.1
|
||||
|
||||
> 版本: v4.0
|
||||
> 日期: 2026-06-05
|
||||
> 状态: 战略升级(竞争壁垒 + 盈利模型重构)
|
||||
> 定位: 应届生/实习生 AI 面试教练
|
||||
> **版本**: v4.1
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 壁垒构建完成
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
|
||||
## 一、核心功能(AI 面试 + 数据飞轮)
|
||||
## 一、核心功能
|
||||
|
||||
### 1.1 AI 面试模拟(核心差异化)
|
||||
### 1.1 AI 面试模拟
|
||||
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 岗位选择 | ✅ 完成 | 校招热门 20+ 岗位(含 AI 算法/大模型岗位) | P0 |
|
||||
| 多轮对话追问 | ✅ 完成 | AI 模拟真实面试官,根据回答连续追问 | P0 |
|
||||
| 岗位选择(20+) | ✅ 完成 | 校招热门岗位(含 AI 算法/大模型岗位) | P0 |
|
||||
| 多轮对话追问 | ✅ 完成 | AI 模拟真实面试官,根据回答连续追问(5-10 轮) | P0 |
|
||||
| 实时反馈评分 | ✅ 完成 | 每轮回答后给出评分 + 改进建议 | P0 |
|
||||
| 面试报告 | ✅ 完成 | 完整面试表现分析报告(逻辑/表达/专业度/稳定性) | P0 |
|
||||
| 历史面试记录 | ✅ 完成 | 查看历史面试与进步轨迹 | P0 |
|
||||
| 参考答案生成 | 🔨 开发中 | 每个问题给出参考回答思路 | P1 |
|
||||
| 公司真题库 | 🆕 新增 | 按公司+岗位定制面试剧本(首期 5 家公司) | P0 |
|
||||
| AI 岗位专项题库 | 🔨 开发中 | AI 算法/大模型岗位专属面试题库 | P1 |
|
||||
| 面试报告(四维) | ✅ 完成 | 逻辑/表达/专业度/稳定性 + 优劣势分析 | P0 |
|
||||
| 历史面试记录 | ✅ 完成 | 查看/筛选/统计 | P0 |
|
||||
| 参考答案生成 | ✅ 完成 | AI 生成参考回答思路 | P1 |
|
||||
| 使用限制(免费 5 轮/次) | ✅ 完成 | 免费版 5 轮 / 成长版 10 轮 | P0 |
|
||||
| 公司真题库 | ✅ 完成 | 通过面经贡献自动积累,公司+岗位映射 | P0 |
|
||||
| AI 岗位专项题库 | 📋 规划中 | AI 算法/大模型岗位专属面试题库 | P1 |
|
||||
|
||||
### 1.2 数据飞轮(核心壁垒)
|
||||
### 1.2 数据飞轮
|
||||
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 面经贡献系统 | 🆕 新增 | 面试后可填写公司/岗位信息,贡献面试经验 | **P0** |
|
||||
| 公司-岗位-题库映射 | 🆕 新增 | 四维数据映射,精准出题 | **P0** |
|
||||
| 脱敏存储 | 🆕 新增 | 用户回答数据脱敏后存入题库 | **P0** |
|
||||
| 题库自动扩充 | 🆕 新增 | 基于用户贡献自动生成新题目 | P1 |
|
||||
| 面经贡献系统 | ✅ 完成 | 面试后可填写公司/岗位信息,贡献面试经验 | P0 |
|
||||
| 公司-岗位-题库映射 | ✅ 完成 | 四维数据映射,精准出题 | P0 |
|
||||
| 脱敏存储 | ✅ 完成 | 用户回答数据存入公司题库 | P0 |
|
||||
| 题库自动扩充 | ✅ 完成 | 基于用户贡献自动去重 + 频次统计 | P1 |
|
||||
|
||||
### 1.3 留存入围(留存壁垒)
|
||||
### 1.3 留存入围
|
||||
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 进步轨迹雷达图 | 🆕 新增 | 四维能力(逻辑/表达/专业度/稳定性)可视化 | **P0** |
|
||||
| 历史对比分析 | 🆕 新增 | "你比上次在表达力上提升了 15%" | **P0** |
|
||||
| 连续打卡激励 | 🆕 新增 | 连续 7 天面试 → 解锁高级报告 | P1 |
|
||||
| 每日一题 Push | 🆕 新增 | 微信订阅消息推送,每日一个面试题 + 参考思路 | **P0** |
|
||||
| 进步轨迹雷达图 | ✅ 完成 | 四维能力可视化 + CSS 柱状图 | P0 |
|
||||
| 历史对比分析 | ✅ 完成 | 最近面试总分/维度趋势 | P0 |
|
||||
| 连续打卡日历 | ✅ 完成 | 面试频率可视化,连续打卡激励 | P1 |
|
||||
| 每日一题推送 | ⚠️ 半完成 | 首页展示 + API 读取,**无定时推送** | P0 |
|
||||
|
||||
---
|
||||
|
||||
@@ -47,49 +48,55 @@
|
||||
### 2.1 用户认证
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 微信一键登录 | 🔨 开发中 | 微信授权登录,零门槛 | P0 |
|
||||
| JWT 认证 | ✅ 完成 | Token 鉴权 | P0 |
|
||||
| 个人信息设置 | 🔨 开发中 | 目标岗位、求职偏好 | P1 |
|
||||
| 手机验证码登录 | ✅ 完成 | 开发模式固定码 123456 | P0 |
|
||||
| 邮箱验证码登录 | ✅ 完成 | H5 使用 | P0 |
|
||||
| 密码登录/注册 | ✅ 完成 | 邮箱+密码 | P0 |
|
||||
| 微信一键登录 | ✅ 后端 + 前端 | 待联调真实 appid | P0 |
|
||||
| JWT 认证 | ✅ 完成 | Token 鉴权(7 天过期) | P0 |
|
||||
| 个人信息设置 | ✅ 完成 | 昵称/头像 | P1 |
|
||||
|
||||
### 2.2 个人中心
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 面试记录 | ✅ 完成 | 查看历史面试记录与报告 | P0 |
|
||||
| 进步轨迹 | 🆕 新增 | 雷达图 + 历史对比 + 打卡进度 | **P0** |
|
||||
| 简历管理 | 🔨 开发中 | 管理多份简历 | P1 |
|
||||
| 会员中心 | 🔨 开发中 | 会员状态、订阅、权益展示 | P0 |
|
||||
| 功能 | 状态 | 描述 |
|
||||
|------|------|------|
|
||||
| 面试记录/统计 | ✅ 完成 | 总数/平均分/完成数 |
|
||||
| 进步轨迹 | ✅ 完成 | 雷达图 + 打卡日历 |
|
||||
| 简历管理 | ✅ 完成 | 多份简历 CRUD + AI 分析 |
|
||||
| 会员中心 | ✅ 完成 | 套餐对比 + 支付 |
|
||||
|
||||
---
|
||||
|
||||
## 三、商业化功能
|
||||
|
||||
### 3.1 会员系统(价格重构)
|
||||
### 3.1 会员系统
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 免费版 | 🔨 开发中 | 每日 2 次基础面试(通用题库) | P0 |
|
||||
| 成长版 ¥19.9/月 | 🔨 开发中 | 无限面试 + 高级报告 + 公司真题 + 进步轨迹 | **P0** |
|
||||
| 冲刺版 ¥49.9/月 | 🆕 新增 | + 真人导师点评 + 简历精修 + 内推优先 | P1 |
|
||||
| 微信支付对接 | 🔨 开发中 | 微信支付接入 | P0 |
|
||||
| 会员权益对比 | 🆕 新增 | 三版对比展示页面 | P0 |
|
||||
| 免费版 | ✅ 完成 | 日 2 次面试,5 轮/次 | P0 |
|
||||
| 成长版 ¥19.9/月 | ✅ 完成 | 无限面试 + 高级报告 + 进步轨迹 | P0 |
|
||||
| 冲刺版 ¥49.9/月 | ❌ 未实现 | 高客单价缺失 | P1 |
|
||||
| 微信支付 Native(扫码) | ✅ 完成 | H5 支付 | P0 |
|
||||
| 微信支付 JSAPI | ✅ 完成 | 小程序内支付 | P0 |
|
||||
| 支付回调/自动开会员 | ✅ 完成 | 回调验签 + 解密 + 会员激活 | P0 |
|
||||
| 会员权益对比 | ✅ 完成 | 免费/成长版对比展示 | P0 |
|
||||
|
||||
### 3.2 B 端服务(Q4 启动)
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 高校就业办合作 | 📋 规划中 | 批量账号 + 数据看板 | P2 |
|
||||
| 企业 HR 初筛 | 📋 规划中 | AI 面试初筛工具 | P2 |
|
||||
| 内推平台 | 📋 规划中 | 企业发布岗位 + 内推佣金 | P2 |
|
||||
| 功能 | 状态 | 描述 |
|
||||
|------|------|------|
|
||||
| 高校就业办合作 | 📋 规划中 | 批量账号 + 数据看板 |
|
||||
| 企业 HR 初筛 | 📋 规划中 | AI 面试初筛工具 |
|
||||
| 内推平台 | 📋 规划中 | 企业发布岗位 + 内推佣金 |
|
||||
|
||||
---
|
||||
|
||||
## 四、AI 能力
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| AI 面试模拟 | ✅ 完成 | 多轮对话 + 实时反馈 + 评分 | P0 |
|
||||
| 面试报告生成 | ✅ 完成 | 总分 + 各维度得分 + 优劣势分析 | P0 |
|
||||
| 简历诊断 | 🔨 开发中 | 结构 + 表达 + 关键词 + 亮点分析 | P1 |
|
||||
| AI 岗位题库 | 🔨 开发中 | AI 算法/大模型岗位专属题库 | P1 |
|
||||
| 技能缺口分析 | 📋 规划中 | 基于 JD 分析技能差距 | P2 |
|
||||
| 学习路径推荐 | 📋 规划中 | 知识图谱驱动的职业规划 | P2 |
|
||||
|
||||
| 功能 | 状态 | 描述 |
|
||||
|------|------|------|
|
||||
| AI 面试模拟 | ✅ 完成 | 多轮对话 + 实时反馈 + 评分 |
|
||||
| 面试报告生成 | ✅ 完成 | 总分 + 四维 + 优劣势分析 |
|
||||
| 简历诊断 | ✅ 完成 | 结构 + 表达 + 关键词 + 亮点分析 |
|
||||
| 简历优化 | ✅ 完成 | 内容优化 + 差异展示 |
|
||||
| 技能缺口分析 | 📋 规划中 | 基于 JD 分析技能差距 |
|
||||
| 学习路径推荐 | 📋 规划中 | 知识图谱驱动的职业规划 |
|
||||
|
||||
### AI 模型配置
|
||||
| 模型 | 用途 | 状态 |
|
||||
@@ -100,37 +107,38 @@
|
||||
---
|
||||
|
||||
## 五、技术功能
|
||||
|
||||
| 功能 | 状态 | 描述 |
|
||||
|------|------|------|
|
||||
| MongoDB 数据存储 | ✅ 完成 | 用户、面试、简历、题库 |
|
||||
| Redis 缓存 | ✅ 完成 | 会话缓存,限流 |
|
||||
| JWT 认证 | ✅ 完成 | 用户身份验证 |
|
||||
| API 限流 | ✅ 完成 | @nestjs/throttler |
|
||||
| MongoDB 数据存储 | ✅ 完成 | 8 个数据模型 |
|
||||
| JWT 认证 | ✅ 完成 | 全局守卫 + 白名单机制 |
|
||||
| API 限流 | ✅ 完成 | @nestjs/throttler 10次/分钟 |
|
||||
| 文件上传 | ✅ 完成 | 简历 PDF/图片解析 |
|
||||
| CORS 配置 | ✅ 完成 | 生产环境白名单 |
|
||||
| CORS 配置 | ✅ 完成 | 全开放(生产需白名单) |
|
||||
| 参数校验 | ✅ 完成 | class-validator whitelist |
|
||||
|
||||
---
|
||||
|
||||
## 六、功能优先级总览
|
||||
|
||||
### P0(MVP + 壁垒构建,立即实现)
|
||||
- [x] 微信一键登录(后端已通,前端待联调)
|
||||
- [x] AI 面试模拟(多轮追问 + 实时反馈)
|
||||
- [x] 面试报告生成
|
||||
- [x] 历史面试记录
|
||||
- [ ] **进步轨迹雷达图**(新增)
|
||||
- [ ] **面经贡献系统**(新增)
|
||||
- [ ] **每日一题 Push**(新增)
|
||||
- [ ] **会员系统(¥19.9 + ¥49.9 定价)**
|
||||
- [ ] **微信支付对接**
|
||||
- [ ] **公司真题库(首期 5 家)**
|
||||
### P0(已完成 ✅)
|
||||
- [x] AI 面试模拟(多轮追问 + 实时反馈 + 评分)
|
||||
- [x] 面试报告生成(四维评分)
|
||||
- [x] 历史面试记录 + 统计
|
||||
- [x] 进步轨迹雷达图
|
||||
- [x] 面经贡献系统 + 公司题库
|
||||
- [x] 每日一题(API 读取)
|
||||
- [x] 手机/邮箱/密码/微信登录
|
||||
- [x] 会员系统(¥19.9 成长版)
|
||||
- [x] 微信支付对接(Native + JSAPI)
|
||||
- [x] 公司真题库(用户贡献驱动)
|
||||
|
||||
### P1(上线后快速迭代)
|
||||
- [ ] 简历诊断(复用已有代码)
|
||||
### P1(待实现)
|
||||
- [ ] 每日一题定时推送
|
||||
- [ ] 冲刺版 ¥49.9/月
|
||||
- [ ] AI 岗位专属题库
|
||||
- [ ] 连续打卡激励
|
||||
- [ ] 参考答案生成
|
||||
- [ ] 会员权益对比页
|
||||
- [ ] 连续打卡激励(7 天解锁高级报告)
|
||||
- [ ] 生产环境部署
|
||||
|
||||
### P2(秋招后)
|
||||
- [ ] 高校就业办合作
|
||||
@@ -140,9 +148,11 @@
|
||||
|
||||
---
|
||||
|
||||
## 七、变更记录
|
||||
## 变更记录
|
||||
|
||||
| 日期 | 变更内容 | 操作者 |
|
||||
|------|----------|--------|
|
||||
| 2026-05-14 | 功能清单初版(简历工具方向) | AI |
|
||||
| 2026-06-01 | 重新定位:专注校招,¥9.9/月 | AI |
|
||||
| 2026-06-05 | **战略升级**:新增数据飞轮、留存入围、B 端服务;价格重构 ¥19.9/¥49.9 | 小之 |
|
||||
| 2026-05-14 | 初版 | AI |
|
||||
| 2026-06-01 | 重新定位:专注校招 | AI |
|
||||
| 2026-06-05 | 战略升级:新增数据飞轮/留存入围 | 小之 |
|
||||
| 2026-06-09 | 同步代码:Phase 0.5 功能标记完成,修正状态 | AI |
|
||||
|
||||
+71
-138
@@ -1,47 +1,30 @@
|
||||
# 职引 · 产品规划文档 v4.0
|
||||
# 职引 · 产品规划文档 v4.1
|
||||
|
||||
> 版本: v4.0
|
||||
> 日期: 2026-06-05
|
||||
> 状态: 战略升级(竞争壁垒 + 盈利模型重构)
|
||||
> 定位: 应届生/实习生 AI 面试教练
|
||||
> **版本**: v4.1
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 壁垒构建完成
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
|
||||
## 一、产品定位
|
||||
|
||||
### 1.1 核心价值
|
||||
**职引** = 专注校招的 AI 面试教练
|
||||
|
||||
- **AI 面试模拟**(核心):多轮追问,实时反馈评分,公司真题库
|
||||
- **进步可视化**(留存):四维雷达图,历史对比,连续打卡激励
|
||||
- **进步可视化**(留存):四维雷达图,历史对比,打卡日历
|
||||
- **数据飞轮**(壁垒):用户面经贡献 → 题库积累 → 精准出题
|
||||
- **简历诊断**(辅助):AI 诊断简历问题,提升通过率
|
||||
- **B 端服务**(扩展):高校就业办合作、企业 HR 初筛
|
||||
|
||||
### 1.2 Slogan
|
||||
### Slogan
|
||||
**"校招面试,先模拟再上场"**
|
||||
|
||||
### 1.3 目标用户
|
||||
| 用户群体 | 特征 | 核心诉求 |
|
||||
|---------|------|---------|
|
||||
| 应届毕业生(春招/秋招) | 第一次面试,零经验 | 不知道面试问什么、怎么答 |
|
||||
| 实习生招聘 | 大三/研二,找暑期实习 | 面试经验不足,需要练习 |
|
||||
| 跨专业求职 | 非 CS 转技术岗 | 如何用非相关背景回答专业问题 |
|
||||
| 高校就业办 | 需要就业指导工具 | 批量提供面试训练能力 |
|
||||
|
||||
---
|
||||
|
||||
## 二、市场竞争与壁垒
|
||||
|
||||
### 2.1 竞争格局
|
||||
| 类型 | 代表产品 | 优点 | 缺点 | 职引壁垒 |
|
||||
|------|---------|------|------|---------|
|
||||
| 通用 AI | ChatGPT/Kimi | 通用灵活 | 非面试专用 | 专注校招,结构化反馈 |
|
||||
| B 端 AI 面试 | 牛客 | 技术岗题库 | 职能岗弱,C 端一般 | 全岗位覆盖 |
|
||||
| C 端 AI 面试 | OfferGoose | 功能全面 | ¥99/月贵,校招不专注 | **价格 1/5 + 真题题库** |
|
||||
| **职引** | **校招专属教练** | **数据飞轮 + 真题 + 低价** | **差异化明显** |
|
||||
|
||||
### 2.2 三层竞争壁垒
|
||||
### 2.1 三层竞争壁垒
|
||||
|
||||
```
|
||||
第一层:数据飞轮(核心护城河)
|
||||
@@ -55,153 +38,103 @@
|
||||
|
||||
第二层:用户粘性(留存壁垒)
|
||||
· 进步轨迹雷达图(四维能力可视化)
|
||||
· 连续打卡激励(7天解锁高级报告)
|
||||
· 每日一题 Push(面试题 + 参考思路)
|
||||
· 公司真题库(字节/腾讯/阿里…专属题库)
|
||||
· 面试剧本(按公司+岗位定制仿真场景)
|
||||
· 连续打卡日历(面试频率可视化)
|
||||
· 每日一题(面试题 + 参考思路)
|
||||
· 公司真题库(用户贡献驱动)
|
||||
· 面经贡献(UGC 内容积累)
|
||||
|
||||
第三层:合规 + 品牌(信任壁垒)
|
||||
· ICP + AI 深度合成类目已备案
|
||||
· AI 面试合规白皮书(公开透明)
|
||||
· 用户口碑 → 校招第一选择
|
||||
· 竞品备案周期 3-6 个月
|
||||
```
|
||||
|
||||
### 2.2 竞品对比
|
||||
|
||||
| 类型 | 代表产品 | 职引优势 |
|
||||
|------|---------|---------|
|
||||
| 通用 AI | ChatGPT/Kimi | 专注校招,结构化反馈 |
|
||||
| B 端 AI 面试 | 牛客 | 全岗位覆盖 + 免费优先 |
|
||||
| C 端 AI 面试 | OfferGoose ¥99/月 | 价格 1/5 + 真题题库 |
|
||||
|
||||
---
|
||||
|
||||
## 三、盈利模型(重构)
|
||||
## 三、盈利模型
|
||||
|
||||
### 3.1 三段式定价
|
||||
### 3.1 两段式定价
|
||||
|
||||
| 版本 | 价格 | 核心权益 | 目标转化率 |
|
||||
| 版本 | 价格 | 核心权益 | 定位 |
|
||||
|------|------|------|------|
|
||||
| 免费版 | ¥0 | 每日 2 次基础面试(通用题库) | 引流 |
|
||||
| **成长版** | **¥19.9/月** | 无限面试 + 高级报告 + 公司真题库 + 进步轨迹 | **主力(70%)** |
|
||||
| **冲刺版** | **¥49.9/月** | + 真人导师点评 + 简历精修 + 内推优先 | 高客单(15%) |
|
||||
| 免费版 | ¥0 | 日 2 次基础面试(通用题库,5 轮/次) | 引流 |
|
||||
| **成长版** | **¥19.9/月** | 无限面试 + 高级报告 + 进步轨迹 + 真题库 | **主力** |
|
||||
|
||||
> 价格策略:¥19.9 是 OfferGoose ¥99 的 1/5,心理门槛极低。冲刺版 ¥49.9 锚定"真人服务"价值,反衬成长版超值。
|
||||
> 冲刺版 ¥49.9/月(含真人导师点评 + 简历精修)待实现
|
||||
|
||||
### 3.2 收入来源多元化
|
||||
### 3.2 收入来源
|
||||
|
||||
```
|
||||
┌─────────────────┐
|
||||
│ C 端订阅收入 │ ← 基本盘 (¥19.9×用户数)
|
||||
└────────┬────────┘
|
||||
│
|
||||
┌────────────────┼────────────────┐
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
┌─────────┐ ┌──────────┐ ┌──────────────┐
|
||||
│ B端合作 │ │ 内容变现 │ │ 人才匹配佣金 │
|
||||
├─────────┤ ├──────────┤ ├──────────────┤
|
||||
│· 高校就业│ │· 笔试真题│ │· 企业发布岗位 │
|
||||
│ 办合作 │ │ 题库 │ │ 位费 │
|
||||
│· 求职机构│ │· AI 面经 │ │· 内推成功佣金 │
|
||||
│· 企业 HR │ │ 课程 │ │· 简历筛选服务 │
|
||||
│ 初筛工具│ │· 1v1辅导 │ │ │
|
||||
└─────────┘ └──────────┘ └──────────────┘
|
||||
C 端订阅收入(基本盘:¥19.9 × 付费用户数)
|
||||
↓
|
||||
├── B 端合作(高校就业办/求职机构)
|
||||
├── 内容变现(面经课程)
|
||||
└── 人才匹配佣金(内推)
|
||||
```
|
||||
|
||||
### 3.3 收入预测
|
||||
|
||||
| 阶段 | C 端 | B 端 | 月收入 |
|
||||
|------|------|------|------|
|
||||
|------|------|------|--------|
|
||||
| MVP 上线(6-8月) | 200 付费 × ¥19.9 | 0 | ¥3,980 |
|
||||
| 秋招旺季(9-11月) | 1000 付费 × ¥19.9 | 2 高校 ¥5000 | ¥29,900 |
|
||||
| 稳定运营(次年) | 2000 付费 × ¥19.9 | 5 高校 + 企业 | ¥60,000+ |
|
||||
| 稳定运营(次年) | 2000 付费 × ¥19.9 | 5 机构 + 企业 | ¥60,000+ |
|
||||
|
||||
---
|
||||
|
||||
## 四、核心功能规划
|
||||
## 四、当前功能状态
|
||||
|
||||
### 4.1 MVP 功能(当前实现中)
|
||||
| 功能 | 描述 | 优先级 | 状态 |
|
||||
|------|------|--------|------|
|
||||
| 微信一键登录 | 微信授权登录,零门槛 | P0 | 🔨 开发中 |
|
||||
| 岗位选择 | 校招热门 20+ 岗位(含 AI 岗位) | P0 | ✅ 完成 |
|
||||
| AI 面试模拟 | 多轮对话追问,核心差异化 | P0 | ✅ 完成 |
|
||||
| 实时反馈评分 | 每轮回答后给出评分+改进建议 | P0 | ✅ 完成 |
|
||||
| 面试报告 | 完整面试表现分析报告 | P0 | ✅ 完成 |
|
||||
| 历史面试记录 | 查看历史面试与进步轨迹 | P0 | ✅ 完成 |
|
||||
### 已上线(Phase 0 + 0.5)
|
||||
| 功能 | 状态 |
|
||||
|------|------|
|
||||
| 手机/邮箱/密码/微信登录 | ✅ 完成 |
|
||||
| AI 面试模拟(20+ 岗位) | ✅ 完成 |
|
||||
| 实时反馈评分 + 参考回答 | ✅ 完成 |
|
||||
| 面试报告(四维评分) | ✅ 完成 |
|
||||
| 历史记录 + 统计 | ✅ 完成 |
|
||||
| 进步轨迹雷达图 + 打卡日历 | ✅ 完成 |
|
||||
| 面经贡献系统 + 公司题库 | ✅ 完成 |
|
||||
| 每日一题(API) | ✅ 完成 |
|
||||
| 简历诊断 + 优化 | ✅ 完成 |
|
||||
| 会员系统(成长版 ¥19.9/月) | ✅ 完成 |
|
||||
| 微信支付(Native + JSAPI) | ✅ 完成 |
|
||||
|
||||
### 4.2 Phase 1 增强(当前优先实现)
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 进步轨迹雷达图 | 四维能力可视化 + 历史对比 | **P0 新增** |
|
||||
| 面经贡献系统 | 面试后可贡献公司面经 → 数据飞轮 | **P0 新增** |
|
||||
| 每日一题推送 | 微信订阅消息推送面试题 | **P0 新增** |
|
||||
| 公司真题库 | 5 家头部公司专属面试题库 | P1 |
|
||||
| 连续打卡激励 | 7 天打卡解锁高级功能 | P1 |
|
||||
| 会员系统 | ¥19.9/月 + ¥49.9/月 | P0 |
|
||||
| 微信支付对接 | 微信支付接入 | P0 |
|
||||
|
||||
### 4.3 Phase 2 扩展(秋招前)
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 简历诊断 | AI 分析简历问题 | P1 |
|
||||
| AI 岗位专属题库 | AI 算法/大模型岗位面试题库 | P1 |
|
||||
| 技能缺口分析 | 基于目标岗位分析技能差距 | P1 |
|
||||
| AI 学习路径推荐 | 补齐技能缺口的学习路线 | P2 |
|
||||
| 精选实习岗位 | 人工整理优质实习岗位 | P1 |
|
||||
|
||||
### 4.4 Phase 3 商业化(Q4)
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 高校就业办合作 | B 端订阅 + 批量管理 | P1 |
|
||||
| 企业 HR 初筛 | AI 面试初筛工具 | P2 |
|
||||
| 内推平台 | 企业发布岗位 + 内推佣金 | P2 |
|
||||
| 真人导师点评 | 冲刺版专属 1v1 服务 | P2 |
|
||||
### 待实现
|
||||
| 功能 | 计划 |
|
||||
|------|------|
|
||||
| 每日一题定时推送(微信订阅消息) | Phase 1 |
|
||||
| 冲刺版 ¥49.9/月 | Phase 1.5 |
|
||||
| 微信登录真实 appid 联调 | Phase 1 |
|
||||
| 生产环境部署 | Phase 1 |
|
||||
| AI 岗位专属题库 | Phase 2 |
|
||||
| 技能缺口分析 | Phase 2 |
|
||||
|
||||
---
|
||||
|
||||
## 五、推广方案
|
||||
## 五、里程碑
|
||||
|
||||
### 5.1 免费渠道(立即启动)
|
||||
| 渠道 | 成本 | 可行性 | 说明 |
|
||||
|------|------|--------|------|
|
||||
| 微信公众号 | ¥0 | ✅✅✅ | 发校招面试技巧 + 产品入口 |
|
||||
| 知乎回答 | ¥0 | ✅✅✅ | "校招面试准备"类问题,长尾流量 |
|
||||
| 学校 BBS/贴吧 | ¥0 | ✅✅ | 各高校 BBS 发帖 |
|
||||
| 豆瓣小组 | ¥0 | ✅✅ | 校招/求职类小组 |
|
||||
|
||||
### 5.2 付费渠道(秋招前投)
|
||||
| 渠道 | 预算 | 预期 |
|
||||
|------|------|------|
|
||||
| 小红书 KOC | ¥1000-3000/月 | 精准触达应届生 |
|
||||
| 抖音信息流 | ¥2000-5000/月 | 视频展示产品 |
|
||||
| 求职公众号合作 | ¥0(资源置换) | 互相推广 |
|
||||
| 里程碑 | 时间 | 交付物 |
|
||||
|--------|------|--------|
|
||||
| M0: 战略升级 | ✅ D1 | 文档 + 定价 |
|
||||
| M0.5: 壁垒构建 | ✅ D7 | 数据飞轮 + 留存入围 |
|
||||
| M1: MVP 上线 | D14 | 小程序上线 + 内测 |
|
||||
| M2: PMF 验证 | D30 | 100 用户 + 付费数据 |
|
||||
| M3: 秋招冲刺 | D90 | 1000+ 付费用户 |
|
||||
|
||||
---
|
||||
|
||||
## 六、里程碑
|
||||
|
||||
| 里程碑 | 时间 | 交付物 | 成功标准 |
|
||||
|--------|------|--------|----------|
|
||||
| M0: 战略升级 | ✅ D1 | 文档体系更新 + 定价重构 | 已完成 |
|
||||
| M0.5: 壁垒构建 | D7 | 进步轨迹 + 面经贡献 + 每日一题 | 功能可用 |
|
||||
| M1: MVP 上线 | D14 | 小程序审核通过,内测启动 | 100 内测用户 |
|
||||
| M2: PMF 验证 | D30 | 100 内测用户反馈 | 次日留存 >30% |
|
||||
| M3: 付费上线 | D45 | 会员系统 + 微信支付 | 10+ 付费用户 |
|
||||
| M4: 秋招冲刺 | D90 | 秋招旺季爆发推广 | 1000+ 付费用户 |
|
||||
|
||||
---
|
||||
|
||||
## 七、风险与应对
|
||||
|
||||
| 风险 | 影响 | 应对 |
|
||||
|------|------|------|
|
||||
| 用户获取成本高 | 推广预算有限 | 优先免费渠道;秋招前投小红书 ¥3000/月 |
|
||||
| 留存率未达标 | 用户面完就走 | 进步轨迹 + 每日一题 + 打卡激励 |
|
||||
| 竞品降价 | 价格优势被削弱 | 真题题库 + 数据飞轮 = 不可替代性 |
|
||||
| 微信审核 | 突然下架 | 严格合规 + H5 备用方案 |
|
||||
| AI 成本失控 | 利润被吃掉 | 限制免费版调用次数;监控告警 |
|
||||
|
||||
---
|
||||
|
||||
## 八、变更记录
|
||||
## 变更记录
|
||||
|
||||
| 日期 | 变更内容 | 操作者 |
|
||||
|------|----------|--------|
|
||||
| 2026-05-14 | 职引项目启动 | AI |
|
||||
| 2026-06-01 | 重新定位:专注校招,¥9.9/月 | AI |
|
||||
| 2026-06-05 | **战略升级**:三层壁垒 + ¥19.9/¥49.9 定价 + B 端扩展 + 数据飞轮 | 小之 |
|
||||
| 2026-05-14 | 初版 | AI |
|
||||
| 2026-06-01 | 重新定位:专注校招 | AI |
|
||||
| 2026-06-05 | 战略升级 | 小之 |
|
||||
| 2026-06-09 | 同步代码状态,更新功能清单 | AI |
|
||||
|
||||
+119
-93
@@ -1,8 +1,8 @@
|
||||
# 职引项目 · 状态报告 v4.0
|
||||
# 职引项目 · 状态报告 v4.1
|
||||
|
||||
> **项目版本**: v4.0
|
||||
> **更新时间**: 2026-06-05 17:13
|
||||
> **项目状态**: 🚧 壁垒构建中(战略升级 v4.0)
|
||||
> **项目版本**: v4.2
|
||||
> **更新时间**: 2026-06-09
|
||||
> **项目状态**: 🚀 Phase 0.5 壁垒构建完成 + 全量代码评审修复
|
||||
|
||||
---
|
||||
|
||||
@@ -13,9 +13,9 @@
|
||||
| 项目名称 | 职引(ZhiYin) |
|
||||
| 定位 | 应届生/实习生 AI 面试教练 |
|
||||
| 技术栈 | NestJS + MongoDB + Uni-App(Vue3) |
|
||||
| 定价 | 免费版 / ¥19.9月(成长版) / ¥49.9月(冲刺版) |
|
||||
| 定价 | 免费版 / ¥19.9/月(成长版) / ¥49.9/月(冲刺版) |
|
||||
| AI 模型 | DeepSeek V4-Flash(主) + Step-3.5-Flash(备) |
|
||||
| 后端模块 | user, interview, resume, member, payment, positions, ai, analyze, schemas, upload, admin |
|
||||
| 后端模块 | user, interview, resume, member, payment, positions, ai, analyze, upload, admin, email, progress, contribution, daily-question, schedule |
|
||||
|
||||
---
|
||||
|
||||
@@ -23,120 +23,146 @@
|
||||
|
||||
| 模块 | 完成度 | 说明 |
|
||||
|------|------|------|
|
||||
| 后端 API | **95%** | 核心接口全部通过测试(10/10) |
|
||||
| 前端页面 | **60%** | 核心页面骨架存在,UI 细节待完善 |
|
||||
| AI 面试模拟 | **90%** | 多轮对话 + 评分 + 报告,待联调优化 |
|
||||
| 简历诊断 | **95%** | 已有完整代码,测试通过 |
|
||||
| 微信登录 | **70%** | 后端接口完备,前端待联调真实 appid |
|
||||
| 会员系统 | **50%** | 后端数据模型存在,定价待更新(¥19.9/¥49.9),支付未打通 |
|
||||
| 生产部署 | **10%** | 配置文档齐,服务器未购买 |
|
||||
| 后端 API | **98%** | 核心 + Phase 0.5 接口全部实现并编译通过 |
|
||||
| 前端页面 | **85%** | 16 个页面全部含真实 API 调用,有真实实现 |
|
||||
| AI 面试模拟 | **95%** | 多轮对话 + 评分 + 报告 + 进度追踪 |
|
||||
| 简历诊断/优化 | **95%** | 完整代码,文件上传 + AI 分析 + 下载 |
|
||||
| 支付系统(微信) | **95%** | API v3 完整对接,含签名/解密/回调/生产密钥 |
|
||||
| 会员系统 | **100%** | 成长版(¥19.9) + 冲刺版(¥49.9)完整实现,含权益扣减 |
|
||||
| 进步轨迹雷达图 | **100%** | 后端维度统计 + 前端雷达图/打卡日历 |
|
||||
| 面经贡献系统 | **100%** | 贡献提交 + 公司题库自动去重/频次统计 |
|
||||
| 每日一题 | **90%** | 读取 + 定时推送(早8点) + 微信订阅消息,缺模板ID配置 |
|
||||
| 微信登录 | **70%** | 后端接口齐,前端待联调真实 appid |
|
||||
| 生产部署 | **50%** | 服务器已购买,域名已配置,微信支付证书已就位,miniprogram-ci 编译上传脚本就绪 |
|
||||
| 小程序审核 | **0%** | 类目已备案,未提交审核 |
|
||||
|
||||
---
|
||||
|
||||
## 三、新增功能开发(Phase 0.5 壁垒构建)
|
||||
## 三、功能完成明细
|
||||
|
||||
### 3.1 核心 AI 面试 (P0)
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 进步轨迹雷达图 | 🔨 开发中 | 🔨 开发中 | 今日启动 |
|
||||
| 面经贡献系统 | 🔨 开发中 | 🔨 开发中 | 今日启动 |
|
||||
| 每日一题推送 | 🔨 开发中 | 🔨 开发中 | 今日启动 |
|
||||
| 公司真题库 | 🔨 开发中 | 📋 规划中 | 数据结构设计 |
|
||||
| 会员定价更新 | 🔨 开发中 | 🔨 开发中 | ¥19.9/¥49.9 |
|
||||
| 微信支付对接 | 🔨 开发中 | 🔨 开发中 | 接口对接中 |
|
||||
| 岗位选择(20+) | ✅ | ✅ | **完成** |
|
||||
| 多轮对话追问 | ✅ | ✅ | **完成** |
|
||||
| 实时反馈评分 | ✅ | ✅ | **完成** |
|
||||
| 面试报告(四维) | ✅ | ✅ | **完成** |
|
||||
| 历史记录/统计 | ✅ | ✅ | **完成** |
|
||||
| 使用次数限制 | ✅ | N/A | **完成** |
|
||||
| 连续打卡(进步轨迹) | ✅ | ✅ | **完成** |
|
||||
|
||||
### 3.2 数据飞轮 (Phase 0.5)
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 面经贡献 | ✅ | ✅ | **完成** |
|
||||
| 公司-岗位-题库映射 | ✅ | N/A | **完成** |
|
||||
| 脱敏存储 | ✅ | N/A | **完成** |
|
||||
| 题库自动扩充(去重+频次) | ✅ | N/A | **完成** |
|
||||
|
||||
### 3.3 留存入围 (Phase 0.5)
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 进步轨迹雷达图 | ✅ | ✅ | **完成** |
|
||||
| 历史对比分析 | ✅ | ✅ | **完成** |
|
||||
| 日历打卡视图 | N/A | ✅ | **完成** |
|
||||
| 每日一题推送 | ✅ 定时推送(早8点) | ✅ 首页展示 | **完成**(缺微信模板ID) |
|
||||
|
||||
### 3.4 用户系统
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 手机验证码登录 | ✅ | ✅ | **完成** |
|
||||
| 邮箱验证码登录 | ✅ | ✅ | **完成** |
|
||||
| 密码登录/注册 | ✅ | ✅ | **完成** |
|
||||
| 微信静默登录 | ✅ 有接口 | ✅ 有调用 | ⚠️ 缺真实 appid |
|
||||
| JWT 认证 | ✅ | ✅ | **完成** |
|
||||
| 个人信息设置 | ✅ | ✅ | **完成** |
|
||||
|
||||
### 3.5 商业化
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 免费版额度(日2次/5轮) | ✅ | ✅ | **完成** |
|
||||
| 成长版 ¥19.9/月 | ✅ | ✅ | **完成** |
|
||||
| 冲刺版 ¥49.9/月(含权益扣减) | ✅ | ✅ | **完成** |
|
||||
| 每日一题定时推送(微信订阅消息) | ✅ | N/A | **完成**(需配置模板ID) |
|
||||
| 微信支付 Native QR | ✅ | ✅ H5 | **完成** |
|
||||
| 微信支付 JSAPI | ✅ | ✅ MP | **完成** |
|
||||
| 支付回调/自动开会员 | ✅ | N/A | **完成** |
|
||||
| 会员状态/套餐查询 | ✅ | ✅ | **完成** |
|
||||
|
||||
### 3.6 简历
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| AI 简历诊断 | ✅ | ✅ | **完成** |
|
||||
| AI 简历优化 | ✅ | ✅ | **完成** |
|
||||
| 简历 CRUD | ✅ | ✅ | **完成** |
|
||||
| 文件上传(PDF/图片) | ✅ | ✅ | **完成** |
|
||||
| 结果下载(TXT/HTML) | N/A | ✅ | **完成** |
|
||||
|
||||
---
|
||||
|
||||
## 四、已完成工作(100%)
|
||||
## 四、后端模块清单
|
||||
|
||||
### 4.1 后端核心 API
|
||||
| 测试项 | 状态 | 说明 |
|
||||
|--------|------|------|
|
||||
| 发送验证码 | ✅ | 开发模式返回固定验证码 123456 |
|
||||
| 用户登录 | ✅ | 返回 JWT token 和用户信息 |
|
||||
| 获取用户信息 | ✅ | 返回用户详情 |
|
||||
| 简历诊断 | ✅ | AI 分析返回评分、问题列表、改进建议 |
|
||||
| 简历优化 | ✅ | AI 优化返回优化后的简历内容 |
|
||||
| 创建模拟面试 | ✅ | 返回面试ID、首个问题、提示 |
|
||||
| 回答面试问题 | ✅ | AI 给出反馈和下一个问题 |
|
||||
| 完成面试生成报告 | ✅ | 返回总分、强弱项、改进建议 |
|
||||
| 获取历史记录 | ✅ | 返回用户的所有面试记录 |
|
||||
| 获取用户统计 | ✅ | 返回面试次数、平均分数 |
|
||||
|
||||
**测试通过率:100% (10/10)**
|
||||
|
||||
### 4.2 前端核心页面
|
||||
- ✅ 首页(index.vue):面试、简历诊断、简历优化入口
|
||||
- ✅ 登录页面(login.vue):支持手机验证码登录
|
||||
- ✅ 模拟面试页面(interview.vue):支持多轮对话
|
||||
- ✅ 历史记录页面(history.vue):查看历史记录
|
||||
- ✅ 个人中心页面(user.vue):用户信息和管理
|
||||
- ✅ 简历诊断页面(diagnosis.vue):AI 分析简历
|
||||
- ✅ 简历优化页面(optimize.vue):AI 优化简历
|
||||
|
||||
### 4.3 上线配置
|
||||
- ✅ 生产环境配置(.env.production)
|
||||
- ✅ 部署文档(docs/DEPLOYMENT.md)
|
||||
- ✅ 小程序上线检查清单(docs/WECHAT-CHECKLIST.md)
|
||||
| 模块 | 文件 | 状态 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `user` | controller + service + schema | ✅ | 手机/邮箱/密码/微信多种登录方式 |
|
||||
| `interview` | controller + service + schema | ✅ | AI 面试核心,含进度追踪调用 |
|
||||
| `ai` | module + service | ✅ | AI 模型调用封装(主/备切换) |
|
||||
| `analyze` | controller + module + service | ✅ | 简历诊断/优化 |
|
||||
| `resume` | controller + service + schema | ✅ | 简历 CRUD |
|
||||
| `member` | controller | ✅ | 会员套餐/状态/冲刺版权益扣减 |
|
||||
| `payment` | controller + service + schema | ✅ | 微信支付 v3 完整对接(生产密钥已配) |
|
||||
| `positions` | controller + schema | ✅ | 热门岗位 CRUD |
|
||||
| `upload` | controller + module | ✅ | 文件上传 |
|
||||
| `admin` | controller + module | ✅ | 管理后台 |
|
||||
| `email` | module + service | ✅ | 邮件发送 |
|
||||
| `progress` | controller + schema | ✅ | 进步轨迹四维统计 |
|
||||
| `contribution` | controller + schema (×2) | ✅ | 面经贡献 + 公司题库 |
|
||||
| `daily-question` | controller + schema | ✅ | 读取 + 定时推送 @schedule |
|
||||
| `schedule` | module + service (×2) | ✅ | 每日一题早8点推送 + 微信token管理 |
|
||||
|
||||
---
|
||||
|
||||
## 五、项目文件清单
|
||||
## 五、前端页面清单
|
||||
|
||||
### 后端
|
||||
- `backend/.env.production` - 生产环境配置
|
||||
- `backend/dist/` - 编译后的代码
|
||||
- `backend/src/modules/` - 11 个业务模块
|
||||
|
||||
### 前端
|
||||
- `zhiyin-app/config/api.js` - API 配置
|
||||
- `zhiyin-app/manifest.json` - 小程序配置(AI 深度合成类目已通过)
|
||||
- `zhiyin-app/src/pages/` - 页面文件
|
||||
|
||||
### 文档
|
||||
- `docs/PRODUCT-PLAN.md` - 产品规划 v4.0(✅ 已更新)
|
||||
- `docs/ARCHITECTURE.md` - 架构文档
|
||||
- `docs/FEATURE-LIST.md` - 功能清单 v4.0(✅ 已更新)
|
||||
- `docs/ROADMAP.md` - 路线图 v4.0(✅ 已更新)
|
||||
- `docs/PROJECT-STATUS.md` - 状态报告(本文件)
|
||||
- `docs/DEPLOYMENT.md` - 部署文档
|
||||
- `docs/WECHAT-CHECKLIST.md` - 小程序上线检查清单
|
||||
|
||||
### 测试
|
||||
- `test-full.js` - 完整功能测试脚本
|
||||
| 页面 | 路径 | 类型 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 首页 | index/index | Tab | ✅ 岗位/每日一题/功能入口 |
|
||||
| 登录 | login/login | 页面 | ✅ 5 种登录方式 + 注册 |
|
||||
| 面试模拟 | interview/interview | 页面 | ✅ 多轮对话 + 计时 |
|
||||
| 面试报告 | report/report | 页面 | ✅ 评分/分析/全文回放 |
|
||||
| 历史记录 | history/history | Tab | ✅ 筛选/统计/跳转报告 |
|
||||
| 个人中心 | user/user | Tab | ✅ 用户信息/统计/管理员入口 |
|
||||
| 会员中心 | member/member | 页面 | ✅ 套餐对比 + 支付流程 |
|
||||
| 进步轨迹 | progress/progress | 页面 | ✅ 雷达图 + 打卡日历 |
|
||||
| 面经贡献 | contribute/contribute | 页面 | ✅ 表单提交 |
|
||||
| 简历优化 | resume/resume | 页面 | ✅ 诊断/优化/上传/下载 |
|
||||
| 优化结果 | result/result | 页面 | ✅ 双模式结果展示 |
|
||||
| 实习搜索 | internship/internship | 页面 | ✅ 热门岗位列表 |
|
||||
| 管理后台 | admin/admin | 页面 | ✅ 仪表盘 |
|
||||
| 关于 | about/about | 页面 | ✅ |
|
||||
| 用户协议 | agreement/agreement | 页面 | ✅ |
|
||||
| 隐私政策 | privacy/privacy | 页面 | ✅ |
|
||||
|
||||
---
|
||||
|
||||
## 六、下一步行动(按优先级)
|
||||
|
||||
| # | 行动 | 负责 | 预计时间 |
|
||||
|---|------|------|------|
|
||||
| 1 | 进步轨迹雷达图后端 API | 小之 | 今天 |
|
||||
| 2 | 面经贡献系统后端 API | 小之 | 今天 |
|
||||
| 3 | 每日一题推送后端 API | 小之 | 今天 |
|
||||
| 4 | 会员定价更新(¥19.9/¥49.9) | 小之 | 今天 |
|
||||
| 5 | 前端页面完善(雷达图/贡献/会员) | 小之 | 本周 |
|
||||
| 6 | 微信登录联调(真实 appid) | lt | 本周 |
|
||||
| 7 | 生产环境部署 | lt | 本周 |
|
||||
| 8 | 小程序审核提交 | lt | 下周 |
|
||||
|
||||
---
|
||||
|
||||
## 七、技术债务
|
||||
## 六、技术债务
|
||||
|
||||
| 问题 | 影响 | 优先级 |
|
||||
|------|------|------|
|
||||
| 微信登录未用真实 appid 联调 | 无法真机测试 | P0 |
|
||||
| 前端 API 错误处理不够健壮 | 偶现白屏 | P1 |
|
||||
| 微信登录未用真实 appid 联调 | 无法真机测试微信登录 | P0 |
|
||||
| 前端两套 API 调用方式(`uni.request` vs `apiService`) | 代码维护负担 | P2 |
|
||||
| 前端无状态管理(Pinia) + 无组件复用 | 代码重复 | P2 |
|
||||
| AI 调用无重试机制 | 偶发失败 | P1 |
|
||||
| 无单元测试 | 回归风险 | P2 |
|
||||
| TypeScript strict mode 未开启 | 类型安全不足 | P2 |
|
||||
|
||||
---
|
||||
|
||||
## 八、变更记录
|
||||
## 七、变更记录
|
||||
|
||||
| 日期 | 变更内容 | 操作者 |
|
||||
|------|----------|--------|
|
||||
| 2026-06-02 | 项目状态初版,测试 10/10 通过 | AI |
|
||||
| 2026-06-05 | **战略升级**:文档重构 + 新增功能启动 + 真实状态评估 | 小之 |
|
||||
| 2026-06-05 | 战略升级:文档重构 + 新增功能启动 | 小之 |
|
||||
| 2026-06-09 | 全面更新:Phase 0.5 功能实际已完成,修正完成度数据与模块清单 | AI |
|
||||
| 2026-06-09 | 更新部署状态:服务器已购,域名 zhiyinwx.yzrcloud.cn / zhiyin.yzrcloud.cn 已配 | 小之 |
|
||||
| 2026-06-09 | v4.2 冲刺版+每日推送+支付修复+全量代码评审 | AI |
|
||||
|
||||
+69
-78
@@ -1,9 +1,9 @@
|
||||
# 职引 · 产品路线图 v4.0
|
||||
# 职引 · 产品路线图 v4.1
|
||||
|
||||
> 版本: v4.0
|
||||
> 日期: 2026-06-05
|
||||
> 状态: 战略升级(竞争壁垒 + 盈利模型重构)
|
||||
> 定位: 应届生/实习生 AI 面试教练
|
||||
> **版本**: v4.1
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 壁垒构建完成,待上线
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
|
||||
@@ -12,78 +12,70 @@
|
||||
```
|
||||
Phase 0: 战略升级(✅ 已完成)
|
||||
↓
|
||||
Phase 0.5: 壁垒构建(D1-7)→ 进步轨迹 + 面经贡献 + 每日一题
|
||||
Phase 0.5: 壁垒构建(✅ 已完成)
|
||||
↓
|
||||
Phase 1: MVP 上线(D7-14)→ 小程序审核 + 内测 + 微信支付
|
||||
Phase 1: MVP 上线(D7-14)→ 小程序审核 + 内测 + 支付生产
|
||||
↓
|
||||
Phase 1.5: 辅助功能 + 商业化(D14-30)→ PMF 验证 + 付费转化
|
||||
Phase 1.5: 辅助功能 + 商业化(D14-30)→ PMF 验证
|
||||
↓
|
||||
Phase 2: 增强 + 真题库(D30-60)→ 秋招准备工作
|
||||
Phase 2: 增强 + 题库(D30-60)→ 秋招准备
|
||||
↓
|
||||
Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 二、Phase 0:战略升级(✅ 已完成)
|
||||
|
||||
**目标**: 重构竞争壁垒与盈利模型
|
||||
## 二、Phase 0: 战略升级(✅ 已完成)
|
||||
|
||||
**已完成**:
|
||||
- [x] 定价重构:¥9.9 → ¥19.9/¥49.9 三段式
|
||||
- [x] 定价重构:免费 + ¥19.9/月 两段式
|
||||
- [x] 三层壁垒设计(数据飞轮 + 留存入围 + 合规信任)
|
||||
- [x] 收入来源多元化(C 端 + B 端 + 内容 + 人才匹配)
|
||||
- [x] 收入来源多元化策略
|
||||
- [x] 文档体系全面更新
|
||||
- [x] 清理冗余文档(DEVELOPMENT-PLAN.md、重复 PROJECT-STATUS.md)
|
||||
|
||||
---
|
||||
|
||||
## 三、Phase 0.5:壁垒构建(D1-7,正在执行)
|
||||
## 三、Phase 0.5:壁垒构建(✅ 已完成)
|
||||
|
||||
### 3.1 数据飞轮功能
|
||||
|
||||
| 功能 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 面经贡献系统 | 面试后可贡献公司/岗位信息,脱敏存入题库 | 🔨 开发中 |
|
||||
| 公司-岗位-题库映射 | 数据结构设计,四维映射 | 🔨 开发中 |
|
||||
| 题库自动扩充 | 基于用户贡献自动生成题目 | 📋 规划中 |
|
||||
| 面经贡献系统 | 面试后可贡献公司/岗位信息 | ✅ 完成 |
|
||||
| 公司-岗位-题库映射 | 四维映射 + 自动去重 + 频次统计 | ✅ 完成 |
|
||||
| 题库自动扩充 | 基于用户贡献自动积累 | ✅ 完成 |
|
||||
|
||||
### 3.2 留存入围功能
|
||||
|
||||
| 功能 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 进步轨迹雷达图 | 四维能力可视化 + 历史对比 | 🔨 开发中 |
|
||||
| 日历打卡视图 | 面试频率可视化,连续打卡激励 | 🔨 开发中 |
|
||||
| 每日一题 Push | 微信订阅消息推送面试题 | 🔨 开发中 |
|
||||
| 进步轨迹雷达图 | 四维能力可视化 + 打卡日历 | ✅ 完成 |
|
||||
| 历史对比分析 | 最近面试趋势 | ✅ 完成 |
|
||||
| 每日一题 | API + 首页展示 | ⚠️ 缺定时推送 |
|
||||
|
||||
### 3.3 会员系统重构
|
||||
|
||||
| 功能 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 定价更新 | ¥19.9/月 成长版 + ¥49.9/月 冲刺版 | 🔨 开发中 |
|
||||
| 会员权益对比 | 三版对比展示页面 | 🔨 开发中 |
|
||||
| 微信支付对接 | 微支付接入与测试 | 🔨 开发中 |
|
||||
| 定价更新 | ¥19.9/月 成长版 | ✅ 完成 |
|
||||
| 会员权益对比 | 三版对比展示 | ✅ 完成 |
|
||||
| 微信支付对接 | Native + JSAPI 支付 | ✅ 完成 |
|
||||
|
||||
---
|
||||
|
||||
## 四、Phase 1:MVP 上线(D7-14)
|
||||
## 四、Phase 1:MVP 上线(D7-14,当前阶段)
|
||||
|
||||
### 4.1 上线准备
|
||||
|
||||
| 任务 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 前端页面完善 | 所有 P0 页面 UI 完成 | ⏳ 待开始 |
|
||||
| 微信登录联调 | 真实 appid 验证 | ⏳ 待开始 |
|
||||
| 生产环境部署 | 服务器 + MongoDB + Nginx + PM2 | ⏳ 待开始 |
|
||||
| 小程序审核提交 | 资质齐全,可立即提交 | ⏳ 待开始 |
|
||||
| 内测版发布 | 邀请码方式,100 人内测 | ⏳ 待开始 |
|
||||
| 前端页面完善 | 16 个页面全部就绪 | ✅ 完成 |
|
||||
| 微信登录联调 | 真实 appid 验证 | ⏳ 待进行 |
|
||||
| 移除开发绕过 | `member/pay` 直接激活 | ⏳ 待进行 |
|
||||
| 生产环境部署 | 服务器 + MongoDB + Nginx + PM2 | ✅ 服务器已购,域名已配(zhiyinwx → API:3006,zhiyin.yzrcloud → H5 静态目录) |
|
||||
| 小程序审核提交 | 资质齐全 | ⏳ 待进行 |
|
||||
| 内测版发布 | 邀请码方式,100 人内测 | ⏳ 待进行 |
|
||||
|
||||
### 4.2 内测指标
|
||||
|
||||
- **关键指标**: 次日留存 > 30%,7 日留存 > 15%
|
||||
- **反馈收集**: 问卷 + 访谈
|
||||
- **如果达标**: 继续 Phase 1.5
|
||||
- **如果不达标**: 复盘原因,调整后继续
|
||||
|
||||
---
|
||||
|
||||
@@ -91,11 +83,11 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 简历诊断 | 复用已有代码,AI 分析简历 | P1 |
|
||||
| AI 岗位专属题库 | AI 算法/大模型岗位面试题库 | P1 |
|
||||
| 连续打卡激励 | 7 天打卡解锁高级功能 | P1 |
|
||||
| 付费转化验证 | 100 内测用户 → 10+ 付费用户 | P0 |
|
||||
| PMF 决策 | 转化率 > 5% → 继续;< 5% → 复盘 | P0 |
|
||||
| 每日一题定时推送 | 微信订阅消息推送 | P0 |
|
||||
| 冲刺版 ¥49.9/月 | 高客单价 | P1 |
|
||||
| 连续打卡激励 | 7 天解锁高级报告 | P1 |
|
||||
| 付费转化验证 | 100 内测用户 → 10+ 付费 | P0 |
|
||||
| PMF 决策 | 转化率 > 5% → 继续 | P0 |
|
||||
|
||||
---
|
||||
|
||||
@@ -111,12 +103,12 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
| 百度 | 技术 + AI 岗位 | 📋 规划中 |
|
||||
|
||||
### 6.2 增强功能
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 技能缺口分析 | 基于目标岗位分析技能差距 | P1 |
|
||||
| AI 学习路径推荐 | 免费资源整合推荐 | P2 |
|
||||
| 更多岗位覆盖 | 扩展到 50+ 校招热门岗位 | P1 |
|
||||
| 精选实习岗位 | 人工整理优质实习(秋招前强化) | P1 |
|
||||
| 功能 | 优先级 |
|
||||
|------|--------|
|
||||
| 技能缺口分析 | P1 |
|
||||
| AI 学习路径推荐 | P2 |
|
||||
| 50+ 校招热门岗位 | P1 |
|
||||
| 精选实习岗位 | P1 |
|
||||
|
||||
---
|
||||
|
||||
@@ -128,15 +120,15 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
- 高校合作启动 2-3 所
|
||||
|
||||
### 7.2 B 端启动
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 高校就业办合作 | B 端订阅 + 批量管理 | P1 |
|
||||
| 企业内推服务 | 帮助企业筛选简历 | P2 |
|
||||
| 真人导师点评 | 冲刺版专属 1v1 服务 | P2 |
|
||||
| 功能 | 优先级 |
|
||||
|------|--------|
|
||||
| 高校就业办合作 | P1 |
|
||||
| 企业内推服务 | P2 |
|
||||
| 真人导师点评 | P2 |
|
||||
|
||||
### 7.3 秋招旺季推广(9-11月)
|
||||
- 小红书 KOC 投放 ¥3000/月
|
||||
- 微信公众号密集推送面试技巧
|
||||
- 微信公众号推送面试技巧
|
||||
- 知乎回答"秋招如何准备"类问题
|
||||
- 学校 BBS/贴吧精准发帖
|
||||
|
||||
@@ -146,12 +138,12 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
|
||||
| 里程碑 | 时间 | 交付物 | 成功标准 |
|
||||
|--------|------|--------|----------|
|
||||
| M0: 战略升级 | ✅ D1 | 文档体系 + 定价重构 | 已完成 |
|
||||
| M0.5: 壁垒构建 | D7 | 进步轨迹 + 面经贡献 + 每日一题 | 功能可用 |
|
||||
| M0: 战略升级 | ✅ D1 | 文档 + 定价 | 已完成 |
|
||||
| M0.5: 壁垒构建 | ✅ D7 | 进步轨迹 + 面经贡献 + 每日一题 | 功能可用 |
|
||||
| M1: MVP 上线 | D14 | 小程序审核通过,内测启动 | 100 内测用户 |
|
||||
| M2: PMF 验证 | D30 | 100 用户反馈 + 付费数据 | 转化率 > 5% |
|
||||
| M3: 付费上线 | D45 | 会员系统 + 微信支付 | 50+ 付费用户 |
|
||||
| M4: 秋招冲刺 | D90 | 秋招爆发推广 | 1000+ 付费用户 |
|
||||
| M2: PMF 验证 | D30 | 100 用户反馈 | 转化率 > 5% |
|
||||
| M3: 付费上线 | D45 | 冲刺版 + 定时推送 | 50+ 付费用户 |
|
||||
| M4: 秋招冲刺 | D90 | 秋招推广 | 1000+ 付费用户 |
|
||||
|
||||
---
|
||||
|
||||
@@ -159,16 +151,16 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
|
||||
```
|
||||
2026 年校招日历:
|
||||
6-8 月:暑假实习搜索高峰 + 秋招准备(打磨产品 + 积累种子用户)
|
||||
9-11 月:秋招(主战场,全力推广冲刺)
|
||||
12-2 月:寒假 + 春招准备(B 端合作拓展)
|
||||
6-8 月:暑假实习 + 秋招准备(打磨产品 + 积累种子用户)
|
||||
9-11 月:秋招(主战场,全力推广冲刺)
|
||||
12-2 月:寒假 + 春招准备(B 端合作拓展)
|
||||
|
||||
关键时间点:
|
||||
- 现在(6月5日):壁垒构建 + MVP 完善
|
||||
- 6月15日:MVP 上线,内测启动
|
||||
- 7月1日:PMF 验证,付费转化
|
||||
- 8月1日:Phase 2 完成,准备秋招
|
||||
- 9月1日:秋招旺季,全力推广
|
||||
6月9日:壁垒构建完成,Phase 0.5 交付
|
||||
6月15日:MVP 上线,内测启动
|
||||
7月1日:PMF 验证,付费转化
|
||||
8月1日:Phase 2 完成,准备秋招
|
||||
9月1日:秋招旺季,全力推广
|
||||
```
|
||||
|
||||
---
|
||||
@@ -177,20 +169,19 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发 + 收入增长
|
||||
|
||||
| 风险 | 影响 | 应对 |
|
||||
|------|------|------|
|
||||
| 用户获取成本高 | 推广预算有限 | 免费渠道优先;秋招前投小红书 |
|
||||
| 留存率未达标 | 用户面完就走 | 进步轨迹 + 每日一题 + 打卡激励 |
|
||||
| 竞品降价 | 价格优势被削弱 | 真题题库 + 数据飞轮 = 不可替代 |
|
||||
| 微信审核风险 | 小程序下架 | 严格合规 + H5 备用方案 |
|
||||
| 暑假淡季(6-8月) | 用户活跃度下降 | 强化实习搜索,衔接秋招 |
|
||||
| AI 成本失控 | 利润被吃掉 | 限制免费调用;监控告警 |
|
||||
| PMF 验证失败 | 浪费时间 | Week 4 关键决策,及时 pivot |
|
||||
| 用户获取成本高 | 预算有限 | 免费渠道优先 |
|
||||
| 留存率未达标 | 用户面完就走 | 进步轨迹 + 每日一题 + 打卡 |
|
||||
| 竞品降价 | 优势被削弱 | 数据飞轮不可替代 |
|
||||
| 微信审核风险 | 小程序下架 | 严格合规 + H5 备用 |
|
||||
| AI 成本失控 | 利润被吃掉 | 限制免费调用 + 监控告警 |
|
||||
|
||||
---
|
||||
|
||||
## 十一、变更记录
|
||||
## 变更记录
|
||||
|
||||
| 日期 | 变更内容 | 操作者 |
|
||||
|------|----------|--------|
|
||||
| 2026-05-14 | 路线图初版 | AI |
|
||||
| 2026-06-01 | 重新规划:专注校招,¥9.9/月,MVP 2 周 | AI |
|
||||
| 2026-06-05 | **战略升级**:三层壁垒 + ¥19.9/¥49.9 + B 端 + 数据飞轮 + 新里程碑 | 小之 |
|
||||
| 2026-06-01 | 重新规划:专注校招 | AI |
|
||||
| 2026-06-05 | 战略升级:三层壁垒 + 新定价 | 小之 |
|
||||
| 2026-06-09 | Phase 0.5 标记完成,调整后续里程碑时间 | AI |
|
||||
|
||||
+41
-80
@@ -1,10 +1,11 @@
|
||||
# 职引 - 微信小程序上线检查清单
|
||||
|
||||
> **用途**:提交微信审核前,逐项检查,确保一次通过。
|
||||
> **用途**:提交微信审核前,逐项检查,确保一次通过
|
||||
> **最后更新**: 2026-06-09
|
||||
|
||||
---
|
||||
|
||||
## 一、资质与合规 ✅
|
||||
## 一、资质与合规
|
||||
|
||||
### 1.1 账号资质
|
||||
- [ ] 已完成微信认证(企业/个体工商户)
|
||||
@@ -12,137 +13,97 @@
|
||||
- [ ] 已配置客服(用于审核人员测试登录)
|
||||
|
||||
### 1.2 隐私合规
|
||||
- [ ] 《隐私政策》完整,包含:
|
||||
- [ ] 收集的个人信意类型(手机号、简历内容)
|
||||
- [ ] 信息用途径(AI 分析、面试记录)
|
||||
- [ ] 用户权利(查询、删除、注销)
|
||||
- [ ] 联系方系(邮箱/电话)
|
||||
- [ ] 《隐私政策》完整
|
||||
- [ ] 《用户协议》完整
|
||||
- [ ] 小程序内可访问隐私政策和用户协议
|
||||
- [ ] 首次收集个人信息前弹窗征得用户同意
|
||||
- [ ] 首次收集个人信息前弹窗征得同意
|
||||
- [ ] 提供用户注销账号功能
|
||||
|
||||
### 1.3 内容安全
|
||||
- [ ] AI 生成内容有标识("由 AI 生成")
|
||||
- [ ] 用户输入内容经过敏感词过滤
|
||||
- [ ] 简历诊断/优化结果不包含违法违规内容
|
||||
|
||||
---
|
||||
|
||||
## 二、功能完整性 ✅
|
||||
## 二、功能完整性
|
||||
|
||||
### 2.1 核心流程
|
||||
- [ ] 微信登录流程顺畅(授权 → 获取手机号 → 登录成功)
|
||||
- [ ] 微信登录流程顺畅(授权 → 登录成功)
|
||||
- [ ] 手机验证码登录流程顺畅
|
||||
- [ ] 简历诊断功能正常(上传 → 分析 → 查看结果)
|
||||
- [ ] 简历优化功能正常(上传 → 优化 → 复制/下载)
|
||||
- [ ] 模拟面试功能正常(选择岗位 → 开始面试 → 问答 → 查看报告)
|
||||
- [ ] AI 模拟面试流程正常(选岗位 → 问答 → 查看报告)
|
||||
- [ ] 面试历史记录正常显示
|
||||
- [ ] 个人中心信息可修改
|
||||
- [ ] 进步轨迹雷达图正常显示
|
||||
- [ ] 面经贡献功能正常(填写 → 提交)
|
||||
- [ ] 简历诊断/优化功能正常(上传 → 分析 → 结果)
|
||||
- [ ] 会员中心展示正常
|
||||
- [ ] 个人中心信息可查看
|
||||
|
||||
### 2.2 异常场景
|
||||
- [ ] 网络异常时有友好提示
|
||||
- [ ] AI 服务不可用时有降级方案(mock 数据)
|
||||
- [ ] AI 服务不可用时有降级方案
|
||||
- [ ] 用户未登录时引导登录
|
||||
- [ ] 表单验证错误提示清晰
|
||||
|
||||
---
|
||||
|
||||
## 三、技术与性能 ✅
|
||||
## 三、技术与性能
|
||||
|
||||
### 3.1 接口与域名
|
||||
- [ ] 所有 API 域名已在【微信公众平台 → 开发 → 开发管理 → 开发设置 → 服务器域名】中配置
|
||||
- [ ] request 合法域名:`https://api.yourdomain.com`
|
||||
- [ ] socket 合法域名:(如适用)
|
||||
- [ ] uploadFile 合法域名:(如适用)
|
||||
- [ ] downloadFile 合法域名:(如适用)
|
||||
- [ ] 所有域名使用 **HTTPS**(必须!)
|
||||
- [ ] 域名已备案(ICP 备案)
|
||||
### 3.1 域名配置
|
||||
- [ ] 所有 API 域名已在微信公众平台配置
|
||||
- [ ] request 合法域名:`https://zhiyinwx.yzrcloud.cn`
|
||||
- [ ] uploadFile 合法域名:`https://zhiyinwx.yzrcloud.cn`
|
||||
- [ ] 所有域名使用 HTTPS
|
||||
- [ ] 域名已 ICP 备案
|
||||
|
||||
### 3.2 性能
|
||||
- [ ] 首屏加载时间 < 2s
|
||||
- [ ] 页面切换流畅,无卡顿
|
||||
- [ ] 图片资源已压缩
|
||||
- [ ] 没有未使用的 console.log(生产环境)
|
||||
- [ ] 没有未使用的 console.log
|
||||
|
||||
### 3.3 兼容性
|
||||
- [ ] 在微信开发者工具中测试通过(不低于基础库 2.25.0)
|
||||
- [ ] 在真机上测试通过(iOS + Android 各一款)
|
||||
- [ ] 不同屏幕尺寸适配正常
|
||||
- [ ] 微信开发者工具测试通过(基础库 2.25.0+)
|
||||
- [ ] 真机测试通过(iOS + Android)
|
||||
|
||||
---
|
||||
|
||||
## 四、用户体验 ✅
|
||||
|
||||
### 4.1 界面
|
||||
## 四、用户体验
|
||||
- [ ] 所有文字无错别字
|
||||
- [ ] 按钮状态清晰(可点击/不可点击)
|
||||
- [ ] 加载中有 loading 提示
|
||||
- [ ] 空状态有引导提示(如:暂无面试记录)
|
||||
- [ ] 弹窗/提示框内容准确
|
||||
|
||||
### 4.2 交互
|
||||
- [ ] 按钮点击有反馈(振动或动效)
|
||||
- [ ] 空状态有引导提示
|
||||
- [ ] 下拉刷新正常
|
||||
- [ ] 上拉加载更多正常
|
||||
- [ ] 表单输入体验良好(自动聚焦、键盘类型匹配)
|
||||
|
||||
---
|
||||
|
||||
## 五、运营准备 ✅
|
||||
|
||||
### 5.1 基础信息
|
||||
- [ ] 小程序名称合规(不含有诱导、夸大宣传)
|
||||
- [ ] 简介清晰(20 字以内概括核心功能)
|
||||
- [ ] 类目标签准确(教育 > 职业技能培训)
|
||||
- [ ] 头像/封面图清晰、合规
|
||||
|
||||
### 5.2 审核辅助
|
||||
- [ ] 准备测试账号(如审核人员需要登录体验)
|
||||
- [ ] 准备功能说明文档(复杂功能可录制演示视频)
|
||||
- [ ] 提供客服联系方式(审核期间保持畅通)
|
||||
## 五、审核准备
|
||||
- [ ] 准备测试账号(审核人员体验用)
|
||||
- [ ] 准备功能说明文档
|
||||
- [ ] 提供客服联系方式
|
||||
|
||||
---
|
||||
|
||||
## 六、提交审核前最后确认 ✅
|
||||
|
||||
- [ ] 所有功能已测试通过(使用 [test-full.js](./test-full.js) 跑一遍)
|
||||
## 六、提交前最后确认
|
||||
- [ ] 后端所有接口测试通过
|
||||
- [ ] `member/pay` 开发绕过已移除
|
||||
- [ ] 版本号已更新
|
||||
- [ ] 项目备注已填写(说明本次更新内容)
|
||||
- [ ] 已备份当前代码(git tag)
|
||||
- [ ] 已通知相关人员(客服、运营)
|
||||
|
||||
---
|
||||
|
||||
## 七、常见审核被拒原因 ⚠️
|
||||
## 七、常见审核被拒原因
|
||||
|
||||
### 7.1 隐私不合规
|
||||
**原因**:未明示收集使用个人信息的目的、方式和范围。
|
||||
**解决**:完善隐私政策,首次使用时弹窗征得同意。
|
||||
### AI 类目未审批
|
||||
提前申请 AI 深度合成类目(已通过)。
|
||||
|
||||
### 7.2 AI 类目未审批
|
||||
**原因**:涉及 AI 对话/生成内容,但未申请 AI 深度合成类目。
|
||||
**解决**:提前申请类目审批,或下架 AI 相关功能后再提交审核。
|
||||
### 功能不完整
|
||||
审核人员无法完成核心流程 → 提供测试账号。
|
||||
|
||||
### 7.3 功能不完整
|
||||
**原因**:审核人员无法完成核心流程(如无法登录、无法提交订单)。
|
||||
**解决**:提供测试账号,确保核心流程顺畅。
|
||||
|
||||
### 7.4 内容不安全
|
||||
**原因**:AI 生成内容可能包含违规信息。
|
||||
**解决**:加强内容审核,增加敏感词过滤,AI 输出增加"由 AI 生成"标识。
|
||||
### 内容不安全
|
||||
AI 输出增加"由 AI 生成"标识 + 敏感词过滤。
|
||||
|
||||
---
|
||||
|
||||
## 八、审核通过后 ✅
|
||||
|
||||
## 八、审核通过后
|
||||
- [ ] 及时发布上线
|
||||
- [ ] 监控线上错误日志
|
||||
- [ ] 收集用户反馈
|
||||
- [ ] 准备下次迭代
|
||||
|
||||
---
|
||||
|
||||
**最后更新**:2026-06-02
|
||||
|
||||
> 💡 **提示**:每次提交审核前,建议打印此清单,逐项勾选,确保不遗漏。
|
||||
|
||||
Reference in New Issue
Block a user