嗯来吧 · 产品需求文档(研发版)
版本:v12.0(完整版) | 文档类型:研发交付版 | 适用:前端 / 后端 / 测试 / 运营
本文档由《嗯来吧需求文档.doc》(增量反馈 85 条 + 30 张设计参考图)与原型《嗯来吧-融合版(13).html》融合整理,包含业务逻辑、交互规则、业务功能、状态与资金流、验收标准与原型截图。
文档信息
| 项目 | 内容 |
| 文档名称 | 嗯来吧 · 产品需求文档(研发版 v12 完整版) |
| 版本 / 日期 | v12.0 | 随原型《嗯来吧-融合版(13).html》同期发布 |
| 文档性质 | 增量需求 + 全量功能基线(可直接用于前后端排期与测试用例编写) |
| 输入材料 | ① 嗯来吧需求文档.doc(13 页 / 44 段 / 30 张设计参考图) ② 嗯来吧-融合版(13).html 原型(移动端全流程可交互) ③ 用户红字批注 26 处(已逐条优化并并入正文,留痕见第 16 章) |
| 交付物 | 本 DOCX(Word 编辑版)+ 单文件 HTML(浏览器直读)+ Markdown(.md,便于在预览器内阅读)+ 逐页 PNG 图片版(26 页);配套原型 HTML 与截图目录 |
| 阅读约定 | 每章结构固定:业务目标 → 功能规则 → 交互规则 → 异常与边界 → 验收标准;表格中 ✓ 表示支持,✗ 表示不支持 |
目录
| 章节 | 内容 |
| 1 | 文档说明(目的范围 / 术语表 / 版本对应) |
| 2 | 产品概述(定位 / 用户角色) |
| 3 | 账号、注册与认证(企业注册 OCR / 经办人 / 机构个体 / 认证体系 / 企业功能隔离) |
| 4 | 首页(宫格换位 / 固定场景位 / 任务单跑马灯) |
| 5 | 大学生专区(定位与选校 / 达人榜 / 三模块 / 校园互助 / 圈子) |
| 6 | 发布体系(技能 / 紧急求救与语音 / 闲置转让) |
| 7 | 组队与付费模型(免费 / AA / 主办方打赏 / 参与者付费;资金流 / 状态机 / 成员管理) |
| 8 | 接单与履约(施助人数 / 接单时效 / 履约流程) |
| 9 | 我的(施助记录 / 我发的 / 收藏 / 关注) |
| 10 | 资金、结算与风控 |
| 11 | 非功能需求(性能 / 兼容 / 安全隐私 / 埋点) |
| 12 | 验收清单(汇总) |
| 13 | 需求逐条对照表(原文档 85 条 → 本文档位置 → 原型状态) |
| 14 | 未实现 / 待确认清单 |
| 附录 | A 术语与缩写 B 原型页面与截图索引 |
1. 文档说明
1.1 目的与范围
本文档定义「嗯来吧」校园互助 / 技能变现 / 组局平台本迭代(v10)的增量需求,覆盖三部分:
| 范围 | 内容 |
| 本期新增 | 企业注册与认证、首页改版(场景位 / 跑马灯 / 宫格换位)、大学生专区三模块完善、圈子体系、组队付费四模式、接单时效、我的收藏 / 关注 / 施助记录 |
| 本期调整 | 身份与账号隔离(个人 / 企业)、发布类型裁剪(企业端)、我发的标签分类、发布技能页优化 |
| 不在本期 | 企查查等第三方工商核验 API 对接(仅预留)、先垫后收 / 定金尾款、跨城结算 |
1.2 术语表
| 术语 | 定义 |
| 施助者 / 受助者 | 施助者 = 接单并完成服务的一方;受助者 = 发布需求并接受服务的一方 |
| 发起人(主办方) | 组队 / 活动的组织者,拥有成员管理与结算权限 |
| 参与方 | 报名参加组队 / 活动并(可能)付费的一方 |
| 赏金托管 | 发布时冻结资金至平台专户,履约完成后才放款 |
| AA 平摊 | 发起人与参与者各付「人均」金额(发起人只付自己 1 份) |
| 主办方打赏 | 发起人出资,成行后平均打赏给每位参与者 |
| 参与者付费 | 发起人不付费,仅参与者付费(如报名费、场地分摊) |
| 达人榜 | 首页 / 专区的用户推荐位,推荐订单多、技能多的用户 |
| 圈子 | 校园社区下的兴趣 / 学校社群,支持创建、审核、加入、退出 |
| 场景位 | 瀑布流中的固定推广位,在「今日最新」与「新潮热门」之间轮换 |
| 跑马灯 | 首页底部滚动的任务单展示条 |
1.3 版本与原型对应
| 项 | 说明 |
| 原型文件 | 嗯来吧-融合版(13).html(单文件,含移动端全部页面与交互) |
| 文档依据 | 需求文档.doc 第 1–85 条反馈逐条落位(见第 13 章对照表) |
| 阅读方式 | 每章固定结构:业务目标 → 功能规则 → 交互规则 → 异常与边界 → 验收标准 |
2. 产品概述
2.1 定位
面向高校学生与本地商家的互助 + 技能 + 组局平台:学生可用技能变现、发布求助、组队 AA;商家 / 企业可发布需求与直招,但不可交易。
2.2 用户角色
| 角色 | 能做什么 | 不能做什么 |
| 个人(学生) | 发布技能 / 求助 / 紧急求救 / 活动 / 闲置转让 / 组队;接单;报名;收款 | 发布企业直招 |
| 机构 / 个体 | 同个人;可发布经营类需求 | 交易类目受限(后置) |
| 企业 | 发布需求(直招)、发布技能、发布组队(仅免费) | 不可交易;不可发布求助 / 紧急求救 / 闲置转让;无「接单」tab |
| 平台 | 资金托管、审核、风控、纠纷处理 | — |
3. 账号、注册与认证
3.1 账号规则
| 规则 | 说明 |
| 一个手机一个账号 | 手机号 + 验证码注册,手机号即唯一账号 |
| 个人与企业隔离 | 同手机号下的「个人身份」与「企业身份」数据隔离:订单、发布、消息、钱包互不可见 |
| 身份单选 | 注册 / 认证时选择类型:个人 / 机构 / 企业 / 个体(单选) |
3.2 注册登录流程
交互:首页 → 注册 / 登录 → 输入手机号 → 获取验证码(60s 倒计时)→ 校验通过 → 进入身份选择。
业务规则:验证码 5 分钟内有效;同号码 60s 内不可重复发送;同设备 24h 内最多 10 次;验证通过后如已有账号直接登录。
3.3 企业注册 · 我是法人(本期新增)
| 步骤 | 交互 | 业务逻辑 |
| 1 上传执照 | 拍照 / 从相册选择营业执照 | 校验图片清晰度、大小 ≤5MB,压缩后上传 |
| 2 OCR 识别 | 调用 OCR 识别 → 自动反显企业名称、统一社会信用代码、法定代表人、注册地址、有效期 | 识别失败可手动修正;识别字段标「OCR 已识别」 |
| 3 手机号验证 | 输入手机号 → 验证码校验 | 建议校验号码与法人预留号码一致性(可后置) |
| 4 提交注册 | 提交 → 进入平台审核 | 审核状态:待审核 / 通过 / 驳回(附原因);驳回可重新提交 |
| 5 后置核验 | 预留企查查类 API | 核验企业真实性、经营状态、法人一致性 |
3.4 企业注册 · 我是经办人
必传:① 手持营业执照照片(人脸 + 执照同框)② 经办人身份证正反面。
规则:两者缺一不可提交;OCR 识别执照信息同样自动反显;经办人信息仅用于审核,不对外展示。
3.5 机构 / 个体
同样支持拍照 → OCR 自动识别反显 → 提交审核;字段与企业一致,无需工商 API 核验。
3.6 认证体系与展示
| 认证类型 | 获取方式 | 展示位置与样式 |
| 学籍认证(学生) | 学籍号 或 学生证 / 录取通知书照片 | 昵称旁「学生已认证」绿色标签;头部氛围条认证后收起 |
| 实名认证 | 身份证 + 人脸 | 用户卡片「实名认证」标签 |
| 企业认证 | 执照 OCR + 审核 | 企业卡片「企业认证」标签 |
脱敏要求:证件照仅用于核验,不对外展示;展示给他人时身份证号 / 手机号必须打码。
3.7 企业账号功能隔离(重要)
| 模块 | 企业账号 | 个人账号 |
| 底部 tab「接单」 | 移除 | 保留 |
| 发布类型 | 仅 技能、组队(组队仅「免费」付费方式) | 全类型:技能 / 求助 / 紧急求救 / 活动 / 闲置转让 / 组队 |
| 「我发的」筛选 | 仅 技能、活动、组队 | 技能 / 求助 / 组队 / 活动 / 紧急求救 |
| 求助订单、闲置转让 | 删除(不可见) | 保留 |
| 企业直招发布 | 可选学校(非必填) | — |
3.8 验收标准
| 编号 | 验收点 |
| A-01 | 同手机号注册后,个人与企业身份切换时,订单 / 发布 / 消息列表互不串数据 |
| A-02 | 法人注册:上传执照后 3 秒内自动反显 ≥4 个字段;识别失败可手填且不阻断提交 |
| A-03 | 经办人注册:缺任一证件时提交按钮置灰且提示缺失项 |
| A-04 | 企业账号登录后:底部无「接单」、发布页无求助 / 闲置、我发的无求助筛选 |
| A-05 | 所有对外展示的用户信息中,证件类字段均已打码 |
3.9 手机验证码登录(新增)
| 项 | 规则 |
| 登录方式 | ① 手机号 + 密码 ② 手机号 + 验证码(新增)——登录页提供切换 |
| 验证码规则 | 6 位数字,5 分钟内有效;同一号码 60 秒内仅可发送 1 次;同设备 24 小时最多 10 次 |
| 异常 | 验证码错误 3 次锁定 10 分钟;号码未注册时引导「去注册」 |
| 身份归属 | 验证码登录后,若该号码同时存在个人 / 企业身份(见 3.10),进入上次使用的身份并可切换 |
3.10 手机号唯一性(口径冲突 · 需产品确认)
冲突点:新需求 1.1 提出「企业跟个人不能同时使用一个手机号」,而第 3.1 节既有规则为「一个手机一个账号,个人与企业数据隔离」。两者语义不同,必须先定口径再开发。
| 方案 | 含义 | 影响面 |
| A(推荐) | 一个手机号只能绑定一种身份:注册企业后该号码不可再注册个人;反之亦然 | 注册校验、找回密码、身份切换入口(需支持多账号登录 / 切换)、客服话术 |
| B | 一个手机号可注册两种身份,数据隔离,登录后选择身份 | 与 1.1 原文冲突;需产品明确否定 1.1 |
本文档暂按方案 A 编写:注册时校验号码是否已被其他身份占用,占用则提示「该手机号已注册为【个人/企业】账号,请更换号码或切换到该账号」。
3.11 敏感文件鉴权(新增 1.5)
| 项 | 规则 |
| 范围 | 身份证、营业执照、机构证明、法律文书等机密性文件 |
| 存储 | 加密存储(KMS 托管密钥),桶级私有读,禁止直链公开 |
| 访问控制 | 鉴权访问:仅文件所有者与审核角色可见;每次访问校验登录态 + 二次校验(短信 / 密码 / 人脸) |
| 链接 | 预览链接带时效签名(建议 ≤5 分钟),一次性有效 |
| 审计 | 所有查看 / 下载行为写入审计日志(操作人、时间、文件、IP) |
| 展示 | 对外展示一律打码(身份证保留前 1 后 1,执照保留企业名称) |
`],
/* ---------- 第 4 章增补 ---------- */
['
4. 首页
4.1 页面结构
| 项 | 规则 |
|---|
| 顶部 | 左侧位置入口(显示当前采用城市/省份);右侧关注 / 找达人切换;右上签到 |
| 宫格 | 大学生专区占主位,转让市场 / 附近商家次位 |
| 场景位 | 瀑布流内一个固定格子,在「今日最新」与「新潮热门」两态间轮换(见 4.4) |
| 瀑布流 | 按分类展示技能、求助、活动、闲置等内容 |
| 底部任务条 | 接单任务条(跑马灯):只推求助订单,见 4.3 |
4.2 定位、城市与距离
总原则:手动选城永远优先于定位;没有定位权限不影响任何功能可用,只影响"是否显示公里数"。
4.2.1 四档定位精度
| 精度档 | 展示与排序 |
|---|
| 精确(GPS <1km) | 采用城市 = 定位城市;显示具体距离;距离档参与排序;同城 ≤20km |
| 城市级(1–5km / 大致位置) | 同上,距离显示为约数 |
| 省级(仅省份 / IP 定位) | 全省模式:不做距离判断、显示「同省」、不做 20km 过滤、排序改为金额优先;提示「选择城市可获得更准推荐」 |
| 无定位 / 拒绝授权 | 默认上海;显示「同城」、不显示公里数;按金额排序;不做半径过滤 |
4.2.2 手动选城规则
| 项 | 规则 |
|---|
| 优先级 | 手动选城 > 精确定位 > 城市级定位 > 省级(全省)> 默认上海 |
| 距离基准 | 一律以采用城市为基准。选了其他城市时以所选城市中心计算,并在页面标注「按所选城市估算」 |
| 页面提示 | 选城 ≠ 定位城市时,顶部显示「当前按【成都】展示 · 恢复定位」,点击切回定位城市并重排 |
| 记忆 | 记住所选城市;仅点「恢复定位」才清除 |
| 切换城市 | 立即刷新跑马灯、场景位与瀑布流(先显示骨架约 0.3 秒,不展示旧城市内容);失败则保留旧内容并提示「切换失败,点击重试」 |
| 消除记录 | 按 城市 + 日期 维度存储;换城市后重新展示 |
4.3 底部任务条(跑马灯)
4.3.1 定位与条数
| 项 | 规则 |
|---|
| 作用 | 把"现在就能接的求助单"推给施助者,缩短发现到接单的路径 |
| 内容 | 只放求助订单(技能 / 组队 / 活动 / 闲置 / 企业需求不进) |
| 条数 | 每天 5 条(当日批次),本期固定 5 条不做配置;候选不足按实际;0 条整条隐藏 |
| 展示方式 | 一条一条滚动轮询,每条停留 4–12 秒(按标题字数 + 加成),一轮约 25–30 秒,播完循环 |
| 内容稳定性 | 当天就是这 5 条,不主动换内容;仅某条失效(被接单/取消/过期)时补 1 条;每天 0 点重新生成一批。"轮播"≠"内容变化" |
4.3.2 入池条件(全部满足)
| 项 | 规则 |
|---|
| 类型 / 状态 | 仅求助单;招募中或待接单;未取消、未下架 |
| 时间 | 未过期(订单有效期 > 当前时间) |
| 地域 / 距离 | 属于采用城市;同城且 ≤20km(省级模式不做距离过滤) |
| 审核 | 审核通过;无违规标记;未命中敏感词 |
| 发布者 | 信用分 >50;未被封禁、不在黑名单 |
| 资金 | 赏金已托管成功 |
| 控屏 | 同一发布者最多进 2 条 |
4.3.3 排序规则
| 项 | 规则 |
|---|
| 有定位 | ① 距离档 ASC(≤1km / 1–3km / 3–5km / 5–10km / 10–20km)→ ② 金额分 DESC(min(综合金额,500)÷500)→ ③ orderId ASC(稳定兜底) |
| 无定位 / 省级 | ① 金额分 DESC → ② orderId ASC |
| 急单兜底 | 距截止 ≤3 小时的订单,在同一距离档内提到最前,并显示「即将截止」标 |
| 不使用 | 不引入时效分 / 新鲜分。原因:两者方向相反会互相抵消;权重过低救不了急单(同档内"剩 23 小时"仍会排在"剩 0.5 小时"前面);时效分依赖有效期字段;新鲜度问题已由"每日批次"解决 |
4.3.4 金额与付费展示
| 项 | 规则 |
|---|
| 酬金 | 现金 / 余额|订单基础报酬;走资金托管,履约后结算给接单者,可提现 |
| 打赏 = 吧豆 | 积分(吧豆)|发布者用吧豆追加鼓励;接单者获得吧豆,不可提现,只能换权益 / 排名 |
| 展示(分开显示) | 【酬金 80¥】【打赏 50 豆】;只有酬金时显示【酬金 80¥】;只有打赏时显示【打赏 50 豆】 |
| 排序折算 | 综合金额 = 酬金 + 打赏豆数×0.1(折算率可配)→ 金额分提高 → 同一距离档内更靠前;打赏只影响排序,不参与现金结算 |
| 防刷约束 | 单条订单打赏折算部分≤50 元(即最多 500 豆计入排序) |
| 结算口径 | 酬金走现金托管(履约后进接单者余额,可提现);打赏是吧豆积分划转,接单者到账后不可提现 |
4.3.5 停留时长
基础(按标题字数):≤10 字 4s / 11–15 字 5s / 16–20 字 6s / 21–25 字 7s / ≥26 字 8s
加成:本轮第 1 条 +2s / 含打赏 +1s / 综合金额≥500 +1s / 已曝光 2 轮 −1s → 封顶 12 秒、下限 4 秒;1 小时内同一条最多曝光 3 轮
4.3.6 内容更新机制(批次制)
| 项 | 规则 |
|---|
| 生成当日 5 条 | 每天 0 点按 4.3.2 / 4.3.3 生成当日批次 |
| 补位(唯一的内容变化) | 某条被接单 / 取消 / 过期时,从当日候选池按排序补 1 条;时效 ≤30 秒(推送),无推送 60 秒轮询 |
| 整体重算 | 仅两种情况:① 用户切换城市(含恢复定位、定位精度变化)② 定位城市发生实质变化 |
| 下拉刷新 / 回前台 | 只做失效检测 + 补位,不重排已有条目;跨天则重新生成 |
| 补位方式 | 后续条目前移,不重新排序;正在播放的条目被移除时立即切下一条,不出现空白帧 |
| 新单 | 不插队;进入当日候选池等待补位,次日参与新一批评选 |
| 不采用 | 每 15 分钟重排、全天实时滚动换单、T+1 / T+3 更新(会造成用户点到已被接走的单) |
4.3.7 交互规则
| 项 | 规则 |
|---|
| 每条显示 | 标题(单行省略)+【酬金 80¥】【打赏 50 豆】+「去接单」+「×」;不显示距离、区县、发布时间 |
| 出现时机 | 进入首页后延迟 1.5 秒出现;页面下滑 >300px 隐藏,回到顶部再现 |
| 点击 | 点条目 → 该求助订单详情页;点「去接单」→ 详情页并聚焦报名区 |
| 消除 | 点「×」→ 二次确认 → 当天不再显示;本地与服务端双写,按「城市 + 日期」存储;次日 0 点恢复;换城市重新展示;换设备仍生效 |
| 暂停 | 长按条目 / 页面不可见 / 请求数据中 → 暂停并记录已用时长;恢复时从剩余时长继续 |
| 查看全部 | 右侧提供「查看全部 ›」入口,进入求助大厅列表页(承接"想看更多") |
4.3.8 异常处理
| 项 | 规则 |
|---|
| 无数据 | 整条隐藏,不留白 |
| 只有 1 条 | 常显不轮播 |
| 请求失败有缓存 | 保留上一次内容继续轮播,不提示、不白屏 |
| 首次失败无缓存 | 显示骨架,3 秒后自动隐藏,不显示错误文案 |
| 播放中被接单 | 立即切到下一条,不出现空白帧 |
| 补位后不足 | 不足 5 条按实际;补到 0 条整条隐藏 |
4.4 场景位(今日最新 ↔ 新潮热门)
4.4.1 形态
瀑布流内同一个固定格子,卡片高度固定;两态结构完全一致:标题行 + 3 个条目 + 底部「查看更多 ›」;条目 = 标题(单行省略)+ 价格/金额 + 距离文案(有定位显示公里,无定位显示「同城」,省级显示「同省」)。
4.4.2 今日最新(状态 A)
| 项 | 规则 |
|---|
| 时间范围 | 今天 00:00–24:00 发布的内容(以服务端时间判断,跨天自动重置) |
| 内容类型 | 不限(技能、求助、活动等都算 —— 这是内容位,不是订单位) |
| 排除 | 审核中、已下架、已被接单(订单类) |
| 排序 | 有定位 → 距离 ASC;无定位 → 发布时间 ASC(当天最早在前);省级 → 全省范围 + 发布时间 ASC |
| 数量 | 3 条;不足按实际;0 条则本状态不展示 |
4.4.3 新潮热门(状态 B)
| 项 | 规则 |
|---|
| 时间范围 | 近 7 天 |
| 热度分 | 浏览 ×0.4 + 收藏 ×0.3 + 成交 ×0.3;「新奇技能」且审核通过的内容 ×1.3 |
| 排序 | 热度分 DESC;同分按发布时间 DESC |
| 数量 | 3 条 + 「查看更多 ›」(与 A 结构对称,保证高度一致) |
| 去重 | 不与状态 A 显示同一条;重复则顺延取下一条 |
| 重算 | 每 10 分钟;切入本状态时若距上次计算 >10 分钟先刷新 |
| 数据不足 | 不足 6 条时本状态常显 24 秒后回到 A,并把轮换间隔放宽到 15 秒 |
4.4.4 轮换规则
| 项 | 规则 |
|---|
| 轮换方式 | 今日最新 → 新潮热门 交替;顺序固定,不随机 |
| 停留 | 每状态 8 秒 |
| 首次进入 | 默认显示今日最新;重新进入首页都重置为今日最新 |
| 手动切换 | 左右滑或点圆点 → 立即切换,并暂停自动轮换 24 秒 |
| 暂停条件 | 页面不可见 / 卡片滚出可视区 / 请求数据中 / 从详情返回 2 秒内 / 长按卡片 |
| 恢复 | 从剩余时长继续,不重新计时 |
| 预加载 | 切换前 1 秒预取下一状态内容;首屏两态一次性返回 |
4.4.5 「查看更多」列表页
| 项 | 规则 |
|---|
| 范围 / 排序 | 今日最新 = 今天全部内容;新潮热门 = 近 7 天。默认与卡片同排序,顶部可切换排序 |
| 加载 | 上滑分页,每页 20 条;到底提示「没有更多了」 |
| 空态 | 「今天还没有新内容」+「去发布」按钮(不是空白页) |
| 返回 | 回到首页时卡片停留在进入时的那一状态 |
4.4.6 异常处理
| 项 | 规则 |
|---|
| A 为空 | 只显示 B,停止轮换 |
| B 为空 | 只显示 A,停止轮换 |
| 两态都空 | 隐藏整个格子,瀑布流上移,不留白 |
| A 不足 3 条 | 按实际显示,「查看更多」保留 |
| 请求失败 | 保留上次内容(含缓存);首次失败显示骨架,不弹错误窗 |
| 图片加载失败 | 显示占位图,不影响标题、金额与点击 |
4.5 在线状态
| 项 | 规则 |
|---|
| 判定机制 | WebSocket 长连接 + 心跳 30 秒;无长连接时 HTTP 轮询 60 秒;关键操作即时上报 |
| 时间基准 | 一律以服务端时间为准 |
| 状态阈值 | 心跳 ≤90 秒 = 在线;90 秒–5 分钟或后台 >2 分钟 = 离开;>5 分钟 = 离线;从未上报 = 未知(按离线展示) |
| 杀进程 / 崩溃 | 无法上报,按心跳超时兜底:最长 90 秒后显示「离开」、5 分钟后「离线」;因此关键时刻(点「现在可聊」、发消息)必须实时校验 |
| 切后台 / 锁屏 | 立即上报后台状态转「离开」;被系统冻结则退化为心跳超时判定 |
| 无网络 / 飞行模式 | 本地立即显示离线;服务端 5 分钟内仍为「离开」;恢复网络 5 秒内同步 |
| 弱网抖动 | 断连 <30 秒不改变状态(防闪烁);重连即恢复 |
| 多设备 | 任一设备在线即账号在线,展示「在线(多端)」 |
| 服务端重启 / 连接断开 | 客户端 30 秒内自动重连;期间按最后活跃时间判定,不批量置为在线 |
| 退出登录 / 切换身份 | 立即上报离线;切换后按新身份重新上报 |
| 封禁 / 审核中 | 强制离线,不对外展示在线 |
| 异常心跳 | 同账号大量不同设备或固定周期脚本 → 风控标记,不计入在线 |
| 用途边界 | 仅用于展示与引导,不作为拦截条件:离线用户仍可发布、接单、发消息(转留言) |
| 展示规则 | 头像角标 🟢在线 / 🟡离开 / ⚪离线;离线展示「最近在线 X 分钟前」 |
| 「现在可聊」 | 在线 → 直接会话;离开 → 可用但提示可能回复较慢;离线 → 降级为「留言」 |
| 隐私开关 | 设置项「展示在线状态」默认开启;关闭后他人看到「离线」,但消息送达不受影响 |
4.6 标签体系
一级标签(发布时必选 1 个,固定 8 类):校园跑腿 | 学习辅导 | 家政维修 | 摄影设计 | 活动组局 | 情绪陪伴 | 二手转让 | 新奇体验
新奇标签(新奇体验下二级标签,首批推荐):
| 新奇标签 | 服务内容 |
|---|
| 陪拍 / 跟拍 | 出片陪拍、姿势与机位指导、精修交付 |
| 学习监督 / 陪考研 | 自习室陪学、打卡监督、周报复盘 |
| 情绪价值陪伴 | 解压陪聊、夸夸服务、树洞倾听(纯线上) |
| AI 工具陪跑 | 帮做 PPT / 海报、AI 绘图、论文润色、表格自动化 |
| 面试模拟 / 简历陪改 | 模拟面试、简历逐条修改、作品集梳理 |
| 其他候选 | 上门喂猫遛狗、代排队代占座、手作非遗体验、陪玩连麦、私人管家(校园版)、陪爬陪跑、陪诊(合规敏感) |
机制:① 新奇标签需审核,通过后显示「新奇」标;② 用户发布的技能可勾选「新奇技能」,审核通过后在新潮热门加权 ×1.3;③ 夜间服务(22:00–06:00)需实名 + 位置共享 + 紧急联系人;④ 涉医疗、极限运动类目单独标记并要求投保。
4.7 信用等级与推荐排序
| 项 | 规则 |
|---|
| 信用四档 | ≥95 信用极好(绿)| 80–94 信用好(蓝)| 51–79 信用中(灰,不显示标签)| ≤50 信用差(红 + 限流,不进跑马灯) |
| 用户标签 | 接单王(近 30 天完成 ≥20 单)、新晋达人(入驻 ≤30 天且完成 ≥5 单、好评 ≥4.8)、认证学生、信用极好、企业认证;同屏最多展示 2 个,认证类优先 |
| 服务半径 | 默认 20 公里(可配 5–50);超半径订单不进跑马灯,列表中置灰并提示「超出服务范围」 |
| 区县规则 | 城市级负责筛选与展示;区县级负责距离计算与排序;同城不同区县互相可见 |
| 「回复快」 | 本期不上线,保留埋点 |
4.8 服务时长与「看着给」
| 项 | 规则 |
|---|
| 服务时长 | 字段 = 时长数值(1–24)+ 单位(小时 / 天 / 次);未填写则详情页不展示该行 |
| 看着给 | 服务费为 0,不冻结资金;价格区展示「看着给」而非 ¥0;打赏照常展示【打赏 50 豆】 |
4.9 首页验收标准
| 模块 | 验收点 |
|---|
| 位置与城市 | 手动选城优先于定位;未授权定位默认上海并显示「同城」;仅省级精度时进入全省模式且显示「同省」;切换城市后跑马灯、场景位、瀑布流同时刷新 |
| 跑马灯·正常 | 每天 5 条;按「距离档 → 综合金额」排序;按字数停留 4–12 秒;点条目进详情、点「去接单」聚焦报名区 |
| 跑马灯·异常 | 0 条隐藏;1 条常显;被接单 ≤30 秒移除并补位且不重排;消除后当天不再显示、次日 0 点恢复;无网保留缓存 |
| 跑马灯·付费 | 打赏单分开显示【酬金 80¥】【打赏 50 豆】,折算后综合金额更高、同档内更靠前;金额高但距离远的单不能跨档超过近档订单 |
| 场景位·正常 | 两态各 3 条 + 查看更多;各停 8 秒交替;有定位按距离、无定位按发布时间;热门按热度分且与今日最新去重 |
| 场景位·异常 | 单侧为空只显示另一侧并停轮换;两态都空隐藏格子;A 不足 3 条仍保留查看更多;点击查看更多可进列表页并分页 |
| 在线状态 | 杀进程后 90 秒内显示「离开」、5 分钟内显示「离线」;双设备任一端在线即账号在线;关闭隐私开关后他人看到离线但消息必达 |
| 标签与信用 | 一级标签 8 类且必选 1 个;新奇技能审核后带标并在新潮热门加权;信用分 ≤50 不进跑马灯 |
5. 大学生专区
5.1 顶部定位与学校
| 场景 | 展示与交互 |
| 已开启定位 | 顶部显示省份(如「湖北」) |
| 已认证学校 | 顶部显示学校名称 + 「已认证 / 未认证」标签 |
| 自定义选校 | 点击下拉箭头 → 按省份显示附近学校;支持搜索学校名称确认;选择后内容切换为该学校业务内容 |
| 点击顶部统计 | → 进入「选择学校」页查看学校内容 |
5.2 顶部卡片 · 达人榜(你可能认识的人)
业务逻辑:推荐订单较多、技能较多的用户;「校园互助」与「校园社区」两个模块均可展示,位置固定不变。
排序:综合得分 = 完成订单数 ×0.5 + 技能数 ×0.3 + 信用分 ×0.2(权重可后台配置);同校优先。
交互:点击头像 / 卡片 → 用户详情弹窗(含施助人数、信用分、评价、违约);右侧「聊一聊」直接发起会话。
5.3 三个模块
| 模块 | 说明 |
| 校园互助(默认) | 进入专区默认展示;顶部筛选(为你推荐 等分类)+ 二级模块(找服务 = 技能 / 接任务) |
| 校园社区 | 顶部认证氛围条;发布动态(校园帖子);热门圈子 → 更多圈子 |
| 企业直招 | 企业面向学生发布;企业可选学校(非必填),选择后内容在该学校下展示 |
5.4 校园互助
- 顶部筛选:为你推荐、附近、最新、高赏金等(可按运营配置)
- 「找服务」= 技能服务列表;「接任务」= 求助 / 任务列表
- 发布挂件:发布技能、求助、紧急求救、活动、闲置转让、组队——与首页发布内容一致,唯一区别是可选择对应学校
5.5 校园社区与圈子
| 功能 | 交互与规则 |
| 氛围条 | 顶部显示认证状态(已认证 / 未认证),可针对学校发起认证;认证完成后仅保留顶部徽标,氛围条收起 |
| 发布动态 | 挂件 → 发布校园帖子(文字 + 图片 ≤9 张) |
| 热门圈子 | 列表展示圈子名称、标签、在线人数;「更多圈子」→ 全部圈子页 |
| 全部圈子页 | 分类 chips(全部 / 学习提升 / 游戏开黑 / 兴趣社交 / 运动自律)+ 搜索 + 「创建新圈子」;含「审核中」分区 |
| 创建圈子 | 名称(2–10 字)、分类、主题色、一句话介绍、封面图(≤3 张,首张为封面)、加入方式(公开加入 / 申请审核 / 仅本校)→ 提交审核(约 1 个工作日) |
| 加入 / 退出 | 加入后可见成员与内容;「编辑」即退出圈子(含删除语义) |
| 成员展示 | 成员头像只显示一行,溢出用「+N」,点击进入成员列表;未加入时提示「加入后可见」 |
5.6 验收标准
| 编号 | 验收点 |
| C-01 | 未开定位也能选校;学校列表按省份展示且支持搜索 |
| C-02 | 专区默认进入「校园互助」,三模块可切换 |
| C-03 | 达人榜在校园互助与校园社区均展示且位置一致 |
| C-04 | 发布挂件可指定学校,选择后内容出现在该学校下 |
| C-05 | 圈子成员头像单行不换行,溢出显示 +N |
| C-06 | 创建圈子提交后进入「审核中」,审核前仅自己可见 |
6. 发布体系
6.1 发布类型与入口
| 类型 | 入口 | 个人 | 企业 |
| 技能服务 | 发布挂件 / 首页 + / 校园互助 + | ✓ | ✓ |
| 求助订单 | 同上 | ✓ | ✗ |
| 紧急求救 | 同上(含语音) | ✓ | ✗ |
| 活动 | 同上 | ✓ | ✓ |
| 闲置转让 | 同上 | ✓ | ✗ |
| 组队 | 同上 | ✓(免费 / AA / 打赏 / 参与者付费) | ✓(仅免费) |
6.2 发布技能页优化
| 项 | 要求 |
| 信息结构 | 标题 → 类目 → 计价方式(按次 / 按时 / 按天)→ 价格 → 交付说明 → 服务范围 → 图片 |
| 字段校验 | 标题 6–30 字;价格 > 0 且 ≤ 99999;图片 ≤ 6 张、单张 ≤ 5MB(压缩至 720px 宽) |
| 草稿 | 输入即自动存草稿;再次进入提示「已恢复上次草稿」 |
| 发布后 | 进入「我发的 · 技能」,状态:审核中 → 已上架 |
6.3 紧急求救(含语音)
- 发布:支持语音输入——按住说话(≤60 秒),自动转文字并可编辑;也可纯文字发布。
- 展示:接单页 / 接单大厅可显示语音求助卡片,播放语音 + 一行摘要信息。
- 规则:紧急求救默认置顶、优先推送同校与附近用户;发布频率限制(如 2 小时 1 条)以防滥用。
6.4 闲置转让
字段:标题、分类、成色、价格(可议价)、原价、交易方式(自提 / 面交 / 邮寄)、图片 ≤9 张、所在校区。
规则:企业账号不可见;个人账号可发布;售出后状态置「已售出」并下架;平台不介入资金(可选走平台担保,本期不做)。
7. 组队与付费模型(本期重点)
7.1 四种付费方式
| 付费方式 | 谁付钱 | 金额与结算规则 |
| 免费 | 都不付 | 不冻结资金,报名即占位;成行条件为人数达标 |
| AA 平摊 | 发起人 + 参与者都付 | 人均 = 所需总金额 ÷ 所需人数;发起人只付自己 1 份,参与者各付 1 份;凑齐即成行 |
| 主办方打赏 | 仅发起人付 | 发起人出资总额,成行后平均打赏给每位参与者;参与者 0 元报名 |
| 参与者付费 | 仅参与者付 | 发起人不付费;参与者按人均付费报名(场地 / 报名费分摊) |
7.2 资金流(以 AA 为例,¥600 / 6 人 / 人均 ¥100)
| 环节 | 发起人 | 参与者 |
| 发布 | 冻结 ¥100(自己 1 份,不是全额) | — |
| 报名 | — | 各付 ¥100,支付成功才占位 |
| 未支付 | — | 15 分钟未付自动释放名额(可被他人抢占) |
| 成行 | — | 已付人数 ≥ 所需人数 → 成行 |
| 结算 | 平台将托管资金付给场地 / 发起人;发起人净支出 = 1 份 | 各支出 1 份 |
| 人数不足 | 到期时 差额由发起人补足,或发起人选择流局,参与者全额退回 | 流局时全额退回 |
| 放款 | 活动结束后解冻 → T+1 放款;余额段返 10%(运营活动) | — |
口径说明:AA 模式下发起人是「参与者之一」,因此只承担自己 1 份;人数不足时的差额由其补足(等价于按实际人数重新分摊,但不重算已付参与者的金额)。
7.3 报名与名额
| 规则 | 说明 |
| 占位条件 | 付费模式:支付成功才占位;免费模式:报名即占位 |
| 名额释放 | 15 分钟未支付自动释放;释放后被其他人抢占 |
| 候补 | 名额满后报名进入候补队列;有人被剔除 / 退出时,候补 #1 自动获得名额并通知 |
| 信息展示 | 报名区展示「已报名 N/M」「还差 X 人」「已付清 / 待支付」,头像单行展示,溢出用 +N |
7.4 成员管理(发起人视角)
| 动作 | 可用时机 | 业务规则 |
| 同意参加 | 报名待确认时 | 通过后名额锁定,通知参与者 |
| 不予同意 | 报名待确认时 | 已付金额原路退回,通知参与者(附理由) |
| 剔除(施助前) | 成行前 / 施助开始前 | 退款;名额自动转候补 #1,无候补则公开释放;同一成员最多被剔除 2 次;扣除信用分;通知并记录日志 |
| 恢复报名 | 已剔除后 | 恢复名额(若仍有空位),退款不再执行 |
| 风控 | — | 同一发起人 7 天内 ≥3 次剔除 → 触发风控审核 |
交互(移动端):报名区右下角提供显式入口「查看全部成员(N)· X 人待确认 · 确认 / 剔除 ›」;触发后进入全屏成员管理页:顶部状态分段(待确认 / 已同意 / 已剔除,带数量),列表每张卡片含头像、昵称、认证标签、信用分 · 支付状态、右侧「聊一聊」与底部操作按钮(同意参加 / 不予同意 / 剔除 / 恢复);人数 ≥2 时底部提供「全部同意(N)」。
交互约束:展示区不做管理动作(避免误触与遮挡);点击头像 = 查看资料;所有管理动作在成员管理页完成,处理一条审批 ≤ 2 次点击。
7.5 状态机
| 状态 | 进入条件 | 出口 |
| 草稿 | 保存草稿 | 编辑 / 正式发布 / 删除 |
| 招募中 | 正式发布(资金已冻结) | 人数达标 → 已成行;到期不足 → 待补足 / 已流局 |
| 待补足 | 到期人数不足 | 发起人补足 → 已成行;放弃 → 已流局 |
| 已成行 | 已付人数 ≥ 所需人数 | 活动结束 → 已结束 |
| 已流局 | 发起人放弃补足 | 全额退回参与者 |
| 已结束 | 活动完成 | 解冻 → T+1 放款 |
7.6 验收标准
| 编号 | 验收点 |
| D-01 | AA 模式发布时,冻结金额 = 人均(自己 1 份),非全额 |
| D-02 | 四种付费方式均可发布,且面板如实显示「谁付多少」 |
| D-03 | 未支付 15 分钟后名额自动释放,别人可抢占 |
| D-04 | 「查看全部成员」入口可见且一行不换行(移动端宽度 375px 下不折行) |
| D-05 | 同意 / 不予同意 / 剔除 均≤2 次点击完成,且对应的退款、通知、日志均记录 |
| D-06 | 人数不足到期时,发起人可见「补足差额」与「流局全退」两个选项 |
8. 接单与履约
8.1 接单大厅
列表卡片展示:价格 / 单位、标题、距离与区域、时间、发布者信用、接单时效标签。支持分类筛选与排序(推荐 / 最新 / 高价)。
8.2 接单详情页 · 施助人数
| 位置 | 展示 |
| 接单详情页 | 展示施助人数(该用户累计完成的服务次数) |
| 我的 · 头像 | 同样展示施助人数 |
| 点击施助人数 | 弹出用户施助记录列表(时间、服务类型、对方昵称),对方信息打码 |
8.3 接单时效(本期调整)
| 项 | 规则 |
| 展示字段 | 由「30 分钟有效期」调整为:期望完成时间 + 订单有效期 |
| 优先级 | 订单有效期 > 期望完成时间——两者并存时以有效期为准展示倒计时与状态 |
| 过期处理 | 订单过期自动下架 / 释放名额,并通知发布者 |
8.4 履约流程
发布 → 接单 → 双方确认(发布者确认施助方)→ 履约 → 上传凭证 → 验收 → 放款 → 互评。
异常:超时未确认自动确认(24h);争议进入客服仲裁;违约扣信用分并记录。
8.5 验收标准
| 编号 | 验收点 |
| E-01 | 接单详情与「我的」均展示施助人数,数值一致 |
| E-02 | 点击施助人数可查看记录,且对方信息已打码 |
| E-03 | 同时配置有效期与期望完成时间时,展示与倒计时以有效期为准 |
9. 我的
9.1 个人资料
头像、昵称、认证标签(学生已认证 / 实名认证 / 企业认证)、施助人数、信用分、评价数、违约数。
9.2 我发的(标签分类)
| 账号 | 标签 |
| 个人 | 技能 / 求助 / 组队 / 活动 / 紧急求救 |
| 企业 | 技能 / 活动 / 组队 |
每条支持:编辑、下架、删除、查看报名 / 接单情况、进入详情。
9.3 我的收藏
点击「我的收藏」→ 弹窗展示收藏列表(服务 / 任务 / 闲置),支持取消收藏与进入详情。
9.4 我的关注
点击「我的关注」→ 展示关注的用户列表(头像 + 认证标签 + 技能 / 施助人数 + 聊一聊 / 取消关注)。
9.5 验收标准
| 编号 | 验收点 |
| F-01 | 「我发的」按账号类型展示不同标签,且筛选生效 |
| F-02 | 我的收藏以弹窗形式展示并可操作 |
| F-03 | 我的关注列表展示认证标签,可取消关注 |
10. 资金、结算与风控
10.1 通用资金规则
| 规则 | 说明 |
| 托管 | 发布 / 报名时资金冻结至平台专户,履约完成后放款 |
| 放款 | 活动 / 订单结束 → 解冻 → T+1 放款至收款方 |
| 退款 | 未成行、流局、不予同意、剔除 → 原路退回(1–3 个工作日) |
| 返现 | 余额段返 10%(运营活动,可配置开关与上限) |
| 发票与对账 | 企业账号支持对账单导出(后置) |
10.2 各模式结算差异
| 模式 | 冻结 | 结算 |
| 免费 | 无 | 无资金流 |
| AA 平摊 | 发起人冻结 1 份;参与者各冻结 1 份 | 成行后付场地 / 发起人;不足由发起人补足或流局全退 |
| 主办方打赏 | 发起人冻结全额 | 成行后平均打赏给每位参与者 |
| 参与者付费 | 参与者各冻结人均 | 成行后付给场地方;发起人无资金流 |
10.3 风控
- 剔除频次:同一发起人 7 天内 ≥3 次剔除 → 人工审核
- 被剔除上限:同一成员最多被剔除 2 次
- 违约:未按时履约扣信用分,累计触发限流 / 封禁
- 虚假发布:同账号 24h 内发布 > 10 条进入审核队列
- 异常资金:同设备多账号互刷 → 冻结提现并人工核验
11. 非功能需求
| 类别 | 要求 |
| 性能 | 首页首屏 ≤2s(4G);列表滚动 60fps;图片懒加载 + WebP |
| 兼容 | iOS 13+ / Android 8+;主流机型分辨率;安全区适配 |
| 可用性 | 所有全屏层与弹层约束在 App 容器内(宽度 ≤500px 居中),禁止铺满桌面窗口 |
| 安全与隐私 | 证件照加密存储、仅审核可见;对外展示打码;遵循个人信息保护法 |
| 埋点 | 注册转化、认证转化、发布成功率、详情页转化、报名转化、成行率、剔除率、跑马灯点击率 |
12. 验收清单(汇总)
| 模块 | 编号 | 验收点 | 结果 |
| 账号认证 | A-01~A-05 | 见 3.8 | □ |
| 首页 | B-01~B-05 | 见 4.4 | □ |
| 大学生专区 | C-01~C-06 | 见 5.6 | □ |
| 组队付费 | D-01~D-06 | 见 7.6 | □ |
| 接单履约 | E-01~E-03 | 见 8.5 | □ |
| 我的 | F-01~F-03 | 见 9.5 | □ |
13. 需求逐条对照表(需求文档.doc → 本文档)
| 原编号 | 原文要求(摘要) | 本文档位置 | 原型状态 |
| 1 / 1.1 | 首页注册登录增加企业注册;我是法人 OCR 识别反显 + 手机号验证 | 3.3 | 部分(OCR 演示级) |
| 1.2 | 我是经办人:手持营业执照 + 身份证 | 3.4 | 部分 |
| 1.3 | 机构与个体自动识别反显 | 3.5 | 部分 |
| 2 / 2.1 | 大学社与附近商家宫格换位,大学社占主位 | 4.1 | 已实现 |
| 2.2 / 2.3 | 固定场景位(今日最新 / 新潮热门)轮换与选择规则 | 4.2 | 部分(缺「新潮热门」) |
| 3(规则 1–4) | 首页底部任务单跑马灯四条规则 | 4.3 | 未实现 |
| 4-1 / 4-2 | 专区顶部定位、省份、学校标签与自定义选校 | 5.1 | 已实现 |
| 4-3 | 达人榜(你可能认识的人)位置不变、两模块均展示 | 5.2 | 已实现 |
| 4-4 | 默认校园互助;顶部筛选(为你推荐)+ 找服务 / 接任务 | 5.3 / 5.4 | 已实现 |
| 4-5 / 4-6 | 发布挂件(技能 / 求助 / 紧急 / 组队等),可选学校 | 5.4 / 6.1 | 已实现 |
| 4-7 | 点击顶部统计大学 → 选择学校查看内容 | 5.1 | 已实现 |
| 4-8 | 校园社区:认证氛围条、发布动态 | 5.5 | 已实现 |
| 4-9 | 企业直招:企业可选学校发布(非必填) | 5.3 | 已实现 |
| 4-10 / 11 | 更多圈子 → 创建 / 加入 / 退出 / 编辑删除;创建圈子 | 5.5 | 已实现 |
| 4-11 | 接单详情页 · 施助人数 | 8.2 | 已实现 |
| 4-12 | 一个手机一个账号;企业与个人隔离;企业裁剪功能 | 3.1 / 3.7 | 已实现 |
| 4-12 | 我的头像 → 施助人数 → 施助记录(打码) | 9.1 / 8.2 | 已实现 |
| — | 紧急求救支持语音输入;接单页展示语音求助 | 6.3 | 部分(语音为演示) |
| — | 发布技能页优化 | 6.2 | 已实现 |
| — | 发布组队:免费 / AA / 主办方打赏 / 参与者付费 | 7.1 | 已实现 |
| — | 闲置转让页面 | 6.4 | 已实现 |
| — | 我发的增加技能 / 求助 / 组队 / 活动 / 紧急求救标签 | 9.2 | 已实现 |
| — | 接单时效:有效期 > 期望完成时间 | 8.3 | 未实现 |
| — | 我的收藏(弹窗)、我的关注 | 9.3 / 9.4 | 已实现 |
14. 未实现 / 待确认清单
| 项 | 状态 | 说明与建议 |
| 企业注册 OCR 与企查查核验 | 原型为演示 | 需接入 OCR(如腾讯云 / 阿里云)与企查查类 API;需确定调用配额与失败兜底 |
| 新潮热门场景位 | 未实现 | 需定义「热门」算法(浏览 / 收藏 / 成交加权)与轮换周期 |
| 任务单跑马灯 | 未实现 | 需确定 5 条的排序接口、已接单剔除的刷新机制(实时 / T+1) |
| 接单有效期 > 期望完成时间 | 未实现 | 需后端同时下发两个时间字段,前端按优先级取用 |
| 语音求助转写 | 演示级 | 需接入语音转文字服务并支持编辑 |
| 打赏分摊结算 | 规则待确认 | 是否需要按贡献度差异打赏(当前为平均) |
13.1 新版新增条目对照(《嗯来吧需求文档(1).doc》)
| 原编号 | 新增 / 变更内容 | 本文档位置 | 优先级 |
| 1.1(增补) | 企业与个人不能共用一个手机号;企业真伪校验方式待定 | 3.10 / 15-1 / 15-2 | 阻塞 |
| 1.4 | 新增手机验证码登录 | 3.9 | 高 |
| 1.5 | 敏感文件(身份证 / 执照 / 机构证明 / 法律文书)需鉴权 | 3.11 | 高(合规) |
| 2.3 / 2.4 | 未开定位默认上海;选城市优先;无权限时距离处理 | 4.5 | 中 |
| 2.5 / 2.6 | 用户在线状态;「现在可聊」需在线 | 4.6 | 中 |
| 2.7 / 2.8 | 新奇标签与一级标签名称;发布技能提示新奇技能 | 4.7 / 15-6 | 中 |
| 2.9 | 「服务时长 1 小时」需落实为具体字段 | 4.9 | 中 |
| 3.0 | 「回复快」先不上线 | 4.8.3 / 15-13 | 低 |
| 3.1 | 信用等级划分(≥95 极好 / ≥80 好 / ≤50 差) | 4.8 / 4.8.1 | 高 |
| 3.2 | 推荐排序规则 | 4.8 | 高 |
| 跑马灯 | 范围修正:只显示求助单;跨区县问题 | 4.3 / 4.8.2 / 15-4 | 高 |
| 图示说明 | 「看着给」与「/单次」为同一组变量,看着给时服务费为 0 | 4.9 | 中 |
| A – M | 大学生专区 12 条细则(达人规则 / 标签 / 省份展示 / 跨校 / 必选学校 / 联系手机号 / 虚拟号 / 跨场匹配) | 5.6 / 15-7~15-12 | 部分阻塞 |
`],
/* ---------- 第 15 章(插在第 14 章表格之后) ---------- */
['| 打赏分摊结算 | 规则待确认 | 是否需要按贡献度差异打赏(当前为平均) |
\n', `
15. 开放问题清单(需产品确认 · 共 13 项)
| # | 问题(原文档提出) | 建议方案 | 影响面 |
| 1 | 企业真伪怎么校验? | 三档:OCR 识别 → 工商接口(企查查 / 国家企业信用信息公示系统)核验经营状态与法人一致性 → 人工复核存疑件 | 注册审核、风控 |
| 2 | 企业跟个人能否共用一个手机号? | 不能(方案 A,见 3.10):一号一身份 | 注册 / 登录 / 切换身份 |
| 3 | 选了城市但没给定位权限,距离怎么显示? | 显示「同城」,不显示公里数 | 首页 / 列表排序 |
| 4 | 订单范围在 A 县、施助者在 B 县怎么办? | 同城内可见;超出服务半径(建议 20km)置灰并提示「超出服务范围」 | 跑马灯 / 接单 |
| 5 | 用户在线状态的规则? | 心跳 60s / 离开 5min / 离线 30min;可关闭展示 | 聊天、现在可聊 |
| 6 | 「新奇标签」和一级标签的具体名称? | 一级标签见 4.7;新奇标签建议「新奇技能」+ 审核制 | 发布、场景位加权 |
| 7 | 「可能认识的达人」规则? | 见 5.7-A(同校同圈 + 活跃度) | 专区推荐 |
| 8 | 「接单王 / 新晋达人」等标签规则? | 见 4.7(近 30 天完成 ≥20 单 / 入驻 ≤30 天完成 ≥5 单好评 ≥4.8) | 用户卡片 |
| 9 | 没有认证学校怎么展示? | 见 5.7-E(省份 / 城市 + 未认证标签) | 专区头部 |
| 10 | A 校学生切到 B 校怎么办? | 见 5.7-D(身份与浏览学校解耦 + 提示) | 专区头部、内容 |
| 11 | 发布能否跨学校?学校必选还是选填? | 见 5.7-G/H(大学社必选、可跨校、标注范围) | 发布流程 |
| 12 | 同一技能在大学社与社会场发布,匹配哪个? | 见 5.7-M(技能 ID 唯一 + 展示范围) | 数据模型、匹配 |
| 13 | 「回复快」是否上线? | 本期不上线(原文档已标注),保留埋点 | 用户卡片 |
以上 13 项建议在开发启动前一次性评审确认;其中 #1、#2、#11、#12 会影响数据模型与接口,属阻塞项。
`],
];
附录 A · 术语与缩写
AA = 平均分摊;OCR = 光学字符识别;T+1 = 次日到账;托管 = 平台代收代付;GMV = 成交总额。
附录 B · 原型页面与截图索引
见随文插图;每张图下方标注页面名称与操作路径。原型操作路径速查:
| 页面 | 路径 |
| 首页 | 打开原型默认页 |
| 大学生专区 | 首页 → 大学生专区「进社看看」 |
| 校园互助 / 校园社区 / 企业直招 | 专区顶部三个模块 Tab |
| 发布挂件 | 专区右下 + |
| 发布组队(含付费方式) | 发布挂件 →「发布组队」 |
| 接单大厅 / 详情 | 底部「接单」→ 点任意卡片 |
| 成员管理 | 详情页 →「查看全部成员」 |
| 用户详情 / 施助记录 | 详情页 → 点头像 |
| 我的 | 底部「我的」 |
附录 C · 修订留痕(26 处红字批注对照)
说明:本章对用户新版需求文档中26 处红字批注逐条优化。左列为红字原文(保留原话),中列为存在的问题,右列为优化后的需求表述(可直接开发、可写测试用例)。
16.1 优化原则(本章统一遵循)
| # | 原则 | 做法 |
| 1 | 一句话只讲一件事 | 把「功能需求」与「待确认问题」拆开:功能需求写成肯定句规则,疑问另立问题编号(见第 15 章) |
| 2 | 结构化表述 | 每条按「角色 → 场景 → 动作 → 规则 → 结果 → 例外」六要素写全 |
| 3 | 统一术语 | 「规制」→ 规则;「大学社」→ 大学生专区;「接单方 / 施助者」统一为 施助者;「求助单」→ 求助订单 |
| 4 | 量化阈值 | 凡涉及时间 / 距离 / 数量 / 频次,一律给默认值与可配置开关 |
| 5 | 明确责任方与兜底 | 每条标注归属端(前端 / 服务端 / 运营)与失败兜底(提示文案、降级展示) |
16.2 逐条优化对照
| 红字原文(摘) | 问题 | 优化后的需求表述 |
| 企业跟个人不能同时使用一个手机号 | 与既有「一个手机一个账号」冲突;未说明冲突时的处理动作 | 【注册】一个手机号仅可绑定一种身份(个人 / 机构 / 企业 / 个体)。注册时校验:若号码已被其他身份占用,拦截并提示「该手机号已注册为【企业】账号,请更换号码或切换登录」,并提供「切换到该账号」入口。(待产品确认,见 15-2) |
| 1.4 新增一个手机验证码登录 | 未说明与密码登录的关系、验证码有效期、错误次数 | 【登录】登录页提供「密码登录 / 验证码登录」切换。验证码 6 位、5 分钟有效、同号码 60 秒内仅可发送一次、连错 3 次锁定 10 分钟。验证码登录成功后进入上次使用的身份。 |
| 1.5 敏感图片(身份证 / 营业执照 / 机构证明 / 法律文书)需鉴权 | 未定义"鉴权"层级、时效与审计 | 【文件安全】此类文件采用私有存储 + 加密;访问需①登录态②文件归属校验③二次校验(短信 / 人脸);预览链接5 分钟时效 + 一次性;全部查看 / 下载行为写审计日志(操作人、时间、IP、文件)。对外展示一律打码。 |
| 没有开启地理位置,默认上海 | 未说明是"定位失败"还是"未授权";是否可改 | 【定位兜底】未授权或定位失败时,城市默认取上海;首次进入给一次性提示「未获取定位,已按上海展示,点击可切换城市」;用户手动选择后永久记住该城市直至再次修改。 |
| 2.4 开启定位又自己选城市,以选择城市先;选城市但没给位置权限,距离怎么办 | 两个问题混写;距离字段缺兜底 | 【优先级】手动选城市 > 定位结果;切换城市后 1 秒内刷新列表与距离。 【距离兜底】仅有城市无定位权限时:距离列显示「同城」;排序改用「发布时间 / 热度」;禁止显示 0km 或 "—" 空白。 |
| 2.5 新增用户在线状态?(规制?) | 疑问句,缺判定阈值与隐私开关 | 【在线状态】心跳 60 秒为在线;超 5 分钟离开;超 30 分钟离线。展示为头像右下角状态点。用户可在「设置 → 隐私」关闭在线展示(关闭后统一显示离线)。 |
| 2.6 现在可聊(需要状态在线) | 未定义离线时的降级行为 | 【现在可聊】仅对在线用户展示该按钮;离线时按钮变为「留言」,点击后发送留言并提示「对方当前不在线,已留言,上线后会收到提醒」。 |
| 2.7 新奇标签和一级标签具体名称?2.8 发布技能时要告诉用户是新奇的技能 | 问句 + 缺清单;未定义如何"告诉用户" | 【一级标签】固定 6 类:校园跑腿 / 家政维修 / 家教辅导 / 摄影设计 / 活动组局 / 二手转让(后台可增删)。 【新奇技能】发布页新增开关「这是我的新奇技能」,开启后展示说明文案「新奇技能会进入『新潮热门』,更易被发现」;提交后进入审核,通过后在卡片右上角显示新奇角标。(标签命名待确认,见 15-6) |
| 2.9「服务时长 1 小时」要实现具体内容 | 未定义字段形态与单位 | 【服务时长】发布技能新增字段:时长数值(1–24)+ 单位(小时 / 天 / 次),默认「1 小时」;详情页展示「服务时长:X 小时」;未填写时不展示该行。 |
| 3.0 回复快(先不上线) | 需要明确"隐藏"还是"占位" | 【回复快】本期不展示、不埋点触发;配置开关 feature.replyFast=false 预留,二期打开即可。 |
| 3.1 信用等级:≥95 极好,≥80 且 <95 好,≤50 差 | 区间不连续(51–79 未定义);命名为"好"与"极好"易混 | 【信用等级】补全为四档(无空档): ≥95 信用极好(绿)|80–94 信用好(蓝)|51–79 信用中(灰,不显示标签)|≤50 信用差(红 + 限流提示)。 |
| 3.2 推荐:要给个排序规制 | "规制"错别字;未给公式与权重 | 【推荐排序】得分 = 信用等级 40% + 完成订单数 30% + 好评率 20% + 在线状态 10%;同校 +10%、同城 +5%;接单率 <50% 降权 20%。权重后台可配,每 10 分钟重算一次。 |
| 跑马灯:只显示求助单 | 与首页其它任务类型边界不清(技能 / 组队是否排除) | 【跑马灯范围】数据源仅取求助订单(不含技能、组队、活动、闲置转让),状态为「招募中 / 待接单」。 |
| 求助单位置是区县级,但左上角城市只到市级;A 县订单、B 县施助者怎么办 | 层级不匹配;缺服务半径规则 | 【层级与半径】城市级用于筛选,区县级仅用于距离计算与排序;服务半径默认 20km(可配)。同城内:正常展示并显示距离;超半径:卡片置灰 + 提示「超出服务范围(约 XX km)」;跨市:不进入跑马灯。(待确认,见 15-4) |
| 看着给和金额后面的"单次"其实是一个变量 | 未说明取值关系 | 【计价变量】价格区为同一组变量:priceMode(定额 / 看着给)× amount × unit(次 / 小时 / 天)。切换 priceMode 时同步刷新金额与单位展示。 |
| 如果是看着给,那么服务费应该为 0 | 与"托管赏金"逻辑冲突(0 元是否冻结) | 【看着给】priceMode=看着给 时 amount=0、不冻结资金、订单详情价格区展示「看着给」而非 ¥0;履约完成后由受助者自由打赏,打赏金额进入结算流程。 |
| 可能认识的达人:规制如何 | 无规则 | 【达人推荐】候选 = 同校 或 同圈子 或 曾互相聊过;得分 = 共同圈子数 ×0.4 + 同校 ×0.3 + 近 30 天完成订单数 ×0.3;每 24 小时刷新;最多 6 人。 |
| 里面有哪些标签:接单王,新晋达人(是否有其他学生标签),标签的规制 | 标签清单与阈值缺失 | 【用户标签】接单王(近 30 天完成 ≥20 单)|新晋达人(入驻 ≤30 天且完成 ≥5 单、好评 ≥4.8)|认证学生|信用极好|企业认证。同一用户最多展示 2 个,优先级:认证 > 接单王 > 新晋达人 > 信用。 |
| 左上角的大学生显示,如果是省份的话,如何显示 | 缺展示规则 | 【头部展示】未认证:显示「定位省份 / 城市」+ 「未认证」标签;已认证:显示「学校名称」+ 「已认证」标签;两者均可下拉切换。 |
| A 校学生点左上角切成 B 校,怎么办?怎么展示? | 身份与浏览范围混淆 | 【跨校浏览】身份与浏览解耦:切换后头部显示 B 校 并出现提示条「你正在浏览 B 校,你的认证学校为 A 校」;搜索与列表均按 B 校;认证标识与信用不变。 |
| 没有认证学校,怎么展示? | 缺兜底 | 【未认证展示】头部显示省份 / 城市 + 「未认证」;内容按同城推荐;首屏插入一条轻提示「认证学籍后可见本校专属内容」(可关闭,7 天不再提示)。 |
| 为你推荐后面的单纯任务、日结任务其实就是一级标签比如校园跑腿 | 概念混用(筛选与标签) | 【筛选与标签】「为你推荐」下的单纯任务 / 日结任务 属于任务形态筛选;一级标签(校园跑腿等)作为其二级筛选项;两者组合过滤,命名需在需求评审时统一(避免"形态"与"标签"混用)。 |
| 大学生专区发布技能和发布订单需要选择学校(必选项) | 与首页发布(选填)不一致,需明确入口差异 | 【学校必选】从大学生专区发布:学校为必选(默认本校,不可为空);从首页发布:学校选填。入口不同、校验不同,提交时按入口判定。 |
| 发布时,是否可以跨学校 | 未定义跨校粒度 | 【跨校发布】学校字段支持三档:仅本校 / 同城多校(可多选)/ 不限;默认「仅本校」;选择多校时卡片展示「覆盖 N 所学校」。(待确认,见 15-11) |
| 发布求助项时,新增一个联系手机号(不是必填) | 与隐私保护的关系未定义 | 【联系手机号】求助发布新增「联系手机号」,非必填;填写后自动转为平台虚拟号对外展示,真实号码仅服务端留存(加密)。 |
| 所有手机号(号码隐私保护),进入施助中可见,点击可拨打 | 未定义可见时机、回收与失败兜底 | 【虚拟号】平台分配 AXB 小号:仅订单进入「施助中」后双方可见;点击直接唤起系统拨号;订单结束 24 小时后回收(回收后显示「已失效」)。同一订单重复进入不再重复分配。 |
| J、大学生的订单社会人可接;大学生技能可匹配社会订单 | 未说明两套池子的关系 | 【跨场匹配】大学社与社会场共用同一订单 / 技能池:大学社发布 = 池内记录 + schoolScope 标签;社会用户可按距离 / 信用正常接单,列表卡片标注「校园订单」。 |
| M、同一技能在 A、B 两处发布,匹配哪个? | 可能重复展示、重复接单 | 【技能唯一性】技能以 skillId 唯一,发布时仅设置「展示范围(本校 / 同城 / 不限)」;禁止同一用户对同一技能生成两条记录;匹配时按距离 + 信用排序取一条,避免重复曝光。(待确认,见 15-12) |
16.3 优化后仍需拍板的 5 个口径
| # | 口径 | 建议 |
| 1 | 手机号唯一性(个人 / 企业能否共用) | 不能共用(一号一身份) |
| 2 | 信用等级 51–79 的档位名称 | 「信用中」,仅文字不展示标签 |
| 3 | 跨校发布粒度 | 三档:仅本校 / 同城多校 / 不限 |
| 4 | 同一技能跨场展示 | skillId 唯一 + 展示范围 |
| 5 | 服务半径阈值 | 默认 20km,后台可配;超半径置灰 |