import React from 'react'; import { connect } from 'react-redux'; import { Spin } from 'antd'; import ProForm, { ProFormText, ModalForm, ProFormSwitch, ProFormTreeSelect } from '@ant-design/pro-form'; const UserModal = (props) => { const { visible, modalType, depData, onVisibleChange, onConfirm, editData } = props const onFinish = (values) => { if (onConfirm) { onConfirm(values); } } const checkName = (rule, value, callback) => { if (value && value.replace(/[^\u4E00-\u9FA5]/g).includes('undefined')) { callback(new Error('请输入中文!')); } else { callback() } } return ( < ProFormText name={['contract', 'phone']} width="md" label="手机号(用户名)" required fieldProps={{ maxLength: 11, }} getValueFromEvent={(event) => { return event.target.value.replace(/\D/g, '') }} placeholder="请输入手机号(用户名)" rules={[ { required: true, valueType: Number, max: 11 }, { pattern: /^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$/, message: "请输入正确的手机号" } ]} /> { if (selected) { setDepSelectedKeys(selectedKeys) setDepSelected(selectedNodes[0].name || "") dispatch(getDepUser(selectedKeys[0])) } }} fieldProps={{ fieldNames: { label: 'title', }, treeDefaultExpandAll: false, }} rules={[{ required: true, message: '请选择所属部门' }]} request={async () => { return depData }} expandedKeys={["title"]} /> {modalType == 'edit' ? null : } {/* { return event.target.value }} placeholder="请输入职位" // rules={[ // { required: true } // ]} /> */} ) } function mapStateToProps(state) { const { depMessage } = state; const pakData = (dep) => { // console.log(dep); return dep.map((d) => { return { title: d.name, value: d.id, // key: d.id, children: pakData(d.subordinate) } }) } let depData = pakData(depMessage.data || []) return { loading: depMessage.isRequesting, depData, }; } export default connect(mapStateToProps)(UserModal);