feat:角色 role 的数据权限 50%

This commit is contained in:
YunaiV
2025-03-31 15:47:48 +08:00
parent 9f48aeb434
commit 108d13b896
4 changed files with 242 additions and 10 deletions

View File

@@ -15,6 +15,7 @@ import { Plus, Download } from '@vben/icons';
import { useGridColumns, useGridFormSchema } from './data';
import Form from './modules/form.vue';
import AssignDataPermissionForm from './modules/assign-data-permission-form.vue';
import { downloadByData } from '#/utils/download';
const [FormModal, formModalApi] = useVbenModal({
@@ -22,6 +23,11 @@ const [FormModal, formModalApi] = useVbenModal({
destroyOnClose: true,
});
const [AssignDataPermissionFormModel, assignDataPermissionFormApi] = useVbenModal({
connectedComponent: AssignDataPermissionForm,
destroyOnClose: true,
});
/** 编辑角色 */
function onEdit(row: SystemRoleApi.SystemRole) {
formModalApi.setData(row).open();
@@ -51,15 +57,27 @@ async function onDelete(row: SystemRoleApi.SystemRole) {
}
}
/** 分配角色的数据权限 */
function onAssignDataPermission(row: SystemRoleApi.SystemRole) {
assignDataPermissionFormApi.setData(row).open();
}
/** 表格操作按钮的回调函数 */
function onActionClick(e: OnActionClickParams<SystemRoleApi.SystemRole>) {
switch (e.code) {
function onActionClick({
code,
row
}: OnActionClickParams<SystemRoleApi.SystemRole>) {
switch (code) {
case 'delete': {
onDelete(e.row);
onDelete(row);
break;
}
case 'edit': {
onEdit(e.row);
onEdit(row);
break;
}
case 'assign-data-permission': {
onAssignDataPermission(row);
break;
}
}
@@ -110,6 +128,7 @@ async function onExport() {
<template>
<Page auto-content-height>
<FormModal @success="onRefresh" />
<AssignDataPermissionFormModel @success="onRefresh" />
<Grid table-title="角色列表">
<template #toolbar-tools>
<Button type="primary" @click="onCreate">