角色增删改查

role1.0
fanluyan 1 year ago
parent dc83c28dc5
commit c71cfda1d8

@ -219,6 +219,10 @@ export default {
index: "/userManagement", index: "/userManagement",
title: "用户管理", title: "用户管理",
}, },
{
index: "/roleManagement",
title: "角色管理",
},
// { // {
// index: "/globalTools", // index: "/globalTools",
// title: "", // title: "",

@ -738,7 +738,10 @@ export function deleteRole(data) {
return request({ return request({
url: "/xymanager/role/delete", url: "/xymanager/role/delete",
method: "post", method: "post",
data, params: data,
headers: {
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
},
}); });
} }

@ -29,7 +29,6 @@ service.interceptors.response.use(
// console.log(error); // console.log(error);
// return Promise.reject(); // return Promise.reject();
// } // }
(response) => { (response) => {
const res = response.data; const res = response.data;
if (res.code !== 200) { if (res.code !== 200) {
@ -40,19 +39,30 @@ service.interceptors.response.use(
// duration: 5 * 1000, // duration: 5 * 1000,
// }); // });
if (res.code === 401) { if (res.code === 401) {
Message({ message: res.msg, type: "error", duration: 1500 }); Message({
showClose: true,
message: res.msg,
type: "error",
duration: 1500,
});
localStorage.removeItem("token"); localStorage.removeItem("token");
router.push("/login"); router.push("/login");
} }
if (res.code === 400) { if (res.code === 400) {
Message({ message: res.msg, type: "error", duration: 1500 }); Message({
showClose: true,
message: res.msg,
type: "error",
duration: 1500,
});
} }
if (res.code === 500) { if (res.code === 500) {
//alert(res.msg || "Error");
Message({ Message({
showClose: true, showClose: true,
message: 服务器错误(500), message: res.msg,
type: "error", type: "error",
duration: 1500, duration: 1500,
}); });

@ -14,10 +14,10 @@
:rules="title == '新增' ? rules : xgrules" :rules="title == '新增' ? rules : xgrules"
:model="formdata" :model="formdata"
> >
<el-form-item label="角色名称:" prop="roleName"> <el-form-item label="角色名称:" prop="name">
<el-input <el-input
placeholder="请输入角色名称" placeholder="请输入角色名称"
v-model="formdata.roleName" v-model="formdata.name"
autocomplete="off" autocomplete="off"
></el-input> ></el-input>
</el-form-item> </el-form-item>
@ -29,7 +29,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import { addUserApi, updateUserApi } from "@/utils/api/index"; import { addRole, updateRole } from "@/utils/api/index";
export default { export default {
props: { props: {
title: String, title: String,
@ -41,14 +41,10 @@ export default {
formdata: {}, formdata: {},
rules: { rules: {
roleName: [ name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
{ required: true, message: "请输入用户名", trigger: "blur" },
],
}, },
xgrules: { xgrules: {
roleName: [ name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
{ required: true, message: "请输入用户名", trigger: "blur" },
],
}, },
}; };
}, },
@ -69,7 +65,7 @@ export default {
this.$refs.formInfo.validate((valid) => { this.$refs.formInfo.validate((valid) => {
if (valid) { if (valid) {
if (this.title == "新增") { if (this.title == "新增") {
addUserApi(this.formdata) addRole(this.formdata)
.then((res) => { .then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.$message({ this.$message({
@ -85,7 +81,7 @@ export default {
}) })
.catch((err) => {}); .catch((err) => {});
} else { } else {
updateUserApi(this.formdata) updateRole(this.formdata)
.then((res) => { .then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.$message.success("修改成功"); this.$message.success("修改成功");

@ -0,0 +1,102 @@
<template>
<el-dialog
class="addUserDialog"
title="权限绑定"
:visible.sync="isShow"
:close-on-click-modal="false"
width="470px"
@close="handleclose"
>
绑定权限
<div slot="footer" class="dialog-footer">
<el-button @click="isShow = false"> </el-button>
<el-button type="primary" @click="submitForm()"> </el-button>
</div>
</el-dialog>
</template>
<script>
import { addRole, updateRole } from "@/utils/api/index";
export default {
props: {},
data() {
return {
roleUser: "",
isShow: false,
formdata: {},
rules: {
name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
},
xgrules: {
name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
},
};
},
methods: {
//
getdataform(val) {
this.formdata = JSON.parse(JSON.stringify(val));
},
//
submitForm() {
this.$refs.formInfo.validate((valid) => {
if (valid) {
if (this.title == "新增") {
addRole(this.formdata)
.then((res) => {
if (res.code == 200) {
this.$message({
duration: 1500,
showClose: true,
message: "添加成功",
type: "success",
});
this.isShow = false;
} else {
this.$message.error(res.msg);
}
})
.catch((err) => {});
} else {
updateRole(this.formdata)
.then((res) => {
if (res.code == 200) {
this.$message.success("修改成功");
this.isShow = false;
} else {
this.$message.error(res.msg);
}
})
.catch((err) => {});
}
} else {
console.log("error submit!!");
return false;
}
});
},
display() {
this.isShow = true;
this.roleUser = localStorage.getItem("role");
},
hide() {
this.isShow = false;
},
handleclose() {
this.$parent.roleListAll();
},
},
mounted() {},
};
</script>
<style lang="less">
.addUserDialog {
.el-form-item {
.el-input,
.el-select,
.el-input-number {
width: 100%;
}
}
}
</style>

@ -20,10 +20,15 @@
<template slot="empty"> <template slot="empty">
<el-empty :image-size="160" description="暂无数据"></el-empty> <el-empty :image-size="160" description="暂无数据"></el-empty>
</template> </template>
<el-table-column
label="ID"
show-overflow-tooltip
prop="id"
></el-table-column>
<el-table-column <el-table-column
label="角色" label="角色"
show-overflow-tooltip show-overflow-tooltip
prop="userName" prop="name"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
@ -42,6 +47,9 @@
type="text" type="text"
>修改</el-button >修改</el-button
> >
<el-button @click.native.stop="handleBlind(scope.row)" type="text"
>权限绑定</el-button
>
<el-button <el-button
type="text" type="text"
class="deleteText" class="deleteText"
@ -67,16 +75,20 @@
</div> </div>
<!-- 新增 --> <!-- 新增 -->
<addRole :title="title" ref="adduserref"></addRole> <addRole :title="title" ref="adduserref"></addRole>
<!-- 权限绑定 -->
<blindPermiss ref="blindPermissRef"></blindPermiss>
</div> </div>
</template> </template>
<script> <script>
import addRole from "./components/addRole.vue"; import addRole from "./components/addRole.vue";
import blindPermiss from "./components/blindPermiss.vue";
import { getRoleList, deleteRole } from "@/utils/api/index"; import { getRoleList, deleteRole } from "@/utils/api/index";
export default { export default {
name: "roleManagement", name: "roleManagement",
components: { components: {
addRole, addRole,
blindPermiss,
}, },
data() { data() {
return { return {
@ -96,7 +108,7 @@ export default {
roleListAll() { roleListAll() {
getRoleList() getRoleList()
.then((res) => { .then((res) => {
this.roleTableData = res.data.list; this.roleTableData = res.data;
this.total = res.data.total; this.total = res.data.total;
}) })
.catch((err) => {}); .catch((err) => {});
@ -115,6 +127,11 @@ export default {
this.$refs.adduserref.display(); this.$refs.adduserref.display();
this.$refs.adduserref.getdataform(null); this.$refs.adduserref.getdataform(null);
}, },
//
handleBlind(data) {
this.$refs.blindPermissRef.display();
this.$refs.blindPermissRef.getdataform(data);
},
// //
handleResive(data) { handleResive(data) {
@ -125,17 +142,19 @@ export default {
// //
handleDelete(data) { handleDelete(data) {
console.log(data);
this.$confirm("确定要删除记录吗,同时删除关联关系?", "提示", { this.$confirm("确定要删除记录吗,同时删除关联关系?", "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
deleteRole({ uid: data.userId }).then((res) => { deleteRole({ id: data.id }).then((res) => {
console.log(res.code);
if (res.code == 200) { if (res.code == 200) {
this.$message.success("删除成功"); this.$message.success("删除成功");
this.roleListAll(); // this.roleListAll(); //
} else { } else if (res.code == 400) {
this.$message.error(res.msg); this.$message.error(res.msg);
} }
}); });

@ -49,6 +49,7 @@
type="text" type="text"
>修改</el-button >修改</el-button
> >
<el-button <el-button
type="text" type="text"
class="deleteText" class="deleteText"

@ -31,5 +31,8 @@ module.exports = defineConfig({
}, },
}, },
}, },
client: {
overlay: false,
},
}, },
}); });

Loading…
Cancel
Save