import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import {getSamplingScheme} from "@/api/qms/samplingProcess"; import { validateInteger ,validateTwoNum} from '@/utils/validator' // 表单校验 export const SamplingProcessRules = reactive({ sampleType: [required], evaluationMode: [required], description: [required], sampleSize:ref([{ required: true, message: '该项为必填项', trigger: 'blur' },{validator:validateTwoNum, message: '小数点后最多2位', trigger: 'blur'}]), sampleProgCode:ref([{ required: true, message: '该项为必填项', trigger: 'blur' }]), inspectionQty: [required, {validator:validateInteger, message: '请输入正确的整数', trigger: 'blur'}] }) const samplingSchemeList = await getSamplingScheme() export const SamplingProcess = useCrudSchemas(reactive([ { label: '编码', field: 'code', sort: 'custom', isSearch: true, isForm: false, table: { width: 175, fixed: 'left' } }, { label: '描述', field: 'description', sort: 'custom', isSearch: true, table: { width: 175 } }, { label: '取样类型', field: 'sampleType', sort: 'custom', dictType: DICT_TYPE.SAMPLING_TYPE, dictClass: 'string', // 默认都是字符串类型其他暂不考虑 isSearch: true, form: { component: 'Select' }, table: { width: 140 } }, { label: '评估模式', field: 'evaluationMode', sort: 'custom', dictType: DICT_TYPE.EVALUATION_MODE, dictClass: 'string', // 默认都是字符串类型其他暂不考虑 form: { component: 'Select' }, table: { width: 140 } }, { label: '样品量', field: 'sampleSize', sort: 'custom', table: { width: 140 } }, { label: '样品份数', field: 'inspectionQty', sort: 'custom', table: { width: 140 } }, { label: '采样方案编码', field: 'sampleProgCode', sort: 'custom', form: { component: 'Select', componentProps: { options: samplingSchemeList, optionsAlias: { labelField: 'description', valueField: 'code' }, } }, table: { width: 175 } }, { label: '创建时间', field: 'createTime', sort: 'custom', formatter: dateFormatter, isForm: false, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' }, form: { component: 'DatePicker', componentProps: { style: {width: '100%'}, type: 'datetime', dateFormat: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'x', } }, table: { width: 175 } }, { label: '是否可用', field: 'available', sort: 'custom', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', // 默认都是字符串类型其他暂不考虑 form: { component: 'Switch', value: 'TRUE', componentProps: { inactiveValue: 'FALSE', activeValue: 'TRUE' } }, table: { width: 110 } }, { label: '操作', field: 'action', isForm: false, table: { width: 150, fixed: 'right' } } ]))