123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880 |
- const app = getApp();
- Page({
- data: {
- Ageid: 0,
- AgeArray: [], // 年龄-数据
- AgeIndex: [0, 0], // 年龄-下标
- heightid: 0,
- heightArray: [], // 身高-数据
- heightindex: [0, 0], // 身高-下标
- EducationArray: [], // 学历-数据
- Educationindex: '', // 学历-下标
- // MarriageArray: [], // 婚史-数据
- // Marriageindex: '', // 婚史-下标
- incomeid: 0,
- incomeArray: [], // 收入-数据
- incomeindex: [0, 0], // 收入-下标
- inputValue: '', // id
- age: '', // 年龄
- height: '', // 身高
- // marry: '', // 婚史
- // idmarry: 0,
- education: '', // 学历
- educationid: 0,
- income: 0, // 收入
- Zero:0, //处理不限
- Zero1: 0, //处理不限
- heightZero: 0, //处理不限
- heightZero1: 0, //处理不限
- incomeZero:0,
- incomeZero1:0,
- // min = '';
- // max = '';
- // 省市区
- city: 0, // 市 要传的数据
- provinceName: '', // 省 要传的数据
- cityName: '', // 市 要传的数据
- areaName: '', // 区 要传的数据
- provincedata: '', //省数据
- provinceid: 1, //省选中ID
- provincetext: '北京', //省 名字
- citydata: '', //市数据
- cityidx: '', //市选中ID
- citytext: '', //市 名字
- areadata: '', //区数据
- scrolltop: '', //市区滚动条
- hiddenName: true, //显示隐藏
- },
- onLoad: function (option) {
- var that = this
- // console.log(option)
- //先清空要传的数据
- app.globalData.Selection = 0; // 是否选中
- app.globalData.age = 0; // 年龄
- app.globalData.height = 0; // 身高
- // app.globalData.marry = 0 // 婚史
- app.globalData.education = 0 // 学历
- app.globalData.income = 0; // 收入
-
- var _city = option.city // 市
- var _provincename = option.provinceName // 省
- var _cityname = option.cityName // 市
- var _areaname = option.areaName // 区
-
- // var _idmarry = option.idmarry
- var _educationid = option.educationid
- that.setData({
- city: _city,
- provinceName: _provincename, // 省
- cityName: _cityname, // 市
- areaName: _areaname, // 区
- // idmarry: _idmarry,
- educationid: _educationid,
- })
- // console.log(that.data.city)
- // console.log(that.data.provinceName)
- // console.log(that.data.cityName)
- // console.log(that.data.areaName)
- // 年龄 ajax
- let Age_url = 'public/paramsgather?type=age';
- let Age_data = {};
- var _age = option.age // 年龄
- var agenewArry = _age.split("-"); //转成数组
- var _age_min = agenewArry[0]
- var _age_max = agenewArry[1]
- // console.log(_age_min)
- // console.log(_age_max)
- that.setData({
- age: _age
- })
- app.postRequest(Age_url, Age_data, function (res) { // 年龄 ajax
- if (res.code == 201) {
- let newarray = ['不限'];
- var res_data = newarray.concat(res.data); //在原有的数据上 凭借上 不限
- let newarray1 = ['以上'];
- var res_data1 = newarray1.concat(res.data); //在原有的数据上 凭借上 以上
- let min = data_processing(res_data, _age_min); //已选中的数据处理 min
- let max = data_processing(res_data1, _age_max); //已选中的数据处理 max
- if (min == 0 && max == 0){
- that.setData({
- AgeIndex: [min, max],
- Zero:1,
- })
- }else{
- that.setData({
- AgeIndex: [min, max],
- Zero:0,
- })
- }
- let dictObject = res.data; //对象不能直接使用 以下转成数组
- // 对象转成数组
- var createArr = []
- for (let i in dictObject) {
- createArr.push(dictObject[i] + "岁"); //在数据后面凭借 岁
- }
- let bx = ['不限'];
- var Unlimited = bx.concat(createArr); //在原有的数据上 凭借上 不限
- let ys = ['以上'];
- var Above = ys.concat(createArr); //在原有的数据上 凭借上 以上
- that.setData({
- AgeArray: [Unlimited, Above],
- })
- // console.log(createArr);
- }
- })
- // 身高 ajax
- let height_url = 'public/paramsgather?type=height';
- let height_data = {
- pid: '0'
- };
- var _height = option.height // 身高
- var heightnewArry = _height.split("-"); //转成数组
- var heightSmall = heightnewArry[0]
- var heightlarge = heightnewArry[1]
- // console.log(heightSmall)
- // console.log(heightlarge)
- that.setData({
- height: _height
- })
- app.postRequest(height_url, height_data, function (res) { // 身高 ajax
- if (res.code == 201) {
- let newarray = ['不限'];
- var res_data = newarray.concat(res.data); //在原有的数据上 凭借上 不限
- let newarray1 = ['以上'];
- var res_data1 = newarray1.concat(res.data); //在原有的数据上 凭借上 以上
- let min = data_processing(res_data, heightSmall); //已选中的数据处理 min
- let max = data_processing(res_data1, heightlarge); //已选中的数据处理 max
- if (min == 0 && max == 0) {
- that.setData({
- heightindex: [min, max],
- heightZero: 1,
- })
- } else {
- that.setData({
- heightindex: [min, max],
- heightZero: 0,
- })
- }
- let dictObject = res.data; //对象不能直接使用 以下转成数组
- // 对象转成数组
- var createArr = []
- for (let i in dictObject) {
- createArr.push(dictObject[i] + "cm");
- }
- let bx = ['不限'];
- var Unlimited = bx.concat(createArr);
- let ys = ['以上'];
- var Above = ys.concat(createArr);
- // console.log(createArr);
- that.setData({
- heightArray: [Unlimited, Above],
- })
- }
- })
- // 婚史 ajax
- // let Marriage_url = 'public/paramsgather?type=marriage';
- // let Marriage_data = {
- // pid: '0'
- // };
- // var _marry = option.marry // 婚史
- // // console.log(_marry)
- // that.setData({
- // marry: _marry
- // })
- // app.postRequest(Marriage_url, Marriage_data, function (res) { // 婚史 ajax
- // if (res.code == 201) {
- // // console.log(res.data);
- // for (let i = 0; i < res.data.length; i++) { //已选中的数据处理
- // if (i == _marry) {
- // that.setData({
- // Marriageindex: i,
- // })
- // }
- // }
- // that.setData({
- // MarriageArray: res.data,
- // idmarry: that.data.idmarry,
- // })
- // }
- // })
- // 学历 ajax
- let Education_url = 'public/paramsgather?type=xueli';
- let Education_data = {
- // pid: '0'
- };
- var _education = option.education // 学历
- // console.log(_education)
- that.setData({
- education: _education
- })
- app.postRequest(Education_url, Education_data, function (res) { // 学历 ajax
- if (res.code == 201) {
- // console.log(res.data);
- var obj = { id: 0, education_name: '不限' };
- var datares = res.data;
- datares.unshift(obj)
- for (let i = 0; i < datares.length; i++) { //已选中的数据处理
- if (datares[i].id == _education) {
- that.setData({
- Educationindex: i,
- })
- }
- }
- that.setData({
- EducationArray: datares,
- educationid: that.data.educationid
- })
- }
- })
- // 收入 ajax
- let income_url = 'public/paramsgather?type=shouru1';
- let income_data = {
- // pid: '0'
- };
- var _income = option.income // 收入
- var incomenewArry = _income.split("-"); //转成数组
- var incomemin = incomenewArry[0];
- var incomemax = incomenewArry[1];
- that.setData({
- income: _income
- })
- app.postRequest(income_url, income_data, function (res) { // 收入 ajax
- if (res.code == 201) {
- let newarray = ['不限'];
- var res_data = newarray.concat(res.data); //在原有的数据上 凭借上 不限
- let newarray1 = ['以上'];
- var res_data1 = newarray1.concat(res.data); //在原有的数据上 凭借上 以上
-
- var min = data_processing(res_data, incomemin); //已选中的数据处理 min
- var max = data_processing(res_data1, incomemax); //已选中的数据处理 max
-
- if (min == 0 && max == 0) {
-
- that.setData({
- incomeindex: [min, max],
- incomeZero: 1,
- })
-
- } else {
- that.setData({
- incomeindex: [min, max],
- incomeZero: 0,
- })
- }
- that.setData({
- incomeArray: [res_data, res_data1],
- })
- }
- })
- },
- // 年龄双选
- AgeEvent: function (e) {
- var that= this;
- // console.log('picker发送选择改变,携带值为', e.detail.value)
- var _value = e.detail.value; //发送选择改变,携带值为
- var Small = this.data.AgeArray[0][e.detail.value[0]].substring(0, 2);
- var large = this.data.AgeArray[1][e.detail.value[1]].substring(0, 2);
- // console.log(Agedata);
- if (Small > large && Small != '不限' && large != '以上') { //判断 最小值 大于 最大值 数据互换
- // console.log('调换')
- var Agedata = large + '-' + Small;
- that.Exchange(_value); // 调用数组调换
- } else {
- var Agedata = Small + '-' + large; //否则正常选中
- }
- if (Small == '不限' && large == '以上'){
- that.setData({
- Zero1: 1
- })
- }else{
- that.setData({
- Zero1:0
- })
- }
- this.setData({
- AgeIndex: _value,
- age: Agedata,
- Ageid: 1,
- })
- },
- // 数组数据调换
- Exchange: function (data) {
- for (var i = 0; i < data.length / 2; i++) {
- var data_i = data[i];
- data[i] = data[data.length - 1 - i];
- data[data.length - 1 - i] = data_i;
- }
- return;
- },
- heightEvent: function (e) { // 身高
- var that = this;
- // console.log(this);
- // console.log(e);
- // console.log(this.data.heightArray[e.detail.value]);
- // console.log('picker发送选择改变,携带值为', e.detail.value)
- var _value = e.detail.value; //发送选择改变,携带值为
- var heightSmall = this.data.heightArray[0][e.detail.value[0]].substring(0, 3);
- var heightlarge = this.data.heightArray[1][e.detail.value[1]].substring(0, 3);
- // console.log(heightdata)
- if (heightSmall > heightlarge && heightSmall != '不限' && heightlarge != '以上') { //判断 最小值 大于 最大值 数据互换
- // console.log('调换')
- var heightdata = heightlarge + '-' + heightSmall;
- that.Exchange(_value); // 调用数组调换
- } else {
- var heightdata = heightSmall + '-' + heightlarge;
- }
- if (heightSmall == '不限' && heightlarge == '以上') {
- that.setData({
- heightZero1: 1
- })
- } else {
- that.setData({
- heightZero1: 0
- })
- }
- that.setData({
- heightindex: _value,
- height: heightdata,
- heightid: 1,
- })
- },
- // MarriageEvent: function (e) { // 婚史 单项选择器
- // // console.log(this);
- // // console.log(e);
- // // console.log(this.data.MarriageArray[e.detail.value]);
- // // console.log('picker发送选择改变,携带值为', e.detail.value)
- // this.setData({
- // Marriageindex: e.detail.value,
- // marry: e.detail.value,
- // idmarry: 1,
- // })
- // },
- EducationEvent: function (e) { // 学历 单项选择器
- // console.log(this);
- // console.log(e);
- // console.log(this.data.EducationArray[e.detail.value].id);
- // console.log('picker发送选择改变,携带值为', e.detail.value)
- this.setData({
- Educationindex: e.detail.value,
- education: this.data.EducationArray[e.detail.value].id,
- educationid: 1,
- })
- },
- incomeEvent: function (e) { // 收入 单项选择器
- var that = this;
- // console.log(this);
- // console.log(e);
- // console.log(this.data.incomeArray[e.detail.value].id);
- // console.log('picker发送选择改变,携带值为', e.detail.value)
- var _value = e.detail.value; //发送选择改变,携带值为
- var srSmall = this.data.incomeArray[0][e.detail.value[0]];
- var srlarge = this.data.incomeArray[1][e.detail.value[1]];
- // console.log(Agedata);
- if (srSmall > srlarge && srSmall != '不限' && srlarge != '以上') { //判断 最小值 大于 最大值 数据互换
- // console.log('调换')
- var srdata = srlarge + '-' + srSmall;
- that.Exchange(_value); // 调用数组调换
- } else {
- var srdata = srSmall + '-' + srlarge; //否则正常选中
- }
- if (srSmall == '不限' && srlarge == '以上') {
- that.setData({
- incomeZero1: 1
- })
- } else {
- that.setData({
- incomeZero1: 0
- })
- }
- that.setData({
- incomeindex: _value,
- income: srdata,
- incomeid: 1,
- })
- },
- // 会员编码
- getPhone: function (e) {
- var _inputValue = e.detail.value;
- // console.log(_inputValue);
- this.setData({
- inputValue: _inputValue
- });
- },
- //下一步事件
- register: function (e) {
- var _this= this;
- //设置全局变量(app已经定义 var app=getApp()) 赋值要传的参数
- app.globalData.inputValue = String(_this.data.inputValue); //用户ID
- app.globalData.age = String(_this.data.age); // 年龄
- app.globalData.height = String(_this.data.height); // 身高
- // app.globalData.marry = String(_this.data.marry) // 婚史
- // app.globalData.idmarry = String(_this.data.idmarry) // 婚史
- app.globalData.education = String(_this.data.education) // 学历
- app.globalData.educationid = String(_this.data.educationid) // 学历
- app.globalData.income = String(_this.data.income); // 收入
- app.globalData.Selection = String(1); // 是否选中 1 选中 0没选中
- app.globalData.city = String(_this.data.city); // 市
- app.globalData.provinceName = String(_this.data.provinceName); // 省
- app.globalData.cityName = String(_this.data.cityName); // 市
- app.globalData.areaName = String(_this.data.areaName); // 区
- app.globalData.trigger = true; // 搜索或清空
- wx.switchTab({
- url: '../index/index',
- })
- _this.setData({
- inputValue:'',
- })
- },
- // 重置
- Reset: function (e) {
- var _this = this;
- _this.setData({
- AgeIndex: ['', ''], // 年龄-下标
- age: 0, // 年龄
- Ageid: 0,
- heightindex: ['', ''], // 身高-下标
- height: 0, //身高
- heightid: 0,
- // Marriageindex: '', // 婚史-下标
- // marry: 0,
- // idmarry: 0,
- Educationindex: '', //学历
- education: 0, //学历
- educationid: 0,
- incomeindex: ['', ''], //收入
- income: 0, //收入
- inputValue: '', //ID
- city: 0, // 市
- provinceName: '', // 省
- cityName: '', // 市
- areaName: '', // 区
- })
- app.globalData.inputValue = String(_this.data.inputValue); //用户ID
- app.globalData.age = String(_this.data.age); // 年龄
- app.globalData.height = String(_this.data.height); // 身高
- // app.globalData.marry = String(_this.data.marry) // 婚史
- // app.globalData.idmarry = String(_this.data.idmarry) // 婚史
- app.globalData.education = String(_this.data.education) // 学历
- app.globalData.educationid = String(_this.data.educationid) // 学历
- app.globalData.income = String(_this.data.income); // 收入
- app.globalData.Selection = String(1); // 是否选中 1 选中 0没选中
- app.globalData.city = String(_this.data.city); // 市
- app.globalData.provinceName = String(_this.data.provinceName); // 省
- app.globalData.cityName = String(_this.data.cityName); // 市
- app.globalData.areaName = String(_this.data.areaName); // 区
- app.globalData.trigger = true; // 搜索或清空
- },
- // 省市区三级联动 点击弹窗
- linkage: function (e) {
- var that = this;
- let citypid_url = 'public/citypid';
- let citypid_data = {};
- app.postRequest(citypid_url, citypid_data, function (res) { // 省市区三级联动 ajax
- if (res.code == 201) {
- that.setData({
- provincedata: res.data, // 省数据
- })
- // console.log(res.data)
- that.provinceOn();
- }
- })
- },
- // 省事件
- provinceOn: function (e) {
- var that = this;
- // console.log(e);
- if (e) {
- that.setData({
- provinceid: e.currentTarget.dataset.id, //省ID
- provincetext: e.currentTarget.dataset.text, //省名字
- })
- }
- // console.log(that.data.provinceid);
- // console.log(that.data.provincetext)
- let citypid_url = 'public/citypid';
- let citypid_data = {
- pid: that.data.provinceid,
- };
- app.postRequest(citypid_url, citypid_data, function (res) { // 省市区三级联动 ajax
- if (res.code == 201) {
- that.setData({
- hiddenName: false,
- citydata: res.data, // 市数据
- scrolltop: 0, //市区滚动条
- areadata: '', //区域数据清空
- cityidx: '', // idx 选中清空
- })
- // console.log(res.data)
- }
- })
- },
- // 市事件
- cityOn: function (e) {
- var that = this;
- var _cityidx = that.data.cityidx
- var cityid = e.currentTarget.dataset.id; //市ID
- var citytext = e.currentTarget.dataset.text; //市名字
- var _index = e.currentTarget.dataset.index + 1; //下标
- // console.log(_index);
- // console.log(_index*42,);
- // console.log(_cityidx);
- // console.log(cityid);
- that.setData({
- cityidx: cityid, // 市 选中
- citytext: citytext, // 市 选中名字
- areadata: '', //区域数据清空
- })
- let citypid_url = 'public/citypid';
- let citypid_data = {
- pid: cityid,
- };
- app.postRequest(citypid_url, citypid_data, function (res) { // 省市区三级联动 ajax
- if (res.code == 201) {
- if (_cityidx == cityid) {
- that.setData({
- areadata: '', // 区数据
- cityidx: '', // idx 选中清空
- })
- } else {
- that.setData({
- areadata: res.data, // 区数据
- scrolltop: _index * 42,
- })
- // console.log('执行')
- // console.log(_index * 42);
- }
- // console.log(res.data)
- }
- })
- },
- //区选中事件
- areaOn: function (e) {
- var that = this;
- var _style = e.currentTarget.dataset.style;
- // console.log(_style);
- var regionid = e.currentTarget.dataset.id; //传递地区ID
- // console.log(regionid);
- switch (_style) {
- case 'provinceLx':
- // console.log('省');
- that.setData({
- city: regionid,
- provinceName: that.data.provincetext, // 省名字
- cityName: '', // 市名字清空
- areaName: "", // 区名字
- })
- break;
- case 'cityLx':
- // console.log('市');
- that.setData({
- city: regionid,
- provinceName: that.data.provincetext, // 省名字
- cityName: that.data.citytext, // 省名字
- areaName: "", // 区名字
- })
- break;
- case 'areaLx':
- // console.log('区');
- var areatext = e.currentTarget.dataset.text; //区名字
- that.setData({
- city: regionid,
- provinceName: that.data.provincetext, // 省名字
- cityName: that.data.citytext, // 省名字
- areaName: areatext, // 区名字
- })
- break;
- }
- // console.log(that.data.city)
- // console.log(that.data.provinceName)
- // console.log(that.data.cityName)
- // console.log(that.data.areaName)
-
- //选择完清空
- that.setData({
- hiddenName: true,
- provinceid: 1,
- provincetext: '北京', //省 名字
- cityidx: 0,
- citytext: '',
- })
- },
- //省市区不限 清空
- regionBx: function () {
- var that = this;
- that.setData({
- hiddenName: true,
- provinceid: 1,
- provincetext: '北京', //省 名字
- cityidx: 0,
- citytext: '',
- city: 0, // 市数据清空
- provinceName: '', // 省名字
- cityName: '', // 市名字清空
- areaName: "", // 区名字
- })
- },
-
- //省市区关闭 清空
- Close: function () {
- var that = this;
- that.setData({
- hiddenName: true,
- provinceid: 1,
- provincetext: '北京', //省 名字
- cityidx: 0,
- citytext: '',
- })
- },
- })
- var data_processing = function (data, min_max,) {
- for (let i = 0; i < data.length; i++) { //已选中的数据处理
- if (data[i] == min_max) {
- return i;
- }
- }
- }
|