Browse Source

Merge branch 'refs/heads/milestone-20250711-金币前端二期' into lihui/feature-20250711103624-金币二期

zhangrenyuan/feature-20250714163943-金币前端二期
lihui 2 weeks ago
parent
commit
4b3c7767c5
  1. 69
      src/views/permissions/permission.vue

69
src/views/permissions/permission.vue

@ -256,12 +256,12 @@ const closeUserAddVisible = function () {
}
const closePermissionAddVisible = function () {
addRole.value = {
roleName: '',
parentId: null,
checkedKeys: [],
grade: '',
market: ''
}
roleName: '',
parentId: null,
checkedKeys: [],
grade: '',
market: ''
}
permissionAddVisible.value = false
Ref.value.resetFields();
getRoleList()
@ -500,6 +500,7 @@ const permissionEdit = async function () {
postiton: permissionEditObj.value.postiton,//
roleId: permissionEditObj.value.roleId,//id
machineId: permissionEditObj.value.machineIds[0],//
machineId: permissionEditObj.value.machineIds[0],//
machineIds: permissionEditObj.value.machineIds[1],//
password: permissionEditObj.value.password,//
remark: permissionEditObj.value.remark//
@ -516,7 +517,7 @@ const permissionEdit = async function () {
}
);
get();
}else{
} else {
ElMessage.error(result.msg)
}
@ -579,7 +580,7 @@ const delRoleConfirm = async function () {
}
const handleAddRole = async function () {
try {
await new Promise((resolve, reject) => {
await new Promise((resolve, reject) => {
Ref.value.validate((valid) => {
if (valid) {
resolve(); //
@ -665,8 +666,8 @@ const getLists = async function () {
data: { id: roleId }
})
data.value = res.data
if(addRole.value.parentId!=2){
data.value = data.value.filter(item => item.id!== 9);
if (addRole.value.parentId != 2) {
data.value = data.value.filter(item => item.id !== 9);
}
console.log('看看data', data.value)
console.log('parentID:', addRole.value.parentId, 'roleId:', roleId)
@ -733,19 +734,19 @@ onMounted(async function () {
await getAdminData()
})
const Rolerules = reactive({
roleName: [
{ required: true, message: '请输入角色名称', trigger: 'blur' },
{ min: 2, max: 20, message: '角色名称长度应在2-20个字符之间', trigger: 'blur' }
],
market: [
{ required: true, message: '请选择所属地区', trigger: 'change' }
],
grade: [
{ required: true, message: '请输入优先级', trigger: 'blur' },
{ pattern: /^[1-9]\d{0,2}$/, message: '优先级应为1-999的数字', trigger: 'blur' }
]
});
const Rolerules = reactive({
roleName: [
{ required: true, message: '请输入角色名称', trigger: 'blur' },
{ min: 2, max: 20, message: '角色名称长度应在2-20个字符之间', trigger: 'blur' }
],
market: [
{ required: true, message: '请选择所属地区', trigger: 'change' }
],
grade: [
{ required: true, message: '请输入优先级', trigger: 'blur' },
{ pattern: /^[1-9]\d{0,2}$/, message: '优先级应为1-999的数字', trigger: 'blur' }
]
});
</script>
<template>
@ -822,13 +823,13 @@ onMounted(async function () {
重置密码
</el-button>
<el-button type="primary" text @click="permissionEditInit(scope.row)"
:disabled="scope.row.adminStatus === 0 ||scope.row.account === adminData.account ">
:disabled="scope.row.adminStatus === 0 || scope.row.account === adminData.account">
修改权限
</el-button>
<el-popconfirm title="确定将此用户删除吗?" @confirm="delConfirm">
<template #reference>
<el-button type="danger" text @click="del(scope.row)"
:disabled="scope.row.adminStatus === 0 || scope.row.account === adminData.account">
:disabled="scope.row.adminStatus === 0 || scope.row.account === adminData.account">
删除
</el-button>
</template>
@ -843,8 +844,8 @@ onMounted(async function () {
</el-table-column>
<el-table-column prop="adminStatus" label="状态">
<template #default="scope">
<el-switch v-model="scope.row.adminStatus" :active-value="1" :inactive-value="0" size="large" :disabled="scope.row.account === adminData.account"
@change="editStatus(scope.row)" style="
<el-switch v-model="scope.row.adminStatus" :active-value="1" :inactive-value="0" size="large"
:disabled="scope.row.account === adminData.account" @change="editStatus(scope.row)" style="
--el-switch-on-color: #13ce66;
--el-switch-off-color: #ff4949;
" active-text="启用" inactive-text="禁用" inline-prompt />
@ -905,7 +906,8 @@ onMounted(async function () {
<template #default="scope">
<el-popconfirm title="确定将此角色删除吗?" @confirm="delRoleConfirm">
<template #reference>
<el-button type="danger" text @click="delRole(scope.row)" :disabled="scope.row.id === 1 || scope.row.id === 2">
<el-button type="danger" text @click="delRole(scope.row)"
:disabled="scope.row.id === 1 || scope.row.id === 2">
删除
</el-button>
</template>
@ -1053,7 +1055,8 @@ onMounted(async function () {
<!-- 新增角色 -->
<el-dialog v-model="permissionAddVisible" title="新增角色" width="800px" :close-on-click-modal="false">
<template #footer>
<el-form ref="Ref" :rules="Rolerules" :model="addRole" label-width="auto" style="max-width: 600px; align-items: center">
<el-form ref="Ref" :rules="Rolerules" :model="addRole" label-width="auto"
style="max-width: 600px; align-items: center">
<el-form-item prop="roleName" label="角色名称:" required>
<el-input v-model="addRole.roleName" placeholder="请输入用户名" style="width: 220px" />
</el-form-item>
@ -1069,12 +1072,16 @@ onMounted(async function () {
</el-select>
</el-form-item>
<el-form-item prop="checkedKeys" label="权限列表:" required>
<el-tree :data="data" show-checkbox node-key="id" :props="{ label: 'menuName', children: 'children' }"
:checked-keys="addRole.checkedKeys" @check="handleCheckChange">
<el-tree v-if="data.length > 0" :data="data" show-checkbox node-key="id"
:props="{ label: 'menuName', children: 'children' }" :checked-keys="addRole.checkedKeys"
@check="handleCheckChange">
<template #default="{ node, data }">
<span>{{ node.label }}</span>
</template>
</el-tree>
<div v-else style="display: flex; align-items: center; gap: 8px;">
<span style="color: #999;">暂无数据</span>
</div>
</el-form-item>
<el-form-item prop="grade" label="优先级:" required>
<el-input v-model="addRole.grade" placeholder="数字1~999" style="width: 220px" />

Loading…
Cancel
Save