公开事件详情
路由:/discover/stories/[eventId]。视觉与结构依据:Figma桌面原稿 。旧页面不是视觉验收基线;代码和现有数据库只用于确认可复用合同与运行依赖。
用户任务
先读发生了什么,再看讨论、热度演变和原始证据。
页面数据、功能与持久化
| 区域/操作 | 必需字段 | 数量与范围 | 当前实现及持久化决定 |
|---|---|---|---|
| 头部 | title、category、发现/更新时间、来源数量、revision、关注/收藏/分享 | 单事件 | 现有公开投影;分享可用,事件关注与事件收藏暂无写合同 |
| 发生了什么 | summary、latest_progress、事实与引用 | 1段概览和有界证据 | 复用冻结修订,不拼接不同版本 |
| 热度与负面占比 | timestamp、heat、negative_ratio、sample_count、coverage | 24小时序列,缺点留空 | 当前公开接口仅现值/48h趋势;历史和情感待接入 |
| 时间线 | fact_id/title/anchor_at/representative、report_count | 20条/页,7天窗口 | 复用已有进展接口;cursor绑定事件/版本 |
| 来源表 | 平台、标题、时间、许可链接 | 当前公开reports | 撤权条目不留正文/导出副本 |
| 讨论侧栏 | 三类情感数量/比例、代表性观点、平台分布、负面提醒 | 1份聚合、正中负筛选、若干代表观点 | 平台分布仅能说明当前公开来源数量;评论情感/观点公开合同缺失 |
替换边界
进展和引用合并到唯一时间线,不另设“事实与进展”展示区。删除旧相关事件/海报侧栏和额外运营展示。情感分母、去重和采样窗口必须随接口返回;0条评论不能展示0%负面为确定结论。
接口与业务落点
下列为本页业务读取/提交入口。全局会话、头像、站点元信息和共享组件中未在本页触发的导出函数不算新增页面能力。请求类型、响应与错误以生成客户端和后端为准。
| 页面调用 | 方法和路径 | 请求 → 响应合同 | 实现依据 |
|---|---|---|---|
getPublicStory | GET /api/publication/stories/{event_id} | getPublicStoryParams → PublicStoryView | 客户端 · 后端 |
getPublicStoryDevelopments | GET /api/publication/stories/{event_id}/developments | getPublicStoryDevelopmentsParams → PublicDevelopmentsPage | 客户端 · 后端 |
数据落点:events、event_facts、event_fact_members、event_story_links、event_attention_snapshots、publication_records、publication_revisions。这是当前依赖定位,不代表这些表均为重新设计时必须新建;详细字段/键/关系及保留原因见页面数据库设计。
交互、权限与验收
- 正常、空、加载、错误、无权限分别验收;未知数值显示“—”,没有观测不画虚构曲线,过期数据标明时间。
- 对照 Figma 原稿在 1440px / 390px 验收布局、标题、间距、滚动和键盘焦点。组件检查通过不替代视觉评审。
- 页面读取不启动采集、模型或外发通知;写操作显式触发,失败保留输入,版本冲突先重读。公开读取继续执行逐项许可;个人数据 owner 来自会话。
- 设计中存在而服务没有提供的字段是待接入需求,不因旧页面没有该控件而撤销,也不据此预建通用平台。