Browse Source

完善员工管理--手机号只保留11位的长度判断

master
yunuo970428 2 years ago
parent
commit
a907b471e7
  1. 109
      anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue

109
anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue

@ -49,8 +49,7 @@
</el-col>
<el-col :span="8">
<el-form-item prop="birthday">
<el-date-picker v-model="temp.birthday" style="width: 100%" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"/>
<el-date-picker v-model="temp.birthday" style="width: 100%" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
</el-col>
</el-row>
@ -68,8 +67,7 @@
</el-col>
<el-col :span="8" class="jiguan">
<el-form-item prop="idTerm">
<el-date-picker v-model="temp.idTerm" style="width: 100%" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"/>
<el-date-picker v-model="temp.idTerm" style="width: 100%" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
</el-col>
</el-row>
@ -80,8 +78,7 @@
<el-col :span="8">
<el-form-item prop="national">
<el-select v-model="temp.national" style="width: 100%" placeholder="请选择民族" @change="getNational">
<el-option v-for="(item, index) in national_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in national_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -90,7 +87,7 @@
</el-col>
<el-col :span="8">
<el-form-item prop="mobile">
<el-input v-model="temp.mobile" maxlength="20" placeholder="请输入手机号码" clearable/>
<el-input v-model="temp.mobile" maxlength="11" show-word-limit placeholder="请输入手机号码" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -101,8 +98,7 @@
<el-col :span="8">
<el-form-item prop="poliCode">
<el-select v-model="temp.poliCode" style="width: 100%" placeholder="请选择政治面貌" @change="getPoliCode">
<el-option v-for="(item, index) in political_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in political_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -112,8 +108,7 @@
<el-col :span="8">
<el-form-item prop="maritalStatus">
<el-select v-model="temp.maritalStatus" style="width: 100%" placeholder="请选择婚姻状况" @change="getMari">
<el-option v-for="(item, index) in maritalstatus_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in maritalstatus_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -130,8 +125,7 @@
</el-col>
<el-col :span="6">
<el-form-item prop="emergencyContact">
<el-input v-model="temp.emergencyContact" maxlength="20" placeholder="请输入紧急联系人"
clearable/>
<el-input v-model="temp.emergencyContact" maxlength="20" placeholder="请输入紧急联系人" clearable/>
</el-form-item>
</el-col>
<el-col :span="3">
@ -139,8 +133,7 @@
</el-col>
<el-col :span="6">
<el-form-item prop="emergencyMobile">
<el-input v-model="temp.emergencyMobile" maxlength="20" placeholder="请输入紧急联系电话"
clearable/>
<el-input v-model="temp.emergencyMobile" maxlength="20" placeholder="请输入紧急联系电话" clearable/>
</el-form-item>
</el-col>
<el-col :span="2" style="border-top:1px solid #e0e3eb" class="spe_style">
@ -177,8 +170,7 @@
<el-select v-model="temp.county" filterable placeholder="请选择县" style="width: 148px" @change="getQu">
<el-option v-for="item in inputCountyList" :key="item.sid" :label="item.name" :value="item.sid"/>
</el-select>
<el-input v-model="temp.nativePlace" maxlength="20" placeholder="请输入详细地址"
style="margin-left:15px;width: 40%" clearable/>
<el-input v-model="temp.nativePlace" maxlength="20" placeholder="请输入详细地址" style="margin-left:15px;width: 40%" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -194,8 +186,7 @@
<!-- <el-col :span="6">-->
<el-form-item prop="personType">
<el-select v-model="temp.personType" placeholder="请选择员工类型" class="addinputw02" @change="getPersonType">
<el-option v-for="(item, index) in personType_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in personType_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -204,8 +195,7 @@
</el-col>
<el-col :span="6">
<el-form-item prop="orgName">
<el-cascader ref="clearableCascader" class="addinputw" v-model="orgName_list" :props="props" :options="options" clearable
@change="orgNameChange"/>
<el-cascader ref="clearableCascader" class="addinputw" v-model="orgName_list" :props="props" :options="options" clearable @change="orgNameChange"/>
</el-form-item>
</el-col>
<el-col :span="3" class="spe_style">
@ -214,8 +204,7 @@
<el-col :span="6" class="spe_style02">
<el-form-item prop="postSid">
<el-select v-model="temp.postName" class="addinputw" filterable placeholder="请选择岗位" @change="getPostSid">
<el-option v-for="(item, index) in postSid_list" :key="index.postCode" :label="item.name"
:value="item.postCode"/>
<el-option v-for="(item, index) in postSid_list" :key="index.postCode" :label="item.name" :value="item.postCode"/>
</el-select>
</el-form-item>
</el-col>
@ -226,8 +215,6 @@
<div class="span-sty">
<span><span class="icon">*</span>入职日期</span>
</div>
<!-- </el-col>-->
<!-- <el-col :span="6">-->
<el-form-item prop="joinCompnyDate">
<el-date-picker v-model="temp.joinCompnyDate" class="addinputw02" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
@ -238,8 +225,7 @@
<el-col :span="6">
<el-form-item prop="probPeriod">
<el-select v-model="temp.probPeriod" class="addinputw" placeholder="请选择试用期" @change="getProbPeriod">
<el-option v-for="(item, index) in probPeriod_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in probPeriod_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -248,8 +234,7 @@
</el-col>
<el-col :span="6" class="spe_style02">
<el-form-item prop="plannedConfirmDate">
<el-date-picker v-model="temp.plannedConfirmDate" class="addinputw" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"/>
<el-date-picker v-model="temp.plannedConfirmDate" class="addinputw" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
</el-col>
</el-row>
@ -258,8 +243,6 @@
<div class="span-sty">
<span>实际转正日期</span>
</div>
<!-- </el-col>-->
<!-- <el-col :span="6">-->
<el-form-item prop="confirmationDate">
<el-date-picker v-model="temp.confirmationDate" class="addinputw02" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
@ -287,8 +270,6 @@
<div class="span-sty">
<span>身份证(人像面)</span>
</div>
<!-- </el-col>-->
<!-- <el-col :span="6">-->
<Upload ref="uploadImg" class="addinputw02" v-model="idCardA_list" :limit="1" bucket="map" :upload-data="{ type: '0001' }"/>
</el-col>
<el-col :span="3">
@ -322,8 +303,7 @@
<el-col :span="6">
<el-form-item prop="education">
<el-select v-model="temp.education" placeholder="请选择学历" @change="getEducate">
<el-option v-for="(item, index) in educate_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in educate_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -351,8 +331,7 @@
<el-col :span="12">
<el-form-item prop="licenseType">
<el-select v-model="temp.licenseType" placeholder="请选择驾照类型" @change="getLicenseType">
<el-option v-for="(item, index) in licenseType_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="item in licenseType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -390,8 +369,7 @@
</el-col>
<el-col :span="3" class="spe_style02">
<el-form-item prop="insuranceAddr">
<el-input v-model="temp.insuranceAddr" maxlength="20" style="width: 100%" placeholder="请输入参保地" class="addinputw"
clearable/>
<el-input v-model="temp.insuranceAddr" maxlength="20" style="width: 100%" placeholder="请输入参保地" class="addinputw" clearable/>
</el-form-item>
</el-col>
<el-col :span="3">
@ -399,8 +377,7 @@
</el-col>
<el-col :span="3" class="spe_style02">
<el-form-item prop="insuranceStartDate">
<el-date-picker v-model="temp.insuranceStartDate" style="width: 100%" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"/>
<el-date-picker v-model="temp.insuranceStartDate" style="width: 100%" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
</el-col>
<el-col :span="3">
@ -412,7 +389,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="3">
<span>养老</span>
@ -478,8 +454,7 @@
</el-col>
<el-col :span="9">
<el-form-item prop="contractStartDate">
<el-date-picker v-model="temp.contractStartDate" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"/>
<el-date-picker v-model="temp.contractStartDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd"/>
</el-form-item>
</el-col>
<el-col :span="3">
@ -520,22 +495,24 @@
</template>
<script>
import {getCity, getCounty, getProvince} from '@/api/Common/areaPicker' //
import { getCity, getCounty, getProvince } from '@/api/Common/areaPicker' //
import Upload from '@/components/uploadFileimg/upload.vue'
import uploadHead from '@/components/uploadFileimg/upload_head.vue'
import req from '@/api/management/yuangongguanli'
export default {
name: 'YuangongAdd',
components: {Upload, uploadHead},
components: { Upload, uploadHead },
data() {
var checkSubmit = (rule, value, callback) => {
const Submit =
/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
if (Submit.test(value)) {
return callback()
if (value !== undefined && value !== null) {
if (value.length < 11) {
callback(new Error('请输入正确的手机号'))
}
} else {
callback(new Error('请输入手机号'))
}
callback(new Error('请输入手机号'))
callback()
}
var identitycard = (rules, value, callback) => {
const card =
@ -600,14 +577,14 @@ export default {
sysStaffPost: {} //
},
rules: {
name: [{required: true, message: '姓名不能为空', trigger: 'change'}],
gender: [{required: true, message: '性别不能为空', trigger: 'change'}],
idNo: [{required: true, message: '身份证号不能为空', validator: identitycard, trigger: 'change'}],
idTerm: [{required: true, message: '证件有效期不能为空', trigger: 'change'}],
national: [{required: true, message: '民族不能为空', trigger: 'change'}],
mobile: [{required: true, message: '手机号不能为空', validator: checkSubmit, trigger: 'change'}],
personType: [{required: true, message: '员工类型不能为空', trigger: 'change'}],
joinCompnyDate: [{required: true, message: '入职日期不能为空', trigger: 'blur'}]
name: [{ required: true, message: '姓名不能为空', trigger: 'change' }],
gender: [{ required: true, message: '性别不能为空', trigger: 'change' }],
idNo: [{ required: true, message: '身份证号不能为空', validator: identitycard, trigger: 'change' }],
idTerm: [{ required: true, message: '证件有效期不能为空', trigger: 'change' }],
national: [{ required: true, message: '民族不能为空', trigger: 'change' }],
mobile: [{ required: true, validator: checkSubmit, trigger: 'blur' }],
personType: [{ required: true, message: '员工类型不能为空', trigger: 'change' }],
joinCompnyDate: [{ required: true, message: '入职日期不能为空', trigger: 'blur' }]
},
submitdisabled: false
}
@ -1028,35 +1005,35 @@ export default {
},
//
getUrl() {
console.log('身份证人面像',this.idCardA_list)
console.log('身份证人面像', this.idCardA_list)
// ()
if (this.idCardA_list.length > 0) {
this.temp.idCardA = this.idCardA_list[this.idCardA_list.length - 1].url
}else {
} else {
this.temp.idCardA = ''
}
// ()
if (this.idCardB_list.length > 0) {
this.temp.idCardB = this.idCardB_list[this.idCardB_list.length - 1].url
}else {
} else {
this.temp.idCardB = ''
}
//
if (this.diploma_list.length > 0) {
this.temp.diploma = this.diploma_list[this.diploma_list.length - 1].url
}else {
} else {
this.temp.diploma = ''
}
//
if (this.degree_list.length > 0) {
this.temp.degreeCertificate = this.degree_list[this.degree_list.length - 1].url
}else {
} else {
this.temp.degreeCertificate = ''
}
// leaveCertificate
if (this.leave_list.length > 0) {
this.temp.leaveCertificate = this.leave_list[this.leave_list.length - 1].url
}else {
} else {
this.temp.leaveCertificate = ''
}
},
@ -1132,7 +1109,7 @@ export default {
url: this.temp.idCardA
})
}
console.log('身份证人面像',this.idCardA_list)
console.log('身份证人面像', this.idCardA_list)
if (this.temp.idCardB !== '') {
const imgName = this.temp.idCardB.split('/')
this.idCardB_list.push({

Loading…
Cancel
Save