每个档口、每台合法绑定小票打印机,按线上/线下业务场景及人工/自动补打独立控制;开关操作和每次补打均留可查询日志。PC与商家移动端共用有效策略。本版按用户最新要求将完整Use Case、前置/后置/主/分支/异常、原系统样式与页面/状态规格直接写入正文,V0.1—V0.3仅历史参考。
验证:29项原型检查通过,另有8项阅读页视口/页签检查;仅证明静态演练,不证明真实后端鉴权、事务、供应商或实机出纸。PC依据当前本地源码和归档真实截图;移动端依据已有评审原型,当前生产版本需清涛核对。
2026-10-09|负责人赖清涛|Review / DoR: BLOCKED(原系统识别与上线契约待评审,见末章)
解决线上点餐、线下菜单消费共用打印机混打的问题。标品 PC 和商家移动端按“档口+合法绑定打印机+业务场景”独立开关;人工/自动补打独立控制;配置操作及每次补打可查询日志。默认保持旧业务行为,不改订单、金额、支付、模板或既有打印份数,不增加打印机绑定关系。
最新用户明确要求完整 Use Case 直接可见,图片不能替代前置/后置/主/分支/异常流程。V0.4正文为当前权威版本;V0.1—V0.3附件仅历史参考。
PC:store/public/static/src/view/system/device/deviceManagement.vue、device/index.vue、router/system/index.js、assets/common.css、view/home.vue、订单列表/详情源码与归档真实截图。实体仓库HEAD 301815bd695483a5709d2fac4d6b7f29e1334b49;本地旧分支,不能冒充最新生产发布。复用已安装Vue 2.7.16、Element UI 2.15.14及图标字体、官方Logo;不改业务仓库。
商家移动端:沿用已评审商户移动管理端的“我的→设备、订单→详情→补打”、蓝色、卡片、字体和44px触控规范。该来源是已有原型,不是本次新获取的生产截图。本机业务8080/CDP9222无监听;当前真实部署样式和来源枚举需清涛对照发布版本评审。原型使用合成数据,仅浏览器本地演练,不调用业务/支付/云打印接口。
| 角色 | 查配置 | 改策略 | 人工补打 | 查日志 | 数据范围 |
|---|---|---|---|---|---|
| 食堂管理员 | 授权 | 单独授权 | 单独授权 | 单独授权 | 授权食堂/档口 |
| 档口商家 | 本档口 | 单独授权 | 单独授权 | 单独授权 | 本人授权档口 |
| 运营只读 | 授权 | 无 | 无 | 单独授权 | 授权范围 |
| 系统重试 | 读策略 | 无 | 仅自动规则 | 写自身结果 | 原任务目标 |
前后端同样校验。原型角色切换仅演练,不是正式权限认证;正式角色ID映射待评审。
| Key(拟议字段,非既有接口事实) | 分组 | 控件文案 |
|---|---|---|
online_dine |
线上点餐 | 堂食订单打印 |
online_pickup |
线上点餐 | 自提订单打印 |
online_locker |
线上点餐 | 取餐柜订单打印 |
offline_menu |
线下消费 | 菜单消费打印 |
offline_fixed |
线下消费 | 定额消费打印 |
offline_custom |
线下消费 | 自定义消费打印 |
manual |
补打策略 | 人工补打 |
auto |
补打策略 | 失败自动补打 |
仅显示已启用且可以可靠识别的业务。称重、AI识别、点餐机等其他场景须证明分类互斥后按同一结构扩展,不凭设备名称或支付方式猜来源。人工补打需同时满足场景开关、人工补打开关、权限;自动补打需同时满足场景开关、自动开关和原合法重试规则。日志不能被关闭。
| ID | 原系统入口/新增位置 | 关键控件与业务体现 |
|---|---|---|
| P01 | 系统管理→设备管理→设备列表 | 保留设备类型筛选、设备表、小票配置/状态、编辑/删除;Xprinter行新增“打印策略”“日志”文字操作 |
| P02 | 编辑设备900px弹窗 | 基础配置沿用;新增“打印策略”“操作日志”页签,顶部只读设备/档口和版本,底部取消/保存 |
| P03 | 订单管理→消费订单→查看 | 保留订单/菜品/支付信息;增加打印概况、补打小票、补打记录 |
| P04 | 订单详情内补打确认弹窗520px | 订单/匹配打印机/份数只读,原因必填,取消/确认补打,表单内错误 |
| P05 | 订单详情补打记录 | 逐请求/尝试时间、人工/自动、原因、份数/次数、状态;可回查结果 |
| P06 | 设备管理新增打印日志页签 | 开关操作/补打记录分签,范围/时间/操作人/结果/订单号筛选,查询/重置,分页10条,详情只读 |
| P07 | 仅原型审查工具:事件模拟 | 对应UC004系统事件;生产不新增业务弹窗。可演练有效策略、已受理/跳过/失败/待确认 |
| M01 | 商家移动端 我的→设备 | 保留已有设备卡片及状态;打印机卡新增“打印策略”“日志” |
| M02 | 打印机→打印策略整页 | 分组开关,每行≥56px、点击热区≥44px,底部安全区取消/保存,返回时未保存确认 |
| M03/M04 | 订单→详情→补打 | 详情卡片、底部补打确认面板,唯一打印机只读,原因与错误在同面板 |
| M05/M06 | 订单补打记录/打印机日志 | 卡片化日志,筛选底部面板/原生控件;无PC宽表挤到手机,支持返回来源 |
原型 prototype.html 可切PC/移动端、角色、故障条件;每个按钮的演练和状态都能按下述Use Case定位,审查工具明确与生产页面分开。
成功:
失败/取消:
| 步骤 | 用户/系统动作 | 页面/控件 | 系统响应与数据变化 | 状态 | 验收 |
|---|---|---|---|---|---|
| M1 | 系统管理→设备管理→设备列表,筛选Xprinter打印机 | P01 | 选择设备类型;列表显示设备/小票配置/状态/新增“打印策略、日志”文字操作 | loaded | AC01 |
| M2 | 点目标行“打印策略”,打开900px编辑设备弹窗并选中打印策略页签 | P02 | 上方只读设备和关联档口,加载配置、版本、最近修改人 | loaded | AC02 |
| M3 | 将“线下消费→菜单消费打印”关闭,其余开关保持 | P02 | 蓝色开关变灰且文字“已关闭”;“有未保存修改”出现,底部保存可用 | dirty | AC03 |
| M4 | 点击“保存”,表单进入保存中 | P02 | 保存按钮显示“保存中…”,开关/取消临时禁用,阻止重复请求 | saving | AC04 |
| M5 | 保存成功 | P02 | 绿色就地提示“已保存”,显示新版本;追加含前后值的成功操作日志 | saved | AC05 |
| M6 | 从商家移动端 我的→设备→打印机→打印策略,点击刷新 | M02 | 移动端显示同一设备的菜单消费已关闭,线上各项值保持;日志可追溯 | synced | AC06 |
| 分支/分支点 | 条件 | 行为与返回/结果 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| A1@M3 | 需要恢复打印 | 开启对应场景并保存;只恢复后续合法打印,不集中补打历史抑制订单 | P02/M02 | saved | AC07 |
| A2@M3 | 编辑后点取消/关闭/返回 | 弹出“存在未保存修改,是否放弃?”;继续编辑返回草稿,放弃丢弃草稿不落库 | P02/M02 | discard-confirm | AC08 |
| A3@M2 | 只读角色查看 | 展示当前值、明确“无修改权限”;所有开关和保存禁用,日志仍按权限可查 | P02/M02 | readonly | AC09 |
| 异常/恢复 | 条件 | 用户提示、数据处理及恢复 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| E1@M2/R1 | 配置读取失败 | 显示加载失败及“重新加载”,隐藏可编辑表单;恢复后重新读取 | P02/M02 | load-error | AC10 |
| E2@M4/R2 | 保存失败或超时 | 保留草稿和旧有效状态;就地红色错误、“重试保存”;超时先回读结果,不盲目重复 | P02/M02 | save-error | AC11 |
| E3@M4/R3 | 其他人已修改,版本冲突 | 提示“配置已被他人修改,请重新加载后再修改”;不覆盖新版本;确认重新加载会丢草稿 | P02/M02 | conflict | AC12 |
| E4@M4/R4 | 配置审计写入失败/权限被撤销/设备解绑 | 审计失败回滚并禁保存;权限/解绑拒绝,提示重新选择或联系管理员 | P02/M02 | audit-error/forbidden | AC13 |
成功:
失败/取消:
| 步骤 | 用户/系统动作 | 页面/控件 | 系统响应与数据变化 | 状态 | 验收 |
|---|---|---|---|---|---|
| M1 | 订单管理→消费订单→查看目标订单 | P03/M03 | 订单详情显示所属档口、场景、唯一匹配打印机、现有份数和上次打印结果 | detail | AC14 |
| M2 | 点击“补打小票” | P04/M04 | 弹出补打确认框/移动底部面板,打印机及份数只读;选择补打原因 | confirm | AC15 |
| M3 | 选择“缺纸恢复/票据遗失/其他”,其他时填写说明 | P04/M04 | 必填原因;缺失时表单内红字,不能提交 | valid/invalid | AC16 |
| M4 | 点击“确认补打” | P04/M04 | 请求处理中按钮及关闭动作禁用;生成幂等请求和待提交日志,校验最新策略 | submitting | AC17 |
| M5 | 云服务接受请求 | P05/M05 | 提示“已受理,等待打印结果”;补打记录新增行,显示人工、原因、份数、尝试次数 | accepted | AC18 |
| M6 | 回查服务结果或刷新记录 | P05/M05 | 有明确结果才变为打印成功/打印失败;不能回查则显示结果待确认 | success/failed/unknown | AC19 |
| 分支/分支点 | 条件 | 行为与返回/结果 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| A1@M2 | 用户取消 | 关闭确认框回订单详情,不产生补打请求 | P04/M04 | cancelled | AC20 |
| A2@M1 | 发生明确失败且自动补打开启 | 系统按原合法重试规则触发;同场景开关仍生效,日志身份显示系统 | P05/M05 | auto-attempt | AC21 |
| A3@M5 | 某目标部分成功 | 逐目标展示结果,仅重试明确未成功目标;当前标品唯一目标,不借此扩展多机绑定 | P05/M05 | partial | AC22 |
| A4@M1 | 场景或人工补打开关关闭 | 按钮禁用并显示具体关闭项;提供有配置权限者前往打印策略的入口,不绕过 | P03/M03 | blocked | AC23 |
| 异常/恢复 | 条件 | 用户提示、数据处理及恢复 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| E1@M3/R1 | 原因未填/其他未说明 | 就地红字关联字段,保留输入并聚焦错误位置 | P04/M04 | invalid | AC16 |
| E2@M1/R2 | 未关联、多关联、离线、已解绑 | 显示具体原因且禁止提交;管理员修复后刷新重新匹配 | P03/M03 | device-error | AC24 |
| E3@M4/R3 | 重复点击、网络重试、人工和自动并发 | 同一请求不新增投递;处理中返回既有请求并提示查询记录 | P04/P05 | duplicate | AC25 |
| E4@M4/R4 | 日志持久化失败/服务明确拒绝 | 日志失败不发请求;服务拒绝记录失败及原因,保留可追溯请求 | P04/P05 | failed | AC26 |
| E5@M5/R5 | 受理超时/结果未知/超过自动重试上限 | 结果待确认,停止盲重投;先查询云状态,超限转人工核实,不承诺物理恰好一次 | P05/M05 | unknown | AC27 |
成功:
失败/取消:
| 步骤 | 用户/系统动作 | 页面/控件 | 系统响应与数据变化 | 状态 | 验收 |
|---|---|---|---|---|---|
| M1 | 从设备行点“日志”或订单详情点“补打记录” | P06/P05/M06/M05 | 进入日志页,设备/订单自动限定;开关操作和补打记录分两个页签 | loaded | AC28 |
| M2 | 设置时间、档口/打印机、操作人、结果;补打支持订单号 | P06/M06 | 标签清楚;查询/重置按钮,日期合法性校验,不扩大权限范围 | filter | AC29 |
| M3 | 点击查询并翻页 | P06/M06 | 加载中骨架/遮罩,结果分页10条,显示总条数 | loading/loaded | AC30 |
| M4 | 打开记录详情 | P06/M06 | 开关逐项前后值及版本;补打逐次状态、原因、云受理号/时间;关闭返回筛选列表 | record-detail | AC31 |
| 分支/分支点 | 条件 | 行为与返回/结果 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| A1@M2 | 筛选无结果 | 显示“暂无符合条件的记录”,提供“重置筛选” | P06/M06 | empty | AC32 |
| A2@M1 | 从订单进入补打记录 | 只读订单号条件,查询该订单所有人工/自动尝试,按时间倒序 | P05/M05 | scoped | AC33 |
| A3@M4 | 点击关联订单 | 有订单查看权限则打开详情;无权限则说明原因且不越权跳转 | P03/M03 | permission | AC34 |
| 异常/恢复 | 条件 | 用户提示、数据处理及恢复 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| E1@M3/R1 | 查询失败/网络中断 | 就地错误及“重试查询”;保留筛选,不将失败当空数据 | P06/M06 | query-error | AC35 |
| E2@M2/R2 | 结束日期早于开始日期 | 日期字段红字,禁止请求;修正后查询 | P06/M06 | invalid | AC36 |
| E3@M1/R3 | 日志查看权限撤销/越权参数 | 无权限页,不暴露记录数量或详情;返回授权入口 | P06/M06 | forbidden | AC37 |
成功:
失败/取消:
| 步骤 | 用户/系统动作 | 页面/控件 | 系统响应与数据变化 | 状态 | 验收 |
|---|---|---|---|---|---|
| M1 | 收到原业务合法打印事件 | P03/P07 | 订单详情可看到来源、所属档口及首次打印状态;原型仅模拟该事件 | event | AC38 |
| M2 | 确定场景和打印目标 | P07 | 事件模拟面板展示分类结果及唯一目标;真实系统无额外弹窗 | classified | AC39 |
| M3 | 提交前读取当前有效策略 | P07 | 展示“允许/跳过”及命中开关版本;草稿不参与判断 | decision | AC40 |
| M4 | 允许则调用既有打印,关闭则跳过 | P05/P07 | 订单打印记录分别显示已受理或已跳过及原因 | accepted/skipped | AC41 |
| M5 | 受理结果回查 | P05/P07 | 明确成功/失败/待确认;失败进入UC002自动补打判定 | result | AC42 |
| 分支/分支点 | 条件 | 行为与返回/结果 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| A1@M3 | 目标场景关闭 | 不投递、不伪报打印失败、不在恢复开启后追打历史;其他场景继续 | P05/P07 | skipped | AC43 |
| A2@M1 | 原规则本就不打印 | 仍不打印;开启新开关不能把不符合原规则的订单强制打印 | P05/P07 | skipped | AC44 |
| A3@M3 | 保存时已有排队任务 | 尚未受理的按最新有效配置重新判断;已经受理提示无法保证撤回 | P05/P07 | in-flight | AC45 |
| 异常/恢复 | 条件 | 用户提示、数据处理及恢复 | 页面 | 状态 | 验收 |
|---|---|---|---|---|---|
| E1@M2/R1 | 来源未知或分类重叠 | 进入分类待核实;不随意归到线上/线下;保留订单及原因 | P05/P07 | unknown-scene | AC46 |
| E2@M3/R2 | 配置读取失败/绑定无效 | 不盲投;记录失败,恢复后重新读取最新配置再决定是否发送 | P05/P07 | config-error | AC47 |
| E3@M4/R3 | 云服务拒绝或受理结果不明 | 明确失败可按UC002处理;未知先回查,不能用成功请求码代替出纸证明 | P05/P07 | failed/unknown | AC48 |
| 日志 | 必填字段 | 页面显示 |
|---|---|---|
| 开关操作 | 事件/请求ID、操作人ID/姓名、时间、端、商家/食堂/档口/打印机、改动项、前后值、前后版本、结果/原因 | 列表显示人/时间/对象/项/前后值/结果,详情展开版本和请求号 |
| 补打 | 请求/尝试ID、订单、来源/场景、目标、人工/自动、人或系统、时间、原因、份数、真实投递次数、服务受理号、策略版本、状态/结果时间/错误 | 订单关联卡片/表格,逐次明细;拒绝/跳过不计入成功出票 |
日志不保存密码、token、打印机云密钥、小票全文或未脱敏联系方式。默认倒序、分页10条。时间展示Asia/Shanghai,日志保留/归档期由清涛评审。
| 能力 | 输入/前置 | 输出/错误/一致性 |
|---|---|---|
| 读策略 | 已鉴权、档口/打印机ID | 场景支持列表、当前值、版本、最后修改人/时间;无权限/无绑定/读取失败区分 |
| 存策略 | 目标ID、变更项、expectedVersion、requestId | 新版本+审计成功才成功;冲突409语义、权限403语义、持久化失败不改旧值 |
| 人工补打 | 订单、唯一匹配目标、原因、requestId、版本 | 记录ID、受理/待确认状态;幂等复用,关闭/无权限/设备异常/未填原因明确拒绝 |
| 查询日志/状态 | 授权范围、时间/场景/操作者/结果/订单、page/pageSize | records/total;结果未知不能映射成功;越权不泄露数量 |
上述状态码是拟议语义,不宣称当前接口已支持。数据库对象为策略、配置审计、补打请求、逐目标尝试;保留现有业务订单和支付状态。跨云打印调用不是可回滚数据库事务。
每个上表AC的Given=对应前置/分支/异常条件,When=对应动作,Then=同一行可观察响应/数据结果;traceability.csv逐条保留映射,不用一张总截图冒充全部通过。
| 套件 | 目标 | 覆盖 | 证据 |
|---|---|---|---|
| UI-CONFIG | PC与移动端读/改/保存/取消/刷新/角色 | AC01—13 | 原型自动化、关键状态截图;正式接口与DB回读待开发 |
| UI-REPRINT | 原因必填、受理、明确结果、禁止/离线/多绑定/重复 | AC14—27 | 原型自动化+日志回读;供应商/实机验收待开发 |
| UI-LOG | 双日志、筛选/分页/上下文、空/失败/无权限 | AC28—37 | 原型自动化、详情截图;真实审计一致性待开发 |
| POLICY | 八开关组合、首次打印/人工/自动、来源分类/结果未知 | AC38—48及AC21/23 | 原型模拟决策测试;真实代码与自动任务待开发 |
| VISUAL | 桌面1440×1000、移动390×844;默认/弹窗/错误/日志 | 设计规格中的组件和状态 | 实际浏览器截图、无根水平溢出、可达控件/键盘/控制台 |
后端权限、事务、幂等、供应商状态和物理打印不能由静态原型证明。现阶段测试只证明文档/原型路径与模拟行为,发布必须补正式API/并发/权限/设备回归。
| P0待确认 | 必须形成的结论 | 负责人/时点 |
|---|---|---|
| 实际发布基线 | 当前PC/移动端真实版本及页面、支持场景、唯一分类条件、订单详情补打入口 | 赖清涛,开发前 |
| 迁移与生效 | 新设备默认值、旧行为映射、配置读取失败策略、已排队/已受理边界 | 赖清涛,开发前 |
| 补打授权与服务能力 | 关闭场景能否人工例外(当前方案禁止),次数/间隔、去重/回查能力 | 赖清涛组织产品/技术,开发前 |
| 正式权限/日志/性能 | 权限ID映射、日志保留/归档、容量/并发/响应阈值 | 赖清涛协调相关负责人,开发前 |
文档和原型是完整评审包,不是生产可用证明。以上P0未关闭时DoR保持BLOCKED,不开始业务实现。
| 项目 | PC定义/来源 | 移动端定义/来源 |
|---|---|---|
| 字体族 | common.css:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif | 原移动原型:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif |
| 字号 | 全局17px;Element表格/表单/按钮14px;头部平台名26px/600;弹窗标题18px;辅助文案12px | 正文/按钮16px,页标题20px/600,说明14px;订单号/时间用等宽数字,不人为改字距 |
| 主色/操作 | Element默认按钮/活动开关#409EFF;common.css文字操作#2493E7 | 原移动原型#168FEA,深色#096DB9,浅底#E8F5FE |
| 正文/次要文字 | Element #303133/#606266/#909399;继承common的黑字与原组件具体定义 | #17283A/#52687D/#8193A4 |
| 背景/边界 | 白底,表头#F5F7FA,边框#DCDFE6,分割线#EBEEF5 | 画布#EFF7FC,白卡片,边框rgba(24,76,118,.1) |
| 状态 | 成功#67C23A,警告#E6A23C,失败#F56C6C;关闭开关#C0CCDA,禁用#C0C4CC | 继承移动#16875E/#A86300/#D34A4F及浅底;辅以文字,颜色不是唯一信号 |
| 圆角/尺寸 | 按钮/输入4px、40px高;开关40×20px;表格原Element行;打印机弹窗900px;补打弹窗520px | 卡片14px、行≥56px;触控热区≥44px,开关外包44px点击区域;底部safe-area |
| 页头/侧栏 | home.vue:白色页头60px,左右30px,Logo高30px,左导航沿用#2063EE→#2493E7;现有一/二级导航结构 | 顶部返回+标题,底部工作台/订单/菜品/我的;设置用整页,不把PC900px弹窗压缩成手机宽表 |
| 间距 | 主区20px,弹窗左右28px,表单项20px,分组间16px;列表原生密度 | 屏边16px,卡片内16px、卡间12px,底部动作区内16px |
本原型直接嵌入当前已安装Vue2.7.16/ElementUI2.15.14、其CSS和woff图标,复用官方Logo;不引入第二套组件库、远端CDN或新品牌配色。外层“原型演练”工具条是审查工具,不进入正式产品。
保留左菜单系统管理、顶部设备管理、设备列表/设备版本页签、类型筛选、设备名/编号/地址/类型/小票配置/创建时间/状态等字段。设备地址、创建时间、当前版本、设备及物联网状态等原字段保留;宽度不足仅表内横向滚动。Xprinter行操作区扩为260px并固定右侧,顺序“编辑、打印策略、日志、删除”;新策略/日志为蓝色文字操作,不新增大色块卡片。“打印策略”打开P02策略页签;“日志”到P06并带入档口/打印机。非打印机无策略入口。新建/删除/设备版本不属本原型执行范围,保留位置、禁用并解释,不模拟修改业务设备。
900px居中白色原Element弹窗,最多viewport−32px。标题“编辑设备”,页签“基础配置/打印策略/操作日志”;基础配置保留设备名、编号、类型、SN、型号、模板、张数、地址、关联档口,原型只读并说明,不把新增开关塞进系统级全局配置。
策略页:顶部一行设备/档口与版本、修改人;三组线上/线下/补打,每个开关独占行、左文案右开关+开启/关闭文字;不重复加总开关。修改后蓝色就地提示“有未保存修改”;底部右侧取消(白底灰边)/保存(蓝底白字)。保存禁用条件:无修改、无权限、读取失败、保存中、绑定失效。取消/叉号/Escape有草稿时均先确认,焦点回触发按钮。
操作日志页直接限定当前目标,前后值可展开详情;不要求用户再选同一设备。保存成功绿色提示、新版本、最近修改人回显;失败红色提示在页内持续显示,并提供重试;冲突提示和“重新加载”分开,不能静默覆盖草稿。
消费订单列表保持原表格,“查看”进入详情。详情上部保留订单/支付/菜品,下方新增打印概况与“补打小票/补打记录”。未关联、多关联、离线、场景关闭、补打关闭、无权限或结果待确认时,按钮禁用,旁边明确原因,不让用户反复点击猜。
补打确认框520px:订单号/档口/自动匹配打印机/打印份数只读;原因下拉必选,选其他显示最多100字说明;取消不生成记录,确认处理中按钮loading并防重复。错误关联原因字段、焦点移至错误位置。受理后返回记录页,主提示“已受理,等待打印结果”,绝不写“打印成功”除非结果已确认。记录详情显示每次人工/系统的请求、原因、份数、次数、时间、结果及策略版本。
设备管理新增“打印日志”页签;内部“开关操作/补打记录”双页签。筛选:起止时间、授权档口/打印机、操作者/关键词、状态;补打加订单号。查询主按钮,重置次按钮,10条分页。开关表列时间/端/人/对象/改动/前后/结果/详情;补打表列时间/订单/场景/方式/原因/份数/次数/状态/详情。横向滚动只限表格容器,页面根不横溢出。详情只读,不添加编辑/删除日志按钮。
我的→设备→打印机卡“打印策略/日志”;订单→查看→补打小票/补打记录。沿用已有蓝色卡片与底部导航;设置是整页分组,底部固定取消/保存,正文保留动作区高度,键盘/安全区不遮挡。补打用满宽底部面板/全屏对话,不需要横向缩放;设备及份数只读。日志是卡片而非宽表,筛选一行/折叠面板、每条含详情。返回行为保留订单或设备上下文,未保存先确认。PC与移动端共享演练存储、版本和日志。
| 状态 | 用户可见 | 操作/恢复 | 映射 |
|---|---|---|---|
| 默认/加载 | 明确当前目标;列表/表单loading,控件暂禁用 | 成功后显示真实读取值,不能先显示默认开关 | UC001 E1、UC003 M3 |
| 空设备/空业务 | 暂无已关联小票打印机/该档口未启用此业务 | 回设备列表或刷新,无可保存假表单 | UC001前置 |
| 空日志 | 暂无符合条件的记录 | 重置筛选 | UC003 A1 |
| 未保存/取消 | 未保存提示、放弃确认框 | 继续编辑/放弃修改 | UC001 M3/A2 |
| 保存中/成功 | loading、防重复;已保存+版本 | 刷新可读,另一端同步 | UC001 M4—M6 |
| 保存失败/审计失败 | 红色就地原因、旧配置仍有效 | 重试;审计失败不落配置 | UC001 E2/E4 |
| 冲突 | 已被他人修改、当前版本 | 重新加载确认,不自动覆盖 | UC001 E3 |
| 无权限 | 只读说明或无权限页,不泄露记录 | 返回授权范围 | UC001 A3、UC003 E3 |
| 补打校验失败 | 原因必填/其他必说明红字 | 输入修正,草稿保留 | UC002 E1 |
| 离线/未关联/多关联 | 明确阻断原因与唯一匹配边界 | 管理员处理后刷新 | UC002 E2 |
| 已受理/待确认 | 中性蓝/警告文字,禁止盲重投 | 查询结果,明确结果后才重试 | UC002 M5/E5 |
| 明确成功/失败 | 成功绿、失败红+原因,保留每次记录 | 失败按策略处理,不改金额 | UC002 M6、UC004 M5 |
所有状态可由原型演练工具到达;系统事件面板P07只演示后台判定,不伪装生产已有UI。原型测试不替代真实鉴权/事务/供应商或实机出纸验收。
补充尺寸:PC策略弹窗距顶部7vh,正文最大高度calc(100vh − 210px)并独立滚动,页脚操作区不随正文消失;手机设置页底部动作固定在视口下缘,宽度不超过430px并留safe-area,页面底部预留100px滚动空间,其他行可完整滚到操作区上方。移动端输入/选择控件至少44px高,开关保持40×20px视觉但点击热区扩为44px;截图分别给首屏和下滚区域,不将长截图中固定动作条误解为业务中间区域。
现有打印机列表和配置位置;不是新增功能截图。
P02:现有编辑设备结构中的打印策略,菜单消费关闭
M02:商家移动端打印策略,底部保存与页面滚动
P02/E2:保存失败,草稿保留且旧配置有效
P05:补打记录,已受理与实际出纸分开
P06:开关操作日志,修改前后值及操作者可追溯