diff --git a/docs/reports/weekly-2026-06-12.md b/docs/reports/weekly-2026-06-12.md new file mode 100644 index 0000000..3a994fd --- /dev/null +++ b/docs/reports/weekly-2026-06-12.md @@ -0,0 +1,68 @@ +# 周报 — 2026.06.09 ~ 2026.06.12 + +## 一、设备型号动态管理 + +**问题**:车检器型号名称(如 DLD110SV)在代码中硬编码,新增型号后测试操作页显示 `Unknown(3)` 或 `0x03`,测试信息页型号列显示 `-`。 + +**修复**: +- **后端** `edc_server`:B2/B4 数据写入时,废弃硬编码 `{1:"PD132",2:"DLD110"}` 映射,改为查询 `tb_vechicle_base_test` 表获取 `type_num → dev_name`,带内存缓存避免高频 DB 查询。 +- **前端** `edc-web`: + - `test_op.js` 工装配置概览面板、最新测试结果区域,从 `/api/vehicle-base-test` 动态获取型号映射。 + - `test_data.js` 测试信息页型号列,同样改为动态查询。 + - 每 5 秒自动刷新型号缓存,工装配置页新增型号后无需手动刷新。 + +## 二、测试操作页实时数据改进 + +**问题**: +1. 工装本地按键触发的测试数据上报后,网页端无法实时显示,必须依赖网页端"开始"按钮。 +2. 数据轮询间隔偏长(5 秒),新记录无计数提示。 + +**实现**: +- 新增被动轮询机制,**每 3 秒**自动拉取最新测试数据,覆盖工装本地按键和网页手动指令两种触发方式。 +- 自动化测试运行期间,被动轮询自动让位给 `pollProgress`(500ms 高频轮询),结束后无缝接回。 +- 「当前测试数据」标题旁新增 **B2 新记录条数**显示 `(N 条新记录)`,页面加载/自动化开始时自动复位。 + +## 三、角色权限体系 + +| 角色 | 权限 | +|---|---| +| `admin` | 全部功能(含用户管理、删除数据) | +| `manager` | 管理功能(用户管理除外)— 工装配置、数据删除等 | +| `analyst` | 仅测试数据查询/下载 + 修改密码 | +| `operator` | 测试操作 + 测试数据查看(不含工装配置) | + +- `analyst` 角色访问受限页面时自动跳转到测试数据页并提示。 +- 所有用户可自行修改密码。 + +## 四、设备日志管理 + +- 新增设备日志管理页面,记录设备 TCP 连接/断开、异常事件。 +- 支持按设备编码、事件类型、时间范围筛选。 +- 支持 **CSV 导出**,修复时区偏移 8 小时问题。 +- 设备列表页在线/离线状态每 5 秒实时刷新。 +- 后端 `device_status_monitor` 增加全表扫描,修正状态不一致问题。 + +## 五、UI/UX 优化 + +- **继电器输出格式化**:明确区分"✅有输出"/"❌无输出",前端直接显示 DB 字段。 +- **工装配置概览面板**:测试操作页顶部展示当前配置参数(型号、频率范围、线圈、车辆等),可折叠。 +- **测试信息页重构**: + - 三视图切换(全部数据 / B2 灵敏度 / B4 波动),差异字段自动隐藏。 + - 表格支持横向滚动,列宽自适应不换行。 + - 故障信息列限制 12em 宽度,超长截断省略 + hover 显示全文。 +- 配置页频率/峰峰值前端显示与 DB 原始值双向转换修复。 + +## 六、Bug 修复 + +| 问题 | 修复 | +|---|---| +| 浏览器缓存导致工装参数 GET 返回旧数据 | 响应头 `Cache-Control: no-store` | +| `renderLatest` 覆盖测试模式,灵敏度/波动显示回退 | 分离测试模式更新与数据渲染逻辑 | +| 测试操作页工装配置修改后不同步 | 每 5 秒刷新 + 禁用缓存 | +| 设备离线时仍可发送指令 | 在线状态检查,离线/通信不良时弹窗提示并阻止 | +| HeartBeat 大小写不匹配,交互未记录 | 统一大小写匹配 | +| 后端 `device_status_monitor` 状态不一致 | 增加 `dnt_info` 全表扫描修正 | + +--- + +**总计提交**:vd_test_fixture 24 次,edc_server 8 次。