import React from 'react'; import { Input, InputNumber, Select, DatePicker, Rate } from 'antd'; import TableField from './TableField'; import PhoneField from './PhoneField'; import InnerContactField from './InnerContactField'; import DepartmentField from './DepartmentField'; import CodeField from './CodeFiled'; import DDMultiSelectField from './DDMultiSelectField'; import NumberField from './NumberField'; import DDPhotoField from './DDPhotoField'; import DDSelectField from './DDSelectField'; import DDDateField from './DDDateField'; import DDDateRangeField from './DDDateRangeField'; // import DDAttachment from './DDAttachment'; import FormulaField from './FormulaField'; import DIYTable from './DIYTable/index.tsx'; import TextNode from './TextNote'; import DDProjectField from './ProjectField'; import ManufacturerField from './ManufacturerField'; const { Option } = Select; const { RangePicker } = DatePicker; export default function DDComponents(props) { const { depId = '', evalStr = '', item, onChange } = props; const { id, label, bizAlias, required, placeholder, options, align, statField, hideLabel, objOptions, format, pushToAttendance, labelEditableFreeze, requiredEditableFreeze, unit, extract, link, payEnable, bizType, childFieldVisible, notPrint, verticalPrint, hiddenInApprovalDetail, defaultValue, disabled, notUpper, children, // 子控件 } = item.props; let component = null; switch (item.componentName) { case 'TextField': // 单行输入 component = ( onChange?.(e.target.value)} /> ); break; case 'TextareaField': // 多行输入 component = ( onChange?.(e.target.value)} /> ); break; case 'NumberField': // 数字输入 component = ( ); break; case 'DDSelectField': // 单选框 component = ( ); break; case 'DDMultiSelectField': // 多选框 component = ; break; case 'DDDateField': // 日期控件 component = ( ); break; case 'DDDateRangeField': // 时间区间控件 component = ; break; case 'TextNote': // 文本说明控件 component = ; break; case 'PhoneField': // 电话控件 component = ; break; case 'DDPhotoField': // 图片控件 component = ; break; case 'MoneyField': // 金额控件 component = ( ); break; case 'TableField': // 明细控件 component = ; break; case 'DDAttachment': // 附件 // component = // component = '附件控件未渲染!' console.info('附件控件未渲染!'); break; case 'InnerContactField': // 联系人控件 component = ; break; case 'DepartmentField': // 部门控件 component = ; break; case 'CodeField': // 合同编号控件 component = ; break; case 'ProjectField': // 项目控件 component = ; break; case 'DIYTable': // 可自定义表格控件 component = ; break; case 'FormulaField': component = ; break; case 'ManufacturerField': component = ; break; case 'RelateField': // 关联审批单 component = '关联审批单控件未渲染!'; break; case 'AddressField': // 省市区控件 component = '省市区控件未渲染!'; break; case 'StarRatingField': // 评分控件 component = '评分控件未渲染!'; break; case 'FormRelateField': // 关联控件 component = '关联控件未渲染!'; break; default: break; } return component; }