@jdlinker/system
Version:
jdLinker 系统模块
111 lines (107 loc) • 2.31 kB
text/typescript
import { BasicColumn, FormSchema } from '@jdlinker/ui';
import { duplicateCheck } from '../user/user.api';
export const columns: BasicColumn[] = [
{
title: '规则名称',
dataIndex: 'ruleName',
width: 200,
align: 'center'
},
{
title: '规则编码',
dataIndex: 'ruleCode',
width: 200,
align: 'center'
},
{
title: '规则实现类',
dataIndex: 'ruleClass',
width: 300,
align: 'center'
},
{
title: '规则参数',
dataIndex: 'ruleParams',
width: 200,
align: 'center'
}
];
export const searchFormSchema: FormSchema[] = [
{
field: 'ruleName',
label: '规则名称',
component: 'Input'
},
{
field: 'ruleCode',
label: '规则编码',
component: 'Input'
}
];
export const formSchema: FormSchema[] = [
{
label: '',
field: 'id',
component: 'Input',
show: false
},
{
field: 'ruleName',
label: '规则名称',
component: 'Input',
required: true,
colProps: { span: 24 }
},
{
field: 'ruleCode',
label: '规则编码',
component: 'Input',
colProps: { span: 24 },
dynamicDisabled: ({ values }) => {
return !!values.id;
},
dynamicRules: ({ model }) => {
return [
{
required: true,
validator: (_, value) => {
return new Promise((resolve, reject) => {
if (!value) {
return reject('请输入规则编码!');
}
const params = {
tableName: 'sys_fill_rule',
fieldName: 'rule_code',
fieldVal: value,
dataId: model.id
};
duplicateCheck(params)
.then((res) => {
res.success ? resolve() : reject('规则编码已存在!');
})
.catch((err) => {
reject(err.message || '校验失败');
});
});
}
}
];
}
},
{
field: 'ruleClass',
label: '规则实现类',
component: 'Input',
required: true,
colProps: { span: 24 }
},
{
field: 'ruleParams',
label: '规则参数',
colProps: { span: 24 },
component: 'JAddInput',
componentProps: {
min: 0
}
}
];