const modalConfig = { pageName: 'ntlo', addTitle: '个人基本信息', editTitle: '个人基本信息', detailTitle: '个人基本信息', labelWidth: '150px', formRules: { unitName: [{ required: true, message: '请选择单位名称', trigger: 'change' }], contactName: [{ required: true, message: '请输入联络人名称', trigger: 'change' }], belongsDept: [{ required: true, message: '请选择所属部门', trigger: 'change' }], position: [{ required: true, message: '请选择所属职位', trigger: 'change' }], contactNumber: [ { required: true, message: '输入正确的联系电话', trigger: 'change' }, { validator: (_, val, cb) => { const digits = (val || '').replace(/\D/g, ''); if (!/^1[3-9]\d{9}$/.test(digits)) { cb(new Error('请输入正确的 11 位联系电话')); } else { cb(); } }, trigger: 'blur', }, ], msgRecipient: [{ required: true, message: '请选择短信接收人', trigger: 'change' }], wxNumber: [ { required: false, message: '请输入正确的微信号', trigger: 'change' }, { validator: (_, val, cb) => { if (!val) return cb(); // 允许空 if (!/^[a-zA-Z0-9_-]{6,20}$/.test(val.trim())) { cb(new Error('微信号只能为字母、数字、下划线或减号,且6-20位')); } else { cb(); } }, trigger: 'blur', }, ], fixedTelephone: [ { required: false, message: '请输入正确的固定电话', trigger: 'change' }, { validator: (_, val, cb) => { if (!val) return cb(); // 允许空 const digits = val.replace(/\D/g, ''); if (!/^\d{10,12}$/.test(digits)) { // 区号+号码 10~12 位 return cb(new Error('固定电话格式错误')); } cb(); }, trigger: 'blur', }, ], email: [ { required: false, message: '请输入正确的电子邮箱', trigger: 'change' }, { validator: (_, val, cb) => { if (!val) return cb(); // 允许空 if (!/^[\w.-]+@[\w.-]+\.\w+$/.test(val.trim())) { return cb(new Error('电子邮箱格式错误')); } cb(); }, trigger: 'blur', }, ], faxNumber: [ { required: false, message: '请输入正确的传真号', trigger: 'change' }, { validator: (_, val, cb) => { if (!val) return cb(); // 允许空 const digits = val.replace(/\D/g, ''); if (!/^\d{10,12}$/.test(digits)) { // 区号+号码 10~12 位 return cb(new Error('传真号格式错误')); } cb(); }, trigger: 'blur', // 失焦再校验,不打断输入 }, ], }, pageListParams: { industryType: '1', }, formItems: [ { label: '创建人员', prop: 'addName', type: 'input', disabled: true, placeholder: '请输入创建人员', }, { label: '创建人员单位名称', prop: 'addDept', type: 'input', disabled: true, placeholder: '请输入创建人员单位名称', }, { label: '创建时间', prop: 'addDate', type: 'input', disabled: true, placeholder: '请输入创建时间', }, { label: '单位名称', prop: 'unitName', type: 'unitName', placeholder: '请选择单位名称', }, { label: '联络人姓名', prop: 'contactName', type: 'input', placeholder: '请输入联络人姓名', }, { label: '所属部门', prop: 'belongsDept', type: 'belongsDept', disabled: true, placeholder: '请输入所属部门', }, { label: '所属职务', prop: 'position', type: 'input', placeholder: '请输入所属职务', }, { label: '微信号', prop: 'wxNumber', type: 'input', placeholder: '请输入微信号', }, { label: '联系电话', prop: 'contactNumber', type: 'input', placeholder: '请输入联系电话', }, { label: '固定电话', prop: 'fixedTelephone', type: 'input', placeholder: '请输入固定电话', }, { label: '传真号', prop: 'faxNumber', type: 'input', placeholder: '请输入传真号', }, { label: '电子邮箱', prop: 'email', type: 'input', placeholder: '请输入电子邮箱', }, { label: '短信接收人', prop: 'msgRecipient', type: 'msgRecipient', }, ], }; export default modalConfig;