|
@@ -134,12 +134,12 @@
|
|
|
</a-col>
|
|
|
<a-col :span="8 ">
|
|
|
<a-form-item label="合同起始日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
|
- <j-date placeholder="请选择合同起始日期" v-decorator="[ 'contractStart', validatorRules.contractStart]" :trigger-change="true" style="width: 100%" :disabled="show"/>
|
|
|
+ <j-date placeholder="请选择合同起始日期" @change="changeStartTime" v-decorator="[ 'contractStart', validatorRules.contractStart]" :trigger-change="true" style="width: 100%" :disabled="show"/>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="8 ">
|
|
|
<a-form-item label="合同结束日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
|
- <j-date placeholder="请选择合同结束日期" v-decorator="[ 'contractEnd', validatorRules.contractEnd]" :trigger-change="true" style="width: 100%" :disabled="show"/>
|
|
|
+ <j-date placeholder="请选择合同结束日期" @change="changeEndTime" v-decorator="[ 'contractEnd', validatorRules.contractEnd]" :trigger-change="true" style="width: 100%" :disabled="show"/>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :span="8 ">
|
|
@@ -274,7 +274,7 @@
|
|
|
{required: true, message: '请输入证件类型!'},
|
|
|
]},
|
|
|
idNo: {rules: [
|
|
|
- {required: true, message: '请输入证件号码!'},
|
|
|
+ {required: true, message: '请输入证件号码!'},{validator: this.validateIdCard}
|
|
|
]},
|
|
|
birthday: {rules: [
|
|
|
{required: true, message: '请输入生日!'},
|
|
@@ -297,9 +297,10 @@
|
|
|
departIds: {rules: [
|
|
|
{required: true, message: '请输入部门!'},
|
|
|
]},
|
|
|
- mobile: {rules: [
|
|
|
+ mobile: {rules: [{ validator: this.validatePhone }
|
|
|
]},
|
|
|
phone: {rules: [
|
|
|
+ { pattern: /^0\d{2,3}-[1-9]\d{6,7}$/, message: '请输入正确的座机号码' }
|
|
|
]},
|
|
|
address: {rules: [
|
|
|
]},
|
|
@@ -466,6 +467,39 @@
|
|
|
let values = this.tableKeys.map(key => getRefPromise(this, key))
|
|
|
return Promise.all(values)
|
|
|
},
|
|
|
+ validateIdCard(rule, value, callback) {
|
|
|
+ if (!value || new RegExp(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/).test(value)) {
|
|
|
+ callback();
|
|
|
+ } else {
|
|
|
+ callback("您的身份证号码格式不正确!");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ validatePhone (rule, value, callback) {
|
|
|
+ if (!value) {
|
|
|
+ callback()
|
|
|
+ } else {
|
|
|
+ // update-begin--Author:kangxiaolin Date:20190826 for:[05] 手机号不支持199号码段--------------------
|
|
|
+ if (new RegExp(/^1[3|4|5|7|8|9][0-9]\d{8}$/).test(value)) {
|
|
|
+ // update-end--Author:kangxiaolin Date:20190826 for:[05] 手机号不支持199号码段--------------------
|
|
|
+
|
|
|
+ var params = {
|
|
|
+ tableName: 'sys_user',
|
|
|
+ fieldName: 'phone',
|
|
|
+ fieldVal: value,
|
|
|
+ dataId: this.userId
|
|
|
+ }
|
|
|
+ duplicateCheck(params).then(res => {
|
|
|
+ if (res.success) {
|
|
|
+ callback()
|
|
|
+ } else {
|
|
|
+ callback('手机号已存在!')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ callback('请输入正确格式的手机号码!')
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
/** 调用完edit()方法之后会自动调用此方法 */
|
|
|
editAfter(record,stat2) {
|
|
|
this.id = record.id
|
|
@@ -506,6 +540,32 @@
|
|
|
popupCallback(row){
|
|
|
this.form.setFieldsValue(pick(row,'operator','operatorDept','operateDate','realname','username','gender','idType','idNo','birthday','joinDate','post','postLevel','education','positionType','departIds','mobile','phone','address','probationEnd','contractStart','contractEnd','remark','identity','signature','attachment'))
|
|
|
},
|
|
|
+ changeStartTime(data){
|
|
|
+ var end = new Date((this.form.getFieldValue('contractEnd')).replace(/\-/g, "\/"));
|
|
|
+ var start = new Date(data.replace(/\-/g, "\/"));
|
|
|
+ if(this.form.getFieldValue('contractEnd')!=""&&data!=""&&start >=end)
|
|
|
+ {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.form.setFieldsValue({contractStart: '' })
|
|
|
+ this.$forceUpdate()
|
|
|
+ })
|
|
|
+ this.$message.error("合同开始时间不能大于合同结束时间!")
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ changeEndTime(data){
|
|
|
+ var start = new Date((this.form.getFieldValue('contractStart')).replace(/\-/g, "\/"));
|
|
|
+ var end = new Date(data.replace(/\-/g, "\/"));
|
|
|
+ if(this.form.getFieldValue('contractStart')!=""&&data!=""&&start >=end)
|
|
|
+ {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.form.setFieldsValue({contractEnd: '' })
|
|
|
+ this.$forceUpdate()
|
|
|
+ })
|
|
|
+ this.$message.error("合同开始时间不能大于合同结束时间!")
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
}
|
|
|
}
|