|
@@ -2,11 +2,11 @@
|
|
|
<div class="normal-margin">
|
|
|
<el-button size="small" type="primary" @click="onShow">新 建</el-button>
|
|
|
<el-dialog title="编辑线索" :visible.sync="dialogFormVisible" width="500px">
|
|
|
- <el-form :model="form" label-position="left" label-width="80px" size="small">
|
|
|
+ <el-form :model="form" :rules="rule" ref="form" label-position="left" label-width="80px" size="small">
|
|
|
<el-form-item label="客户姓名">
|
|
|
<el-input v-model="form.name" autocomplete="off" placeholder="输入客户姓名"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="手机号">
|
|
|
+ <el-form-item label="手机号" prop="phonenumber">
|
|
|
<el-input v-model="form.phonenumber" autocomplete="off" placeholder="输入手机号"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="省市县" prop="value">
|
|
@@ -21,7 +21,7 @@
|
|
|
<el-form-item label="地址">
|
|
|
<el-input v-model="form.address" autocomplete="off" placeholder="输入地址"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="来源">
|
|
|
+ <el-form-item label="来源" prop="cluesource">
|
|
|
<el-input v-model="form.cluesource" autocomplete="off" placeholder="输入来源"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="备注">
|
|
@@ -42,6 +42,17 @@ export default {
|
|
|
data () {
|
|
|
return {
|
|
|
dialogFormVisible:false,
|
|
|
+ rule:{
|
|
|
+ phonenumber:[
|
|
|
+ { required: true, message: '请输入联系人手机号', trigger: 'blur' },
|
|
|
+ { pattern:/^1[3-9]\d{9}$/, message: '请输入正确手机号码',trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ cluesource:[{ required: true, message: '请输入来源', trigger: 'blur' }],
|
|
|
+ value:[
|
|
|
+ { required: true, message: '请选择省市县', trigger: 'blur' },
|
|
|
+ { required: true, message: '请选择省市县', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ },
|
|
|
form:{
|
|
|
"sat_orderclueuploadbillmxid": 0,
|
|
|
"sat_orderclueuploadbillid": this.$route.query.id
|
|
@@ -53,16 +64,19 @@ export default {
|
|
|
onShow () {
|
|
|
this.dialogFormVisible = true
|
|
|
},
|
|
|
- async onSubmit () {
|
|
|
- const res = await this.$api.requested({
|
|
|
- "classname":"webmanage.saletool.orderclue.orderclue",
|
|
|
- "method": "insertormodify_Orderclueuploadbillmx",
|
|
|
- "content":this.form
|
|
|
- })
|
|
|
- this.tool.showMessage(res,()=>{
|
|
|
- this.dialogFormVisible = false
|
|
|
- this.$emit('onSuccess')
|
|
|
- })
|
|
|
+ onSubmit () {
|
|
|
+ this.$refs['form'].validate(async (valid) => {
|
|
|
+ if (!valid) return false;
|
|
|
+ const res = await this.$api.requested({
|
|
|
+ "classname":"webmanage.saletool.orderclue.orderclue",
|
|
|
+ "method": "insertormodify_Orderclueuploadbillmx",
|
|
|
+ "content":this.form
|
|
|
+ })
|
|
|
+ this.tool.showMessage(res,()=>{
|
|
|
+ this.dialogFormVisible = false
|
|
|
+ this.$emit('onSuccess')
|
|
|
+ })
|
|
|
+ });
|
|
|
},
|
|
|
async query_arealist() {
|
|
|
const res = await this.$api.requested({
|