mirror of
https://github.com/m-xlsea/ruoyi-plus-soybean.git
synced 2025-09-24 07:49:47 +08:00
chore: 优化字典hooks使用
This commit is contained in:
@ -4,16 +4,19 @@ import { useBoolean, useLoading } from '@sa/hooks';
|
||||
import type { DataTableColumns, TreeInst, TreeOption } from 'naive-ui';
|
||||
import { NButton, NIcon, NInput, NPopconfirm, NTooltip } from 'naive-ui';
|
||||
import { fetchDeleteMenu, fetchGetMenuList } from '@/service/api/system';
|
||||
import SvgIcon from '@/components/custom/svg-icon.vue';
|
||||
import { useAppStore } from '@/store/modules/app';
|
||||
import { menuIsFrameRecord, menuTypeRecord } from '@/constants/business';
|
||||
import ButtonIcon from '@/components/custom/button-icon.vue';
|
||||
import { $t } from '@/locales';
|
||||
import { handleMenuTree } from '@/utils/ruoyi';
|
||||
import StatusTag from '@/components/custom/status-tag.vue';
|
||||
import { useDict } from '@/hooks/business/dict';
|
||||
import SvgIcon from '@/components/custom/svg-icon.vue';
|
||||
import DictTag from '@/components/custom/dict-tag.vue';
|
||||
import ButtonIcon from '@/components/custom/button-icon.vue';
|
||||
import MenuOperateDrawer from './modules/menu-operate-drawer.vue';
|
||||
|
||||
useDict('sys_show_hide');
|
||||
useDict('sys_normal_disable');
|
||||
|
||||
const appStore = useAppStore();
|
||||
const editingData = ref<Api.System.Menu>();
|
||||
const operateType = ref<NaiveUI.TableOperateType>('add');
|
||||
@ -207,7 +210,7 @@ const btnColumns: DataTableColumns<Api.System.Menu> = [
|
||||
minWidth: 80,
|
||||
align: 'center',
|
||||
render(row) {
|
||||
return <StatusTag size="small" value={row.status} />;
|
||||
return <DictTag size="small" value={row.status} dict-code="sys_normal_disable" />;
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -259,8 +262,6 @@ const btnColumns: DataTableColumns<Api.System.Menu> = [
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
const { record: showHideRecord } = useDict('sys_show_hide');
|
||||
</script>
|
||||
|
||||
<template>
|
||||
@ -367,7 +368,7 @@ const { record: showHideRecord } = useDict('sys_show_hide');
|
||||
<NTag size="small" type="primary">{{ menuTypeRecord[currentMenu.menuType!] }}</NTag>
|
||||
</NDescriptionsItem>
|
||||
<NDescriptionsItem label="菜单状态">
|
||||
<StatusTag size="small" :value="currentMenu.status" />
|
||||
<DictTag size="small" :value="currentMenu.status" dict-code="sys_normal_disable" />
|
||||
</NDescriptionsItem>
|
||||
<NDescriptionsItem label="菜单名称">{{ currentMenu.menuName }}</NDescriptionsItem>
|
||||
<NDescriptionsItem v-if="currentMenu.menuType === 'C'" label="组件路径">
|
||||
@ -391,9 +392,7 @@ const { record: showHideRecord } = useDict('sys_show_hide');
|
||||
</NTag>
|
||||
</NDescriptionsItem>
|
||||
<NDescriptionsItem label="显示状态">
|
||||
<NTag v-if="currentMenu.visible" size="small" :type="tagMap[currentMenu.visible]">
|
||||
{{ showHideRecord[currentMenu.visible] }}
|
||||
</NTag>
|
||||
<DictTag size="small" :value="currentMenu.visible" dict-code="sys_show_hide" />
|
||||
</NDescriptionsItem>
|
||||
<NDescriptionsItem v-if="currentMenu.menuType === 'C'" label="是否缓存">
|
||||
<NTag v-if="currentMenu.isCache" size="small" :type="tagMap[currentMenu.isCache]">
|
||||
|
@ -9,7 +9,6 @@ import { menuIconTypeOptions, menuIsFrameOptions, menuTypeOptions } from '@/cons
|
||||
import SvgIcon from '@/components/custom/svg-icon.vue';
|
||||
import { getLocalMenuIcons } from '@/utils/icon';
|
||||
import { humpToLine, isNotNull } from '@/utils/common';
|
||||
import { useDict } from '@/hooks/business/dict';
|
||||
|
||||
defineOptions({
|
||||
name: 'MenuOperateDrawer'
|
||||
@ -40,9 +39,6 @@ const visible = defineModel<boolean>('visible', {
|
||||
default: false
|
||||
});
|
||||
|
||||
const { options: showHideOptions } = useDict('sys_show_hide', false);
|
||||
const { options: enableStatusOptions } = useDict('sys_normal_disable');
|
||||
|
||||
const iconType = ref<Api.System.IconType>('1');
|
||||
const { formRef, validate, restoreValidation } = useNaiveForm();
|
||||
const { createRequiredRule } = useFormRules();
|
||||
@ -411,11 +407,7 @@ const FormTipComponent = defineComponent({
|
||||
<span class="pl-3px">显示状态</span>
|
||||
</div>
|
||||
</template>
|
||||
<NRadioGroup v-model:value="model.visible">
|
||||
<NSpace>
|
||||
<NRadio v-for="item in showHideOptions" :key="item.value" :value="item.value" :label="item.label" />
|
||||
</NSpace>
|
||||
</NRadioGroup>
|
||||
<DictRadio v-model:value="model.visible" dict-code="sys_show_hide" />
|
||||
</NFormItemGi>
|
||||
<NFormItemGi :span="12" path="status">
|
||||
<template #label>
|
||||
@ -424,11 +416,7 @@ const FormTipComponent = defineComponent({
|
||||
<span class="pl-3px">菜单状态</span>
|
||||
</div>
|
||||
</template>
|
||||
<NRadioGroup v-model:value="model.status">
|
||||
<NSpace>
|
||||
<NRadio v-for="item in enableStatusOptions" :key="item.value" :value="item.value" :label="item.label" />
|
||||
</NSpace>
|
||||
</NRadioGroup>
|
||||
<DictRadio v-model:value="model.status" dict-code="sys_normal_disable" />
|
||||
</NFormItemGi>
|
||||
<NFormItemGi :span="12" label="显示排序" path="orderNum">
|
||||
<NInputNumber v-model:value="model.orderNum" placeholder="请输入排序" />
|
||||
|
Reference in New Issue
Block a user