Skip to content

第十章 状态流转规则

本章定义操盘列表中各类状态的流转规则,包括触发条件、流转方向、系统行为等。

10.1 状态体系概述

操盘系统中存在多种状态维度,各维度独立管理但存在联动关系。

10.1.1 状态维度划分

状态维度定义来源详细定义
比赛进程比赛当前所处阶段由IM字段计算得出第九章 9.2.3节
结算状态赛事的结算处理状态结算接口或人工标记第九章 9.3.2节
上架状态赛事在本地系统的上架情况本地操作第九章 9.4节
盘口状态盘口的投注开关状态数据源+人工+风控叠加第九章 9.5节
数据源状态IM推送的盘口开关状态IM Delta推送第九章 9.3.1节

10.1.2 比赛进程定义

比赛进程(MatchPhase)是本地派生字段,由IM的Market、EventPeriodId和开赛时间计算得出。

比赛进程值计算条件说明
赛前Market ∈ (1,2) 且 EventPeriodId=10 且 距开赛 > 30分钟距离开赛较远
即将Market ∈ (1,2) 且 EventPeriodId=10 且 距开赛 ≤ 30分钟即将开赛
滚球Market=3 且 EventPeriodId ∈ (20, 30, 40, 50, 60)比赛进行中
中场Market=3 且 EventPeriodId ∈ (25, 45)中场休息
完场EventPeriodId=100比赛已结束

EventPeriodId=100与盘口状态的联动:当IM推送EventPeriodId=100(完场)时,系统同步将本地盘口状态流转为「关盘」。此流转由数据源触发,与EventStatusId=2(数据源关盘)具有相同优先级,均为终态不可逆。操盘列表判断完场后将赛事从操盘列表移除,流转至结算管理模块。

10.1.3 结算状态定义

结算状态(SettlementStatus)是本地派生字段,由结算接口或人工标记确定。

结算状态值含义触发来源结算规则操盘列表处理
进行中默认正常显示在操盘列表
postponed延期结算接口或人工标记不结算保留在操盘列表等待恢复
normal_end正常完场结算接口按结果结算流转到结算管理
cancelled取消结算接口或人工标记全额退款流转到结算管理
interrupted中断结算接口或人工标记待人工决策流转到结算管理
abandoned腰斩结算接口或人工标记已产生结果正常结算,未产生结果退款流转到结算管理
walkover弃权人工标记按弃权规则结算流转到结算管理
withdrawal退赛人工标记按退赛规则结算流转到结算管理

设计说明:延期(postponed)是唯一保留在操盘列表的异常状态,其他终态均流转到结算管理模块处理。


10.2 上架状态流转

上架状态由本地操作驱动,表示赛事在系统中的上架情况。

10.2.1 上架状态定义

状态值含义客户端可见接受投注
待上架数据源已下发,等待审核上架
已上架已对外展示由盘口状态决定
已下架人工隐藏

10.2.2 流转规则表

当前状态目标状态触发条件操作权限系统行为
待上架已上架人工点击上架并确认全部角色必须选择操盘手和盘口初始状态
待上架已下架人工点击隐藏全部角色赛事不对外展示
已上架已下架人工点击下架并确认全部角色盘口状态变为隐藏(隐藏来源=system,详情=delist_link)
已下架已上架人工点击重新上架并确认全部角色需重新选择盘口初始状态
已下架待上架不允许已下架不可回退到待上架
已上架待上架不允许已上架不可回退到待上架

10.2.2.1 操盘手分配的边界条件(写死)

上架时分配操盘手必须满足以下边界条件,否则阻止上架操作:

边界条件检查规则失败提示
操盘手存在所选操盘手在系统中必须存在(未被删除)所选操盘手不存在
操盘手权限所选操盘手必须有该联赛的操盘权限{操盘手名}无该联赛操盘权限
操盘手在职状态所选操盘手必须处于在职状态(非离职/禁用){操盘手名}已离职或被禁用
赛事与操盘手关系同一赛事的不同玩法可分配不同操盘手—(系统支持)
操盘手离线若操盘手离线超过30分钟,弹窗警告但不阻止上架{操盘手名}已离线,建议重新分配
无操盘手情况不允许留空,必须为所有玩法分配操盘手请为所有玩法分配操盘手

10.2.3 上架时盘口初始状态选项

上架操作时必须选择盘口初始状态,提供三个选项:

完整状态覆盖优先级:详见第16章16.3.11节「状态覆盖优先级」

选项说明默认适用场景
跟随数据源上架后盘口跟随IM状态,可立即投注默认信任数据源的常规赛事
锁定盘口可见但暂停投注,需手动解锁需检查赔率后再开放投注
隐藏盘口对玩家不可见,需手动取消隐藏高风险赛事

