style: configModal

This commit is contained in:
dap
2024-09-12 08:25:38 +08:00
parent 66738a63bf
commit f2c627b51e
6 changed files with 85 additions and 59 deletions

View File

@@ -115,3 +115,4 @@ export { useVbenForm, z };
export type VbenFormSchema = FormSchema<FormComponentType>;
export type { VbenFormProps };
export type FormSchemaGetter = () => VbenFormSchema[];

View File

@@ -6,7 +6,8 @@ import { $t } from '@vben/locales';
import { useVbenForm } from '#/adapter';
import { configAdd, configUpdate } from '#/api/system/config';
import { getDictOptions } from '#/utils/dict';
import { modalSchema } from './data';
const emit = defineEmits<{ reload: [] }>();
@@ -21,64 +22,7 @@ const title = computed(() => {
});
const [BasicForm, formApi] = useVbenForm({
schema: [
{
component: 'Input',
dependencies: {
show: () => false,
triggerFields: [''],
},
fieldName: 'configId',
label: '参数主键',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configName',
label: '参数名称',
rules: 'required',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configKey',
label: '参数键名',
rules: 'required',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configValue',
label: '参数键值',
rules: 'required',
},
{
component: 'RadioGroup',
componentProps: {
buttonStyle: 'solid',
options: getDictOptions('sys_yes_no'),
optionType: 'button',
},
defaultValue: 'N',
fieldName: 'configType',
label: '是否内置',
rules: 'required',
},
{
component: 'Textarea',
componentProps: {
placeholder: '请输入',
},
fieldName: 'remark',
label: '备注',
},
],
schema: modalSchema(),
showDefaultActions: false,
});

View File

@@ -0,0 +1,64 @@
import type { FormSchemaGetter } from '#/adapter';
import { DictEnum } from '@vben/constants';
import { getDictOptions } from '#/utils/dict';
export const modalSchema: FormSchemaGetter = () => [
{
component: 'Input',
dependencies: {
show: () => false,
triggerFields: [''],
},
fieldName: 'configId',
label: '参数主键',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configName',
label: '参数名称',
rules: 'required',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configKey',
label: '参数键名',
rules: 'required',
},
{
component: 'Input',
componentProps: {
placeholder: '请输入',
},
fieldName: 'configValue',
label: '参数键值',
rules: 'required',
},
{
component: 'RadioGroup',
componentProps: {
buttonStyle: 'solid',
options: getDictOptions(DictEnum.SYS_YES_NO),
optionType: 'button',
},
defaultValue: 'N',
fieldName: 'configType',
label: '是否内置',
rules: 'required',
},
{
component: 'Textarea',
componentProps: {
placeholder: '请输入',
},
fieldName: 'remark',
label: '备注',
},
];