import { BasicColumn, FormSchema, render } from '@jdlinker/ui'; import { rules } from '@jdlinker/func'; export const columns: BasicColumn[] = [ { title: '职务编码', dataIndex: 'code', width: 200, align: 'left' }, { title: '职务名称', dataIndex: 'name', width: 200 }, { title: '职务等级', dataIndex: 'postRank', width: 100, customRender: ({ text }) => { return render.renderDict(text, 'position_rank'); } } ]; export const searchFormSchema: FormSchema[] = [ { field: 'name', label: '职务名称', component: 'Input' } ]; export const formSchema: FormSchema[] = [ { label: '主键', field: 'id', component: 'Input', show: false }, { label: '职级', field: 'postRank', component: 'JDictSelectTag', required: true, componentProps: { dictCode: 'position_rank', dropdownStyle: { maxHeight: '100vh' }, getPopupContainer: () => document.body } }, { field: 'name', label: '职务名称', component: 'Input', required: true }, { field: 'code', label: '职务编码', component: 'Input', required: true, dynamicDisabled: ({ values }) => { return !!values.id; }, dynamicRules: ({ model, schema }) => { return rules.duplicateCheckRule('sys_position', 'code', model, schema, true); } } ];