设计说明:三个选项对应不同风险等级的处理策略。「跟随数据源」为默认选项,适合常规赛事;「锁定」允许玩家看到盘口但无法投注,给操盘手检查赔率的窗口;「隐藏」最严格,盘口对玩家完全不可见,适合需要全面审查的高风险赛事。

10.2.4 下架与盘口状态联动

关键规则:下架操作将盘口状态变为隐藏(隐藏来源=system,详情=delist_link),客户端不可见。

操作盘口状态变化原因
下架→ 隐藏(隐藏来源=system,详情=delist_link)下架联动隐藏,客户端不可见;需先上架才能恢复
重新上架根据选择的盘口初始状态不继承下架前状态,需人工确认

隐藏与锁定的核心区别:

状态触发方式恢复方式特点
隐藏系统/数据源/风控/下架联动可自动恢复(下架联动时需先上架)临时中断,如进球、数据延迟、下架
锁定仅人工操作必须人工解锁主动干预,如风险控制

10.3 盘口状态流转

盘口状态表示投注开关,可由数据源推送、人工操作、风控规则三种方式触发。

10.3.1 盘口状态定义

状态值含义触发方式接受投注客户端可见
开盘可接受投注人工开盘或数据源恢复
隐藏临时隐藏投注风控触发或人工隐藏
锁定人工锁定仅人工操作
关盘已关盘玩法结算完成或赛事结束

客户端可见性说明:开盘和隐藏状态客户端可见(隐藏显示「隐藏」标记),锁定状态客户端可见但不可投注,关盘状态客户端不可见。

锁定与隐藏的区别(SSOT)

锁定隐藏都会停止接受投注,但两者存在本质区别:

维度隐藏锁定
触发方式数据源推送、风控触发、人工隐藏、下架联动仅人工操作
恢复方式可自动恢复(数据源/风控条件解除)或人工取消隐藏(下架联动时需先上架)必须人工解锁
语义临时性、系统可控强制性、人工意图
客户端显示不可见可见,显示「锁定」标记,不可投注
典型场景滚球进球隐藏、单边超限隐藏、下架联动隐藏风险赛事人工锁定

设计原则:隐藏是系统自动控制的临时状态(含下架联动),锁定是人工强制干预的状态。锁定状态必须由人工解锁,防止系统自动恢复导致的风险敞口。下架联动的隐藏需先上架才能恢复,取消隐藏按钮禁用,提示"赛事已下架,请先上架"。

10.3.2 隐藏来源标记

盘口进入隐藏状态时,系统记录隐藏来源,用于决定恢复条件。

隐藏来源触发方式恢复条件优先级
风控隐藏单边超限、大额投注等规则触发风控条件解除后自动恢复,或人工取消隐藏
人工隐藏操盘手手动点击隐藏按钮必须人工点击取消隐藏,数据源恢复推送不生效
赛事事件隐藏进球、红牌、VAR等事件触发默认10秒发起一次自动恢复尝试;若恢复失败则继续跟随事件状态;连续等待超过60秒仍未恢复则触发告警并要求人工复核后恢复

v1.8说明:IM暂停不再作为隐藏来源。IM暂停时本地状态保持不变,仅C端显示暂停投注;IM恢复时C端自动回到可投注。详见10.4节数据源状态联动。

与10.3.5触发源优先级的区别:本节定义的是隐藏状态内部的恢复条件优先级(人工隐藏需人工取消隐藏);10.3.5节定义的是不同状态之间的覆盖优先级(关盘>锁定>隐藏)。两者是不同维度的优先级。

隐藏来源优先级规则

完整隐藏来源枚举:本节定义4种主要隐藏来源类型。系统实际支持6种隐藏来源 + 3种IM状态标记(如区分联赛暂停/联赛关盘、数据源维护等),详见第16章16.1.4节「隐藏来源枚举定义」(SSOT)。

当多个隐藏来源同时存在时,按优先级处理恢复:

场景处理规则
人工隐藏 + 人工取消隐藏允许取消隐藏,状态变为开盘
风控隐藏 + 人工取消隐藏需同时满足风控条件解除或人工覆盖
人工隐藏 + 风控隐藏需同时满足人工取消隐藏和风控解除
赛事事件隐藏 + 人工取消隐藏允许人工取消隐藏,状态变为开盘

隐藏来源的存储与展示

字段说明
隐藏来源标识枚举,取值见「隐藏来源枚举SSOT」
hidden_time隐藏时间戳
hidden_operator人工隐藏时记录操作人ID,其他来源为空
hidden_reason隐藏原因描述,风控隐藏时记录触发规则

| 隐藏来源标识 | 枚举:风控隐藏/人工隐藏/赛事事件隐藏(详见本节10.3.2表格) |

10.3.3 流转规则表

