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;
}