const app=getApp(); var utils = require("../../../utils/http"); const util = require("../../../utils/util"); let page=1,time = 0,timer = null; Page({ /** * 页面的初始数据 */ data: { ordertype:'time', constructlist:[], site_id:'', sitename:'', casecommunitylist:[], list: [], filtrateflag:false, datashow:false, loginFlag:false, phoneFlag:false, canIUseGetUserProfile: false, shareobj:{}, employeeflag:false,//false是用户,true是员工 top:app.globalData.statusBarHeight, hgt:app.globalData.titleBarHeight, companyobj:{}, imgUrl:app.globalData.imgUrl }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const that=this; wx.hideHomeButton(); time = 0; this.setData({ top:app.globalData.statusBarHeight, hgt:app.globalData.titleBarHeight, }) app.globalData.clientype=options.ctp; app.globalData.shareuserid = options.uid; if (wx.getUserProfile) { this.setData({ canIUseGetUserProfile: true }) } wx.showLoading({ title: '加载中...', }) that.login(); }, sharecompany:function (){ const that=this; utils.$post({ url: app.globalData.webUrl + 'client/index/content_belong_company', header: { 'Authorization':'bearer '+app.globalData.token }, data:{ client_type:app.globalData.clientype, uid: app.globalData.shareuserid }, success: function (res) { if(res.data.code=='0'){ app.globalData.companyobj=res.data.data; that.setData({ companyobj:res.data.data }) } }, complete(res) { wx.hideLoading() } }) }, login: function () { var that = this; wx.login({ success: function (data) { if (data.errMsg == 'login:ok') { utils.$post({ method: "POST", //TESTAPIURL APIURL/users/auth url: app.globalData.webUrl + 'api/users/code2sessionmini', data: { code: data.code, share: app.globalData.shareuserid, client_type:app.globalData.clientype }, success: function (r) { if (r.data.code == '0') { app.globalData.sharepersonobj = r.data.share; app.globalData.token = r.data.token; that.sharecompany(); that.setData({ shareobj:app.globalData.sharepersonobj }) util.toolfun(4); app.globalData.personMsg = r.data.user; app.globalData.companyname=r.data.company; app.globalData.official_openid = r.data.official_openid; app.globalData.agentEmployeEid = r.data.agent_employee_id; if (!!r.data.user.phone) { that.setData({ datashow: true, loginFlag: false, phoneFlag:false, employeeflag:(!!r.data.user.binded&&r.data.user.binded.state=='在职')?true:false }) if (!!r.data.user.binded && r.data.user.binded.state == '在职'){ app.globalData.currentUserId = r.data.user.binded.id; } app.globalData.personMsg = r.data.user; app.globalData.userflag = false; //有个人信息 var nickname = r.data.user.nickname; var phone = r.data.user.phone; app.globalData.phone = false; //没有手机号 that.unreadMsg(); } else { that.unreadMsg(); wx.hideLoading(); that.setData({ loginFlag: false, phoneFlag: true }) } } else { setTimeout(function () { wx.hideLoading() }, 500) } } }) } } }) }, prelooktap(){ if(!app.globalData.sharepersonobj.qrcode){ wx.showToast({ title: "当前专属客服的二维码为空!", icon: 'none', duration: 2000 }) return false; } wx.previewImage({ current: app.globalData.imgUrl+app.globalData.sharepersonobj.qrcode, // 当前显示图片的http链接 urls: [app.globalData.imgUrl+app.globalData.sharepersonobj.qrcode]// 需要预览的图片http链接列表 }) }, unreadMsg(){ this.constructfun(); this.casecommunityfun(); }, golastap:function(){ wx.navigateBack({ delta: 1, success:function(r){ }, fail:function(r){ wx.reLaunch({ url: '/pages/index/index?state=1', }) }, }) }, goindextap:function(){ if(!this.data.employeeflag){ wx.reLaunch({ url: '/pages/index/index?state=1', }) }else{ wx.reLaunch({ url: '/pages/consoledesk/consoledesk', }) } }, callphonetap:function(){ console.log() wx.makePhoneCall({ phoneNumber: app.globalData.sharepersonobj.phone //仅为示例,并非真实的电话号码 }) }, constructfun() { const that = this; page = 1; utils.$post({ url: app.globalData.webUrl + 'client/construction/index', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { page: 1, limit: 10, community_id: this.data.site_id, order: this.data.ordertype == 'time' ? 'new' : 'hot' }, success: function (res) { wx.hideLoading(); if (res.data.code == 0) { that.setData({ constructlist: res.data.data, }) } } }) }, casecommunityfun: function () { var that = this; utils.$get({ url: app.globalData.webUrl + 'client/construction/communitylist', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: {}, success: function (res) { if (res.data.code == '0') { that.setData({ casecommunitylist: res.data.data }) that.getCitys(); } } }) }, getCitys() { const _this = this const cities = this.data.casecommunitylist; // 按拼音排序 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++) { list[i].subItems[0].case_num = '0'; 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].construction_count; list[i].id = cities[j].id; } } } } _this.setData({ list: list }) }, onChoose(e) { var that = this; console.log(e) that.setData({ site_id: e.detail.item.currentTarget.dataset.cid, sitename: e.detail.item.currentTarget.dataset.item.name }) that.constructfun(); }, setordertypetap(e) { this.setData({ ordertype: e.currentTarget.dataset.type }) this.constructfun(); }, allfiltratetap: function () { this.casecommunityfun(); this.setData({ filtrateflag: true }) }, sitetap(e) { wx.navigateTo({ url: '/share/pages/constructsite/constructsite?type=3&cid=' + e.currentTarget.dataset.cid+'&uid='+app.globalData.shareuserid+'&ctp='+app.globalData.clientype, }) }, closefiltratetap: function () { this.setData({ filtrateflag: false }) }, dothis(){}, deltap(e) { var that = this; that.setData({ site_id: '', sitename: '' }) that.constructfun(); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { timer = setInterval(function () { time = time * 1 + 1; }, 1000) }, /** * 生命周期函数--监听页面隐藏 */ onHide() { if (timer) { clearInterval(timer) } this.setimetap(); }, setimetap(){ const that = this; utils.$post({ url: app.globalData.webUrl + 'client/index/visit_due_time', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { id: that.data.companyobj.employee_id, pipe_type: 'toolAll', time: time, }, success: function (res) { } }) }, /** * 生命周期函数--监听页面卸载 */ onUnload() { this.setimetap(); }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { this.constructfun(); wx.stopPullDownRefresh() }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { const that = this; page = page * 1 + 1; utils.$post({ url: app.globalData.webUrl + 'client/construction/index', header: { 'Authorization': 'bearer ' + app.globalData.token }, data: { page: page, limit: 10, community_id: this.data.site_id, order: this.data.ordertype == 'time' ? 'new' : 'hot' }, success: function (res) { wx.hideLoading(); let constructlist = that.data.constructlist; if (res.data.code == 0) { constructlist = that.data.constructlist; constructlist = constructlist.concat(res.data.data); that.setData({ constructlist: constructlist, }) } } }) }, 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() { this.addsharetap('toolAll'); return { title: '在施工地-'+this.data.companyobj.company_name, imageUrl: app.globalData.imgUrl + 'xcx/aaa/constructcover.png', path: '/share/pages/constructsitelist/constructsitelist?uid=' + app.globalData.shareuserid + '&ctp=' + app.globalData.clientype } } })