zzw
8 小时以前 3edc06d8b1e2449be45dbaa552f635eee72d1519
HANDOFF.md
@@ -827,6 +827,53 @@
- 不要提交 `.codex-run`、Office 锁文件或 `emergency-repair-web/public/新建 文本文档.txt`。
- 本轮代码、需求文件和交接记录一并提交并推送公司 Git 仓库 `main` 分支。
## 27. 收尾快照(2026-10-07 周三,CMB 审批后 JCC 助理列表未刷新)
**问题与根因**
- `rk_CMB领导审批` 通过后进入 `rk_JCC助理审批`,页面可能不显示已进入 `CMB_APPROVED` 状态的数据。
- CMB、JCC 助理、JCC 处长三个审批路由共用 `SimpleApproval.vue`,并共用同一个 keep-alive 缓存名 `SimpleApproval`。路由切换时组件实例被复用,但原代码只在 `created()` 查询一次,未在 `stage` 变化时重新加载。
**修复内容**
- 监听 `stage`,审批环节切换时清空旧关键词、选中项和列表,并按新状态立即查询。
- 增加 `activated()` 刷新逻辑:缓存页签再次激活时重新加载当前审批环节数据。
**主要文件**
- `emergency-repair-web/src/views/fault/SimpleApproval.vue`
**验证结果**
- 前端 `npm run build` 通过,仅有既有包体积告警。
- 真实接口数据验证:`XCB_REVIEWED` 为 `0` 条,`CMB_APPROVED` 为 `3` 条。
- 浏览器联调 `node .codex-run/verify-cmb-jcc-refresh.js` 返回 `pass: true`:直接进入 CMB 显示 `0` 条;切到 JCC 助理后重新查询并显示 `3` 条;从其他页签返回 JCC 助理后仍重新查询并显示 `3` 条。
- 截图:`.codex-run/cmb-jcc-refresh-verified.png`。
**当前运行状态(2026-10-07)**
- 前端 PID `57312`,监听 `http://localhost:8082`;后端 PID `56124`,监听 `http://127.0.0.1:8091`;DM8 `127.0.0.1:5236`;Edge CDP `9222`。
- 登录 `admin / admin123`;后端日志:`.codex-run/backend-20261007-req28-30-final.out.log`、`.codex-run/backend-20261007-req28-30-final.err.log`。
**接手注意**
- `.codex-run`、Office 锁文件及 `emergency-repair-web/public/新建 文本文档.txt` 仍为本地临时文件,不应提交。
- `emergency-repair-web/public/sensitive-words.json` 是用户既有未提交修改,本轮不纳入提交。
## 28. 收尾快照(2026-10-07 周三,业务字典改为发布后可修改)
**实现方式**
- 将任务状态、完工状态、验收状态字典迁移到 `emergency-repair-web/public/dict.js`,以 `window.__APP_DICT__` 暴露运行时配置。
- 原 `src/utils/dict.js` 保留为适配层,提供内置兜底字典、运行时字典合并和加载函数;`src/main.js` 在挂载应用前加载 `dict.js?ts=时间戳`,避免浏览器缓存旧字典。
- 前端构建后文件位于 `dist/dict.js`。发布后直接修改该文件中的 `text`、`type` 或状态项,刷新页面即可生效,无需重新执行 `npm run build`。
**主要文件**
- `emergency-repair-web/public/dict.js`
- `emergency-repair-web/src/utils/dict.js`
- `emergency-repair-web/src/main.js`
**验证结果**
- 前端 `npm run build` 通过,`dist/dict.js` 正常生成,仅有既有包体积告警。
- 临时将 `public/dict.js` 中 `UNREPORTED.text` 改为 `未上报[外部测试]`,不重新构建,仅刷新故障上报页面后筛选下拉立即显示新文字;恢复原值后刷新也立即恢复。
- 浏览器实际请求包含 `http://localhost:8082/dict.js?ts=...`;应用在字典加载完成后再挂载,接口不可用时仍使用内置兜底字典。
**发布后操作**
- 编辑部署目录中的 `dist/dict.js`,保存后刷新浏览器即可。不要再重新构建前端,否则会用当前源码字典覆盖手工修改。
## 21. 收尾快照(2026-10-06 周一,需求 21 权限设置范围切换)
**本轮完成内容**
@@ -951,7 +998,7 @@
**本轮完成内容**
- `DatabaseBootstrap` 自动创建 `LX.T_SYS_DEPT_EXT`(`DEPT_ID`、`RESPONSIBLE_X_NO` 及审计字段)和 `LX.T_SYS_USER_EXT`(`USER_ID`、`ENGINEERING_MAJOR`、`TEAM_MAJOR`、`RESPONSIBLE_X_NO` 及审计字段)。
- 组织机构页面增加“扩展属性”按钮和弹窗,可设置部门“负责rk_T”;列表显示已设置值。
- 用户管理页面增加“扩展属性”按钮和弹窗,可设置工程专业、rk_T队专业、负责rk_T;列表显示扩展属性是否已设置。
- 用户管理列表展开显示工程专业、rk_T队专业、负责rk_T三列,未设置时显示“未设置”;表格最后增加固定“操作”列,提供“编辑属性”按钮打开设置弹窗。
- 新增故障弹窗默认带出:上报单位为当前登录人的单位、负责人为当前登录人、`rk_X号`为当前部门扩展属性、工程专业和 rk_T队专业为当前用户扩展属性。
- 用户扩展属性为空时,工程专业和 rk_T队专业不再默认选择配置列表第一项。
@@ -979,6 +1026,7 @@
- `node .codex-run/verify-req28-30.js` 返回 `pass: true`。
- 部门 `1390477009348739073 / sy区域` 设置 `rk_X号=201`,用户 `123 / yszl` 设置工程专业 `动力专业`、rk_T队专业 `液压专业`、负责 `202`。
- 新增故障实际默认值为:上报单位 `sy区域`、负责人 `助理用户(演示)`、`rk_X号=201`、rk_T队专业 `液压专业`、工程专业 `动力专业`。
- 用户管理页面实测表头顺序为工程专业、rk_T队专业、负责rk_T、状态、操作,行内扩展值正常,操作列每行显示“编辑属性”;截图:`.codex-run/req29-user-ext.png`。
- 截图:`.codex-run/req28-org-ext.png`、`.codex-run/req29-user-ext.png`、`.codex-run/req30-fault-defaults.png`。
- 验证后已清除临时部门、用户扩展属性,查询确认 `configured=false` 且字段为空。