var app = getApp(); var utils = require("../../../utils/http"); let evpage = 1, casepage = 1; let showflag=true; Page({ /** * 页面的初始数据 */ data: { top: app.globalData.statusBarHeight, hgt: app.globalData.titleBarHeight, imgUrl: app.globalData.imgUrl, mineinfo: {}, logcount: 0, imgarr: [], type: 1, evidencetype: '', evidencelist: [], leftevidencelist: [], rightevidencelist: [], catetype: '', datashow: true, nowstyle: '', stylelist: [], square_start: '', //面积开始值 square_end: '', //面积结束值 nowcommunity: '', communitylist: [], nowhousetype: '', housetypelist: [], caselist: [], keyword: '', datashow: false, loginFlag: true, mobileflag: false, canIUseGetUserProfile: false, shareobj: {}, employeeflag: false,//false是用户,true是员工 communityflag: false, nowcommunitname: '', typearr:[ {id:1,name:'效果案例',type:1}, {id:2,name:'实景案例',type:2} ], noweffect:'', prelook:'', timeline:app.globalData.timeline }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { const that=this; if(options.type=='share'){ this.setData({ prelook:"share" }) wx.reLaunch({ url:'/share/pages/shareCard/shareCard?uid=' + options.uid + '&empid=' + options.empid + '&ctp=' + options.ctp, }) } wx.showLoading({ title: '数据加载中...', }) this.setData({ top: app.globalData.statusBarHeight, hgt: app.globalData.titleBarHeight, imgUrl: app.globalData.imgUrl, timeline:app.globalData.timeline }) this.mineinfo(); this.evidenceCate(); this.evidencelist(); this.casestylefun(); this.housestylefun(); this.casecommunityfun(); this.caselistfun(); }, seteffectap(e){ this.setData({ noweffect:e.currentTarget.dataset.type }) this.caselistfun(); }, mineinfo(num) { const that = this; utils.$post({ url: app.globalData.webUrl + 'api/card/info', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { wx.hideLoading(); if (res.data.code == 0) { that.setData({ mineinfo: res.data.data, logcount: res.data.logcount, imgarr: res.data.log }) } } }) }, searchplacetap() { if (!this.data.mineinfo.company_vr_address) { wx.navigateTo({ url: '/pages/noneData/noneData?type=1', }) return false; } app.globalData.vraddress = this.data.mineinfo.company_vr_address; wx.navigateTo({ url: '/pages/other/other?type=111&ctp='+app.globalData.clientype+'&uid='+(app.globalData.shareuserid?app.globalData.shareuserid:app.globalData.personMsg.id) + '&aid=' + this.data.mineinfo.employee_id + '&cty=employeeCard', }) }, setliketap() { var that = this; utils.$get({ url: app.globalData.webUrl + 'api/card/like', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { employee_id: app.globalData.currentUserId }, success: function (res) { let mineinfo = that.data.mineinfo; if (res.data.code == '0') { mineinfo.likes = mineinfo.likes * 1 + 1; that.setData({ mineinfo: mineinfo }) } } }) }, setypetap(e) { this.setData({ type: e.target.dataset.num }) if (e.target.dataset.num == 3) { this.evidencelist(); } }, openVRLink(e) { let id = e.currentTarget.dataset.id; let vrlink = e.currentTarget.dataset.vrlink; wx.navigateTo({ url: '/pages/other/other?type=565&vrlink=' + encodeURIComponent(vrlink) + '&cty=materialCase' + '&uid=' + app.globalData.personMsg.id + '&ctp=' + app.globalData.clientype + '&aid=' + id, }) }, preimgtap() { if (!this.data.mineinfo.qrcode) { wx.showToast({ title: '员工二维码为空!', icon: 'none', duration: 2000 }) return false; } let img = app.globalData.imgUrl + '/' + this.data.mineinfo.qrcode; wx.previewImage({ current: img, // 当前显示图片的 http 链接 urls: [img] // 需要预览的图片 http 链接列表 }) }, copytap() { if (!this.data.mineinfo.wx) { wx.showToast({ title: '员工微信为空!', icon: 'none', duration: 2000 }) return false; } wx.setClipboardData({ data: this.data.mineinfo.wx, success(res) { } }) }, callphonetap() { wx.makePhoneCall({ phoneNumber: this.data.mineinfo.phone //仅为示例,并非真实的电话号码 }) }, viewAuthorization() { return new Promise(function(resolve,reject) { wx.getSetting({ success (res) { if(res.authSetting['scope.addPhoneContact']){ resolve({authorize:true}) }else{ wx.openSetting({ success (res) { if(res.authSetting['scope.addPhoneContact']){ wx.authorize({ scope: 'scope.addPhoneContact', success: function (res) { console.log('success:', res); resolve({authorize:true}) }, fail: function (error) { console.log('error:', error); reject({authorize:false}) } }) }else{ wx.authorize({ scope: 'scope.addPhoneContact', success: function (res) { console.log('success:', res); resolve({authorize:true}) }, fail: function (error) { console.log('error:', error); reject({authorize:false}) } }) } }, fail(){ wx.authorize({ scope: 'scope.addPhoneContact', success: function (res) { console.log('success:', res); resolve({authorize:true}) }, fail: function (error) { console.log('error:', error); reject({authorize:false}) } }) } }) } } }) }) }, async savenumtap() { let res = await this.viewAuthorization(); if (res.authorize) { wx.addPhoneContact({ firstName: this.data.mineinfo.name, photoFilePath: this.data.mineinfo.headimgurl, mobilePhoneNumber: this.data.mineinfo.phone, weChatNumber: this.data.mineinfo.wx, addressStreet: this.data.mineinfo.company_address, organization: this.data.mineinfo.company_name, title: this.data.mineinfo.position }) return; } else { wx.openSetting({ success: function (ress) { }, fail: function (err) { }, }) } }, evidenceCate: function () { var that = this; utils.$get({ url: app.globalData.webUrl + 'api/material/evidenceCate', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { that.setData({ evidencetype: res.data.data }) } }) }, setevitap(e) { this.setData({ catetype: e.currentTarget.dataset.eid }) this.evidencelist(); }, evidencelist: function () { const that = this; evpage = 1; utils.$get({ url: app.globalData.webUrl + 'api/evidencelist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { uid: app.globalData.personMsg.id, page: 1, cate: that.data.catetype, }, success: function (res) { setTimeout(function () { wx.hideLoading() }, 1000) if (res.data.code == '0') { that.setData({ evidencelist: res.data.data, leftevidencelist: [], rightevidencelist: [], datashow: true }) that.imgload(); } }, fail() { wx.hideLoading() } }) }, publictap: function (e) { wx.navigateTo({ url: '/index/pages/publicpraisemsg/publicpraisemsg?eid=' + e.currentTarget.dataset.eid + "&title=" + e.currentTarget.dataset.title+'<ype=12', }) }, imgload: function () { var that = this; var leftlist = that.data.leftevidencelist; var rightlist = that.data.rightevidencelist; var indexlist = that.data.evidencelist; if(this.data.type!=3){ return false; } if (indexlist.length == 0) { return false; } if (!indexlist[0]) { return false; } if (leftlist.length == 0) { leftlist.push(indexlist[0]); indexlist.shift(); that.setData({ evidencelist: indexlist, leftevidencelist: leftlist, rightevidencelist: rightlist }) } else { var leftheight, rightheight; const query = wx.createSelectorQuery() query.select('.leftpublicpraisebox').boundingClientRect(); query.exec(function (res) { if(res[0]){ leftheight = res[0].height; const query1 = wx.createSelectorQuery() query1.select('.rightpublicpraisebox').boundingClientRect(); query1.exec(function (rs) { leftlist = that.data.leftevidencelist; rightlist = that.data.rightevidencelist; indexlist = that.data.evidencelist; rightheight = rs[0].height; if (leftheight <= rightheight) { leftlist.push(indexlist[0]); indexlist.shift(); } else { rightlist.push(indexlist[0]); indexlist.shift(); } that.setData({ evidencelist: indexlist, leftevidencelist: leftlist.filter(v => v), rightevidencelist: rightlist.filter(v => v) }) }); } }); } }, casestylefun: function () { var that = this; utils.$get({ url: app.globalData.webUrl + 'api/stylelist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { if (res.data.code == '0') { that.setData({ stylelist: res.data.data }) } } }) }, housestylefun: function () { var that = this; utils.$get({ url: app.globalData.webUrl + 'api/material/housetypelist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { if (res.data.code == '0') { that.setData({ housetypelist: res.data.data }) } } }) }, onChoose(e) { var that = this; that.setData({ nowcommunity: e.detail.item.currentTarget.dataset.cid, nowcommunitname: e.detail.item.currentTarget.dataset.item.name, communityflag: false }) wx.showLoading({ title: '加载中...', }) that.caselistfun(); }, casecommunityfun: function () { var that = this; utils.$get({ url: app.globalData.webUrl + 'api/communitylist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { if (res.data.code == '0') { that.setData({ communitylist: res.data.data }) } that.getCitys(); } }) }, getCitys() { const _this = this const cities = this.data.communitylist; // 按拼音排序 cities.sort((c1, c2) => { let pinyin1 = c1.pinyin; let pinyin2 = c2.pinyin; return pinyin1.localeCompare(pinyin2) }) // 添加首字母 const map = new Map() for (const city of cities) { const alpha = city.pinyin.charAt(0).toUpperCase() if (!map.has(alpha)) map.set(alpha, []) map.get(alpha).push({ name: city.name, id: city.id }) } const keys = [] for (const key of map.keys()) { keys.push(key) } keys.sort() const list = [] for (const key of keys) { list.push({ alpha: key, subItems: map.get(key) }) } for (let i = 0; i < list.length; i++) { for (let k = 0; k < list[i].subItems.length; k++) { for (let j = 0; j < cities.length; j++) { if (list[i].subItems[k].name == cities[j].name) { list[i].subItems[k].case_num = cities[j].case_num; list[i].id = cities[j].id; } } } } _this.setData({ list: list }) }, selectareatap: function (e) { this.setData({ square_start: e.currentTarget.dataset.start, square_end: e.currentTarget.dataset.end, }) this.caselistfun(); }, caselistfun: function (e) { var that = this; casepage = 1; utils.$get({ url: app.globalData.webUrl + 'api/caselist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { page: 1, uid: app.globalData.personMsg.id, commu_id: that.data.nowcommunity, // 小区id style_id: that.data.nowstyle, //风格id square_start: that.data.square_start, //面积开始值 square_end: that.data.square_end, //面积结束值 keyword: that.data.keyword, housetype_id: that.data.nowhousetype, case_type:this.data.noweffect, }, success: function (res) { that.setData({ datashow: true }) if (res.data.code == '0') { that.setData({ caselist: res.data.data, }) } setTimeout(function () { wx.hideLoading() }, 1000) }, fail() { wx.hideLoading() } }) }, setstyletap: function (e) { this.setData({ nowstyle: e.currentTarget.dataset.type }) this.caselistfun(); }, setcommunitytap: function (e) { this.setData({ nowcommunity: e.currentTarget.dataset.type, // communityflag:true, nowcommunitname: e.currentTarget.dataset.text, }) this.caselistfun(); }, opencommunitytap: function () { this.setData({ communityflag: true, }) }, dothis: function () { }, colsecommunitytap: function () { this.setData({ communityflag: false }) }, sethousetypetap: function (e) { this.setData({ nowhousetype: e.currentTarget.dataset.type }) this.caselistfun(); }, casemsgtap: function (e) { wx.navigateTo({ url: '/index/pages/casemsg/casemsg?cid=' + e.currentTarget.dataset.cid+"<ype=3", }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { if(!showflag){ this.imgload(); } showflag=true; this.setData({ top: app.globalData.statusBarHeight, hgt: app.globalData.titleBarHeight, imgUrl: app.globalData.imgUrl, timeline:app.globalData.timeline }) }, backTap: function () { wx.navigateBack(); showflag=false; }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { const that = this; if (this.data.type == 3) { evpage = evpage * 1 + 1; utils.$get({ url: app.globalData.webUrl + 'api/evidencelist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { uid: app.globalData.personMsg.id, page: evpage, cate: that.data.catetype, }, success: function (res) { if (res.data.code == '0') { let evidencelist = that.data.evidencelist; var arrflag = false if (evidencelist.length != 0) { arrflag = true; } for (let i = 0; i < res.data.data.length; i++) { evidencelist.push(res.data.data[i]) } that.setData({ evidencelist: evidencelist }) if (!arrflag) { that.imgload(); } } } }) } else if (this.data.type == 2) { casepage = casepage * 1 + 1; utils.$get({ url: app.globalData.webUrl + 'api/caselist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { page: casepage, uid: app.globalData.personMsg.id, commu_id: that.data.nowcommunity, // 小区id style_id: that.data.nowstyle, //风格id square_start: that.data.square_start, //面积开始值 square_end: that.data.square_end, //面积结束值 keyword: that.data.keyword, housetype_id: that.data.nowhousetype, case_type:this.data.noweffect, }, success: function (res) { let caselist = that.data.caselist; if (res.data.code == '0') { caselist = caselist.concat(res.data.data); that.setData({ caselist: caselist }) } setTimeout(function () { wx.hideLoading() }, 1000) } }) } }, addsharetap: function (type) { let that = this; utils.$post({ url: app.globalData.webUrl + 'api/share/addlog', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { id: '0', type: type, }, success: function (r) {} }) }, /** * 用户点击右上角分享 */ onShareAppMessage() { var that = this; that.addsharetap('card'); app.globalData.shareuserid = app.globalData.personMsg.id; wx.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage', 'shareTimeline'] }) return { title: this.data.mineinfo.name + "的个人名片", // imageUrl: app.globalData.imgUrl + "/xcx/sharenamecard.png", path: '/share/pages/shareCard/shareCard?uid=' + app.globalData.shareuserid + '&empid=' + app.globalData.personMsg.binded.id + '&ctp=' + app.globalData.clientype, }; }, onShareTimeline: function () { var that = this; that.addsharetap('card'); app.globalData.shareuserid = app.globalData.personMsg.id; return { title: this.data.mineinfo.name + "的个人名片", query:'uid=' + app.globalData.shareuserid + '&empid=' + app.globalData.personMsg.binded.id + '&ctp=' + app.globalData.clientype+'&type=share', // imageUrl: app.globalData.imgUrl + "/xcx/sharenamecard.png", } }, })