Skip to content
🚫 本页面不支持以下人工操作开盘 / 重新开盘 / 关盘 —— 统一由数据源推送触发(唯一来源)。关盘 = 绝对终态,无人工回退路径。

第十五章 实时数据更新

本期范围:本章所述 "L1 自动结算完成通知" 等与自动结算路径相关的数据更新事件本期不触发(见第 1.1a 节 本期范围声明)。一期仅产生页面刷新、结算人员手动结算后的数据更新两类事件。

15.1 自动刷新

配置项说明
刷新间隔默认 30 秒(系统级写死,修改需发版)
刷新范围左侧筛选栏计数 + 主内容区列表数据
手动刷新无独立刷新按钮,依赖自动刷新

15.2 刷新时的状态保留

场景行为
用户正在勾选赛事保留勾选状态
批量操作栏已展开暂停自动刷新,操作完成后恢复
弹窗已打开暂停自动刷新,弹窗关闭后恢复
滚动位置刷新后保留当前滚动位置
筛选条件刷新后保留当前筛选条件
串关展开面板保持展开状态,面板内数据刷新

15.3 实时推送事件

以下事件触发列表即时刷新(不等待30秒轮询):

事件触发方列表行为
赛事进入即将开赛阶段(距开赛 ≤ 30 分钟)系统按开赛时间计算赛事自动出现在结算列表(待结算筛选),待结算计数+1。赛事真正开赛瞬间(比赛进程由赛前切换为滚球)仅切换状态标签,不改变列表收入状态
IM 推送比分 / 盘口状态变化数据源本地按新比分重新判定;对应赛事的盘口进度实时更新
L1 自动结算完成系统对应注单状态变为已结算,进度更新
赛事异常(4 选 1:取消/延期/腰斩/数据错误)人工(结算人员主动触发,仅赛事待结算时可发起)赛事行变红色边框(数据错误标签为"数据错误",其他为"异常"),IM 不推送赛事异常枚举,系统不做自动标记。取消 / 延期暂缓 / 腰斩暂缓:联动操盘列表整场下架;盘口关盘由数据源 IM 推送触发(非人工)。数据错误:弹窗仅做审计标记,不下架、不关盘、不改赛事态、不动订单;实际修正走各自独立入口(操盘页调赔率 / 赛果录入页 / 盘口卡片 void / 盘口二次结算)
其他结算人员结算操作人工同步刷新进度和状态

15.3.1 实时机制设计

15.1 "30 秒自动刷新" 与 15.3 "事件即时刷新" 的协同:

机制角色
推送通道(主通道)系统与操盘页面维持长连接,关键事件(见 第 15.3 节 列表)推送时即时触发页面刷新
30 秒兜底轮询无论推送通道是否正常,每 30 秒自动触发一次全量刷新作为兜底;防止推送丢失导致界面过时
断线重连页面检测到实时通道中断时自动尝试重连;重连成功后触发一次全量刷新(补齐断线期间可能的状态变化)
消息去重同一事件短时间内被推送 + 轮询同时命中时,页面按事件 ID 去重,不重复刷新

用户可感知行为

  • 正常情况:关键事件触发后 1-2 秒内界面更新
  • 推送中断但轮询正常:最晚 30 秒内界面同步
  • 推送恢复:页面自动拉取全量,用户无感知

数据源断连处理:若 IM 数据源断连(见 第 16.1 节 数据源离线),顶部红色提示条展示"数据源离线";此时刷新机制仍正常工作,但收不到新的数据源推送事件。


15.4 Loading 状态

场景Loading 效果
首次加载列表区域展示骨架屏
切换筛选列表区域半透明 + 顶部 loading 条
自动刷新无明显 loading(静默刷新)
切换视图列表区域半透明 + 顶部 loading 条

体育操盘系统产品文档