chore: 调整间距

This commit is contained in:
dap 2025-01-06 10:48:28 +08:00
parent 78806a0933
commit d50b4fa47c
4 changed files with 18 additions and 11 deletions

View File

@ -2,9 +2,10 @@ import type { VxeGridProps } from '#/adapter/vxe-table';
import type { ID } from '#/api/common';
import type { MenuOption } from '#/api/system/menu/model';
import { FolderIcon, MenuIcon, OkButtonIcon, VbenIcon } from '@vben/icons';
import { h, markRaw } from 'vue';
import { FolderIcon, MenuIcon, OkButtonIcon, VbenIcon } from '@vben/icons';
export interface Permission {
checked: boolean;
id: ID;

View File

@ -1,8 +1,9 @@
import type { MenuOption } from '#/api/system/menu/model';
import type { MenuPermissionOption } from './data';
import type { MenuOption } from '#/api/system/menu/model';
import { eachTree } from '@vben/utils';
import { difference } from 'lodash-es';
/**

View File

@ -1,14 +1,17 @@
<script setup lang="tsx">
import type { MenuPermissionOption } from './data';
import type { VxeGridProps } from '#/adapter/vxe-table';
import type { MenuOption } from '#/api/system/menu/model';
import type { MenuPermissionOption } from './data';
import { nextTick, onMounted, ref, watch } from 'vue';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
import { cloneDeep, findGroupParentIds } from '@vben/utils';
import { Alert, Checkbox, RadioGroup, Space } from 'ant-design-vue';
import { uniq } from 'lodash-es';
import { nextTick, onMounted, ref, watch } from 'vue';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
import { columns, nodeOptions } from './data';
import { menusWithPermissions, rowAndChildrenChecked } from './helper';
@ -339,7 +342,7 @@ defineExpose({
/>
<Alert class="mx-2" type="info">
<template #message>
<div v-if="tableApi?.grid">
<div>
已选中
<span class="text-primary mx-1 font-semibold">
{{ checkedNum }}
@ -361,7 +364,7 @@ defineExpose({
</Space>
</template>
<template #permissions="{ row }">
<div class="flex flex-wrap gap-3">
<div class="flex flex-wrap gap-x-3 gap-y-1">
<Checkbox
v-for="permission in row.permissions"
:key="permission.id"

View File

@ -3,7 +3,9 @@ import type { CheckboxChangeEvent } from 'ant-design-vue/es/checkbox/interface';
import type { DataNode } from 'ant-design-vue/es/tree';
import type { CheckInfo } from 'ant-design-vue/es/vc-tree/props';
import { computed, nextTick, onMounted, type PropType, ref, watch } from 'vue';
import type { PropType } from 'vue';
import { computed, nextTick, onMounted, ref, watch } from 'vue';
import { findGroupParentIds, treeToList } from '@vben/utils';
@ -108,8 +110,8 @@ const stop = watch([checkedKeys, () => props.treeData], () => {
* @param info info.halfCheckedKeys为父节点的ID
*/
type CheckedState<T = number | string> =
| { checked: T[]; halfChecked: T[] }
| T[];
| T[]
| { checked: T[]; halfChecked: T[] };
function handleChecked(checkedStateKeys: CheckedState, info: CheckInfo) {
//
if (Array.isArray(checkedStateKeys)) {