const app=getApp(); const utils=require("../../../utils/http"); import * as echarts from '../../ec-canvas/echarts'; var dataList = []; var dataList0 = []; var dataList1 = []; var obj=[]; var time = []; var Chart = null; var that var list = []; let pkpage=1,page=1; let trpage=1;//团队 let mrpage=1;//员工 Page({ /** * 页面的初始数据 */ data: { loadflag:0,//0是进来的状态,1是加入团队,2是没有加入团队 wburl:app.globalData.wburl, imgUrl:app.globalData.imgUrl, ec: { lazyLoad: true // 延迟加载 }, type:1, funshow:false, despointshow:false, signshow:false, chartflag:true, lunarr:['第一轮','第二轮','第三轮'], oppoflag:false, lunidx:0, footype:1, rtype:1, aid:'', addfunimgarr:[], funnum:0, editflag:false, nowimagearr:[],//当前上传oss图片的路径 depositshow:false, addepositimgarr:[], depositnum:0, contractshow:false, addcontractimgarr:[], contractnum:0, wxindexobj:{}, footfun:[], footdespoit:[], pkfootfun:[], pkfootdespoit:[], personobj: app.globalData.personMsg, numtype:'fans', recordlist:[], PKobj:{}, datashow:false, ranktype:'fans',//fans deposit contract sort:'desc', teamobj:[], myteamobj:{}, personranklist:[], mydataobj:{}, pk_contract:[], teamlist:[], atitle:'', nowteamidx:0 }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.setData({ aid:options.aid, personobj: app.globalData.personMsg, wburl:app.globalData.wburl, imgUrl:app.globalData.imgUrl, atitle:options.name }) wx.showLoading({ title: '加载中...', }) this.topindexdatafun(); }, bindteamChange(e){ const that=this; this.setData({ nowteamidx:e.detail.value }) }, topindexdatafun(){ const that=this; utils.$get({ url: app.globalData.webUrl + 'api/wechatActivity/empData', header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:this.data.aid }, success: function (res) { if(res.data.code=='0'){ if(res.data.data.length==0){ that.setData({ loadflag:2 }) wx.setNavigationBarTitle({ title: '队伍邀请', }) that.teamlistfun(); }else{ if(res.data.data.my.lv.length!=0){ let num1=res.data.data.my.lv.my_deposit_lv.my_deposit_num/res.data.data.my.lv.my_deposit_lv.deposit_Num res.data.data.my.lv.my_deposit_lv.finishlv=num1*100+'%'; let num2=res.data.data.my.lv.my_fans_lv.my_fans_num/res.data.data.my.lv.my_fans_lv.fans_Num res.data.data.my.lv.my_fans_lv.finishlv=num1*100+'%'; } that.setData({ loadflag:1, wxindexobj:res.data.data, lunarr:res.data.data.bar?res.data.data.bar.x:[], footfun:res.data.data.bar?res.data.data.bar.y.my_fans:[], footdespoit:res.data.data.bar?res.data.data.bar.y.my_deposit:[], pkfootfun:res.data.data.bar&&res.data.data.bar.y.pk_fans?res.data.data.bar.y.pk_fans:[], pkfootdespoit:res.data.data.bar&&res.data.data.bar.y.pk_deposit?res.data.data.bar.y.pk_deposit:[], pk_contract:res.data.data.bar&&res.data.data.bar.y.pk_contract?res.data.data.bar.y.pk_contract:[], }) that.echartsComponnet = that.selectComponent('#mychart-dom-bar'); that.init_echarts(); } } setTimeout(function(){ wx.hideLoading() },1000) } }) }, teamlistfun(){ const that=this; utils.$get({ url: app.globalData.webUrl + "api/wechatActivity/team", header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:that.data.aid }, success: function (res) { if(res.data.code=='0'){ that.setData({ teamlist:res.data.data }) } setTimeout(function(){ wx.hideLoading() },1000) } }) }, jointeamtap(){ const that=this; wx.showLoading({ title: '队伍加入中...', }) utils.$post({ url: app.globalData.webUrl + "api/wechatActivity/join", header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:that.data.aid, team_id:that.data.teamlist[that.data.nowteamidx].id }, success: function (res) { if(res.data.code=='0'){ wx.showToast({ title: res.data.msg, icon:'none', duration: 2000 }) that.topindexdatafun(); }else{ setTimeout(function(){ wx.hideLoading() },1000) } } }) }, inputfuntap(e){ this.setData({ funnum:e.detail.value }) }, editap(){ this.setData({ editflag:true }) }, upfunloadimg:function(){ const that=this; wx.chooseMedia({ count: 3, mediaType:['image'], sizeType: ['compressed'], sourceType: ['album', 'camera'], success (res) { let addfunimgarr=that.data.addfunimgarr; if(res.errMsg=="chooseMedia:ok"){ console.log(res) let arr=res.tempFiles; for(let i=0;i=3){ wx.showToast({ title: '最多上传三张图片!', icon:'none', duration: 2000 }) } } }, fail(res){ wx.showToast({ title: '上传失败请重试!', icon: 'error', duration: 2000 }) } }) }, ossuploadimg:function(e){ let that=this; let addfunimgarr=[]; if(this.data.funshow){ addfunimgarr=that.data.addfunimgarr; }else if(this.data.depositshow){ addfunimgarr=that.data.addepositimgarr; }else if(this.data.contractshow){ addfunimgarr=that.data.addcontractimgarr; } var arr = []; for (let i = 0; i < addfunimgarr.length; i++) { //获取文件后缀 // 随机生成文件名称 let rstr=addfunimgarr[i].tempFilePath.split('.'); var fileRandName = Date.now() + "" + parseInt(Math.random() *10000)+i; var imgName = fileRandName + '.' + rstr[rstr.length-1]; var date=new Date(); var time=date.getFullYear()+''+(date.getMonth()*1+1)+''+date.getDate(); var imgstr= 'communityActivism/'+time+'/'+imgName; var nowimagearr=that.data.nowimagearr; nowimagearr.push(imgstr); that.setData({ nowimagearr:nowimagearr }) // 上传有效时间 2040-01-01 wx.uploadFile({ url: 'https://wzh-zqxg.oss-cn-hangzhou.aliyuncs.com', filePath: addfunimgarr[i].tempFilePath, name: 'file', formData: { key: 'communityActivism/'+time+'/' + imgName, policy: "eyJleHBpcmF0aW9uIjoiMjA0MC0wMS0wMVQxMjowMDowMC4wMDBaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF1dfQ==", OSSAccessKeyId: "LTAI5tHjWupJSCAycy2yVbQZ", success_action_status: "200", signature: "GPu5wBYVzdhICS/hdJH6rKG0kos=", }, header: { "Content-Type": "multipart/form-data", 'accept': 'application/json', }, success: function (rs) { if (rs.errMsg == 'uploadFile:ok' ) { arr.push('0'); if(arr.length==addfunimgarr.length){ that.addrecord(); } } }, fail(res){ wx.hideLoading() } }) } }, addfuntap(){ const that=this; if(!this.data.addfunimgarr.length){ wx.showToast({ title: '微信截图必须上传!', icon:'none', duration: 2000 }) return false } wx.showLoading({ title: '数据上传中...', }) this.ossuploadimg(); }, addrecord(){ const that=this; let str=""; if(this.data.funshow){ str='api/wechatActivity/addFans'; }else if(this.data.depositshow){ str='api/wechatActivity/addDeposit'; }else if(this.data.contractshow){ str='api/wechatActivity/addContract'; } utils.$post({ url: app.globalData.webUrl + str, header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:this.data.aid, num:this.data.funshow?this.data.funnum:this.data.depositshow?that.data.depositnum:that.data.contractnum, img_log:this.data.nowimagearr }, success: function (res) { if(res.data.code=='0'){ wx.showToast({ title: '加粉上传成功!', icon: 'none', duration: 2000 }) that.closefuntap(); that.closedeposittap(); that.closecontractap(); } setTimeout(function(){ wx.hideLoading() },1000) } }) }, depositap(){ this.setData({ depositshow:true, chartflag:false }) }, closedeposittap(){ this.setData({ depositshow:false, chartflag:true, nowimagearr:[], addepositimgarr:[], editflag:false, }) this.echartsComponnet = this.selectComponent('#mychart-dom-bar'); this.init_echarts(); }, updepositloadimg:function(){ const that=this; wx.chooseMedia({ count: 3, mediaType:['image'], sizeType: ['compressed'], sourceType: ['album', 'camera'], success (res) { let addepositimgarr=that.data.addepositimgarr; if(res.errMsg=="chooseMedia:ok"){ console.log(res) let arr=res.tempFiles; for(let i=0;i=3){ wx.showToast({ title: '最多上传三张图片!', icon:'none', duration: 2000 }) } } }, fail(res){ wx.showToast({ title: '上传失败请重试!', icon: 'error', duration: 2000 }) } }) }, inputdepositap(e){ this.setData({ depositnum:e.detail.value }) }, addepositap(){ const that=this; if(!this.data.addepositimgarr.length){ wx.showToast({ title: '微信截图必须上传!', icon:'none', duration: 2000 }) return false } wx.showLoading({ title: '数据上传中...', }) this.ossuploadimg(); }, contractap(){ this.setData({ contractshow:true, chartflag:false }) }, closecontractap(){ this.setData({ contractshow:false, chartflag:true, nowimagearr:[], addcontractimgarr:[], editflag:false, }) this.echartsComponnet = this.selectComponent('#mychart-dom-bar'); this.init_echarts(); }, upcontractloadimg:function(){ const that=this; wx.chooseMedia({ count: 3, mediaType:['image'], sizeType: ['compressed'], sourceType: ['album', 'camera'], success (res) { let addcontractimgarr=that.data.addcontractimgarr; if(res.errMsg=="chooseMedia:ok"){ console.log(res) let arr=res.tempFiles; for(let i=0;i=3){ wx.showToast({ title: '最多上传三张图片!', icon:'none', duration: 2000 }) } } }, fail(res){ wx.showToast({ title: '上传失败请重试!', icon: 'error', duration: 2000 }) } }) }, inputcontractap(e){ this.setData({ contractnum:e.detail.value }) }, addcontractap(){ const that=this; if(!this.data.addcontractimgarr.length){ wx.showToast({ title: '微信截图必须上传!', icon:'none', duration: 2000 }) return false } wx.showLoading({ title: '数据上传中...', }) this.ossuploadimg(); }, setechartypetap(e){ this.setData({ type:e.currentTarget.dataset.type }) this.echartsComponnet = this.selectComponent('#mychart-dom-bar'); this.init_echarts(); }, footsetypetap(e){ this.setData({ footype:e.currentTarget.dataset.type }) if(this.data.footype==1){ wx.setNavigationBarTitle({ title: '社群活动' }) this.echartsComponnet = this.selectComponent('#mychart-dom-bar'); this.init_echarts(); }else if(this.data.footype==2){ wx.setNavigationBarTitle({ title: '操作记录' }) this.setData({ lunidx:0, }) this.setrecord(); }else if(this.data.footype==3){ wx.setNavigationBarTitle({ title: '团队管理' }) this.setData({ rtype:1, lunidx:0, }) this.teamRankfun(); } }, openoppotap(){ this.setData({ oppoflag:true, chartflag:false, recordlist:[], PKobj:[], }) this.setrecord(); }, closeoppotap(){ this.setData({ oppoflag:false, chartflag:true }) this.echartsComponnet = this.selectComponent('#mychart-dom-bar'); this.init_echarts(); }, bindPickerChange: function(e) { this.setData({ lunidx: e.detail.value }) this.setrecord(); }, lookimgtap(e){ var arr=[]; for(var i=0;i (size.viewSize[0]/2)){ t = pos[0]-100; }else{ t = pos[0]; } if (pos[1] > size.viewSize[1] / 2){ l = pos[1] - 100; }else{ l = pos[1]; } return [t,l]; } }, dataZoom: [{ type: 'inside', show: true, //flase直接隐藏图形 //xAxisIndex: [0], left: '9%', //滚动条靠左侧的百分比 bottom: -5, start: 0,//滚动条的起始位置 end: 80 //滚动条的截止位置(按比例分割你的柱状图x轴长度) }], color: ["#FF0035", "#0089FF"], xAxis: { type: 'category', axisLabel: { show: true, color:'#444', fontFamily:'PingFangSC-Regular', fontSize: 12,//字体大小 }, axisLine:{ color:'#ccc', lineStyle: { type: 'solid', color: '#ccc', }, }, splitLine:{ lineStyle:{ type:'solid' } }, boundaryGap: true, data: this.data.lunarr,//time z: 7, }, yAxis: { type: 'value', position: 'right', axisTick:{ show: false, }, axisLabel: { show: true, color: '#444', inside: true, padding:[0,0,10,0] }, axisLine: { color: 'transparent', lineStyle: { type: 'solid', color: 'transparent', }, }, splitLine: { lineStyle: { type: 'dashed' } }, yAxisLabel: { show: true, color: '#444', fontFamily: 'PingFangSC-Regular', show: true, fontSize: 12,//字体大小 } }, series: [ { animation: true, barWidth: 10, data: that.data.type==1?that.data.footfun:that.data.footdespoit, itemStyle:{ normal: {color: "rgba(255,0,53,1)"} }, name: that.data.type==1?"加粉":'定金', type: "bar" }, { animation: true, barWidth: 10, data: that.data.type==1?that.data.pkfootfun:that.data.pkfootdespoit, itemStyle:{ normal: {color: "rgba(0,137,255,0.8)"} }, name: that.data.type==1?"加粉":'定金', type: "bar" } ] } return option; }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { if(this.data.type==1){ this.topindexdatafun(); this.setrecord(); wx.stopPullDownRefresh(); }else if(this.data.type==2){ this.setrecord(); wx.stopPullDownRefresh(); }else if(this.data.type==3){ if(this.data.rtype==1){ this.teamRankfun(); }else{ this.personRankfun(); } wx.stopPullDownRefresh(); } }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { if(this.data.type==2){ this.setrecordgun(); }else if(this.data.type==3){ if(this.data.rtype==1){ trpage=trpage*1+1; utils.$post({ url: app.globalData.webUrl + "api/wechatActivity/teamRank", header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:this.data.aid, type:that.data.ranktype, page:trpage, limit:10, schedule:this.data.lunidx*1+1, sort:this.data.sort }, success: function (res) { let teamobj=that.data.teamobj; if(res.data.code=='0'){ teamobj=teamobj.concat(res.data.data.rank); that.setData({ teamobj:teamobj, myteamobj:res.data.data.my, }) } setTimeout(function(){ wx.hideLoading() },1000) } }) }else{ mrpage=mrpage*1+1; utils.$post({ url: app.globalData.webUrl + "api/wechatActivity/personRank", header: { 'Authorization':'bearer '+app.globalData.token }, data:{ activity_id:this.data.aid, type:that.data.ranktype, page:mrpage, limit:10, schedule:this.data.lunidx*1+1, sort:this.data.sort }, success: function (res) { let personranklist=that.data.personranklist; if(res.data.code=='0'){ personranklist=personranklist.concat(res.data.data.rank); that.setData({ personranklist:personranklist, mydataobj:res.data.data.my, }) } setTimeout(function(){ wx.hideLoading() },1000) } }) } } }, })