Files
lcb/pages/customer/editCard/index.js
T
chenrx 2c99487a4e fixed
2024-06-06 17:37:18 +08:00

768 lines
20 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,//车辆版本索引
// c_brands:[
// '综合','东风纳米','哪吒','零跑'
// ],
// c_brandArray:[
// {id:0, name:'综合'},
// {id:1, name:'东风纳米'},
// {id:4, name:'哪吒'},
// {id:5, name:'零跑'},
// ],
submitFlag: false,
// of_id:'',
of2_id: '',
// of1Index:-1,
of2Index: -1,
c_brandIndex: -1,
provinceIndex: -1,
province_id: '',
cityIndex: -1,
city_id: '',
countyIndex: -1,
county_id: '',
wxgr: 0, //是否添加个微
wxgrimg: '', //个微
wxgrimg_url: '', //个微
cf_title: '',
cf_edit_status: false,
},
//生命周期函数--监听页面加载
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 : '',
cf_title: res.data.baseinfo.of_id.value ? res.data.baseinfo.of_id.value : '',
cf_edit_status: res.data.baseinfo.of_id.edit_status,
wxgr: res.data.baseinfo.wxgr,
wxgrimg: res.data.baseinfo.wxgrimg,
wxgrimg_url: res.data.baseinfo.wxgrimg_url,
})
// this.data.c_brandArray.forEach((item,index) => {
// if(res.data.baseinfo.c_brand == item.id){
// this.setData({
// c_brandIndex:index
// })
// }
// })
//编辑基础信息使用
//获取车型品牌
//this.getAppSeriesBrands()
//匹配车系车型
//this.getAppSeriesedit()
if (this.data.cf_edit_status) {
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
})
},
//选择城市
changeCbrand(e) {
if (this.data.c_brandIndex != e.detail.value) {
this.setData({
c_brandIndex: 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.c_brandArray.length>0&&that.data.c_brandIndex == -1 ) {
// wx.showToast({
// title: '请选择客户品牌归属',
// icon: 'none'
// })
// }
else if (that.data.cf_edit_status && that.data.sources.length > 0 && that.data.of2_id == '') {
wx.showToast({
title: '请选择客户来源',
icon: 'none'
})
} else if (that.data.province_id == '') {
wx.showToast({
title: '请选择所在省份',
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 (this.data.wxgr == 1 && this.data.wxgrimg == '') {
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(this.data.c_brandIndex != -1){
// params['c_brand'] = this.data.c_brandArray[this.data.c_brandIndex].id;
// }
if (that.data.cf_edit_status && that.data.of2_id != that.data.baseinfo.of_id.of2_id) {
params['of2_id'] = that.data.of2_id;
}
params['province_id'] = that.data.province_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;
if (this.data.wxgr == 1) {
params['wxgrimg'] = this.data.wxgrimg;
}
_.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 of2Arr = []
res.data.forEach(item => {
of2Arr.push(item.name)
})
this.setData({
of2Arr,
sources: res.data
})
if (this.data.of2_id != '') {
res.data.forEach((item, index) => {
if (item.id == this.data.of2_id) {
this.setData({
of2Index: index,
})
}
})
}
});
},
//客户来源
changeOf2(e) {
if (this.data.of2Index != e.detail.value) {
this.setData({
of2_id: this.data.sources[e.detail.value].id,
of2Index: e.detail.value,
})
}
},
//客户标签
getAppCustomersTag() {
let params = {};
params['id'] = this.data.id;
_.apiQuery.getAppCustomersTag(params).then(res => {
this.setData({
province_id: res.data.province_id,
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_province()
//获取城市
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_province() {
let params = {};
_.apiQuery.getAppCityArea(params).then(res => {
let provinceArr = []
let provinceIndex = -1
res.data.list.forEach((item, index) => {
provinceArr.push(item.name)
console.log(this.data.province_id)
if (this.data.province_id == item.id) {
provinceIndex = index
}
})
this.setData({
provinceIndex,
provinceArr,
province: res.data.list
})
});
},
//获取城市
getAppCityArea_city() {
let params = {};
params['pid'] = this.data.province_id;
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
})
});
},
//选择省份
changeProvince(e) {
if (this.data.provinceIndex != e.detail.value) {
this.setData({
provinceIndex: e.detail.value,
province_id: this.data.province[e.detail.value].id,
city_id: '',
cityIndex: -1,
countyIndex: -1,
county_id: '',
})
}
this.getAppCityArea_city()
},
//选择城市
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
})
},
//选择图片
chooseImg(e) {
let that = this
//上传个微截图
if (e.currentTarget.dataset.type == 'gw_img') {
wx.chooseImage({
count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success(res) {
wx.showLoading({
title: '上传中',
})
wx.uploadFile({
url: _.config.api.upImg,
filePath: res.tempFilePaths[0],
name: 'img',
formData: {
'app': 'liche'
},
success: (resp) => {
resp.data = JSON.parse(resp.data);
if (resp.data.code == 200) {
wx.hideLoading();
that.setData({
wxgrimg: resp.data.data.url,
wxgrimg_url: resp.data.data.full_url,
})
} else {
wx.hideLoading();
wx.showToast({
title: '上传失败',
icon: 'none',
duration: 2000
})
}
},
})
},
fail: res => {
wx.showToast({
title: '文件选择失败',
icon: 'none',
duration: 2000
})
}
})
}
},
//查看图片
previewImage(e) {
if (e.currentTarget.dataset.type == 'gw_img') {
wx.previewImage({
current: this.data.wxgrimg_url,
urls: [this.data.wxgrimg_url],
})
}
},
})