Files
bid-doctor/docs/prototype
YANG JIANKUAN 819e66519a docs(prototype): MVP 原型按设计规范 v0.2 重刷
- 13 页全部重刷:96px 墨色渐变侧栏、透明顶栏、项目头与标签页、对照布局;查标交互与 UI demo 一致(行内说明、U 撤销当前条、批量仅提示级)
- assets/app.js、app.css 重写为 v0.2 框架与共用组件(查看器上一条 / 下一条与 clear、日期输入、浮动菜单、快捷键说明等);data.js 补任务与最近处理数据
- 额度页:Q1 墨色「+」、Q13 免扣行、续费申请按 G8;补遗 1 条数统一为「更新 2 条」
- 报告页脚与免责声明改为「辅助检查结果,仅供投标前自查参考」,design-system §7.17 与 FR-M3-09 同步;components.css 的 .scope 改名 .report-scope
- README 升 v0.2;AGENTS.md 同步进度与 VI 手册待办

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 17:01:08 +08:00
..

MVP 可点击原型 v0.2(2026-11-03 按设计规范 v0.2 重刷)

按 docs/analysis/02-user-journeys.md 的 J1–J5 做的 HTML 原型,覆盖 MVP 全链路:注册 → 新建项目 → 解析 → 选包 → 读标 → 上传投标文件 → 查标 → 导出报告,以及工作台、项目概览、额度、资质库。

  • 版本:v0.1(2026-11-02)验证流程;v0.2(2026-11-03)按设计规范 v0.2(决策 U5、Q1–Q13、U 键)重刷全部 13 页。业务内容、流程和页面跳转不变,只换视觉、框架,精简文案。样式和交互以 docs/design/ui-demo/(v0.2 参考实现)为准,但原型不引用 ui-demo 目录,可以独立运行。
  • 保真度:中高保真。颜色、字号、间距、圆角、组件状态都按 v0.2 规范;框架是 96px 墨色渐变侧栏 + 透明顶栏 + 圆角内容区,项目内页面有项目头和「概览 / 读标 / 查标 / 报告」标签页。数据是示意的,只模拟前端交互,不连后端。
  • 示意场景:某市政务服务中心智慧大厅建设项目(政府采购 · 公开招标 · 2 个采购包,投采购包 1)。条款改写自苏采云样本 S02、S10;项目名、金额、页码、投标响应、人名都是示意。
  • 入口:index.html(原型目录,含页面与旅程的对应关系、模拟范围)。

运行

cd docs && python3 -m http.server 8766
# 打开 http://127.0.0.1:8766/prototype/

必须从 docs/ 起服务,因为原型引用了 ../design/system/ 和 ../design/logo/。宋体和数字字体从 design/logo/.work/fonts 加载(不进 git),没有时退回系统字体。设计基准 1440 宽,最小 1280。

文件

文件 内容
index.html 原型目录
login.html 注册 / 登录(含服务协议的围串标禁止条款)
workbench.html 工作台
project-new.html 新建项目、上传招标文件;?addendum=1 是追加补遗
parsing.html 解析进度、取消、失败演示;?addendum=1 是补遗解析
lots.html 选择所投的包
checklist.html 读标:分类、清单、待确认区、补遗更新、修改记录、原文查看器、确认清单
bid-check.html 上传投标文件分册、检查范围、发起检查
results.html 查标:问题处理、出处批注、原文抽屉、键盘操作、批量、需人工核对
report.html 检查报告预览(A4)
project.html 项目概览:状态流、AI 摘要、关键日期、文件、检查记录、递交 / 归档 / 删除
quota.html 额度与流水
qualifications.html 资质库
assets/data.js 示意数据:项目、文件页面(原文)、清单、待确认、检查结果、需人工核对;v0.2 新增工作台的项目列表、tasks(进行中的任务)、recent(最近处理)、致命问题的 brief。演示里的「现在」统一为 11月2日 15:00
assets/app.js 共用脚本(window.App),见下表
assets/app.css 页面框架与共用组件 v0.2:照搬 design/ui-demo/demo.css 的 B 部分,基础组件在 design/system/components.css。v0.2 收进来的共用类:项目行 .prow、对照布局 .cmp、统计 / 额度 / 关键日期、署名 .sign、AI 块 .ai-block、行内说明 .u4、选中态、表单控件、赭色提示小字 .hint-warn、aria-disabled 按钮(不可用但保留悬停说明)等。页面特有的样式写在各页 <style> 里

