Appearance
第十八章 操盘日志弹窗规范
18.0 与其他章节的关系说明
| 维度 | 相关章节 | 本章职责 |
|---|---|---|
| 弹窗组件 | 操盘详情页PRD - 第13章13.4节 | 本章与操盘日志弹窗共用同一组件 |
| 状态流转 | 第10章状态流转规则 | 本章记录状态流转日志的详细格式 |
| 数据联动 | 第16章数据联动规则 | 本章记录联动触发的日志 |
| 数据源开关 | 操盘详情页PRD - 第10章 | 本章记录数据源开关变更日志 |
| 隐藏来源 | 第16章16.1.4节 | 隐藏来源枚举定义(与操作来源不同) |
| 审计日志 | 第12章12.6节 | 审计日志保留时间(180天) |
组件共用说明:操盘列表页与操盘详情页共用同一操盘日志弹窗组件。两处入口的筛选条件、字段定义、标签样式完全一致,仅自动携带的筛选参数不同。弹窗交互规范见操盘页第13章13.4节。
18.1 功能定位
操盘日志弹窗用于查询和审计当前赛事的操盘相关操作历史记录,支持按操作类型、操作来源、时间范围等维度筛选。本章定义弹窗的筛选条件、字段规范、日志类型详细格式。
18.2 入口位置
| 所属页面 | 入口位置 | 入口方式 | 携带参数 | 自动筛选 |
|---|---|---|---|---|
| 操盘列表 | 操作列「详情」按钮 | 点击按钮显示弹窗 | 赛事编号 | 自动筛选当前赛事 |
| 操盘详情页 | 盘口卡片📋图标 | 点击图标显示弹窗 | 赛事编号+盘口ID | 自动筛选当前赛事+当前盘口 |
| 操盘详情页 | 顶部栏「操盘日志」按钮 | 点击按钮显示弹窗 | 赛事编号 | 自动筛选当前赛事 |
| 操盘详情页 | 状态流转历史 | 点击「查看完整日志」链接 | 赛事编号 | 自动筛选当前赛事 |
18.3 核心筛选条件
| 筛选项 | 类型 | 选项 | 默认值 |
|---|---|---|---|
| 时间范围 | 下拉选择 | 最近1小时、今天、最近3天、自定义 | 今天 |
| 操作类型 | 下拉选择 | 见18.3.1 | 全部 |
| 操作来源 | 下拉选择 | 见18.3.2 | 全部 |
| 盘口ID | 文本输入 | 模糊搜索 | 空 |
18.3.1 操作类型枚举
| 操作类型 | 标签颜色 | 说明 |
|---|---|---|
| 状态变更 | 蓝色 | 开盘/隐藏/锁定/解锁/关盘 |
| 赔率调整 | 绿色 | 手动或数据源同步调整赔率 |
| 返奖率调整 | 橙色 | RTP调整 |
| 数据源开关变更 | 紫色 | 数据源开启/关盘 |
| 副线显示设置 | 灰色 | 显示/隐藏副线 |
| 操盘手变更 | 灰色 | 更换/分配操盘手 |
18.3.2 操作来源枚举(SSOT定义)
重要说明:本节是「操作来源」枚举的单一真源定义。操作来源用于记录「操作是由谁/什么触发的」,所有操作日志都需记录此字段。
| 来源标识 | 显示名称 | 标签颜色 | 触发场景 | 说明 |
|---|---|---|---|---|
manual | 人工 | 蓝色 | 操盘手单次手动操作 | 最常见的操作来源 |
batch | 批量 | 蓝色 | 前端批量选择后执行 | 日志通过batch_id关联汇总与明细 |
ao | 数据源自动 | 绿色 | 自动跟盘机制触发 | 仅用于赔率调整操作 |
data_source | 数据源 | 橙色 | IM数据源推送触发的状态变更 | 被动响应数据源 |
risk_control | 风控 | 红色 | 风控规则触发的操作 | 如单边超限自动隐藏 |
system | 系统 | 灰色 | 系统自动处理 | 如风险注单超时自动接受 |
inherit | 上级联动 | 紫色 | 上级状态继承触发 | 如联赛隐藏导致盘口隐藏 |
maintenance | 数据源维护 | 紫色 | IM推送维护标记触发的状态变更 | 维护期间的状态变更 |
event_incident | 赛事事件 | 黄色 | 进球/红牌/VAR等事件触发 | 比赛事件导致的状态变更 |
操作来源 vs 隐藏来源
这是两个完全不同的枚举,请勿混淆:
枚举名称 用途 定义位置 记录时机 操作来源(operation_source) 记录操作由谁/什么触发 本节(18.3.2) 所有操作日志都记录 隐藏来源(hidden_source) 记录盘口为什么隐藏 第16章16.1.4节 仅盘口进入隐藏状态时记录 隐藏来源枚举值:
manual、league_pause、league_close、risk_control、system、inherit(共6个,详见第16章16.1.4节(SSOT))。注:data_source、maintenance、event_incident在 v1.8 架构重构后已移出为「IM状态标记」,不改变本地状态,不属于隐藏来源。两枚举的差异与映射:
枚举值 操作来源 隐藏来源 说明 manual✅ ✅ 人工操作 batch✅ ❌ 批量操作(操作来源独有) ao✅ ❌ 数据源自动跟盘(操作来源独有) data_source✅ ✅ 数据源触发 risk_control✅ ✅ 风控规则触发 system✅ ✅ 系统自动处理 inherit✅ ✅ 上级状态继承 maintenance✅ ✅ 数据源维护 event_incident✅ ✅ 赛事事件触发 league_pause❌ ✅ 联赛暂停(隐藏来源独有,操作来源记为 inherit)league_close❌ ✅ 联赛关盘(隐藏来源独有,操作来源记为 inherit)
18.4 日志列表字段
18.4.1 页面显示字段
| 字段 | 说明 | 精度/格式 | 示例 |
|---|---|---|---|
| 时间 | 操作时间 | 精确到毫秒(展示截到秒,导出保留毫秒) | 18:45:32 |
| 操作类型 | 操作分类 | 彩色标签 | 赔率调整 |
| 盘口 | 玩法名称 | - | 全场让球 |
| 操作详情 | 具体变更内容 | - | 主队(-0.5) 赔率 0.90 → 0.92 |
| 操作人 | 执行人或系统 | - | 张三/数据源自动/系统 |
| 来源 | 触发来源 | 彩色标签,枚举值见18.3.2 | 人工 |
说明:弹窗已由入口确定赛事,因此不显示「赛事编号」「赛事名称」字段。
18.4.2 审计日志完整字段(落库与导出)
所有操作日志记录以下完整审计字段,用于安全合规与事后追溯:
| 字段 | 说明 | 精度/类型 | 示例 |
|---|---|---|---|
| 操作日志ID | 日志唯一标识 | UUID | 550e8400-e29b-41d4-a716-xxxx |
| 操作者ID | 执行操作的用户ID | 整数/UUID | 12345 或 user-uuid-xxxxx |
| 操作者IP | 操作发起的IP地址 | IPv4/IPv6字符串 | 192.168.1.100 |
| 操作时间 | 操作执行的时间戳 | ISO8601(毫秒精度) | 2026-01-20T14:30:25.123Z |
| 操作类型 | 分类,见18.3.1 | 字符串枚举 | odds_adjust |
| 赛事ID | 涉及的赛事 | 整数/字符串 | 12345678 |
| 盘口ID | 涉及的盘口(若有) | 字符串 | MKT-4829-1-001 |
| 变更前值 | 操作前的数值或状态 | JSON或字符串 | |
| 变更后值 | 操作后的数值或状态 | JSON或字符串 | |
| 操作结果 | 操作执行结果 | 枚举(成功/失败) | success / failed |
| 失败原因 | 操作失败时的原因描述 | 字符串 | 赛事已取消,无法上架 |
| 会话ID | 用户会话标识,用于追溯用户操作链路 | UUID或字符串 | session-uuid-xxxxx |
| 批量操作ID | 批量操作时的分组标识 | UUID或字符串 | batch_20250120143025_001 |
| 操作来源 | 触发来源枚举,见18.3.2 | 字符串枚举 | manual |
| 备注/原因 | 操作人手动填写的备注或系统记录的原因 | 字符串 | 高风险赛事需人工锁定 |
审计日志保留期:所有审计字段保留180天,超期归档至冷存储,详见18.7节。
18.5 分页与导出规则
| 参数 | 值 | 说明 |
|---|---|---|
| 每页条数 | 10条 | 固定 |
| 最大导出 | 1000条 | 超出提示缩小时间范围 |
| 导出格式 | Excel(.xlsx) | 导出保留毫秒精度 |
超出提示:导出超出上限时,提示「数据量超出导出上限,请缩小时间范围或增加筛选条件」。
18.6 日志类型详细定义
18.6.1 操盘手分配转移日志
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | trader_transfer | - |
| 操作时间 | 转移执行时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行转移的主管 | 王主管 |
| 赛事ID | 被转移的赛事 | 12345678 |
| 原操盘手 | 转移前负责人 | 张三 |
| 新操盘手 | 转移后负责人 | 李四 |
| 操作来源 | 见18.3.2枚举 | manual |
18.6.2 状态变更日志(隐藏/取消隐藏/锁定/解锁)
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | market_pause / market_open / market_lock / market_unlock | - |
| 操作时间 | 精确到毫秒 | 2026-01-20 14:30:25.123 |
| 操作来源 | 见18.3.2枚举 | data_source |
| 操作人 | 人工操作时记录,其他为空 | 张三 |
| 赛事ID | 被操作的赛事 | 12345678 |
| 操作对象 | event / bettype / line | bettype |
| 对象ID | EventId / BetTypeMarketId / LineId | MKT-4829-1-001 |
| 原因 | 操作原因描述 | 单边比例超80% |
| 触发规则 | 风控触发时记录规则ID | rule_001 |
18.6.3 赔率调整日志
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | odds_adjust | - |
| 操作时间 | 精确到毫秒 | 2026-01-20 14:30:25.123 |
| 操作来源 | 见18.3.2枚举 | ao |
| 操作人 | 人工调整时记录 | 张三 |
| 赛事ID | 关联赛事 | 12345678 |
| 盘口ID | BetTypeMarketId | MKT-4829-1-001 |
| 选项ID | SelectionId | OPT-1-001-H |
| 原赔率 | 调整前HK赔率 | 0.90 |
| 新赔率 | 调整后HK赔率 | 0.92 |
| 调整幅度 | 差值 | +0.02 |
| 偏离确认 | 是否触发偏离确认弹窗 | true |
18.6.4 数据源开关变更日志
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | data_source_toggle | - |
| 操作时间 | 变更时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行变更的操盘手 | 张三 |
| 赛事ID | 涉及的赛事 | 12345678 |
| 盘口ID | 涉及的盘口(玩法级/赛事级) | MKT-4829-1-001 |
| 原状态 | 变更前的数据源开关状态 | 开启 |
| 新状态 | 变更后的数据源开关状态 | 关盘 |
| 操作来源 | 见18.3.2枚举 | manual |
18.6.5 副线显示设置日志
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | line_visibility | - |
| 操作时间 | 设置时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行设置的操盘手 | 张三 |
| 赛事ID | 涉及的赛事 | 12345678 |
| 盘口ID | 涉及的盘口 | MKT-4829-1-001 |
| 显示的线ID | 设置后可见的盘口线 | [LINE-001, LINE-002] |
| 隐藏的线ID | 设置后隐藏的盘口线 | [LINE-003, LINE-004] |
| 操作来源 | 见18.3.2枚举 | manual |
18.6.6 跟随配置变更日志
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | follow_config_change | - |
| 操作时间 | 变更时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行变更的操盘手/主管 | 张三 |
| 配置层级 | event / league / global | event |
| 目标ID | 赛事ID或联赛ID | 12345678 |
| 原配置 | 变更前的配置值 | follow |
| 新配置 | 变更后的配置值 | not_follow |
| 变更原因 | 可选填写 | 高风险赛事需人工控制 |
| 操作来源 | 见18.3.2枚举 | manual |
18.6.7 批量操作日志
批量操作记录汇总日志和明细日志。
汇总日志:
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | batch_listing / batch_delisting | batch_listing |
| 操作时间 | 执行时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行批量操作的用户 | 张三 |
| 选中数量 | 本次选中的赛事数量 | 10 |
| 成功数量 | 执行成功的数量 | 8 |
| 失败数量 | 执行失败的数量 | 2 |
| 跳过数量 | 状态不符跳过的数量 | 0 |
| batch_id | 批量操作唯一标识 | batch_20250120143025_001 |
| 操作来源 | 固定为batch | batch |
批量操作动作说明:根据设计决策,批量操作仅支持批量上架和批量下架两种动作,不支持批量盘口操作。
明细日志:
| 字段 | 说明 | 示例 |
|---|---|---|
| batch_id | 关联汇总日志 | batch_20250120143025_001 |
| 赛事ID | 本条操作的赛事 | 12345678 |
| 执行结果 | success / failed / skipped | success |
| 失败原因 | 失败时记录原因 | 赛事已取消 |
| 操作来源 | 固定为batch | batch |
18.6.8 状态流转日志
所有状态流转都会记录日志:
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | status_change | - |
| 流转时间 | 精确到毫秒 | 2026-01-20 14:30:25.123 |
| 赛事编号 | 流转涉及的赛事 | 12345678 |
| 流转类型 | listing_status / market_status / event_status | market_status |
| 原状态 | 流转前的状态 | open |
| 新状态 | 流转后的状态 | paused |
| 操作来源 | 见18.3.2枚举 | data_source |
| 操作人 | 人工操作时记录操作人 | 张三 |
| 备注 | 附加说明信息 | 进球事件触发 |
18.6.9 一键锁盘日志
一键锁盘操作记录汇总日志和明细日志。
汇总日志:
| 字段 | 说明 | 示例 |
|---|---|---|
| 操作类型 | emergency_lock | - |
| 操作时间 | 执行时间 | 2026-01-20 14:30:25.123 |
| 操作人 | 执行一键锁盘的主管/风控 | 王主管 |
| 影响赛事 | 被锁定的赛事数量 | 8 |
| 成功数量 | 锁定成功的数量 | 8 |
| 失败数量 | 锁定失败的数量 | 0 |
| batch_id | 操作唯一标识 | emergency_20250120143025_001 |
| 操作来源 | 固定为manual | manual |
明细日志:
每个被锁定的赛事单独记录一条日志,关联汇总日志的batch_id。
18.7 日志保留与归档
| 日志类型 | 保留时间 | 归档策略 | 说明 |
|---|---|---|---|
| 操盘日志 | 180天 | 超期归档至冷存储 | 与第12章12.6.1节审计日志保留期一致 |
统一保留期说明
根据SSOT原则,所有日志统一保留180天,与第12章12.6.1节审计日志保留时间一致。
- 操盘日志:包含状态变更、赔率调整、开关变更等所有操作记录
- 状态流转日志:是操盘日志的子集,不单独设置保留期
- 联动审计日志:与第16章16.7节一致,保留180天
18.8 与第13章弹窗的差异汇总
| 维度 | 弹窗版(操盘页 - 第13章13.4节) | 说明 |
|---|---|---|
| 入口(操盘列表) | 操作列「详情」按钮 | 自动筛选当前赛事 |
| 入口(操盘详情页) | 盘口卡片📋图标、顶部栏「操盘日志」按钮 | 自动筛选当前赛事/盘口 |
| 筛选条件 | 时间/操作类型/操作来源/盘口ID(4项) | 赛事已由入口确定 |
| 列表字段 | 6列(省略赛事编号/名称/IP) | 赛事已由入口确定 |
| 操作类型 | 盘口级7种 | 赛事级操作不在弹窗展示 |
| 最大导出 | 1000条 | 弹窗导出上限较小 |
| 日志详情 | 不支持展开 | 弹窗空间有限 |
| 组件 | 操盘列表与操盘详情页共用同一组件 | 筛选/字段/标签完全一致 |
修订记录
| 版本 | 日期 | 修订内容 |
|---|---|---|
| v1.0 | 2026-01-15 | 初稿 |
| v1.1 | 2026-01-21 | 【D1决策对齐】1) 移除批量暂停/恢复/锁盘/解锁操作类型;2) 一键锁盘引用改为第4章;3) 批量操作动作枚举移除batch_lock;4) 新增18.6.10一键锁盘日志;5) VitePress语法转换 |
| v1.2 | 2026-01-22 | 【与操盘页 - 第13章v1.1统一】1) 删除侧边栏导航入口(本章仅定义弹窗规范);2) 操盘列表入口改为「详情按钮显示弹窗」;3) 入口表新增「所属页面」列,标注操盘列表/操盘详情页;4) 操作类型枚举与13.4.5对齐(7种);5) 操作来源枚举与13.4.6对齐(6种);6) 日志字段精度改为毫秒;7) 移除页面版概念,统一为弹窗组件规范 |
| v1.3 | 2026-01-22 | 【SSOT审计修正】1) 18.3.2节操作来源枚举升级为SSOT定义,新增batch和inherit来源标识;2) 18.3.2节新增「操作来源 vs 暂停来源」区分说明;3) 18.7节日志保留天数统一为180天(删除90天口径);4) 18.6节各日志类型补充操作来源字段;5) 18.0节新增暂停来源/审计日志引用 |
| v1.4 | 2026-01-28 | 【跨文档一致性修复】1) 18.0节AO/飞单改为数据源开关;2) 18.3.1节操作类型AO开关变更/飞单开关变更合并为数据源开关变更;3) 18.6.4节AO开关变更日志改为数据源开关变更日志;4) 删除18.6.5节飞单开关变更日志;5) 重新编号18.6.5-18.6.7节 |
| v1.5 | 2026-01-28 | 18.6节编号连续性修复:18.6.9状态流转日志→18.6.8,18.6.10一键锁盘日志→18.6.9 |
| v1.6 | 2026-01-29 | 【宪法v1.6术语对齐】暂停来源→隐藏来源;示例文案"盘口暂停"→"盘口隐藏" |
文档结束