|
@@ -76,6 +76,15 @@
|
|
|
<j-select-position placeholder="请选择职务" :multiple="false" v-decorator="['post', validatorRules.post]" />
|
|
|
</a-form-item>
|
|
|
|
|
|
+ <a-form-item label="证件类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
|
+ <j-dict-select-tag
|
|
|
+ v-decorator="['passportNo', validatorRules.passportNo]"
|
|
|
+ placeholder="请选择证件类型"
|
|
|
+ :triggerChange="true"
|
|
|
+ dictCode="passportNo"
|
|
|
+ />
|
|
|
+ </a-form-item>
|
|
|
+
|
|
|
<a-form-item label="身份证号码" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
|
<a-input placeholder="请输入身份证号码" v-decorator="['nidNo', validatorRules.nidNo]" @blur="changeNidNo"/>
|
|
|
</a-form-item>
|
|
@@ -509,7 +518,11 @@ export default {
|
|
|
rules: [{ required: true, message: '请选择性别' }]
|
|
|
},
|
|
|
nidNo:{
|
|
|
- rules: [{ required: true, message: '输入身份证号码'},{validator: this.validateIdCard}]
|
|
|
+ rules: [{ required: true, message: '请输入身份证号码'},{validator: this.validateIdCard}]
|
|
|
+ // rules: [{ required: true, message: '请输入身份证号码'}]
|
|
|
+ },
|
|
|
+ passportNo:{
|
|
|
+ rules: [{ required: true, message: '请选择证件类型'}]
|
|
|
},
|
|
|
nmarriage:{
|
|
|
rules: [{ required: true, message: '请选择婚否' }]
|
|
@@ -603,6 +616,13 @@ export default {
|
|
|
this.fileList = '';
|
|
|
},
|
|
|
validateIdCard(rule, value, callback) {
|
|
|
+
|
|
|
+ var passportNo = this.form.getFieldValue('passportNo')
|
|
|
+
|
|
|
+ if(passportNo !='身份证'){
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+
|
|
|
if (!value || new RegExp(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/).test(value)) {
|
|
|
callback();
|
|
|
} else {
|
|
@@ -712,6 +732,7 @@ export default {
|
|
|
'nnation',
|
|
|
'nnativePlace',
|
|
|
'nidNo',
|
|
|
+ 'passportNo',
|
|
|
'nhomeAddress',
|
|
|
'nrequirement',
|
|
|
'nhopeFor',
|
|
@@ -809,6 +830,15 @@ export default {
|
|
|
this.$message.warning("请选择公司");
|
|
|
return
|
|
|
}
|
|
|
+ const form = this.form
|
|
|
+ // const passportNo = form.getFieldValue('passportNo')
|
|
|
+ // const nIdNo = form.getFieldValue('nIdNo')
|
|
|
+
|
|
|
+ // if((passportNo == '' || passportNo == null) && (nIdNo == '' || nIdNo == null)){
|
|
|
+ // this.$message.warning("身份证号码与护照号码不能全部为空");
|
|
|
+ // return
|
|
|
+ // }
|
|
|
+
|
|
|
const that = this
|
|
|
// 触发表单验证
|
|
|
this.form.validateFields((err, values) => {
|
|
@@ -820,6 +850,8 @@ export default {
|
|
|
values.birthday = values.birthday.format(this.dateFormat)
|
|
|
}
|
|
|
let formData = Object.assign(this.model, values)
|
|
|
+
|
|
|
+
|
|
|
// 获取公司信息
|
|
|
formData.pkOrg = this.orgObject.pkOrg
|
|
|
formData.pkOrgName = this.orgObject.pkOrgName
|
|
@@ -1077,13 +1109,31 @@ export default {
|
|
|
// }
|
|
|
// }
|
|
|
},
|
|
|
+ isDateFormat(str) {
|
|
|
+ const regex = /^\d{4}-\d{2}-\d{2}$/;
|
|
|
+ if (!regex.test(str)) return false;
|
|
|
+ const [year, month, day] = str.split('-').map(Number);
|
|
|
+ return month >= 1 && month <= 12 && day >= 1 && day <= 31;
|
|
|
+ },
|
|
|
changeNidNo(e){
|
|
|
+
|
|
|
+ var passportNo = this.form.getFieldValue('passportNo')
|
|
|
+
|
|
|
+ if(passportNo !='身份证'){
|
|
|
+ return
|
|
|
+ }
|
|
|
var year = e.target.value.slice(6,10),
|
|
|
month = e.target.value.slice(10,12),
|
|
|
day = e.target.value.slice(12,14),
|
|
|
data = year+'-'+month+'-'+day
|
|
|
- data = moment(data)
|
|
|
- this.form.setFieldsValue({birthday:data})
|
|
|
+
|
|
|
+ if (!this.isDateFormat(data)){
|
|
|
+ return false;
|
|
|
+ } else{
|
|
|
+ data = moment(data)
|
|
|
+ this.form.setFieldsValue({birthday:data})
|
|
|
+ }
|
|
|
+
|
|
|
},
|
|
|
changeWorkNo(e){
|
|
|
// var that = this
|