import { MyBetaModalFormProps, MyButtons, MyFormItems, MyModalFormProps, rulesHelper, } from '@/common'; import { Selects } from '@/components/Select'; import { Apis } from '@/gen/Apis'; import { SexEnum } from '@/gen/Enums'; import { BetaSchemaForm } from '@ant-design/pro-components'; import { Form, message } from 'antd'; export default function Update(props: MyBetaModalFormProps) { const [form] = Form.useForm(); return ( {...MyModalFormProps.props} title={`编辑员工`} trigger={} wrapperCol={{ span: 24 }} width="500px" form={form} onOpenChange={(open: any) => { if (open && props.item) { form.setFieldsValue({ ...props.item, roles_id: props.item?.roles?.map((item: any) => item.value), }); } }} onFinish={async (values) => Apis.Company.CompanyEmployees.Update({ ...values, id: props.item?.id ?? 0, }) .then(() => { props.reload?.(); message.success(props.title + '成功'); return true; }) .catch(() => false) } columns={[ Selects?.Companies({ title: '所属机构', key: 'companies_id', formItemProps: { ...rulesHelper.text }, }), { valueType: 'dependency', name: ['companies_id'], columns: ({ companies_id }) => [ Selects?.Organizations({ title: '所属组织', params: { companies_id: companies_id }, key: 'organizations_id', formItemProps: { ...rulesHelper.text }, }), ], }, { key: 'name', title: '姓名', colProps: { span: 6 }, formItemProps: { ...rulesHelper.text }, }, { key: 'phone', title: '手机号', valueType: 'number', fieldProps: { maxLength: 11, }, colProps: { span: 12 }, formItemProps: { ...rulesHelper.phone }, }, MyFormItems.EnumRadio({ key: 'sex', title: '性别', colProps: { span: 6 }, valueEnum: SexEnum, required: true, }), { valueType: 'dependency', name: ['companies_id'], columns: ({ companies_id }) => [ Selects?.Positions({ title: '岗位', params: { companies_id: companies_id }, key: 'positions_id', formItemProps: { ...rulesHelper.text }, }), ], }, { key: 'remark', title: '备注', colProps: { span: 24 }, valueType: 'textarea', }, ]} /> ); }