当前状态目标状态触发方式说明
开盘隐藏风控触发单边超限、大额投注等
开盘隐藏人工操作操盘手手动隐藏
开盘锁定人工操作操盘手主动锁定
开盘隐藏下架操作触发下架时盘口强制隐藏(隐藏来源=system,详情=delist_link)
隐藏开盘人工操作操盘手手动取消隐藏
隐藏锁定人工操作隐藏期间人工加锁
锁定开盘人工操作操盘手解锁且数据源开盘
锁定隐藏人工操作操盘手解锁但风控或人工隐藏
任意关盘数据源推送关盘数据源关盘优先级最高
任意关盘玩法结算完成该玩法已无法投注
关盘任意不允许关盘是终态

10.3.4 状态覆盖优先级

SSOT:完整的状态覆盖优先级及触发源优先级定义见第16章16.3.11节。本节为简化速查表。

当多个触发源同时作用时,按以下优先级决定最终状态:

优先级状态说明
1(最高)关盘数据源关盘或玩法结算后,不可逆
2锁定人工锁定后,数据源暂停/恢复无法改变
3隐藏可被锁定覆盖,可恢复为开盘
4(最低)开盘可被任何状态覆盖

10.3.5 触发源优先级

SSOT:完整的状态覆盖优先级定义见第16章16.3.11节。本节与16.3.11保持一致。

优先级触发源说明
1(最高)数据源关盘终态,不可逆
2人工锁定必须人工解锁
3风控自动隐藏触发条件解除后可自动恢复
4联赛暂停/关盘联赛级控制
5数据源暂停/恢复受跟随配置控制
6(最低)人工隐藏/取消隐藏日常操作

术语说明

  • 人工锁定:主动锁定,必须人工解锁
  • 人工隐藏/取消隐藏:临时隐藏,可被风控或数据源触发覆盖

10.4 数据源状态联动

10.4.1 数据源状态定义

状态值含义IM字段条件本地响应
开盘数据源正常推送EventStatusId=1 且 IsMaintenance=false正常接收更新
暂停数据源临时暂停推送MarketlineStatusId≠1 或事件触发受跟随配置控制
维护数据源维护中IsMaintenance=true本地盘口强制隐藏
关盘数据源关盘该赛事EventStatusId=2本地盘口强制关盘

10.4.2 跟随数据源盘口状态配置

在联赛管理页面配置「是否跟随数据源盘口状态」,控制上架后盘口是否自动跟随IM开盘/暂停状态。

配置项位置选项默认值
是否跟随数据源盘口状态联赛管理是/否

10.4.3 跟随配置的作用范围

跟随配置仅影响数据源「暂停」和「恢复」推送,以下情况不受配置影响:

数据源状态跟随配置=是跟随配置=否
开盘(正常)盘口可开盘盘口可开盘
暂停C端显示暂停投注(本地状态不变)本地保持当前状态,告警列显示「数据源暂停」
恢复C端自动恢复可投注(本地状态不变)本地保持当前状态
维护本地盘口强制隐藏本地盘口强制隐藏(不受配置影响)
关盘本地盘口强制关盘本地盘口强制关盘(不受配置影响)

10.4.4 人工锁定状态下的数据源交互

当盘口处于人工锁定状态时,数据源推送的处理规则:

数据源推送处理方式说明
暂停忽略,保持锁定人工锁定优先级高于数据源暂停
恢复忽略,保持锁定必须人工解锁
维护忽略,保持锁定人工锁定优先级高于维护
关盘执行,变为关盘关盘优先级最高,覆盖人工锁定

10.4.5 解锁后的状态恢复

人工解锁时,根据数据源当前状态决定解锁后的盘口状态:

数据源当前状态解锁后盘口状态说明
开盘开盘正常恢复
暂停开盘本地状态恢复为开盘,C端显示暂停投注
维护隐藏维护期间无法开盘
关盘阻止解锁提示「数据源已关盘,无法解锁」

10.5 延期赛事状态规则

10.5.1 延期触发

收到结算接口或内部系统推送赛事变为延期状态(SettlementStatus=postponed)时,根据当前上架状态处理:

当前上架状态处理方式
待上架标记延期,禁止上架操作,上架按钮置灰
已上架标记延期,盘口自动隐藏,客户端显示延期标签
已下架标记延期,保持下架状态

10.5.2 延期期间操作限制

操作是否允许说明
上架禁止延期赛事无法上架
下架允许可将延期赛事下架
隐藏禁止延期期间盘口已隐藏
取消隐藏禁止延期期间盘口无法取消隐藏
锁盘允许可对延期赛事加锁
解锁禁止延期期间无法解锁

10.5.3 延期恢复

收到数据源恢复推送时,根据延期前盘口状态和跟随配置决定盘口恢复后状态。

延期前盘口为锁定状态

