diff --git a/src/views/permissions/permission.vue b/src/views/permissions/permission.vue index d14fe24..1b4eced 100644 --- a/src/views/permissions/permission.vue +++ b/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() @@ -499,7 +499,7 @@ const permissionEdit = async function () { market: permissionEditObj.value.market,//地区 postiton: permissionEditObj.value.postiton,//职位 roleId: permissionEditObj.value.roleId,//角色id - machineId: permissionEditObj.value.machineId,//机器码 + machineId: permissionEditObj.value.machineIds[0],//机器码 machineIds: permissionEditObj.value.machineIds[1],//机器码 password: permissionEditObj.value.password,// remark: permissionEditObj.value.remark//备注 @@ -516,7 +516,7 @@ const permissionEdit = async function () { } ); get(); - }else{ + } else { ElMessage.error(result.msg) } @@ -579,6 +579,15 @@ const delRoleConfirm = async function () { } const handleAddRole = async function () { try { + await new Promise((resolve, reject) => { + Ref.value.validate((valid) => { + if (valid) { + resolve(); // 验证通过,继续执行后续代码 + } else { + reject(new Error('请检查并完善表单信息')); // 验证失败,抛出错误 + } + }); + }); const res = await API({ @@ -656,8 +665,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) @@ -723,6 +732,20 @@ onMounted(async function () { await getRoleList() 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' } + ] +});