From 90922844ea9d710a787c1c4aa8521dd4d8651a11 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Thu, 17 Apr 2025 15:36:18 +0800
Subject: [PATCH] 优化角色禁用不允许分配
---
ruoyi-ui/src/views/system/user/authRole.vue | 28 +++++++++++++++++-----------
1 files changed, 17 insertions(+), 11 deletions(-)
diff --git a/ruoyi-ui/src/views/system/user/authRole.vue b/ruoyi-ui/src/views/system/user/authRole.vue
index e0cd7bc..efbda65 100644
--- a/ruoyi-ui/src/views/system/user/authRole.vue
+++ b/ruoyi-ui/src/views/system/user/authRole.vue
@@ -9,8 +9,8 @@
</el-form-item>
</el-col>
<el-col :span="8" :offset="2">
- <el-form-item label="登录账号" prop="phonenumber">
- <el-input v-model="form.userName" disabled />
+ <el-form-item label="登录账号" prop="userName">
+ <el-input v-model="form.userName" disabled />
</el-form-item>
</el-col>
</el-row>
@@ -20,10 +20,10 @@
<el-table v-loading="loading" :row-key="getRowKey" @row-click="clickRow" ref="table" @selection-change="handleSelectionChange" :data="roles.slice((pageNum-1)*pageSize,pageNum*pageSize)">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
- <span>{{(pageNum - 1) * pageSize + scope.$index + 1}}</span>
+ <span>{{ (pageNum - 1) * pageSize + scope.$index + 1 }}</span>
</template>
</el-table-column>
- <el-table-column type="selection" :reserve-selection="true" width="55"></el-table-column>
+ <el-table-column type="selection" :reserve-selection="true" :selectable="checkSelectable" width="55" />
<el-table-column label="角色编号" align="center" prop="roleId" />
<el-table-column label="角色名称" align="center" prop="roleName" />
<el-table-column label="权限字符" align="center" prop="roleKey" />
@@ -33,7 +33,7 @@
</template>
</el-table-column>
</el-table>
-
+
<pagination v-show="total>0" :total="total" :page.sync="pageNum" :limit.sync="pageSize" />
<el-form label-width="100px">
@@ -52,14 +52,14 @@
name: "AuthRole",
data() {
return {
- // 遮罩层
+ // 遮罩层
loading: true,
// 分页信息
total: 0,
pageNum: 1,
pageSize: 10,
// 选中角色编号
- roleIds:[],
+ roleIds: [],
// 角色信息
roles: [],
// 用户信息
@@ -88,7 +88,9 @@
methods: {
/** 单击选中行数据 */
clickRow(row) {
- this.$refs.table.toggleRowSelection(row);
+ if (this.checkSelectable(row)) {
+ this.$refs.table.toggleRowSelection(row);
+ }
},
// 多选框选中数据
handleSelectionChange(selection) {
@@ -98,19 +100,23 @@
getRowKey(row) {
return row.roleId;
},
+ // 检查角色状态
+ checkSelectable(row) {
+ return row.status === "0" ? true : false;
+ },
/** 提交按钮 */
submitForm() {
const userId = this.form.userId;
const roleIds = this.roleIds.join(",");
updateAuthRole({ userId: userId, roleIds: roleIds }).then((response) => {
- this.msgSuccess("授权成功");
+ this.$modal.msgSuccess("授权成功");
this.close();
});
},
/** 关闭按钮 */
close() {
- this.$store.dispatch("tagsView/delView", this.$route);
- this.$router.push({ path: "/system/user" });
+ const obj = { path: "/system/user" };
+ this.$tab.closeOpenPage(obj);
},
},
};
--
Gitblit v1.9.3