|
@@ -5,13 +5,13 @@
|
|
|
<el-button type="primary" @click="save">{{ BtnTitle }}</el-button>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-form ref="form" :model="requestData" label-width="110px">
|
|
|
+ <el-form :model="requestData" label-width="110px" :rules="rules" ref="BindData">
|
|
|
<div>
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="客户级别:">
|
|
|
- <el-select v-model="requestData.lvlid" placeholder="请选择活动区域">
|
|
|
+ <el-form-item label="客户级别:" prop="lvlid">
|
|
|
+ <el-select v-model="requestData.lvlid" placeholder="请选择客户级别">
|
|
|
<el-option v-for="item in level" :key="item.id" :label="item.name"
|
|
|
:value="item.id"></el-option>
|
|
|
</el-select>
|
|
@@ -20,8 +20,8 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="客户类别:">
|
|
|
- <el-select v-model="requestData.category" placeholder="请选择活动区域">
|
|
|
+ <el-form-item label="客户类别:" prop="category">
|
|
|
+ <el-select v-model="requestData.category" placeholder="请选择客户类别">
|
|
|
<el-option v-for="item in customerClass" :key="item.id" :label="item.name"
|
|
|
:value="item.id"></el-option>
|
|
|
</el-select>
|
|
@@ -30,8 +30,8 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="权重:">
|
|
|
- <el-select v-model="requestData.weight" placeholder="请选择活动区域">
|
|
|
+ <el-form-item label="权重:" prop="weight">
|
|
|
+ <el-select v-model="requestData.weight" placeholder="权重">
|
|
|
<el-option label="A" value="393"></el-option>
|
|
|
<el-option label="B" value="392"></el-option>
|
|
|
<el-option label="C" value="391"></el-option>
|
|
@@ -45,7 +45,7 @@
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="联系人">
|
|
|
+ <el-form-item label="联系人" prop="contact">
|
|
|
<el-input v-model="requestData.contact"></el-input>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
@@ -54,18 +54,19 @@
|
|
|
<div class="grid-content bg-purple">
|
|
|
<el-form-item label="性别">
|
|
|
<el-select v-model="requestData.gender" placeholder="请选择活动区域">
|
|
|
- <el-option label="男" value="0"></el-option>
|
|
|
- <el-option label="女" value="1"></el-option>
|
|
|
- <el-option label="暂无" value="2"></el-option>
|
|
|
+ <el-option label="男" :value="0"></el-option>
|
|
|
+ <el-option label="女" :value="1"></el-option>
|
|
|
+ <el-option label="暂无" :value="2"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="手机号">
|
|
|
+ <el-form-item label="手机号" prop="telephone">
|
|
|
<el-input v-model="requestData.telephone"></el-input>
|
|
|
- </el-form-item></div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
@@ -87,7 +88,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="职务:">
|
|
|
+ <el-form-item label="职务:" prop="job">
|
|
|
<el-input v-model="requestData.job"></el-input>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
@@ -98,7 +99,7 @@
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
- <el-form-item label="单位名称:">
|
|
|
+ <el-form-item label="单位名称:" prop="client">
|
|
|
<el-input v-model="requestData.client"></el-input>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
@@ -111,9 +112,11 @@
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <div class="grid-content bg-purple"><el-form-item label="所在城市:">
|
|
|
+ <div class="grid-content bg-purple">
|
|
|
+ <el-form-item label="所在城市:" prop="location">
|
|
|
<el-input v-model="requestData.location"></el-input>
|
|
|
- </el-form-item></div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
@@ -135,7 +138,8 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple"><el-form-item label="护照有效期:">
|
|
|
- <el-input v-model="requestData.passportDate"></el-input>
|
|
|
+ <el-date-picker v-model="requestData.passportDate" type="date" placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item></div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -145,7 +149,8 @@
|
|
|
<el-col :span="8">
|
|
|
<div class="grid-content bg-purple">
|
|
|
<el-form-item label="生日信息:">
|
|
|
- <el-input v-model="requestData.birthday"></el-input>
|
|
|
+ <el-date-picker v-model="requestData.birthday" type="date" placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</el-col>
|
|
@@ -168,7 +173,7 @@
|
|
|
<el-col :span="12">
|
|
|
<div class="grid-content bg-purple">
|
|
|
<el-form-item label="负责人:">
|
|
|
- <el-select v-model="usersSel" multiple placeholder="请选择">
|
|
|
+ <el-select v-model="requestData.ascribedUser" multiple placeholder="请选择">
|
|
|
<el-option v-for="item in users" :key="item.id" :label="item.name" :value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
@@ -178,7 +183,8 @@
|
|
|
<el-col :span="12">
|
|
|
<div class="grid-content bg-purple">
|
|
|
<el-form-item label="业务归属:">
|
|
|
- <el-select v-model="serviceClassSel" multiple placeholder="请选择" width="300px">
|
|
|
+ <el-select v-model="requestData.ascribedDepartment" multiple placeholder="请选择"
|
|
|
+ width="300px">
|
|
|
<el-option v-for="item in serviceClass" :key="item.id" :label="item.name"
|
|
|
:value="item.id">
|
|
|
</el-option>
|
|
@@ -214,10 +220,10 @@ export default {
|
|
|
requestData: {
|
|
|
"status": 0,
|
|
|
"id": 0,
|
|
|
- "number": 0, //number
|
|
|
- "lvlid": 0, //地市州Id
|
|
|
- "client": "", //客户单位
|
|
|
- "weight": "",
|
|
|
+ "number": 0,
|
|
|
+ "lvlid": "",
|
|
|
+ "client": "",
|
|
|
+ "weight": "",
|
|
|
"clientshort": "",
|
|
|
"contact": "",
|
|
|
"gender": 0,
|
|
@@ -232,11 +238,17 @@ export default {
|
|
|
"birthday": "",
|
|
|
"otherinfo": "",
|
|
|
"wechat": "",
|
|
|
- "category": 0,
|
|
|
- "predele": 0,
|
|
|
- "finlishedDele": 0,
|
|
|
- "createUserId": parseInt(JSON.parse(localStorage.getItem("userinif")).userInfo.userId),
|
|
|
- "remark": ""
|
|
|
+ "category": "",
|
|
|
+ "predele": "",
|
|
|
+ "finlishedDele": "",
|
|
|
+ "createUserId": JSON.parse(localStorage.getItem("userinif")).userInfo.userId,
|
|
|
+ "remark": "",
|
|
|
+ "ascribedUser": [
|
|
|
+
|
|
|
+ ],
|
|
|
+ "ascribedDepartment": [
|
|
|
+
|
|
|
+ ]
|
|
|
},
|
|
|
BtnTitle: '保存新增数据',
|
|
|
customerClass: [],//客户类别
|
|
@@ -244,8 +256,32 @@ export default {
|
|
|
clientTypeList: [],
|
|
|
serviceClass: [],//业务归属
|
|
|
users: [],//负责人
|
|
|
- serviceClassSel: [],
|
|
|
- usersSel: [],
|
|
|
+ rules: { //校验规则
|
|
|
+ lvlid: [
|
|
|
+ { required: true, message: '请选择客户级别', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ category: [
|
|
|
+ { required: true, message: '请选择客户类别', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ weight: [
|
|
|
+ { required: true, message: '权重级别', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ contact: [
|
|
|
+ { required: true, message: '请输入联系人名称', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ telephone: [
|
|
|
+ { required: true, message: '请输入联系人手机号', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ job: [
|
|
|
+ { required: true, message: '请输入联系人职务', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ client: [
|
|
|
+ { required: true, message: '请输入单位名称', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ location: [
|
|
|
+ { required: true, message: '请输入所在城市', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -275,13 +311,13 @@ export default {
|
|
|
that.requestData.category = obj.category;
|
|
|
that.requestData.weight = obj.weight;
|
|
|
that.requestData.contact = obj.contact;
|
|
|
- that.requestData.gender = obj.gender.toString();
|
|
|
+ that.requestData.gender = obj.gender;
|
|
|
that.requestData.telephone = obj.telephone;
|
|
|
that.requestData.phone = obj.phone;
|
|
|
that.requestData.email = obj.email;
|
|
|
that.requestData.job = obj.job;
|
|
|
that.requestData.client = obj.client;
|
|
|
- that.requestData.clientshort = obj.clientshort;
|
|
|
+ that.requestData.clientshort = obj.clientShort;
|
|
|
that.requestData.location = obj.location;
|
|
|
that.requestData.address = obj.address;
|
|
|
that.requestData.passport = obj.passport;
|
|
@@ -289,20 +325,61 @@ export default {
|
|
|
that.requestData.birthday = obj.birthday;
|
|
|
that.requestData.predele = obj.predele;
|
|
|
that.requestData.finlishedDele = obj.finlishedDele;
|
|
|
- that.usersSel = obj.ascribedUser.map(x=>x.userId);
|
|
|
- that.serviceClassSel = obj.ascribedDepartment.map(x=>x.id);
|
|
|
+ that.requestData.ascribedUser = obj.ascribedUser.map(x => x.userId);
|
|
|
+ that.requestData.ascribedDepartment = obj.ascribedDepartment.map(x => x.id);
|
|
|
that.requestData.remark = obj.remark;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
})
|
|
|
},
|
|
|
- save(){
|
|
|
+ save() {
|
|
|
+ var that = this;
|
|
|
|
|
|
- if(this.requestData.id == 0){
|
|
|
+ var p = new Promise((resolve, reject) => {
|
|
|
+ this.$refs.BindData.validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ resolve(true);
|
|
|
+ } else {
|
|
|
+ reject(false);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ })
|
|
|
+
|
|
|
+ p.then(resolve => {
|
|
|
+ if (this.requestData.id == 0) {
|
|
|
+ //添加
|
|
|
+ this.requestData.status = 1;
|
|
|
+ } else {
|
|
|
+ //修改
|
|
|
+ this.requestData.status = 2;
|
|
|
+ }
|
|
|
+
|
|
|
+ var pred = parseInt(that.requestData.predele);
|
|
|
+ var inli = parseInt(that.requestData.finlishedDele);
|
|
|
+
|
|
|
+ that.requestData.predele = isNaN(pred) ? 0 : pred;
|
|
|
+ that.requestData.finlishedDele = isNaN(pred) ? 0 : pred;
|
|
|
+
|
|
|
+ this.$axios.post('/api/MarketCustomerResources/NewClientOp', this.requestData, {
|
|
|
+ headers: {
|
|
|
+ 'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IkZ1dHVyZSIsImV4cCI6MTY3OTU0MjgwNSwiaXNzIjoiT0FTeXN0ZW0uY29tIiwiYXVkIjoiT0FTeXN0ZW0uY29tIn0.iy5SUInq1p3yjZultRPyzCa2ekLeepSdMLxvPwXY6MI',
|
|
|
+ }
|
|
|
+ }).then(resp => {
|
|
|
+ if (resp.data.code == 200) {
|
|
|
+ that.$message({
|
|
|
+ message: '操作成功!',
|
|
|
+ type: 'success'
|
|
|
+ });
|
|
|
+ this.$router.push('/home/MCR');
|
|
|
+ } else {
|
|
|
+ that.$message.error(resp.data.msg);
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ }).catch(reject => {
|
|
|
+ console.log("未通过表单校验");
|
|
|
+ })
|
|
|
|
|
|
- }
|
|
|
-
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|