From 475885d621af49957051e75f2850d3abf4e38950 Mon Sep 17 00:00:00 2001 From: Wanderingss <1624155937@qq.com> Date: Tue, 27 Oct 2026 07:02:06 +0800 Subject: [PATCH] =?UTF-8?q?docs(=E4=BB=BB=E5=8A=A1=E8=A7=84=E5=88=92):=20U?= =?UTF-8?q?I=E8=A1=A5=E9=BD=90=20=E9=94=80=E9=A1=B9=E4=B8=A4=E9=A1=B9?= =?UTF-8?q?=E5=B9=B6=E5=90=8C=E6=AD=A5=E5=85=A8=E9=83=A8=E8=AE=A1=E6=95=B0?= =?UTF-8?q?=E2=80=94=E2=80=94=E7=99=BB=E8=AE=B0=E7=B0=BF=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E4=B8=8E=E4=BB=93=E5=BA=93=E7=9C=9F=E5=80=BC=E7=9F=9B=E7=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 这一笔是补一次**该问而没问的疏漏**:AGENTS 把登记簿删行销项列在 Ask first,用户此前只授权过上一批的具体 范围,所以之后两项落地时我只关了看板卡、没动这份执行清单——结果文档与仓库开始互相矛盾。本次按用户指示做 全量销项 + 同步计数。 删掉的已完成行:装置维护 3 页(48a8ef05 之前的 52e28885,真机验过:时钟页按回读 RTC 出真判据、清除与强制 复归默认拒绝)、遥测死区与系数 2 页(48a8ef05,三态用脏位、WAIT 与 OK 各一张黄金)。§2 剩余三项顺次重编为 1 通讯设置 / 2 记录 5 页 / 3 运行报告,开篇指针同步改成「从第 1 项通讯设置开始」。 同步的真值(不再抄旧数):菜单树按行内 #page= 实测**已绑 21 叶 / 未绑 21 叶**(清单行合计 42),页面映射 UI_PAGE_MAP_COUNT = 21,内容页黄金 47 页;旧写的 33/16/17 是两项落地前的数,已注明覆盖来源与重测时刻。 §1 分类表删掉「数据源已就绪 5」这一类(已做完),§3 数据源表删掉那 5 页已完成行;§1「这些基础当前没有完整 页面消费者」一句也已改成真话——ui_data 现在有四通道,装置维护与遥测两批已经把这套基础接上了真实消费者。 依赖关系一节没有直接删掉旧判据,而是把它们**留成后续项沿用的口径**:执行类页面不得做成「点了个按钮但没效 果」;清除记录必须按 syslog_clear_state() 出真反馈;三态区分「已受理」与「已落盘」,黄金必须出 WAIT 与 OK 两张(假件保留脏位、只由 headless pump 清),否则真机的 WAIT 态永远不会被像素回归覆盖。 自查:check_doc_links.py --all exit 0(195 文档、2,673 处章节引用、无法判定 0);本篇 --section s-strict 通过; check_ids --strict exit 0 且不可判定绝对数 **1,156 未变**(本笔没吃余量、没新增编号引用);无 BOM / LF / U+FFFD=0 / 结尾换行齐。⚠ 全仓其他文档里「内容页 40 页」那类计数仍是旧值,属 task-39 同族的独立改写,不在本笔。 --- docs/任务规划/UI补齐.md | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/docs/任务规划/UI补齐.md b/docs/任务规划/UI补齐.md index 0191453a..54418fba 100644 --- a/docs/任务规划/UI补齐.md +++ b/docs/任务规划/UI补齐.md @@ -1,22 +1,24 @@ # 当前任务:UI 补齐 -> **从第 1 项「装置维护 3 页」开始,按表序单道串行推进。** +> **从第 1 项「通讯设置」开始,按表序单道串行推进。** > 本文件是当前唯一执行清单;全项目顺序见 `docs/任务规划/README.md` §2。 ## 1. 目标与范围 -菜单树 33 叶,已绑 16 叶,未绑 17 叶: +菜单树按行内 `#page=` 标记实测:**已绑 21 叶、未绑 21 叶**(清单行合计 42); +页面映射表 `UI_PAGE_MAP_COUNT` = 21。上一版写的 33/16/17 是`装置维护 3 页`与`遥测死区/系数 2 页` +落地前的数,已按 05:1x 工作区重测覆盖。 | 分类 | 数量 | 当前怎么处理 | |---|---:|---| -| 数据源已就绪 | 5 | 当前执行:装置维护 3 + 遥测死区/系数 2 | -| 需补配置或写入方 | 7 | 当前执行:通讯设置 1 + 记录 5 + 运行报告 1 | +| 需补配置或写入方 | 7 | 当前执行:通讯设置 1 + 记录 5 + 运行报告 1(即下方第 1~3 项) | | 无开入硬件 | 3 | 不做:遥信类型、遥信防抖、双点遥信 | | 缺独立模块或产品定义 | 2 | 不做:手动录波、SNTP 设置 | -现有基础:`ui_w_editor` / `ui_w_setlist` / `ui_page_action` 已就绪; -`ui_data` 的 rt / par / info 三通道已接线;像素黄金用例与字符集门禁已存在。 -**这些基础当前没有完整页面消费者,本任务就是把它们真正用起来。** +现有基础:`ui_w_editor` / `ui_w_setlist` / `ui_page_action` 已就绪;`ui_data` 已扩到**四通道** +(rt / par / info + 遥测死区与系数用的第四张注入表);像素黄金用例与字符集门禁已存在,内容页黄金 +现有 **47 页**(菜单 8 状态另计)。**装置维护 3 页与遥测死区/系数 2 页已把这套基础接上了真实消费者, +剩余三项继续用它,不另发明一套机制。** 逐页形态见 `docs/UI设计/页面补齐规划.md`;数据契约见 `docs/UI设计/UI_数据供给设计说明.md`。本文件只维护执行顺序和完成判据。 @@ -29,19 +31,18 @@ | 顺序 | 任务 | 完成判据 | 主要写范围 | 状态 | |---|---|---|---|---| -| **1** | **装置维护 3 页** | 时钟设置写入 `sys_clock_set_unix()` 并回读;强制复归确认后动作位复归且留操作记录;清除记录经 `syslog_request_clear()` 发起、按 `syslog_clear_state()` 出真反馈,覆盖删后重建、计数归零、不存在时幂等 | `Drivers/BSP/UI/`、`App/log/sys_log.*` | 未开始 | -| **2** | **遥测死区与系数 2 页** | 修改死区能改变 104 上送门限;修改 `k` 后页面值按比例变化;两页只走既有 `[run_par]` / `[adc_cal]` 落盘链,不新增真源 | `Drivers/BSP/UI/`、`ui_menu_tree.txt` | 未开始 | -| **3** | **通讯设置** | 新建 `[comm]` 段承载公共地址与端口;修改并重启后连接与公共地址生效;核对配置段数和键数上限(主站地址白名单本卡不做,见 §5) | `App/cfg/`、`App/protocol/iec104/`、`Drivers/BSP/UI/` | 未开始 | -| **4** | **记录 5 页** | 事故、操作、保护告警、保护启动、遥控各有一个写入点和记录类型;可翻最近 20 条;空记录明确显示“无记录”;共用 reader | `App/log/`、`Drivers/BSP/UI/` | 未开始 | -| **5** | **运行报告** | 展示上电次数、运行时长、复位原因、104 统计;复用 info 通道的已有数据;新计数器明确“掉电保持”或“本次运行”,不得含糊 | `App/log/` 或 `App/app/`、`Drivers/BSP/UI/` | 未开始 | +| **1** | **通讯设置** | 新建 `[comm]` 段承载公共地址与端口;修改并重启后连接与公共地址生效;核对配置段数和键数上限(主站地址白名单本卡不做,见 §5) | `App/cfg/`、`App/protocol/iec104/`、`Drivers/BSP/UI/` | 未开始 | +| **2** | **记录 5 页** | 事故、操作、保护告警、保护启动、遥控各有一个写入点和记录类型;可翻最近 20 条;空记录明确显示“无记录”;共用 reader | `App/log/`、`Drivers/BSP/UI/` | 未开始 | +| **3** | **运行报告** | 展示上电次数、运行时长、复位原因、104 统计;复用 info 通道的已有数据;新计数器明确“掉电保持”或“本次运行”,不得含糊 | `App/log/` 或 `App/app/`、`Drivers/BSP/UI/` | 未开始 | ### 依赖关系 - 各项虽可独立开发,但当前仍按表序单道执行(菜单树、页面注册表与字库都是生成物)。 -- 1 的“清除记录”只能发 `syslog_request_clear()` 请求并按 `syslog_clear_state()` 出反馈, - 不允许只做一个没有实际效果的按钮,也不得在页面里直接删文件。 -- 3 可先完成配置层再接页面,但最终必须作为一整项验收。 -- 4、5 先补真实写入方或计数器,再做页面;不允许用静态演示数据充数。 +- 通讯设置可先完成配置层再接页面,但最终必须作为一整项验收。 +- 记录 5 页与运行报告先补真实写入方或计数器,再做页面;不允许用静态演示数据充数。 +- 历史教训(已完成的装置维护 3 页留下的口径,后续项沿用):**执行类页面不得做成「点了个按钮但没效果」**——清除记录必须按 `syslog_clear_state()` 出真反馈;遥测死区/系数两页的三态用 + `run_par_dirty_peek()` 区分「已受理」与「已落盘」,且黄金必须出 WAIT 与 OK 两张(假件保留脏位、只由 + headless pump 清),否则真机的 WAIT 态永远不会被像素回归覆盖。 --- @@ -49,10 +50,6 @@ | 页面 | 现有数据源 | 还缺什么 | |---|---|---| -| 时钟设置 | `sys_clock_set_unix()` | 页面与回读校验 | -| 强制复归 | `prot_elm_request_reset()`、`ui_page_action` | 页面与 SOE 留痕 | -| 清除记录 | `sys_log` | 页面与确认交互(删除 API 已落) | -| 遥测死区 / 系数 | `run_par`、`adc_cal` | 可编辑页面 | | 通讯设置 | 网口配置保存范式可复用 | `[comm]` 段及 104 消费 | | 记录 5 页 | SOE、自检、运行记录已有 reader 先例 | 五类写入方与记录类型 | | 运行报告 | `uptime_s`、复位原因已有 | 上电次数与 104 统计 |