微调
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<el-dialog :title="dialogTitle" :model-value="dialogVisible" @close="close" v-bind="dialogMiddle">
|
||||
<el-form :model="formContent" ref='formRuleRef' :rules='rules' >
|
||||
<el-form :model="formContent" ref='dialogFormRef' :rules='rules' >
|
||||
<el-form-item label="上级菜单" prop="pid" :label-width="100">
|
||||
<el-tree-select
|
||||
v-model="value"
|
||||
@@ -29,7 +29,7 @@
|
||||
<el-input v-model="formContent.component" />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort" :label-width="100">
|
||||
<el-input-number v-model="formContent.sort" />
|
||||
<el-input-number v-model="formContent.sort" :min='1' :max='999' />
|
||||
</el-form-item>
|
||||
<el-form-item label="类型" prop="type" :label-width="100">
|
||||
<el-select v-model="formContent.type" placeholder="请选择资源类型">
|
||||
@@ -60,9 +60,10 @@
|
||||
import { ElMessage, FormInstance, FormItemRule } from 'element-plus'
|
||||
import { useDictStore } from '@/stores/modules/dict'
|
||||
import { type Function } from '@/api/function/interface'
|
||||
import {addFunction,updateFunction,} from '@/api/function/index.ts'
|
||||
import {addFunction,updateFunction,getFunctionListNoButton} from '@/api/function/index.ts'
|
||||
import IconSelect from '@/components/SelectIcon/index.vue'
|
||||
import { functionList } from '@/api/function/functionExample.ts'
|
||||
import { min } from 'lodash';
|
||||
const value = ref()
|
||||
|
||||
const data = [
|
||||
@@ -203,30 +204,23 @@ const close = () => {
|
||||
// 保存数据
|
||||
const save = () => {
|
||||
try {
|
||||
console.log(formContent.value)
|
||||
dialogFormRef.value?.validate(async (valid: boolean) => {
|
||||
console.log(valid)
|
||||
if (valid) {
|
||||
if (formContent.value.id) {
|
||||
const result = await updateFunction(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await updateFunction(formContent.value);
|
||||
} else {
|
||||
const result = await addFunction(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await addFunction(formContent.value);
|
||||
}
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
close()
|
||||
// 刷新表格
|
||||
await props.refreshTable!()
|
||||
}
|
||||
})
|
||||
} catch (err) {
|
||||
console.error('验证过程中出现错误', err)
|
||||
//console.error('验证过程中出现错误', err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,15 +4,12 @@
|
||||
ref='proTable'
|
||||
:columns='columns'
|
||||
:request-api='getFunctionList'
|
||||
:pagination="false"
|
||||
>
|
||||
<!-- :data='userData' -->
|
||||
<!-- 表格 header 按钮 -->
|
||||
<template #tableHeader='scope'>
|
||||
<template #tableHeader>
|
||||
<el-button type='primary' :icon='CirclePlus' @click="openDialog('add')">新增</el-button>
|
||||
<el-button type='danger' :icon='Delete' plain :disabled='!scope.isSelected'
|
||||
@click='batchDelete(scope.selectedListIds)'>
|
||||
批量删除
|
||||
</el-button>
|
||||
</template>
|
||||
<!-- 表格操作 -->
|
||||
<template #operation='scope'>
|
||||
@@ -43,7 +40,7 @@
|
||||
|
||||
// 表格配置项
|
||||
const columns = reactive<ColumnProps<Function.ResFunction>[]>([
|
||||
{ type: 'selection', fixed: 'left', width: 70 },
|
||||
{ type: 'index', fixed: 'left', width: 70, label: '序号' },
|
||||
{
|
||||
prop: 'name',
|
||||
label: '名称',
|
||||
@@ -92,10 +89,12 @@ const openDialog = (titleType: string, row: Partial<Function.ResFunction> = {})
|
||||
|
||||
// 删除用户信息
|
||||
const handleDelete = async (params: Function.ResFunction) => {
|
||||
await useHandleData(deleteFunction, [params.id] , `删除【${params.name}】用户`)
|
||||
await useHandleData(deleteFunction, params , `删除【${params.name}】用户`)
|
||||
proTable.value?.getTableList()
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 批量删除用户信息
|
||||
const batchDelete = async (id: string[]) => {
|
||||
await useHandleData(deleteFunction, { id }, '删除所选用户信息')
|
||||
|
||||
@@ -105,27 +105,18 @@ const close = () => {
|
||||
dialogFormRef.value?.validate(async (valid: boolean) => {
|
||||
if (valid) {
|
||||
if (formContent.value.id) {
|
||||
const result = await editRole(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await editRole(formContent.value);
|
||||
} else {
|
||||
const result = await addRole(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await addRole(formContent.value);
|
||||
}
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
close()
|
||||
// 刷新表格
|
||||
await props.refreshTable!()
|
||||
}
|
||||
})
|
||||
} catch (err) {
|
||||
console.error('验证过程中出现错误', err)
|
||||
//error('验证过程中出现错误', err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -100,14 +100,13 @@ const close = () => {
|
||||
if (formContent.value.id) {
|
||||
// 获取勾选的节点 ID
|
||||
const checkedKeys = treeRef.value?.getCheckedKeys() || [];
|
||||
console.log('获取勾选的节点 ID',checkedKeys);
|
||||
|
||||
// 将 checkedKeys 转换为字符串数组
|
||||
const checkedKeysAsString: string[] = checkedKeys.map(key => String(key));
|
||||
// 假设 RoleFunctionId 是一个对象,且需要 id 属性
|
||||
const roleFunctionIdObject: Role.RoleFunctionId = {
|
||||
id: checkedKeysAsString
|
||||
};
|
||||
console.log('roleFunctionIdObject',roleFunctionIdObject);
|
||||
const result = await assignFunction(formContent.value,roleFunctionIdObject);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
@@ -136,12 +135,10 @@ const open = async (sign: string, data: Role.RoleBO, AllFunction: Function.ResFu
|
||||
if (result.code === 'A0000') {
|
||||
// 将 result.data 转换为 Function.ResFunction[] 类型
|
||||
const roleFunctions = result.data as Function.ResFunction[];
|
||||
console.log('roleFunctions',roleFunctions)
|
||||
// 获取 AllFunction 中所有层级的 id
|
||||
const allIds = getAllIds(AllFunction);
|
||||
// 匹配 roleFunctions 中的 id 并设置 checkedKeys
|
||||
const checkedKeys = allIds.filter(id => roleFunctions.some(roleFunc => roleFunc.id === id));
|
||||
console.log('checkedKeys',checkedKeys)
|
||||
// 设置 functionList 和 checkedKeys
|
||||
functionList.value = AllFunction;
|
||||
checkedKeysRef.value = checkedKeys;
|
||||
|
||||
@@ -79,7 +79,6 @@ const rules: Ref<Record<string, Array<FormItemRule>>> = ref({
|
||||
{ required: true, message: '确认密码必填!', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule: FormItemRule, value: string, callback: Function) => {
|
||||
console.log('1111')
|
||||
if (value !== formContent.value.newPassword) {
|
||||
callback(new Error('两次输入的密码不一致!'));
|
||||
} else {
|
||||
@@ -107,12 +106,8 @@ const rules: Ref<Record<string, Array<FormItemRule>>> = ref({
|
||||
dialogFormRef.value?.validate(async (valid: boolean) => {
|
||||
if (valid) {
|
||||
if (formContent.value.id) {
|
||||
const result = await updatePassWord(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: String(result.data)})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await updatePassWord(formContent.value);
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
close()
|
||||
// 刷新表格
|
||||
|
||||
@@ -133,20 +133,11 @@
|
||||
dialogFormRef.value?.validate(async (valid: boolean) => {
|
||||
if (valid) {
|
||||
if (formContent.value.id) {
|
||||
const result = await updateUser(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await updateUser(formContent.value);
|
||||
} else {
|
||||
const result = await addUser(formContent.value);
|
||||
if(result.code != 'A0000'){
|
||||
ElMessage.error({ message: result.message})
|
||||
}else{
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
}
|
||||
await addUser(formContent.value);
|
||||
}
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
close()
|
||||
// 刷新表格
|
||||
await props.refreshTable!()
|
||||
|
||||
Reference in New Issue
Block a user