diff --git a/.workbuddy/memory/2026-07-11.md b/.workbuddy/memory/2026-07-11.md index 92ef9e8..cc76842 100644 --- a/.workbuddy/memory/2026-07-11.md +++ b/.workbuddy/memory/2026-07-11.md @@ -25,7 +25,15 @@ - 在页头加入角色 / 注册来源(platform) / 类型(isAdmin) 三个筛选条件 + 搜索/重置按钮,绑定 `searchWhere` reactive,datasource 读取后传给 `pageUsers`。 ### 验证 -- 已用 `vue-tsc --noEmit` 跑类型检查(后台进行中),待结果确认无编译错误。 +- `vue-tsc --noEmit` 类型检查:我改动的 4 个文件无新增错误(仅剩项目既有错误,如 `getPageTitle` 返回 unknown、`$router` 类型、CMS/Shop 模块缺失等,与本次无关)。 +- 修复了自引入的 2 个 `TS6133`(`resetPsw` 中改 `message.success` 为 `Modal.success` 后 `msg` 未使用的报错)。 +- 注意:本环境文件编辑会被自动提交/同步,工作区与 git HEAD 哈希一致属正常现象。 + +### 补充修复(19:08):isAdmin 类型不一致 +- 问题:`User` 实体模型定义 `isAdmin?: boolean`(`src/api/system/user/model/index.ts:113`),但 `admin/index.vue` 把实体当数字用(`updateIsAdmin` 中 `row.isAdmin ? 0 : 1`、模板 `record.isAdmin == 1`),与模型冲突;`user/index.vue` 已正确用布尔(`!row.isAdmin`、`v-if="record.isAdmin"`)。 +- 修复 `admin/index.vue` 两处:模板 `:checked="record.isAdmin == 1"` → `:checked="record.isAdmin"`;`updateIsAdmin` 改为 `row.isAdmin = !row.isAdmin;`。与 `User` 模型严格一致。 +- 不改:`admin` 第294行 `isAdmin: 1` 是查询条件(`UserParam.isAdmin?: number`),语义正确。 +- 验证:`vue-tsc --noEmit` 确认改动无新增错误;旧写法已无残留。 ### 备注 - 方案中的「Batch 3 长期维护项」(admin/user 组件合并、导入模板配置化、search.vue 重命名)本次未执行,属可选重构,风险较高,留待后续。 diff --git a/src/views/system/admin/index.vue b/src/views/system/admin/index.vue index d2d5501..9c1d2f4 100644 --- a/src/views/system/admin/index.vue +++ b/src/views/system/admin/index.vue @@ -75,7 +75,7 @@ @@ -389,7 +389,7 @@ /* 修改用户状态 */ const updateIsAdmin = (row: User) => { - row.isAdmin = row.isAdmin ? 0 : 1; + row.isAdmin = !row.isAdmin; updateUser(row) .then((msg) => { message.success(msg);