|
@@ -102,18 +102,18 @@
|
|
|
<div slot="title">
|
|
|
<img src="/static/image/workercard/banner.png">
|
|
|
</div>
|
|
|
- <i-form :model="formdata" :label-width="80">
|
|
|
- <Form-item label="手机号" v-if="!isedit">
|
|
|
+ <i-form :model="formdata" :label-width="80" :rules="formRule" ref="editform">
|
|
|
+ <Form-item label="手机号" v-if="!isedit" prop="telno">
|
|
|
<i-input v-model="formdata.telno" placeholder="请输入手机号"></i-input>
|
|
|
</Form-item>
|
|
|
- <Form-item label="手机号" v-else>
|
|
|
+ <Form-item label="手机号" prop="telno" v-else>
|
|
|
{{formdata.telno}}
|
|
|
</Form-item>
|
|
|
<div id="editform">
|
|
|
- <Form-item label="姓名">
|
|
|
+ <Form-item label="姓名" prop="name">
|
|
|
<i-input v-model="formdata.name" placeholder="请输入姓名"></i-input>
|
|
|
</Form-item>
|
|
|
- <Form-item label="工种">
|
|
|
+ <Form-item label="工种" prop="work_type">
|
|
|
<i-input v-model="formdata.work_type" placeholder="请输入工种"></i-input>
|
|
|
</Form-item>
|
|
|
<Form-item label="工种标签" >
|
|
@@ -121,10 +121,10 @@
|
|
|
<i-option v-for="(item,key) in worktypeonelabel" :value="item.label" :key="item.id">{{ item.label }}</i-option>
|
|
|
</i-select>
|
|
|
</Form-item>
|
|
|
- <Form-item label="年龄">
|
|
|
+ <Form-item label="年龄" prop="age">
|
|
|
<Input-number :max="100" :min="17" v-model="formdata.age"></Input-number>
|
|
|
</Form-item>
|
|
|
- <Form-item label="籍贯">
|
|
|
+ <Form-item label="籍贯" prop="native">
|
|
|
<i-input v-model="formdata.native" placeholder="请输入籍贯"></i-input>
|
|
|
</Form-item>
|
|
|
<Form-item label="工作地区">
|
|
@@ -133,8 +133,8 @@
|
|
|
<Form-item label="交通工具">
|
|
|
<i-input v-model="formdata.traffic_tools" placeholder="请输入交通工具"></i-input>
|
|
|
</Form-item>
|
|
|
- <Form-item label="备注">
|
|
|
- <i-input type="textarea" v-model="formdata.note" placeholder="请输入备注"></i-input>
|
|
|
+ <Form-item label="工作经历" prop="note">
|
|
|
+ <i-input type="textarea" v-model="formdata.note" placeholder="请输入工作经历"></i-input>
|
|
|
</Form-item>
|
|
|
<Form-item label="图片上传" v-if="!issavingloading&&!issavingimg">
|
|
|
<div id="images">
|
|
@@ -209,6 +209,11 @@
|
|
|
<Button type="error" size="large" long @click="handleRemove2">删除</Button>
|
|
|
</div>
|
|
|
</Modal>
|
|
|
+ <Modal v-model="showerrormsg" >
|
|
|
+ <p style="color:#f60;text-align:center">
|
|
|
+ 用户图片最少有{{minimgs}}张,还需要再上传{{imgcounterror.diff}}张,便可保存
|
|
|
+ </p>
|
|
|
+ </Modal>
|
|
|
</div>
|
|
|
<script>
|
|
|
var sharedata = {php}echo json_encode($sharedata);{/php};
|
|
@@ -257,7 +262,7 @@
|
|
|
issavingimg:false,
|
|
|
formdata:{
|
|
|
name:"",
|
|
|
- age:17,
|
|
|
+ age:18,
|
|
|
telno:'',
|
|
|
work_type:'',
|
|
|
region:'',
|
|
@@ -282,11 +287,36 @@
|
|
|
del2:false,
|
|
|
del_file:false,
|
|
|
del_imgurl:false,
|
|
|
+ minimgs:3,
|
|
|
+ showerrormsg:false,
|
|
|
+ imgcounterror:{},
|
|
|
+ formRule: {
|
|
|
+ telno: [
|
|
|
+ { type: 'string', required: true, pattern: /^1[3456789]{1}\d{9}$/, message: '手机号错误', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ name:[
|
|
|
+ { type: 'string', required: true, message: '姓名必填', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ age:[
|
|
|
+ { type: 'integer', required: true, min:18,max:80, message: '年龄最小18最大80', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ native:[
|
|
|
+ { type: 'string', required: true, message: '籍贯必填', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ work_type:[
|
|
|
+ { type: 'string', required: true, message: '工种必填', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ note:[
|
|
|
+ {type: 'string', required: true,min: 10, message: '工作经历,最少10个字', trigger: 'blur' }
|
|
|
+ ]
|
|
|
+ },
|
|
|
},
|
|
|
watch: {
|
|
|
'formdata.telno' (newValue, old) {
|
|
|
//获取用户信息
|
|
|
- this.getinfobytelno(newValue)
|
|
|
+ if(newValue.length==11){
|
|
|
+ this.getinfobytelno(newValue)
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
computed: {
|
|
@@ -350,22 +380,27 @@
|
|
|
title: '文件格式不正确',
|
|
|
desc: '文件 ' + file.name + ' 格式不正确,请上传 jpg 或 png 格式的图片。'
|
|
|
});
|
|
|
+ this.issavingloading=false
|
|
|
+ this.issavingimg=false
|
|
|
},
|
|
|
handleMaxSize (file) {
|
|
|
this.$Notice.warning({
|
|
|
title: '超出文件大小限制',
|
|
|
desc: '文件 ' + file.name + ' 太大,不能超过 2M。'
|
|
|
});
|
|
|
+ this.issavingloading=false
|
|
|
+ this.issavingimg=false
|
|
|
},
|
|
|
handleBeforeUpload () {
|
|
|
const check = this.uploadList.length < 5;
|
|
|
if (!check) {
|
|
|
this.$Notice.warning({
|
|
|
- title: '最多只能上传 5 张图片。'
|
|
|
+ title: '最多只能上传 5 张图片'
|
|
|
});
|
|
|
}
|
|
|
this.$Message.loading('图片上传中', 0);
|
|
|
this.issavingimg=true;
|
|
|
+ this.issavingloading=false
|
|
|
return check;
|
|
|
},
|
|
|
getinfobytelno(telno){
|
|
@@ -383,7 +418,11 @@
|
|
|
//console.log(res);
|
|
|
if(200!=res.code){
|
|
|
if(res.code<0){
|
|
|
+ var data =res.data
|
|
|
that.isedit =false;
|
|
|
+ if(data.userid>0){
|
|
|
+ this.userid = data.userid;
|
|
|
+ }
|
|
|
}else{
|
|
|
that.$Notice.error({
|
|
|
title: res.msg
|
|
@@ -395,6 +434,7 @@
|
|
|
that.userid = that.formdata.user_id;
|
|
|
//查询素材图片
|
|
|
that.getimglist();
|
|
|
+ that.$refs['editform'].validate();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
@@ -436,9 +476,46 @@
|
|
|
});
|
|
|
},
|
|
|
saveinfo(){
|
|
|
- this.issavingloading = true;
|
|
|
- //保存用户信息
|
|
|
+ this.$refs['editform'].validate((valid) => {
|
|
|
+ if(valid){
|
|
|
+ //保存用户信息
|
|
|
+ var that = this;
|
|
|
+ var counturl= this.url_host+"/workercardv1/getcountimgbyuserid";
|
|
|
+ var minimgs = this.minimgs
|
|
|
+ var num = this.uploadList.length
|
|
|
+ var data={
|
|
|
+ userid:this.userid,
|
|
|
+ num:num
|
|
|
+ }
|
|
|
+ $.ajax({
|
|
|
+ type: 'POST',
|
|
|
+ url: counturl,
|
|
|
+ data:data,
|
|
|
+ dataType: "json",
|
|
|
+ success: function(res){
|
|
|
+ if(200!=res.code){
|
|
|
+ that.$Notice.error({
|
|
|
+ title: res.msg
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ var count = res.data;
|
|
|
+ var diff = minimgs - count;
|
|
|
+ console.log(diff,count,minimgs)
|
|
|
+ if(diff>0){
|
|
|
+ that.imgcounterror.diff = diff;
|
|
|
+ that.showerrormsg=true
|
|
|
+ }else{
|
|
|
+ that.saveinfo2();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ saveinfo2(){
|
|
|
var that = this;
|
|
|
+ this.issavingloading = true;
|
|
|
var url= this.url_host+"/workercardv1/savewcidinfoforweb";
|
|
|
var data =this.formdata;
|
|
|
$.ajax({
|