From 48ba7d5ed69c932fa9bfcc28ca29a9f2c81d2465 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期五, 12 六月 2020 13:45:27 +0800
Subject: [PATCH] 修改用户管理复选框宽度,防止部分浏览器出现省略号
---
ruoyi-ui/src/views/system/role/index.vue | 122 +++++++++++++++++++++++++++++++---------
1 files changed, 93 insertions(+), 29 deletions(-)
diff --git a/ruoyi-ui/src/views/system/role/index.vue b/ruoyi-ui/src/views/system/role/index.vue
index 7f0feb9..658efc6 100644
--- a/ruoyi-ui/src/views/system/role/index.vue
+++ b/ruoyi-ui/src/views/system/role/index.vue
@@ -1,7 +1,7 @@
<template>
<div class="app-container">
- <el-form :inline="true">
- <el-form-item label="角色名称">
+ <el-form :model="queryParams" ref="queryForm" :inline="true">
+ <el-form-item label="角色名称" prop="roleName">
<el-input
v-model="queryParams.roleName"
placeholder="请输入角色名称"
@@ -11,7 +11,7 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="权限字符">
+ <el-form-item label="权限字符" prop="roleKey">
<el-input
v-model="queryParams.roleKey"
placeholder="请输入权限字符"
@@ -21,7 +21,7 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="状态">
+ <el-form-item label="状态" prop="status">
<el-select
v-model="queryParams.status"
placeholder="角色状态"
@@ -51,6 +51,12 @@
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
<el-button
type="primary"
icon="el-icon-plus"
@@ -58,15 +64,45 @@
@click="handleAdd"
v-hasPermi="['system:role:add']"
>新增</el-button>
- </el-form-item>
- </el-form>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['system:role:edit']"
+ >修改</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['system:role:remove']"
+ >删除</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['system:post:export']"
+ >导出</el-button>
+ </el-col>
+ </el-row>
- <el-table v-loading="loading" :data="roleList">
+ <el-table v-loading="loading" :data="roleList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
<el-table-column label="角色编号" prop="roleId" width="120" />
<el-table-column label="角色名称" prop="roleName" :show-overflow-tooltip="true" width="150" />
- <el-table-column label="权限字符" prop="roleKey" :show-overflow-tooltip="true" width="180" />
- <el-table-column label="显示顺序" prop="roleSort" width="120" />
- <el-table-column label="状态" align="center" width="120">
+ <el-table-column label="权限字符" prop="roleKey" :show-overflow-tooltip="true" width="150" />
+ <el-table-column label="显示顺序" prop="roleSort" width="100" />
+ <el-table-column label="状态" align="center" width="100">
<template slot-scope="scope">
<el-switch
v-model="scope.row.status"
@@ -117,7 +153,7 @@
/>
<!-- 添加或修改角色配置对话框 -->
- <el-dialog :title="title" :visible.sync="open" width="500px">
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="角色名称" prop="roleName">
<el-input v-model="form.roleName" placeholder="请输入角色名称" />
@@ -158,7 +194,7 @@
</el-dialog>
<!-- 分配角色数据权限对话框 -->
- <el-dialog :title="title" :visible.sync="openDataScope" width="500px">
+ <el-dialog :title="title" :visible.sync="openDataScope" width="500px" append-to-body>
<el-form :model="form" label-width="80px">
<el-form-item label="角色名称">
<el-input v-model="form.roleName" :disabled="true" />
@@ -197,15 +233,22 @@
</template>
<script>
-import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus } from "@/api/system/role";
+import { listRole, getRole, delRole, addRole, updateRole, exportRole, dataScope, changeRoleStatus } from "@/api/system/role";
import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu";
import { treeselect as deptTreeselect, roleDeptTreeselect } from "@/api/system/dept";
export default {
+ name: "Role",
data() {
return {
// 遮罩层
loading: true,
+ // 选中数组
+ ids: [],
+ // 非单个禁用
+ single: true,
+ // 非多个禁用
+ multiple: true,
// 总条数
total: 0,
// 角色表格数据
@@ -326,15 +369,15 @@
/** 根据角色ID查询菜单树结构 */
getRoleMenuTreeselect(roleId) {
roleMenuTreeselect(roleId).then(response => {
- this.getMenuTreeselect();
- this.$refs.menu.setCheckedKeys(response.data);
+ this.menuOptions = response.menus;
+ this.$refs.menu.setCheckedKeys(response.checkedKeys);
});
},
/** 根据角色ID查询部门树结构 */
getRoleDeptTreeselect(roleId) {
roleDeptTreeselect(roleId).then(response => {
- this.getDeptTreeselect();
- this.$refs.dept.setCheckedKeys(response.data);
+ this.deptOptions = response.depts;
+ this.$refs.dept.setCheckedKeys(response.checkedKeys);
});
},
// 角色状态修改
@@ -364,8 +407,8 @@
},
// 表单重置
reset() {
- if (this.$refs.tree != undefined) {
- this.$refs.tree.setCheckedKeys([]);
+ if (this.$refs.menu != undefined) {
+ this.$refs.menu.setCheckedKeys([]);
}
this.form = {
roleId: undefined,
@@ -384,6 +427,18 @@
this.queryParams.pageNum = 1;
this.getList();
},
+ /** 重置按钮操作 */
+ resetQuery() {
+ this.dateRange = [];
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 多选框选中数据
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.roleId)
+ this.single = selection.length!=1
+ this.multiple = !selection.length
+ },
/** 新增按钮操作 */
handleAdd() {
this.reset();
@@ -394,10 +449,11 @@
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
+ const roleId = row.roleId || this.ids
this.$nextTick(() => {
- this.getRoleMenuTreeselect(row.roleId);
+ this.getRoleMenuTreeselect(roleId);
});
- getRole(row.roleId).then(response => {
+ getRole(roleId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改角色";
@@ -426,8 +482,6 @@
this.msgSuccess("修改成功");
this.open = false;
this.getList();
- } else {
- this.msgError(response.msg);
}
});
} else {
@@ -437,8 +491,6 @@
this.msgSuccess("新增成功");
this.open = false;
this.getList();
- } else {
- this.msgError(response.msg);
}
});
}
@@ -454,24 +506,36 @@
this.msgSuccess("修改成功");
this.openDataScope = false;
this.getList();
- } else {
- this.msgError(response.msg);
}
});
}
},
/** 删除按钮操作 */
handleDelete(row) {
- this.$confirm('是否确认删除名称为"' + row.roleName + '"的数据项?', "警告", {
+ const roleIds = row.roleId || this.ids;
+ this.$confirm('是否确认删除角色编号为"' + roleIds + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(function() {
- return delRole(row.roleId);
+ return delRole(roleIds);
}).then(() => {
this.getList();
this.msgSuccess("删除成功");
}).catch(function() {});
+ },
+ /** 导出按钮操作 */
+ handleExport() {
+ const queryParams = this.queryParams;
+ this.$confirm('是否确认导出所有角色数据项?', "警告", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning"
+ }).then(function() {
+ return exportRole(queryParams);
+ }).then(response => {
+ this.download(response.msg);
+ }).catch(function() {});
}
}
};
--
Gitblit v1.9.2