延期前状态延期恢复后状态说明
锁定锁定保持锁定,需人工解锁后才能开盘

锁定状态不受延期影响:如果延期前盘口已被人工锁定,延期恢复后仍保持锁定状态,不受跟随配置影响。这确保人工锁定的意图不会因延期事件而被覆盖。

人工锁定的优先级说明:人工锁定(优先级2)高于联赛暂停(优先级4)和数据源暂停(优先级5),因此:

  • 延期恢复时,锁定状态不会被数据源恢复推送覆盖
  • 联赛暂停/关盘时,锁定状态保持不变
  • 必须由主管/风控人工解锁后,才会按照跟随配置和数据源状态决定盘口状态

完整优先级定义见第16章16.3.11节

延期前盘口为非锁定状态

跟随配置数据源状态盘口恢复后状态
开盘开盘
暂停开盘(C端显示暂停投注)
开盘保持隐藏(需人工取消隐藏)
暂停保持隐藏

延期期间已下架的赛事

下架时机数据源恢复后状态说明
延期前下架保持已下架人工下架意图保留,需人工重新上架
延期后下架保持已下架人工下架意图保留,需人工重新上架

下架状态不因数据源恢复而改变:延期赛事被人工下架后,即使数据源恢复正常,系统保持下架状态,不会自动重新上架。操盘手需人工确认后决定是否重新上架。

10.5.4 延期超时告警

条件告警级别显示内容
延期时长达到阈值80%橙色延期较长
延期时长达到阈值100%红色延期超时
延期时长超过阈值150%红色+置顶延期超时,建议下架

阈值配置:延期超时阈值在联赛管理配置中定义,默认为24小时。


10.6 状态组合约束

以下状态组合是系统禁止的:

禁止组合说明
待上架 + 盘口开盘未上架的赛事盘口不能开盘
已下架 + 盘口开盘已下架的赛事盘口不能开盘
延期 + 滚球中延期赛事不能同时处于滚球状态

10.7 状态流转日志

所有状态流转都会记录日志,包含以下信息:

字段说明
流转时间精确到毫秒
赛事编号流转涉及的赛事
流转类型上架状态、盘口状态、结算状态
原状态流转前的状态
新状态流转后的状态
触发方式人工、数据源、风控、系统
操作人人工操作时记录操作人
备注附加说明信息

日志保留时间为180天,支持导出和查询。与第12章12.6.1节审计日志保留时间、第18章操盘日志保留时间一致。


修订记录

版本日期修订内容
v1.02026-01-19初稿
v1.12026-01-20【审计修正】1) 重写10.1节,移除"本地状态ID 1-10"概念,正确引用9字段定义;2) 10.2.3节移除"锁定"选项,与D1决策一致;3) 10.3.1节锁定状态客户端可见=是,与9统一;4) 10.4.1节增加IM字段条件列;5) 10.5.1节延期来源改为"结算接口或内部系统";6) 修复10.5.3节表格格式问题;7) 移除::: warning等VitePress语法,改为引用块
v1.22026-01-22【SSOT审计修正】10.7节日志保留时间从90天改为180天,与第12章12.6.1节、第18章统一
v1.32026-01-28【审计修正】10.1.2节补充EventPeriodId=100与盘口关盘联动说明
v1.42026-01-28【审计修正】10.5.3节补充人工锁定的优先级说明及SSOT引用;10.3.4节已有SSOT引用
v1.52026-01-28【术语澄清】明确"即将开赛(比赛进程)"=≤30分钟,"紧急(一键锁盘/置顶)"=≤10分钟,两者为不同概念
v1.62026-01-29【术语一致性】本地盘口状态"暂停"统一更名为"隐藏",与宪法v1.6保持一致;人工操作从"暂停/恢复"改为"隐藏/取消隐藏";数据源状态术语(IM暂停)保持不变
v1.72026-02-11【数据源暂停架构重构】IM暂停不再执行"本地自动隐藏",改为"C端显示暂停投注,本地状态不变";10.2.3节上架初始状态选项表、10.3.1节盘口状态定义、10.3.2节隐藏来源定义、10.4.3节跟随配置作用范围、10.4.5节解锁后状态恢复等相关表格同步更新
v1.82026-02-11【全量交叉验证】10.3.2节隐藏来源表移除已废弃的"数据源暂停"行(v1.8已不是隐藏来源),枚举从4种改为3种;补充v1.8说明引用10.4节
v1.92026-02-12【下架联动隐藏】下架操作从"盘口变为锁定"改为"盘口变为隐藏(隐藏来源=system,详情=delist_link)":10.2.2节流转规则表、10.2.4节下架与盘口状态联动、10.3.1节锁定触发方式、10.3.3节流转规则表、锁定vs隐藏对比表同步更新

体育操盘系统产品文档