|
|
|
@ -160,7 +160,7 @@ |
|
|
|
backgroundColor="#434544" size="26" color="#fff" @click="show_customer_tags=true"></fui-input> |
|
|
|
|
|
|
|
<!--下拉多选--> |
|
|
|
<fui-select :show="show_customer_tags" :options="options_customer_tags" title="请选择银行" multiple isReverse |
|
|
|
<fui-select :show="show_customer_tags" :options="options_customer_tags" title="请选择客户标签" multiple isReverse |
|
|
|
checkboxColor="#FFC529" btnBackground="#FFC529" btnColor="#1A1D26" closeColor="#6D758A" |
|
|
|
@confirm="onConfirmCustomerTags" @close="show_customer_tags=false"></fui-select> |
|
|
|
</fui-form-item> |
|
|
|
@ -188,13 +188,71 @@ |
|
|
|
<script> |
|
|
|
import commonApi from '@/api/common.js'; |
|
|
|
import marketApi from '@/api/market.js'; |
|
|
|
import memberApi from '@/api/member.js'; |
|
|
|
|
|
|
|
|
|
|
|
const rules = [{ |
|
|
|
name: "mobile", |
|
|
|
const rules = [ |
|
|
|
{ |
|
|
|
name: "student_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入学员姓名"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "student_phone", |
|
|
|
rule: ["required", "isMobile"], |
|
|
|
msg: ["请输入手机号", "请输入正确的手机号"] |
|
|
|
}]; |
|
|
|
msg: ["请输入学员手机号", "请输入正确的手机号"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "age", |
|
|
|
rule: ["required", "isNumber"], |
|
|
|
msg: ["请输入年龄", "请输入正确的数字"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "school_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入学校"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "grade", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入年级"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "class_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入班级"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "customer_source", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请选择客户来源"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "add_staff_id", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请选择归属人员"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "contact_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入联系人"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "full_address", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请选择所在地区"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "community_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请输入小区"] |
|
|
|
}, |
|
|
|
{ |
|
|
|
name: "customer_tags_name", |
|
|
|
rule: ["required"], |
|
|
|
msg: ["请选择客户标签"] |
|
|
|
} |
|
|
|
]; |
|
|
|
export default { |
|
|
|
data() { |
|
|
|
return { |
|
|
|
@ -327,39 +385,28 @@ export default { |
|
|
|
//归属人员(add_staff_id,添加这条数据的工作人员id) |
|
|
|
result_add_staff_id: '',//选中项的中文名称 |
|
|
|
options_add_staff_id: [ |
|
|
|
{ |
|
|
|
'value': 1, |
|
|
|
'text': '张三' |
|
|
|
}, |
|
|
|
{ |
|
|
|
'value': 2, |
|
|
|
'text': '李四' |
|
|
|
} |
|
|
|
// { |
|
|
|
// 'value': 1, |
|
|
|
// 'text': '张三' |
|
|
|
// }, |
|
|
|
],//客户来源可选值 |
|
|
|
|
|
|
|
//客户标签 |
|
|
|
show_customer_tags: false, |
|
|
|
options_customer_tags: [ |
|
|
|
{ |
|
|
|
text: '标签1', |
|
|
|
value: '1', |
|
|
|
checked: false,//是否选中"true=是,false=否 |
|
|
|
}, |
|
|
|
{ |
|
|
|
text: '标签2', |
|
|
|
value: '2', |
|
|
|
checked: false,//是否选中 |
|
|
|
}, |
|
|
|
{ |
|
|
|
text: '标签3', |
|
|
|
value: '3', |
|
|
|
checked: false,//是否选中 |
|
|
|
} |
|
|
|
// { |
|
|
|
// text: '标签3', |
|
|
|
// value: '3', |
|
|
|
// checked: false,//是否选中 |
|
|
|
// } |
|
|
|
],//客户标签可选值 |
|
|
|
|
|
|
|
//地区三级联动 |
|
|
|
show_area: false, |
|
|
|
options_area: [], |
|
|
|
|
|
|
|
//登录用户信息 |
|
|
|
userInfo:{} |
|
|
|
} |
|
|
|
}, |
|
|
|
onShow() { |
|
|
|
@ -368,9 +415,51 @@ export default { |
|
|
|
methods: { |
|
|
|
//初始化 |
|
|
|
async init() { |
|
|
|
//获取登录用户信息 |
|
|
|
this.getUserInfo() |
|
|
|
this.getDict_customer_source()//获取字典-客户来源 |
|
|
|
this.getDict_customer_tags()//获取字典-客户标签 |
|
|
|
this.getStaffList()//获取人员列表 |
|
|
|
|
|
|
|
this.getAreaTree()//获取地区树形结构 |
|
|
|
}, |
|
|
|
|
|
|
|
async getUserInfo(){ |
|
|
|
let res = await marketApi.member({}) |
|
|
|
if (res.code != 1) { |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
this.userInfo = res.data |
|
|
|
|
|
|
|
this.formData.staff_id = res.data.staff_id |
|
|
|
this.result_add_staff_id = res.data.name |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
//获取人员列表 |
|
|
|
async getStaffList() { |
|
|
|
let res = await memberApi.staffList({type: 2}) |
|
|
|
if (res.code != 1) { |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
res.data.forEach((v,k)=>{ |
|
|
|
this.options_add_staff_id.push({ |
|
|
|
text: v.name, |
|
|
|
value: v.id, |
|
|
|
}) |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//获取地区树形结构 |
|
|
|
async getAreaTree() { |
|
|
|
let res = await commonApi.getAreaTree() |
|
|
|
@ -384,20 +473,101 @@ export default { |
|
|
|
this.options_area = res.data |
|
|
|
}, |
|
|
|
|
|
|
|
//获取字典-客户来源 |
|
|
|
async getDict_customer_source(){ |
|
|
|
let res = await commonApi.getDictionary('customer_source') |
|
|
|
if(res.code != 1){ |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
//提交 |
|
|
|
submit() { |
|
|
|
console.log(this.formData) |
|
|
|
this.$refs.form.validator(null, null, true).then(res => { |
|
|
|
console.log(res) |
|
|
|
let dictionary = res.data.dictionary |
|
|
|
let arr = [] |
|
|
|
dictionary.forEach((v,k)=>{ |
|
|
|
arr.push({ |
|
|
|
text: v.name, |
|
|
|
value: v.value, |
|
|
|
}) |
|
|
|
}) |
|
|
|
this.options_customer_source = arr |
|
|
|
}, |
|
|
|
|
|
|
|
//获取字典-客户标签 |
|
|
|
async getDict_customer_tags(){ |
|
|
|
let res = await commonApi.getDictionary('customer_tags') |
|
|
|
if(res.code != 1){ |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
let dictionary = res.data.dictionary |
|
|
|
let arr = [] |
|
|
|
dictionary.forEach((v,k)=>{ |
|
|
|
arr.push({ |
|
|
|
text: v.name, |
|
|
|
value: String(v.value), |
|
|
|
checked: false, |
|
|
|
}) |
|
|
|
}) |
|
|
|
this.options_customer_tags = arr |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//表单验证 |
|
|
|
async validatorForm() { |
|
|
|
try { |
|
|
|
const res = await this.$refs.form.validator(null, null, true); |
|
|
|
console.log(res); |
|
|
|
if (res.isPassed) { |
|
|
|
console.log('校验通过!') |
|
|
|
console.log('校验通过!'); |
|
|
|
return true; |
|
|
|
} else { |
|
|
|
console.log('向上滑动页面查看错误提示!') |
|
|
|
console.log('向上滑动页面查看错误提示!'); |
|
|
|
return false; |
|
|
|
} |
|
|
|
}).catch(err => { |
|
|
|
console.log(err) |
|
|
|
} catch (err) { |
|
|
|
console.log(err); |
|
|
|
return false; |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//提交 |
|
|
|
async submit() { |
|
|
|
console.log(this.formData) |
|
|
|
//表单验证 |
|
|
|
let validatorForm = await this.validatorForm() |
|
|
|
console.log(123123,validatorForm) |
|
|
|
if(!validatorForm){ |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
let data = {...this.formData} |
|
|
|
let res = await memberApi.setSales(data) |
|
|
|
if(res.code != 1){ |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
uni.showToast({ |
|
|
|
title: res.msg, |
|
|
|
icon: 'success' |
|
|
|
}) |
|
|
|
//延迟1s执行 |
|
|
|
setTimeout(() => { |
|
|
|
//跳转页面-线索列表 |
|
|
|
uni.navigateTo({ |
|
|
|
url: `/pages/market/clue/index` |
|
|
|
}) |
|
|
|
}, 1000) |
|
|
|
}, |
|
|
|
//选择弹窗 |
|
|
|
selectCon(type) { |
|
|
|
|