| | |
| | | import { getDictOptions } from '#/packages/effects/hooks/src'; |
| | | |
| | | import { z } from '#/adapter/form'; |
| | | import { getUnitPage } from '#/api/mdm/unit'; |
| | | |
| | | /** 新增/修改的表单 */ |
| | | export function useFormSchema(): VbenFormSchema[] { |
| | |
| | | rules: 'required', |
| | | componentProps: { |
| | | placeholder: '请输入单位名称', |
| | | }, |
| | | }, |
| | | { |
| | | component: 'Switch', |
| | | fieldName: 'primaryFlag', |
| | | label: '是否主单位', |
| | | componentProps: { |
| | | class: 'w-auto', |
| | | checkedChildren: '是', |
| | | unCheckedChildren: '否', |
| | | }, |
| | | rules: z.boolean().default(false), |
| | | }, |
| | | { |
| | | component: 'ApiSelect', |
| | | fieldName: 'primaryId', |
| | | label: '主单位', |
| | | dependencies: { |
| | | triggerFields: ['primaryFlag'], |
| | | show: (values) => { |
| | | return values.primaryFlag === false; |
| | | }, |
| | | required: (values) => { |
| | | return values.primaryFlag === false; |
| | | }, |
| | | }, |
| | | componentProps: { |
| | | placeholder: '请选择主单位', |
| | | allowClear: true, |
| | | api: async () => { |
| | | const res = await getUnitPage({ pageNo: 1, pageSize: 100, primaryFlag: true, status: 0 }); |
| | | return res.list || []; |
| | | }, |
| | | labelField: 'name', |
| | | valueField: 'id', |
| | | }, |
| | | }, |
| | | { |
| | | component: 'InputNumber', |
| | | fieldName: 'changeRate', |
| | | label: '换算比例', |
| | | dependencies: { |
| | | triggerFields: ['primaryFlag'], |
| | | show: (values) => { |
| | | return values.primaryFlag === false; |
| | | }, |
| | | required: (values) => { |
| | | return values.primaryFlag === false; |
| | | }, |
| | | }, |
| | | componentProps: { |
| | | class: '!w-full', |
| | | min: 0, |
| | | precision: 4, |
| | | placeholder: '请输入换算比例', |
| | | }, |
| | | }, |
| | | { |
| | |
| | | field: 'name', |
| | | title: '单位名称', |
| | | minWidth: 150, |
| | | }, |
| | | { |
| | | field: 'primaryFlag', |
| | | title: '主单位', |
| | | minWidth: 80, |
| | | slots: { default: 'primaryFlag' }, |
| | | }, |
| | | { |
| | | field: 'changeRate', |
| | | title: '换算比例', |
| | | minWidth: 100, |
| | | }, |
| | | { |
| | | field: 'status', |