644 lines
17 KiB
JavaScript
644 lines
17 KiB
JavaScript
import _ from '../../../commons/js/commons'
|
|
const app = getApp()
|
|
Page({
|
|
data: {
|
|
name:'',//名字
|
|
mobile:'',//手机号
|
|
// brand_id:'',//品牌
|
|
// car_id:'',//车系id
|
|
// v_id:'',//车辆版本id
|
|
// color_id:'',//颜色id
|
|
// brandIndex:-1,//车辆品牌索引
|
|
// modelIndex:-1,//车系车型索引
|
|
// colorArray:[],//车身颜色列表
|
|
// levelArray:[],//车辆版本列表
|
|
// colorIndex:-1,//车身颜色索引
|
|
// levelIndex:-1,//车辆版本索引
|
|
submitFlag:false,
|
|
|
|
of_id:'',
|
|
of2_id:'',
|
|
of1Index:-1,
|
|
of2Index:-1,
|
|
|
|
cityIndex:-1,
|
|
city_id:'',
|
|
countyIndex:-1,
|
|
county_id:'',
|
|
wxgr:0,//是否添加个微
|
|
},
|
|
//生命周期函数--监听页面加载
|
|
onLoad: function (options) {
|
|
for (let key in options) {
|
|
this.setData({
|
|
[key]: options[key]
|
|
})
|
|
}
|
|
this.getAppCustomerData()
|
|
this.getAppCustomersTag()
|
|
},
|
|
|
|
//获取客户详细信息
|
|
getAppCustomerData(){
|
|
let params = {};
|
|
params['id'] = this.data.id;
|
|
_.apiQuery.getAppCustomerData(params).then(res=>{
|
|
this.setData({
|
|
baseinfo:res.data.baseinfo,
|
|
name:res.data.baseinfo.name.value?res.data.baseinfo.name.value:'',
|
|
mobile:res.data.baseinfo.mobile.value?res.data.baseinfo.mobile.value:'',
|
|
of_id:res.data.baseinfo.of_id.of_id?res.data.baseinfo.of_id.of_id:'',
|
|
of2_id:res.data.baseinfo.of_id.of2_id?res.data.baseinfo.of_id.of2_id:'',
|
|
wxgr:res.data.baseinfo.wxgr,
|
|
})
|
|
|
|
//编辑基础信息使用
|
|
//获取车型品牌
|
|
//this.getAppSeriesBrands()
|
|
//匹配车系车型
|
|
//this.getAppSeriesedit()
|
|
this.getAppCustomersOffline_sources()
|
|
|
|
})
|
|
},
|
|
|
|
//获取车型品牌
|
|
getAppSeriesBrands(){
|
|
_.apiQuery.getAppSeriesBrands().then(res => {
|
|
if(res.data.list.length>0){
|
|
let brandArray = []
|
|
res.data.list.forEach(item => {
|
|
brandArray.push(item.name)
|
|
})
|
|
this.setData({
|
|
brandArray:brandArray,
|
|
brandList:res.data.list,
|
|
brandIndex:-1,
|
|
})
|
|
|
|
if(this.data.baseinfo.brand_id.value != ''){
|
|
res.data.list.forEach((item,index) => {
|
|
if(item.id == this.data.baseinfo.brand_id.value){
|
|
this.setData({
|
|
brand_id:this.data.baseinfo.brand_id.value,
|
|
brandIndex:index,
|
|
})
|
|
}
|
|
})
|
|
}
|
|
|
|
}
|
|
});
|
|
},
|
|
|
|
//匹配车系车型
|
|
getAppSeriesedit(){
|
|
let params = {};
|
|
params['brand_id'] = this.data.baseinfo.brand_id.value;
|
|
_.apiQuery.getAppSeries(params).then(res => {
|
|
if(res.data.list.length>0){
|
|
let modelArray = []
|
|
res.data.list.forEach(item => {
|
|
modelArray.push(item.name)
|
|
})
|
|
this.setData({
|
|
modelArray:modelArray,
|
|
modelList:res.data.list,
|
|
modelIndex:-1,
|
|
})
|
|
|
|
if(this.data.baseinfo.car_id.value != ''){
|
|
res.data.list.forEach((item,index) => {
|
|
if(item.id == this.data.baseinfo.car_id.value){
|
|
this.setData({
|
|
car_id:this.data.baseinfo.car_id.value,
|
|
modelIndex:index,
|
|
})
|
|
}
|
|
})
|
|
|
|
//匹配颜色 车辆版本
|
|
this.getAppSeriesAttrsleveledit()
|
|
|
|
}
|
|
|
|
}
|
|
});
|
|
},
|
|
|
|
//编辑品牌时车系车型
|
|
getAppSeries(){
|
|
let params = {};
|
|
params['brand_id'] = this.data.brand_id;
|
|
_.apiQuery.getAppSeries(params).then(res => {
|
|
if(res.data.list.length>0){
|
|
let modelArray = []
|
|
res.data.list.forEach(item => {
|
|
modelArray.push(item.name)
|
|
})
|
|
this.setData({
|
|
modelArray:modelArray,
|
|
modelList:res.data.list,
|
|
})
|
|
}
|
|
});
|
|
},
|
|
|
|
//获取车辆版本 ---编辑匹配信息
|
|
getAppSeriesAttrsleveledit(){
|
|
|
|
let params = {};
|
|
params['id'] = this.data.modelList[this.data.modelIndex].id;
|
|
params['type'] = 0;
|
|
_.apiQuery.getAppSeriesAttrs(params).then(res => {
|
|
if(res.data.total>0){
|
|
let levelArray = []
|
|
res.data.list.forEach(item => {
|
|
levelArray.push(item.title)
|
|
})
|
|
this.setData({
|
|
levelArray:levelArray,
|
|
levelList:res.data.list,
|
|
levelIndex:-1,
|
|
})
|
|
|
|
if(this.data.baseinfo.v_id.value != ''){
|
|
res.data.list.forEach((item,index) => {
|
|
if(item.id == this.data.baseinfo.v_id.value){
|
|
this.setData({
|
|
v_id:this.data.baseinfo.v_id.value,
|
|
levelIndex:index,
|
|
})
|
|
}
|
|
})
|
|
}
|
|
|
|
this.getAppSeriesAttrscoloredit()
|
|
|
|
}
|
|
});
|
|
},
|
|
|
|
//获取车身颜色 ---编辑匹配信息
|
|
getAppSeriesAttrscoloredit(){
|
|
let params = {};
|
|
params['id'] = this.data.modelList[this.data.modelIndex].id;
|
|
params['type'] = 1;
|
|
params['v_id'] = this.data.v_id;
|
|
_.apiQuery.getAppSeriesAttrs(params).then(res => {
|
|
if(res.data.total>0){
|
|
let colorArray = []
|
|
res.data.list.forEach(item => {
|
|
colorArray.push(item.title)
|
|
})
|
|
this.setData({
|
|
colorArray:colorArray,
|
|
colorList:res.data.list,
|
|
colorIndex:-1,
|
|
})
|
|
|
|
if(this.data.baseinfo.color_id.value != ''){
|
|
res.data.list.forEach((item,index) => {
|
|
if(item.id == this.data.baseinfo.color_id.value){
|
|
this.setData({
|
|
color_id:this.data.baseinfo.color_id.value,
|
|
colorIndex:index,
|
|
})
|
|
}
|
|
})
|
|
}
|
|
|
|
}
|
|
});
|
|
},
|
|
|
|
|
|
//获取车辆版本
|
|
getAppSeriesAttrslevel(){
|
|
let params = {};
|
|
params['id'] = this.data.car_id;
|
|
params['type'] = 0;
|
|
_.apiQuery.getAppSeriesAttrs(params).then(res => {
|
|
if(res.data.total>0){
|
|
let levelArray = []
|
|
res.data.list.forEach(item => {
|
|
levelArray.push(item.title)
|
|
})
|
|
this.setData({
|
|
levelArray:levelArray,
|
|
levelList:res.data.list,
|
|
levelIndex:-1,
|
|
})
|
|
}
|
|
});
|
|
},
|
|
|
|
//获取车身颜色
|
|
getAppSeriesAttrscolor(){
|
|
let params = {};
|
|
params['id'] = this.data.car_id;
|
|
params['type'] = 1;
|
|
params['v_id'] = this.data.v_id;
|
|
_.apiQuery.getAppSeriesAttrs(params).then(res => {
|
|
if(res.data.total>0){
|
|
let colorArray = []
|
|
res.data.list.forEach(item => {
|
|
colorArray.push(item.title)
|
|
})
|
|
this.setData({
|
|
colorArray:colorArray,
|
|
colorList:res.data.list,
|
|
colorIndex:-1,
|
|
})
|
|
}
|
|
});
|
|
},
|
|
|
|
//输入
|
|
inputTx(e) {
|
|
this.setData({
|
|
submitFlag:false,
|
|
[e.currentTarget.dataset.key]: e.detail.value
|
|
})
|
|
},
|
|
|
|
//选择品牌
|
|
changeBrand(e) {
|
|
if(this.data.brandIndex != e.detail.value && e.detail.value >= 0){
|
|
this.setData({
|
|
brand_id:this.data.brandList[e.detail.value].id,
|
|
brandIndex:e.detail.value,
|
|
car_id:'',//车系id
|
|
v_id:'',//车辆版本id
|
|
color_id:'',//车身颜色id
|
|
incolor_id:'',//内饰颜色id
|
|
modelIndex:-1,//车系车型索引
|
|
colorArray:[],//车身颜色列表
|
|
levelArray:[],//车辆版本列表
|
|
interiorArray:[],//内饰颜色
|
|
colorIndex:-1,//车身颜色索引
|
|
levelIndex:-1,//车辆版本索引
|
|
interiorIndex:-1,//内饰颜色索引
|
|
priceinfo:'',
|
|
})
|
|
this.getAppSeries()
|
|
}
|
|
},
|
|
|
|
//选择车系
|
|
changeModel(e) {
|
|
if(this.data.modelIndex != e.detail.value && e.detail.value >= 0){
|
|
this.setData({
|
|
car_id:this.data.modelList[e.detail.value].id,
|
|
modelIndex:e.detail.value,
|
|
v_id:'',//车辆版本id
|
|
color_id:'',//车身颜色id
|
|
incolor_id:'',//内饰颜色id
|
|
colorArray:[],//车身颜色列表
|
|
levelArray:[],//车辆版本列表
|
|
interiorArray:[],//内饰颜色
|
|
colorIndex:-1,//车身颜色索引
|
|
levelIndex:-1,//车辆版本索引
|
|
interiorIndex:-1,//内饰颜色索引
|
|
priceinfo:'',
|
|
})
|
|
this.getAppSeriesAttrslevel()
|
|
}
|
|
},
|
|
|
|
//车辆版本
|
|
changeLevel(e) {
|
|
if(this.data.levelIndex != e.detail.value && e.detail.value >= 0){
|
|
this.setData({
|
|
v_id:this.data.levelList[e.detail.value].id,
|
|
levelIndex:e.detail.value,
|
|
color_id:'',//车身颜色id
|
|
colorArray:[],//车身颜色列表
|
|
colorIndex:-1,//车身颜色索引
|
|
})
|
|
this.getAppSeriesAttrscolor()
|
|
}
|
|
},
|
|
|
|
//车身颜色
|
|
changeColor(e) {
|
|
if(this.data.colorIndex != e.detail.value && e.detail.value >= 0){
|
|
this.setData({
|
|
color_id:this.data.colorList[e.detail.value].id,
|
|
colorIndex:e.detail.value,
|
|
})
|
|
}
|
|
},
|
|
|
|
//编辑客户
|
|
putAppCustomerData() {
|
|
|
|
let that = this
|
|
if (that.data.name == '' ) {
|
|
wx.showToast({
|
|
title: '请输入客户姓名',
|
|
icon: 'none'
|
|
})
|
|
} else if (that.data.mobile != that.data.baseinfo.mobile.value&&!/^1[3456789]\d{9}$/.test(that.data.mobile)){
|
|
wx.showToast({
|
|
title: '请输入正确的手机号码',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
else if (that.data.sources.length>0&&that.data.of_id == '' ) {
|
|
wx.showToast({
|
|
title: '请选择客户来源',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
else if (that.data.sources.length>0&&that.data.sources[that.data.of1Index].list.length>0&&that.data.of2_id == '' ) {
|
|
wx.showToast({
|
|
title: '请选择'+that.data.sources[that.data.of1Index].name+'类型',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
else if (that.data.city_id == '' ) {
|
|
wx.showToast({
|
|
title: '请选择所在城市',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
else if (that.data.county_id == '' ) {
|
|
wx.showToast({
|
|
title: '请选择所在地区',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
// else if(that.data.car_id == '' ){
|
|
// wx.showToast({
|
|
// title: '请选择车系车型',
|
|
// icon: 'none'
|
|
// })
|
|
// }else if(that.data.v_id == '' ){
|
|
// wx.showToast({
|
|
// title: '请选择车辆版本',
|
|
// icon: 'none'
|
|
// })
|
|
// }else if(that.data.color_id == '' ){
|
|
// wx.showToast({
|
|
// title: '请选择车身颜色',
|
|
// icon: 'none'
|
|
// })
|
|
// }
|
|
// else if(that.data.name==that.data.baseinfo.name.value&&that.data.mobile==that.data.baseinfo.mobile.value&&that.data.of_id==that.data.baseinfo.of_id.of_id&&that.data.of2_id==that.data.baseinfo.of_id.of2_id&&that.data.car_id==that.data.baseinfo.car_id.value&&that.data.v_id==that.data.baseinfo.v_id.value&&that.data.color_id==that.data.baseinfo.color_id.value){
|
|
// wx.showToast({
|
|
// title: '好像没改什么',
|
|
// icon: 'none'
|
|
// })
|
|
// }
|
|
else{
|
|
that.setData({
|
|
submitFlag: true,
|
|
})
|
|
|
|
let params = {};
|
|
params['cus_id'] = that.data.id;
|
|
params['tag'] = that.data.taglList;
|
|
if(that.data.name != that.data.baseinfo.name.value){
|
|
params['name'] = that.data.name;
|
|
}
|
|
if(that.data.mobile != that.data.baseinfo.mobile.value){
|
|
params['mobile'] = that.data.mobile;
|
|
}
|
|
if(that.data.of_id != that.data.baseinfo.of_id.of_id){
|
|
params['of_id'] = that.data.of_id;
|
|
}
|
|
if(that.data.of2_id != that.data.baseinfo.of_id.of2_id){
|
|
params['of2_id'] = that.data.of2_id;
|
|
}
|
|
params['city_id'] = that.data.city_id;
|
|
params['county_id'] = that.data.county_id;
|
|
// if(that.data.car_id != that.data.baseinfo.car_id.value){
|
|
// params['car_id'] = that.data.car_id;
|
|
// }
|
|
// if(that.data.v_id != that.data.baseinfo.v_id.value){
|
|
// params['v_id'] = that.data.v_id;
|
|
// }
|
|
// if(that.data.color_id != that.data.baseinfo.color_id.value){
|
|
// params['color_id'] = that.data.color_id;
|
|
// }
|
|
params['wxgr'] = this.data.wxgr;
|
|
_.apiQuery.putAppCustomerData(params).then(res => {
|
|
|
|
//刷新列表页
|
|
let pages = getCurrentPages();
|
|
let prevPage1 = null; //上一个页面
|
|
let prevPage2 = null; //上上一个页面
|
|
if (pages.length >= 2) {
|
|
prevPage1 = pages[pages.length - 2]; //上一个页面
|
|
if(prevPage1.route == 'pages/customer/detail/index'){
|
|
prevPage1.onPullDownRefresh()
|
|
}
|
|
prevPage2 = pages[pages.length - 3]; //上一个页面
|
|
if(prevPage2.route == 'pages/customer/index'){
|
|
prevPage2.onPullDownRefresh()
|
|
}
|
|
}
|
|
|
|
that.setData({
|
|
submitFlag: false,
|
|
})
|
|
|
|
wx.showModal({
|
|
title: '编辑成功',
|
|
content: '',
|
|
confirmText: "确定",
|
|
confirmColor: "#36afa2",
|
|
cancelText: "返回",
|
|
cancelColor: "#666",
|
|
success(res) {
|
|
if (res.confirm) {
|
|
that.getAppCustomerData()
|
|
that.getAppCustomersTag()
|
|
} else if (res.cancel) {
|
|
wx.navigateBack({
|
|
delta: 1
|
|
})
|
|
}
|
|
|
|
}
|
|
})
|
|
|
|
}).catch(res=>{
|
|
that.setData({
|
|
submitFlag: false,
|
|
})
|
|
});
|
|
}
|
|
},
|
|
|
|
//客户来源
|
|
getAppCustomersOffline_sources(){
|
|
_.apiQuery.getAppCustomersOffline_sources().then(res => {
|
|
let of1Arr = []
|
|
res.data.sources.forEach(item => {
|
|
of1Arr.push(item.name)
|
|
})
|
|
this.setData({
|
|
of1Arr,
|
|
sources:res.data.sources
|
|
})
|
|
if(this.data.of_id != ''){
|
|
res.data.sources.forEach((item,index) => {
|
|
if(item.id == this.data.of_id){
|
|
this.setData({
|
|
of1Index:index,
|
|
})
|
|
}
|
|
})
|
|
if(this.data.of2Index != ''){
|
|
let of2Arr = []
|
|
res.data.sources[this.data.of1Index].list.forEach((item,index) => {
|
|
of2Arr.push(item.name)
|
|
if(item.id == this.data.of2_id){
|
|
this.setData({
|
|
of2Index:index,
|
|
})
|
|
}
|
|
})
|
|
this.setData({
|
|
of2Arr,
|
|
})
|
|
}
|
|
}
|
|
});
|
|
},
|
|
|
|
//客户来源
|
|
changeOf1(e) {
|
|
if(this.data.of1Index!=e.detail.value){
|
|
let of2Arr = []
|
|
this.data.sources[e.detail.value].list.forEach(item => {
|
|
of2Arr.push(item.name)
|
|
})
|
|
this.setData({
|
|
of2Arr,
|
|
of2Index:-1,
|
|
of_id:this.data.sources[e.detail.value].id,
|
|
of1Index:e.detail.value,
|
|
})
|
|
}
|
|
},
|
|
|
|
changeOf2(e) {
|
|
if(this.data.of2Index!=e.detail.value){
|
|
this.setData({
|
|
of2_id:this.data.sources[this.data.of1Index].list[e.detail.value].id,
|
|
of2Index:e.detail.value,
|
|
})
|
|
}
|
|
},
|
|
|
|
//客户标签
|
|
getAppCustomersTag(){
|
|
let params = {};
|
|
params['id'] = this.data.id;
|
|
_.apiQuery.getAppCustomersTag(params).then(res => {
|
|
this.setData({
|
|
city_id:res.data.city_id,
|
|
county_id:res.data.county_id,
|
|
taglList:res.data.tags&&res.data.tags.length>0?res.data.tags:[],
|
|
})
|
|
//获取城市
|
|
this.getAppCityArea_city()
|
|
//获取地区
|
|
this.getAppCityArea_county()
|
|
});
|
|
},
|
|
|
|
//单选
|
|
radioPicker(e){
|
|
let taglList = this.data.taglList
|
|
taglList[e.currentTarget.dataset.i].list.forEach(item => {
|
|
item.checked=false
|
|
})
|
|
taglList[e.currentTarget.dataset.i].list[e.currentTarget.dataset.j].checked=true
|
|
this.setData({
|
|
taglList,
|
|
})
|
|
},
|
|
|
|
//多选
|
|
checkPicker(e){
|
|
this.setData({
|
|
['taglList['+e.currentTarget.dataset.i+'].list['+e.currentTarget.dataset.j+'].checked']:!this.data.taglList[e.currentTarget.dataset.i].list[e.currentTarget.dataset.j].checked,
|
|
})
|
|
},
|
|
|
|
//获取城市
|
|
getAppCityArea_city(){
|
|
let params = {};
|
|
params['type'] = 'city';
|
|
_.apiQuery.getAppCityArea(params).then(res => {
|
|
let cityArr = []
|
|
let cityIndex = -1
|
|
res.data.list.forEach((item,index) => {
|
|
cityArr.push(item.name)
|
|
if(this.data.city_id == item.id){
|
|
cityIndex = index
|
|
}
|
|
})
|
|
this.setData({
|
|
cityIndex,
|
|
cityArr,
|
|
city:res.data.list
|
|
})
|
|
});
|
|
},
|
|
|
|
//获取行政区
|
|
getAppCityArea_county(){
|
|
let params = {};
|
|
params['pid'] = this.data.city_id;
|
|
params['type'] = 'county';
|
|
_.apiQuery.getAppCityArea(params).then(res => {
|
|
let countyArr = []
|
|
let countyIndex = -1
|
|
res.data.list.forEach((item,index) => {
|
|
countyArr.push(item.name)
|
|
if(this.data.county_id == item.id){
|
|
countyIndex = index
|
|
}
|
|
})
|
|
this.setData({
|
|
countyIndex,
|
|
countyArr,
|
|
county:res.data.list
|
|
})
|
|
});
|
|
},
|
|
|
|
//选择城市
|
|
changeCity(e) {
|
|
if(this.data.cityIndex!=e.detail.value){
|
|
this.setData({
|
|
cityIndex:e.detail.value,
|
|
city_id:this.data.city[e.detail.value].id,
|
|
})
|
|
this.getAppCityArea_county()
|
|
}
|
|
},
|
|
|
|
//选择地区
|
|
changeCounty(e) {
|
|
if(this.data.countyIndex!=e.detail.value){
|
|
this.setData({
|
|
countyIndex:e.detail.value,
|
|
county_id:this.data.county[e.detail.value].id,
|
|
})
|
|
}
|
|
},
|
|
|
|
//是否添加个微
|
|
switchWxgr:function(e){
|
|
this.setData({
|
|
wxgr:e.detail.value ? 1 :0
|
|
})
|
|
},
|
|
|
|
}) |