App.* 主要接口

接口 用途
shell({ nav, crumbs, tab, search, fit }) 生成侧栏和顶栏;传 tab(overview / checklist / results / report)时加项目头和标签页;fit 用于整屏的对照布局
projHead({ fatal, status }) 更新项目头里的致命数、「就绪」和状态。页面不要自己改
viewer(el, opts) 原文查看器。v0.2 新增 onPrev / onNext(翻页按钮交给页面,如读标的「上一条 / 下一条」)、prevLabel / nextLabel / prevKey / nextKey(按钮文案和快捷键,默认「上一处 / 下一处」)、setNav(上, 下)、clear(说明)(没有出处时清空查看器并显示说明)
drawer() 从右侧滑出的原文查看器(概览、查标),返回 { open, close, isOpen },Esc 关闭
cite / citeLink / citeLabel / quote / parseCite 出处块、行内出处链接、出处文字、原句、解析出处字符串
dialog({ title, body, ok, cancel, wide, onOk, onOpen, footLeft }) 对话框;footLeft 放扣点等说明;onOk 返回 false 时不关闭
toast(msg, { ok, undo }) 轻提示,默认带绿色 ✓;提醒和原型说明传 { ok: false }
floatMenu(btn, items, onPick) 行内「更多」菜单
keysDialog(App.KEYS.reading 或 App.KEYS.check) 快捷键说明
init(root) / hydrate(root) 初始化下拉、日期输入、对照布局、开关、筛选、标签页;把 <i data-ic> 换成图标。下拉选中后在 .pop 上派发冒泡的 change(detail 是选中值),可以在容器上委托
dateInput / fieldError / cmp / sortable / icon 可键入的日期输入、字段错误、可拖动的对照布局、可排序表格、图标

网址参数(预览不同状态)

参数 页面 作用
?quota=warn / ?quota=out 所有带框架的页面(顶栏额度)、quota.html、bid-check.html 预览检查额度用到 80%、用完(Q9)。额度页的流水会补上对应记录;查标上传页配合 ?charged=1 演示额度用完时点「开始检查」
?plan=free / pro / ent 所有带框架的页面 侧栏的套餐标签
?charged=1 bid-check.html 超出 24 小时免扣窗口、这次检查要扣 1 次
?addendum=1 project-new.html、parsing.html 追加补遗、解析补遗

原型阶段发现的问题(2026-11-02 已按建议确认,见 docs/decisions.md P1–P2)

编号 问题 结论
P1 「同一项目 24 小时内复查不扣点」的 24 小时从哪次检查算起?如果从「上一次检查」算,用户每天复查一次就能一直不扣点 从上一次扣点的检查算起,窗口内的复查不扣点、也不延长窗口
P2 「需人工核对」的勾选结果按检查批次存,还是按项目存? 按项目存,复查时沿用;报告里写勾选人和时间

和需求、规范的对应

  • 每个页面对应的 FR 编号见 index.html 的「其他页面」表。
  • 产品红线自查:没有出处的结论只出现在「待确认」区;界面和报告文案无「通过 / 合格 / 保证 / 100%」字样(「保证金」和照录的招标文件原文除外);红色只用于致命问题;致命问题未处理也能导出和标记已递交;扣点前在按钮旁说明;报告 logo 只在页眉。