fix(system-admin): 统一 isAdmin 类型为布尔值
- 修复 admin/index.vue 中 isAdmin 的类型不一致问题 - 修改模板中判断逻辑,将 record.isAdmin == 1 改为 record.isAdmin - 调整 updateIsAdmin 函数,改为取反布尔值方式赋值 - 使用 vue-tsc --noEmit 验证确认无新增类型错误 - 清理了自引入未使用变量的 TS6133 警告
This commit is contained in:
@@ -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 重命名)本次未执行,属可选重构,风险较高,留待后续。
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
</template>
|
||||
<template v-if="column.key === 'isAdmin'">
|
||||
<a-switch
|
||||
:checked="record.isAdmin == 1"
|
||||
:checked="record.isAdmin"
|
||||
@change="updateIsAdmin(record)"
|
||||
/>
|
||||
</template>
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user