Development Requirement Specification · v1.0a
训考通 · 消防技能训练管控考评系统
开发需求说明书
依据 2026-10-21 两轮需求沟通整理定稿。v0.9 初稿的 14 条待确认事项已逐条处置(见第 6 章决策记录),红色建议项已按勾选结果纳入或排除。本文档独立于「内攻入口管控」项目,两者不是同一产品。
00文档信息与版本记录
产品名称
训考通
产品副标题
消防技能训练管控考评系统
文档性质
v1.0 修订版
标注规则
确认=已定稿;待确认=仅剩的 2 个开放项(第 5 章);预留=本期不实现但数据结构已预留
01项目定位与平台范围
一句话定位:给消防队日常技能训练做「管人、管时、管安全」的系统——训练前建事件分任务组,训练中刷卡进出场、倒计时、轮换班、算空呼余量、到点预警,训练后出报告、存档案、支撑考评。
安卓 APP
现场使用端,供管理员、教练员与记录员操作;训练人员不使用 App,仅持 NFC 卡。
Web 管理后台
管理员专用:层级授权、人员库与批量导入、标签字典、公告发布、审计查询。
云端服务
数据云端存储与同步(含防串组的服务端集中校验)。
语言
简体中文。
明确不做
① 不做 iOS;② 不做短信验证;③ 不做气瓶压力传感器等硬件采集(空呼余量为公式计算值);④ 不做多语言切换。
建事件 / 任务组 / 训练单元→
刷卡进场(教练同意)→
开始执行 · 倒计时 · 换班 · 空呼余量预警→
刷卡退场确认→
自动生成训练报告 · 归档考评
贯穿全程:人员库状态同步、信息流录入、天气展示、公告推送
02角色与权限
| 角色 | 使用端 | 核心动作 | 限制 |
|---|---|---|---|
| 管理员 | Web 管理后台(可配 App 高权限) | 层级授权;按「身份」配置权限,可新增自定义身份;人员库管理与批量导入;标签字典维护;公告发布;审计查询;强制加入/退场 | — |
| 教练员 | 安卓 APP | 在分派的任务组下新增训练单元;刷卡确认他人进场;强制加入(搜索 / 口令申请审批);强制退场与批量退场;换班操作;查看公告与训练报告 | 教练员本人以及带队训练的队员,同一时间均只能在一个未结束任务组中 |
| 记录员(安全登记员) | 安卓 APP | 信息流录入(余量、被困人员、火点、爆炸物等);报压手动录入 | 默认无强制退场权限(后台可开关开放) |
| 训练人员 | 不使用 App | 持 NFC 卡刷进刷出,是被记录对象 | 无账号、无界面;训练数据的查看由教练员与管理员完成 |
权限模型
权限挂在「身份」上而不是挂在具体人身上:管理员在后台新增身份类型并为每种身份配置权限集合;给人员赋身份即获得权限。已明确权限项:添加事件、查看范围、强制进场、强制退场、批量退场、公告可见性、批量导入——其余权限项按第 6 章 Q3 结论,由管理员在后台权限矩阵中逐项配置。
03组织层级与可见性(核心)
层级为三级联动,预留四级扩展,命名已定稿:
训练事件→
任务组→
训练单元
三级均由管理员(或有权限者)直接创建,也可由上级创建后逐级下派;每一级均指定记录员与负责人(教练)
| 层级 | 创建者 | 包含内容 | 通用要素(三级一致) |
|---|---|---|---|
| 训练事件 | 管理员(或有权限者) | 事件名称、任务组列表、装备/车辆/器材清单 | 负责人(教练)与记录员、计划开始时间、计划时长、实际起止时间(自动记录)、位置标注(标签)、任务名称与内容、轮班换班计划(可配置) |
| 任务组 | 管理员 / 教练(按权限) | 组名、分派教练、成员、轮班计划、训练单元列表 | |
| 训练单元 | 教练员自主新增 | 单元名、时长(默认 15 分钟)、内容、标签 |
可见性规则(本级 + 向下 N 级,永不向上)
| 规则 | 说明 |
|---|---|
| 向下可见 | 每一层级用户可看到自己所在层级及其下级全部信息;向下可见的层级数可配置,默认 1 级(即只看直接下级),管理员可按身份调整为 2 级或全部 |
| 向上不可见 | 任何层级不可向上查看:教练员看不到所在任务组之外的其他任务组与事件层细节,只接收所在事件/组/单元的结果反馈 |
| 教练员与训练人员 | 本规则当前约束的是教练员;若权限开放,可允许训练人员查看自己的训练情况(个人成绩、参训记录),当前不开放,作为预留能力 |
| 实现性质 | 是数据可见性按层级裁剪(接口层过滤),不是界面菜单隐藏 |
04功能需求正文
R1注册与账号
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R1-01 | 注册 | 用户名 + 密码注册+预留图形验证码能力(默认开启) | 确认 |
| R1-02 | 登录 | 用户名 + 密码登录,登录态持久化 | 确认 |
| R1-03 | 层级授权 | 管理员对各级人员授权;权限按「身份」批量配置,支持新增自定义身份(后台操作) | 确认 |
| R1-04 | 密码重置 | 忘记密码只能由管理员在后台重置,无自助找回(产品规则,写入用户引导文案) | 确认 |
R2人员库
人员资料提前录入;批量导入在 Web 管理后台完成(Excel),App 端仅作少量增改。
2.1 字段清单
| 字段 | 说明 | 必填 |
|---|---|---|
| 用户 ID | 系统唯一编号;NFC 卡内写入的就是它,是刷卡匹配的唯一凭据 | 系统生成 |
| NFC 物理 ID | 卡片出厂 UID,与用户 ID 绑定,用于防伪校验 | 制卡时写入 |
| 姓名 / 性别 | — | 必填 |
| 肖像照片 | 录入时必须上传 | 必填 |
| 年龄 / 身高 / 体重 | 体训基础数据(编制方建议补充,已确认纳入) | 选填 |
| 所属部门 | 队站内部门/班组归属,用于筛选统计 | 必填 |
| 职务 | 人工录入(班长、队员等,区别于「身份」) | 必填 |
| 空呼耗时 | 6.8L 气瓶基准耗时,空呼余量计算的输入参数(公式见第 8 章) | 必填 |
| 身份 | 教练员 / 训练人员 / 记录员;管理员可新增身份类型 | 必选 |
| 状态 | 训练中 / 训练结束 / 待命 / 绿标,随训练动作自动流转 | 系统维护 |
2.2 状态流转与排序(已定稿)
待命→ 刷卡进场同意 →
训练中→ 刷卡退场确认 →
训练结束(30 分钟内)→ 超时自动转 →
绿标(空闲)
待命 = 已被排入某个即将开始的组;绿标 = 完全空闲,可随时调入任何组。30 分钟从出场确认时刻起算。列表默认排序:训练中 → 待命 → 训练结束 → 绿标
2.3 批量导入
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R2-04 | Excel 批量导入 | 在 Web 管理后台上传 Excel,逐行校验并回报「成功 N / 失败 M / 跳过 K」及失败原因;照片按「姓名.jpg」打包上传自动匹配;增量导入不覆盖已有人员 | 确认 |
R3NFC 制卡与刷卡
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R3-01 | 制卡 | 配套 NFC 制卡设备 + 空白卡片;App/后台提供写卡功能,将用户 ID + 校验码写入卡片,同时登记卡片物理 UID 与人员绑定 | 确认 |
| R3-02 | 卡内容规范 | 卡内只有用户 ID 与校验码,不含姓名等隐私信息;非授权人员用其他工具读卡无法识别身份 | 确认 |
| R3-03 | 刷卡识别 | 手机贴卡 → 读取用户 ID → 匹配人员库 → 弹窗显示姓名、性别、职务、照片等 → 有权限者手动点击同意 → 加入当前任务组/单元 | 确认 |
| R3-04 | 防串组校验(服务端集中) | 任何人(教练员本人、带队队员)刷卡/申请加入时,由服务端集中校验其是否已在某个未结束任务组中:在 → 弹窗提示并禁止加入,教练可点击强制加入-另一个教练(该训练员显示所在训练中的事件/组/单元中的教练,可以手动放行或拒绝【放行则自动加入新组,拒绝则保持。】)。校验必须在服务端完成,不允许仅凭本机数据直接放行 | 确认 |
| R3-05 | 补卡 / 换卡 | 换卡 = 重写新卡 + 解绑旧卡,旧卡立即失效 | 确认 |
R4训练事件 · 任务组 · 训练单元
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R4-01 | 三级创建通用字段 | 训练事件、任务组、训练单元创建时均需填写:名称、负责人(教练,标签点选 + 模糊搜索,仅可选取有教练身份者)、记录员、计划开始时间、计划时长、位置标注(标签) | 确认 |
| R4-02 | 创建权限边界 | 管理员可直接创建一级事件,也可直接创建单个或多个任务组或训练单元执行;各级均可创建单个或多个子任务。 | 确认 |
| R4-03 | 教练新增训练单元 | 教练只能在自己被分派的组下新增单元;单元时长默认 15 分钟,可改 | 确认 |
| R4-04 | 标签体系 | 任务位置、任务名称、任务内容、教练姓名、装备、设备、车辆、器材——全部标签化,后台预维护,创建时点选快填,也允许自由输入 | 确认 |
| R4-05 | 轮班(换班)计划 | 在任务组与训练单元上均可配置:分几班(默认两班,可增至任意班数)、每班时长/换班间隔分钟数、各班成员名单 | 确认 |
| R4-06 | 时间与位置标注 | 三级均展示:计划开始时间、实际开始/结束时间(点击「开始执行」后自动记录)、总时长、位置(标签) | 确认 |
| R4-07 | 层级可见性裁剪 | 按第 3 章规则:本级 + 向下 N 级(默认 1 级,可配置),永不向上;教练员适用;训练人员当前不开放 App 查看,预留开放能力 | 确认 |
R5进场登记与加入(三种方式)
① 常规刷卡+
② 强制进场(刷卡 / 模糊搜索)+
③ 口令申请加入(教练员)
三条路最终都经过同一道闸门:服务端防串组校验(R3-04)→ 通过才进组
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R5-01 | 常规刷卡进场 | 训练人员贴卡 → 弹窗显示信息 → 教练点「同意」→ 进入任务组,人员状态同步为「训练中」 | 确认 |
| R5-02 | 强制进场 · 刷卡方式 | 换班或临时补人时刷卡直接确认进入,跳过同意等待 | 确认 |
| R5-03 | 强制进场 · 模糊搜索方式 | 教练/管理员模糊搜索姓名 → 弹出个人信息 → 确认 → 直接加入(无需本人同意) | 确认 |
| R5-04 | 口令机制 | 教练员在 App 中看到训练事件/组/单元 → 点「申请加入」→ 输入口令 → 加入成功。口令由系统针对该组/单元/事件独立生成,仅本组生效,不跨组通用 | 确认 |
| R5-05 | 口令细则(定稿) | 有效期 30 分钟,超时自动失效;严禁重复使用,一经输入(核销一次)立即失效 | 确认 |
R6训练执行与安全预警(核心)
6.1 计时与倒计时
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R6-01 | 统一计时起点 | 教练点击底部「开始执行训练」按钮后,全组统一开始计时——不是每人刷卡各自起表。理由:多人各自起表会产生 N 条独立时间线,换班、撤离与统计无法对齐;技术上统一单点起表亦规避了并发复杂度 | 确认 |
| R6-02 | 大倒计时 | 按任务/单元时长(一般 15 分钟)显示醒目的大号倒计时 | 确认 |
| R6-03 | 任务进度条 | 与倒计时同步的进度条,标注「任务执行中」 | 确认 |
| R6-04 | 倒计时变色 | 随剩余时间 绿 → 橙 → 红,结束即铃声/语音提醒 | 确认 |
| R6-05 | 换班提醒铃声 | 临近换班节点播放「滴滴滴」铃声/语音播报提示 | 确认 |
6.2 换班(轮班)
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R6-06 | 手动换班 | 到点后教练手动点击「换班」,当前班整体切到下一班;上一班整体自动退出训练任务、自动结束,界面即时刷新 | 确认 |
| R6-07 | 换班即视为确认 | 换班动作本身视为出场确认,上一班成员无需再刷卡退场;如现场管理要求保留刷卡确认流程,可做成配置开关 | 确认 |
| R6-08 | 换班记录 | 每次换班的时间与班次写入训练报告与档案 | 确认 |
6.3 空呼余量计算与预警
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R6-09 | 余量实时计算 | 从「开始执行训练」统一起算,按人员库登记的 6.8L 空呼耗时 + 需求方提供的公式,实时计算每人空呼余量并以进度条显示 | 确认 |
| R6-10 | 预警值设置 | 可设置余量预警值;达到阈值触发预警声音 + 弹出该人员 | 确认 |
| R6-11 | 预警方式 A · 5 分钟按组询问 | 与倒计时同步,每满 5 分钟按组批量发出提示(对讲机询问);可逐人询问;记录员手动录入每人实际报回的余量(手动报压) | 确认 |
| R6-12 | 预警方式 B · 紧急撤离 | 空呼余量 ≤5 MPa:红色紧急预警/语音播报提醒 + 「紧急撤离」,训练立即终止(阈值区别于内攻入口管控系统的 6 MPa,两产品独立设定) | 确认 |
| R6-13 | 个体差异计算 | 预警按个人空呼耗时基准分别计算(肺活量不同,同一时长余量不同),不做全组一刀切 | 确认 |
R7退场 · 强制退场 · 任务结束
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R7-01 | 刷卡退场 | 训练人员再刷 NFC → 弹窗显示信息 → 人工确认 → 该成员本次训练自动结束;状态同步回人员库(训练结束 → 30 分钟后自动绿标) | 确认 |
| R7-02 | 强制退场(单个) | 教练点「强制退场」直接结束该成员任务;自动打「强制退场」标签记录;备注选填。记录员默认无此权限(后台可开放) | 确认 |
| R7-03 | 批量强制退场 / 批量结束 | 教练可勾选多人一键批量结束训练任务,不依赖逐个刷 NFC | 确认 |
| R7-04 | 任务结束与收尾 | 整组/单元/事件结束自动生成训练报告(R8)。遗留场景(待确认 V-3):教练忘记批量结束/退场,或部分人员未带卡未刷卡时,这些人将一直处于「在场」状态——收尾方式见第 5 章 V-3,编制方建议方案已附 | 待确认 |
R8训练报告
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R8-01 | 自动生成报告 | 任务结束自动生成,App 内以页面形式展示 | 确认 |
| R8-02 | 已读 / 未读 | 有权限的人看到报告列表,标「已读 / 未读」 | 确认 |
| R8-03 | 报告内容 | 事件/组/单元名称、计划起止时间与实际起止时间、位置、科目、教练、参训人员名单、换班记录(时间与班次)、预警与紧急撤离记录、强制进退场记录、信息流摘要、空呼余量曲线 | 确认 |
R9信息流(执行情况与进程录入)
主要由记录员手动录入,服务复盘与指挥。设计原则:对讲机沟通的同时能秒录,标签化为主、打字为辅。
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R9-01 | 录入内容 | 空呼余量、发现被困人员数量、火点位置、发现爆炸物、所处位置等现场信息 | 确认 |
| R9-02 | 标签化快录 | 各类信息预设标签,点选为主、打字为辅 | 确认 |
| R9-03 | 按人录入 | 针对具体人员单独录入 | 确认 |
| R9-04 | 按组批量录入 | 批量对全组人员一次录入(如全组统一报压)——实际场景存在性待确认,功能保留待确认 V-4?已并入 V 列表 | 待确认 |
R10天气展示
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R10-01 | 入口简显 | 创建事件/任务组/单元的入口处显示当日温度、湿度、风力、雨、雾等简要信息;不需要实时刷新 | 确认 |
| R10-02 | 点击详情 | 点开展示温湿度记录对应表(详细页) | 确认 |
R11档案管理
11.1 任务档案
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R11-01 | 时间维度筛选 | 今天 / 昨天 / 本周 / 本月 / 本季度 / 本年度,统计各维度内训练的事件与任务数量 | 确认 |
| R11-02 | 字段展示与搜索 | 教练、训练科目、位置、内容、参训人数等;支持按内容、教练等关键词搜索(字段清单按 R8-03 定稿) | 确认 |
11.2 考评档案(原「人员档案」,已定名)
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R11-03 | 个人考评档案 | 可查询任意训练人员:累计课时、训练科目、训练时间、位置、带训教练等 | 确认 |
| R11-04 | 时间维度筛选与搜索 | 与任务档案一致:六档时间筛选 + 关键词搜索 | 确认 |
| R11-05 | 整体统计 | 人员维度整体统计视图(独立页面) | 确认 |
| R11-06 | 查看权限 | 考评档案由管理员查看;教练员查看权限可在权限矩阵中配置 | 确认 |
说明:关于「考评」的边界(保留提示)
App 本期不内置评分与考核判定;「考评」由管理者依据系统数据(课时、科目、参训记录)线下开展。数据模型已预留成绩字段,后续如需 App 内考评(评分、达标判定、排行)属二期模块。
R12公告
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R12-01 | 公告发布与可见性 | 安全提示、加强训练指示、政策文件等;仅教练及以上可见,训练人员不可见;后台发布 | 确认 |
R13管理后台(Web,本期正式范围)
| 编号 | 功能 | 需求说明 | 状态 |
|---|---|---|---|
| R13-01 | 登录与层级授权 | 管理员登录;按身份配置权限矩阵;新增自定义身份;管理各级创建权限 | 确认 |
| R13-02 | 人员库管理与批量导入 | 人员增删改查、照片上传、Excel 批量导入与照片包匹配(见 R2-04) | 确认 |
| R13-03 | 标签字典维护 | 任务位置、任务名称、任务内容、科目、装备、设备、车辆、器材、职务等标签的增删改与排序 | 确认 |
| R13-04 | 公告发布 | 公告的发布、撤回,可见范围配置(默认教练及以上) | 确认 |
| R13-05 | 审计日志查询 | 强制进退场、换班、批量操作、档案修改、导入等敏感操作的留痕查询(谁、何时、改了什么) | 确认 |
| R13-06 | 数据与账号运维 | 密码重置、账号停用;云端数据备份策略管理 | 确认 |
05NFC 技术实现方案
核心问题:NFC 贴卡时,系统可能把卡片分发给浏览器或其他默认应用,导致数据读不进 App。结论:采用「自定义 NDEF + 前台 ReaderMode 独占读卡」方案,可实现且无跳转、隐私最优。
5.1 方案(定稿)
| 环节 | 做法 | 效果 |
|---|---|---|
| 制卡端 | 制卡设备将「用户 ID + 校验码」以自定义 NDEF 格式写入卡片(专有 MIME 类型,非网址);同时记录卡片物理 UID 与人员绑定 | 卡内无姓名等隐私;未装 App 的手机贴卡无任何反应,编号不外泄 |
| 读卡端 | App 在登记/退场相关页面启用安卓 ReaderMode,对 NFC 卡独占处理,绕过系统标签分发 | 贴卡直接进业务流程(匹配 → 弹窗 → 同意 → 入组),无跳转、无系统弹窗 |
| 生效范围 | 仅在进场登记与退场页面生效(实际为同一业务页面,含强制退场、任务结束等操作场景);App 其他页面一律不响应 NFC | 防误读;行为确定 |
5.2 硬件与兼容要点
- 卡型:NTAG213/215/216 系列(与制卡设备匹配);同时记录物理 UID 防克隆。
- 手机:登记用安卓机必须带 NFC,采购清单需标注型号;无 NFC 的低端机不可用作登记端。
- 权限:安卓 NFC 为普通权限,安装即有,无需用户手动授权;读卡不依赖网络。
- 平台:本项目只做安卓端,不做 iOS。
06待确认事项(仅剩 2 条)
| # | 问题 | 编制方建议(供选择) |
|---|---|---|
| V-2 | 各级创建权限边界:除管理员外,教练员可否直接创建训练事件/任务组?还是只能在自己被分派的组下建训练单元? | 教练员仅可建训练单元;事件与任务组由管理员/负责人创建 |
| V-3 | 任务结束时的收尾:教练忘记批量结束/退场,或有人未带卡未刷卡,导致部分人员一直处于「在场」状态,如何处理? | 双方案并存供配置:① 结束时自动对剩余在场人员打「任务结束批量收尾」标记并自动退场;② 结束后保留名单,向教练与管理员推送待处理提醒,人工确认后才收尾。建议 ①+② 叠加:先提醒、超时自动收尾 |
07决策记录(待确认事项处置结果)
| # | 事项 | 处置结果 |
|---|---|---|
| Q1 | 三级命名与岗位名 | 定稿:训练事件 / 任务组 / 训练单元;岗位定名「记录员」 |
| Q2 | 注册验证 | 定稿:不做短信;不加其他强验证;预留图形验证码(R1-01) |
| Q3 | 权限清单 | 定稿:按编制方建议项为基线,管理员在后台权限矩阵中配置,可继续扩展 |
| Q4 | 待命 vs 绿标 | 定稿:待命=已排入即将开始的组;绿标=完全空闲(2.2 节) |
| Q5 | 30 分钟绿标起算点 | 定稿:从出场确认时刻起算 |
| Q6 | NFC 卡内字段 | 定稿:仅用户 ID + 校验码(R3-02) |
| Q7 | 补卡换卡 | 定稿:重写新卡 + 解绑旧卡,旧卡立即失效(R3-05) |
| Q8 | 口令细则 | 定稿:30 分钟有效、一次性使用、即输即失效、仅本组生效(R5-05) |
| Q9 | 统一计时起点 | 定稿:教练点「开始执行训练」统一起表(R6-01) |
| Q10 | 换班后上一班收尾 | 定稿:自动结束,换班即视为确认,无需刷卡(R6-06/R6-07) |
| Q11 | 紧急撤离阈值 | 定稿:≤5 MPa(R6-12) |
| Q12 | 任务结束收尾 | 转入待确认 V-3,编制方「先提醒、超时自动批量收尾」的叠加方案已附(第 6 章) |
| Q13 | 报告与档案字段 | 定稿:按编制方起草字段执行(R8-03 / R11),「计划与实际起止时间」双时间字段确认纳入 |
| Q14 | NFC 生效范围 | 定稿:仅在进场登记与退场相关页面生效,其他页面不响应(5.1) |
| Q15 | 层级可见性默认级数(原 V-1) | 定稿(2026-10-21):默认向下 1 级(只看直接下级),管理员可按身份调整为 2 级;永不向上(第 3 章) |
08补充功能处置(v0.9 建议项勾选结果)
| # | 功能 | 处置 | 落点 |
|---|---|---|---|
| S-01 | 数据本机加密存储 | 纳入 | 非功能需求,本地库加密 |
| S-02 | 操作留痕 / 审计日志 | 纳入 | R13-05 + 全敏感操作留痕 |
| S-03 | 评估免责声明页 | 纳入 | 长期展示免责页 + 首次启动确认;评估结果标注「以现场指挥员为主」 |
| S-04 | 数据云端同步与备份 | 纳入 | 架构定稿:云端存储 + 本机缓存断网补传(第 1 章) |
| S-05 | 防串组服务端集中校验 | 纳入 | R3-04(强制项:不允许仅凭本机数据放行) |
| S-06 | 语音报警 | 纳入 | 预警方式 A/B 均带语音播报(含人员姓名播报) |
| S-07 | App 检查更新 | 纳入 | 内置检查更新 + APK 下载安装(内部分发) |
| S-08 | 报告导出 PDF | 纳入 | R8-04 |
| S-09 | 人员批量导入 | 纳入 | R2-04,在管理后台上传(App 端不做导入) |
| S-10 | 考评模块数据预留 | 纳入 | 数据模型预留成绩字段;App 内考评属二期 |
| S-11 | 账号找回规则 | 纳入 | R1-04:忘记密码仅管理员后台重置 |
| S-12 | 训练时长防篡改 | 待定 | 未确认。如训练数据用于考评,建议启用单调时钟 + 服务端校时(成本不高) |
09需求方提供的材料
① 空呼余量计算公式
明确输入输出形式(6.8L 基准耗时 + 已执行时长 → 余量 MPa 或百分比)。训练前装备已检查确认满瓶,不含温度修正与中途换瓶场景
② 训练科目清单
建议提供一份科目清单,系统提前制成标签,方便录入人员快速点选
③ 装备 / 车辆 / 器材标签初始清单
用于标签字典预置,避免上线后空白
④ NFC 硬件确认
制卡设备型号、卡片类型与数量;登记用安卓手机的 NFC 型号清单