New file |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <title>粉丝统计</title> |
| | | <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> |
| | | <script> |
| | | window.onresize = function() { |
| | | document.documentElement.style.fontSize = document.documentElement.clientWidth / 7.5 + 'px'; |
| | | }; |
| | | window.onresize(); |
| | | </script> |
| | | <link href="css/load.css" rel="stylesheet" /> |
| | | <style> |
| | | body { |
| | | |
| | | margin: 0; |
| | | padding: 0; |
| | | font-family: Microsoft YaHei; |
| | | /* 不允许复制 */ |
| | | -moz-user-select: none; |
| | | /* Firefox私有属性 */ |
| | | -webkit-user-select: none; |
| | | /* WebKit内核私有属性 */ |
| | | -ms-user-select: none; |
| | | /* IE私有属性(IE10及以后) */ |
| | | -khtml-user-select: none; |
| | | /* KHTML内核私有属性 */ |
| | | -o-user-select: none; |
| | | /* Opera私有属性 */ |
| | | user-select: none; |
| | | /* CSS3属性 */ |
| | | /* IOS点击阴影 */ |
| | | -webkit-tap-highlight-color: transparent; |
| | | } |
| | | |
| | | .top { |
| | | background: #EDFFED; |
| | | font-size: 0; |
| | | position: relative; |
| | | } |
| | | |
| | | .icon { |
| | | background: #C2F5A3; |
| | | border-radius: 0.2rem; |
| | | color: #0AA118; |
| | | font-size: 0.14rem; |
| | | text-align: center; |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | margin-left: 0.11rem; |
| | | margin-top: 0.4rem; |
| | | z-index: 2; |
| | | } |
| | | |
| | | .icon img { |
| | | height: 0.36rem; |
| | | width: auto; |
| | | margin-bottom: 0.05rem; |
| | | } |
| | | |
| | | .person { |
| | | background: rgba(255, 255, 255, 1); |
| | | box-shadow: 0px 2px 6px 0px rgba(10, 2, 4, 0.22); |
| | | border-radius: 0.15rem; |
| | | margin-left: 0.15rem; |
| | | width: 6.08rem; |
| | | padding-top: 0.32rem; |
| | | padding-left: 0.5rem; |
| | | padding-right: 0.18rem; |
| | | box-sizing: border-box; |
| | | } |
| | | |
| | | .person .portrait { |
| | | width: 0.96rem; |
| | | height: 0.96rem; |
| | | border-radius: 0.48rem; |
| | | margin-right: 0.34rem; |
| | | |
| | | } |
| | | |
| | | .person .name { |
| | | font-weight: 400; |
| | | color: rgba(49, 49, 49, 1); |
| | | font-size: 0.36rem; |
| | | } |
| | | |
| | | .person .level { |
| | | width: 1.44rem; |
| | | height: 0.34rem; |
| | | margin-top: 0.19rem; |
| | | } |
| | | |
| | | .cutline { |
| | | width: 5.50rem; |
| | | height: 1px; |
| | | background: rgba(229, 229, 229, 1); |
| | | } |
| | | |
| | | .copy { |
| | | background: #FFFFFF; |
| | | border: 1px solid rgba(229, 229, 229, 1); |
| | | border-radius: 0.19rem; |
| | | width: 1rem; |
| | | height: 0.38rem; |
| | | line-height: 0.40rem; |
| | | font-size: 0.22rem; |
| | | text-align: center; |
| | | color: rgba(153, 153, 153, 1); |
| | | } |
| | | |
| | | .item { |
| | | background: rgba(244, 209, 147, 1); |
| | | border-radius: 0.2rem; |
| | | background: #FFA1C7; |
| | | padding-left: 0.06rem; |
| | | padding-right: 0.06rem; |
| | | padding-bottom: 0.06rem; |
| | | font-size: 0; |
| | | margin-top: 0.35rem; |
| | | } |
| | | |
| | | .item .title { |
| | | height: 0.85rem; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | padding-left: 0.3rem; |
| | | padding-right: 0.2rem; |
| | | } |
| | | |
| | | .item .title img { |
| | | height: 0.34rem; |
| | | width: 1.44rem; |
| | | } |
| | | |
| | | .item .title .count { |
| | | font-size: 0.30rem; |
| | | font-weight: 400; |
| | | color: rgba(0, 0, 0, 1); |
| | | } |
| | | |
| | | .item .child:nth-child(odd) { |
| | | height: 0.57rem; |
| | | background: #FFF1F7; |
| | | border-bottom-right-radius: 0.15rem; |
| | | border-bottom-left-radius: 0.15rem; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | padding-right: 0.17rem; |
| | | } |
| | | |
| | | .item .child:nth-child(even) { |
| | | height: 0.57rem; |
| | | background: #FFFFFF; |
| | | padding-right: 0.17rem; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .item .child .title { |
| | | font-size: 0.26rem; |
| | | font-weight: 400; |
| | | color: rgba(51, 51, 51, 1); |
| | | } |
| | | |
| | | .item .child .count { |
| | | font-size: 0.26rem; |
| | | font-weight: 400; |
| | | color: rgba(51, 51, 51, 1); |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .item .child .count img { |
| | | width: 0.15rem; |
| | | height: 0.24rem; |
| | | margin-left: 0.04rem; |
| | | display: none; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="visibility:hidden"> |
| | | <div id="data"> |
| | | <div class="top"> |
| | | |
| | | <div style="height: 100%;position: absolute;width: 2px;background: #C2F5A3;left:0.53rem;top:0;z-index: 0;"> |
| | | |
| | | </div> |
| | | |
| | | <div style="display: flex;flex-direction: row;padding-top: 0.3rem;" v-if="tearcher"> |
| | | <div class="icon"> |
| | | <img src="img/icon_tearcher.png"> |
| | | 我的导师 |
| | | </div> |
| | | |
| | | <div class="person"> |
| | | |
| | | <div style="display: flex;flex-direction: row;margin-bottom: 0.25rem;align-items: center;"> |
| | | |
| | | <img class="portrait" v-bind:src="tearcher.portrait"> |
| | | |
| | | <div id=""> |
| | | <div class="name"> |
| | | {{tearcher.nickName}} |
| | | </div> |
| | | <img src="img/icon_level_tearcher.png" class="level"> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="cutline" v-if="tearcher.weixin"></div> |
| | | |
| | | <div style="height: 0.69rem;display: flex; align-items: center;justify-content: space-between;padding-right: 0.07rem;" |
| | | v-if="tearcher.weixin"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <img src="img/icon_wx.png" style="width: 0.18rem;height: 0.18rem;"> |
| | | <div style="font-size:0.22rem;font-weight:400;color:rgba(29,160,29,1);margin-left: 0.12rem;"> |
| | | {{tearcher.weixin}} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="copy" v-on:click="copyTearcherWeiXin">复制</div> |
| | | </div> |
| | | <div class="cutline" v-if="tearcher.phone"></div> |
| | | |
| | | <div style="height: 0.69rem;display: flex; align-items: center;justify-content: space-between;padding-right: 0.07rem;" |
| | | v-if="tearcher.phone"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <img src="img/icon_phone.png" style="width: 0.18rem;height: 0.18rem;"> |
| | | <div style="font-size:0.22rem;font-weight:400;color:#074B8B;margin-left: 0.12rem;"> |
| | | {{tearcher.phone}} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="copy" v-on:click="copyTearcherPhone">复制</div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | |
| | | <div style="display: flex;flex-direction: row;padding-top: 0.3rem;padding-bottom: 0.4rem;"> |
| | | <div class="icon"> |
| | | <img src="img/icon_boss.png"> |
| | | 直接邀请人 |
| | | </div> |
| | | |
| | | <div class="person" v-if="boss&&boss.exist"> |
| | | |
| | | <div style="display: flex;flex-direction: row;margin-bottom: 0.25rem;align-items: center;"> |
| | | |
| | | <img class="portrait" v-bind:src="boss.portrait"> |
| | | |
| | | <div id=""> |
| | | <div class="name"> |
| | | {{boss.nickName}} |
| | | </div> |
| | | <img v-if="boss.level=='superVIP'" src="img/icon_level_super.png" class="level"> |
| | | <img v-if="boss.level=='highVIP'" src="img/icon_level_high.png" class="level"> |
| | | <img v-if="boss.level=='daRen'" src="img/icon_level_daren.png" class="level"> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="cutline" v-if="boss.weixin"></div> |
| | | |
| | | <div style="height: 0.69rem;display: flex; align-items: center;justify-content: space-between;padding-right: 0.07rem;" |
| | | v-if="boss.weixin"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <img src="img/icon_wx.png" style="width: 0.18rem;height: 0.18rem;"> |
| | | <div style="font-size:0.22rem;font-weight:400;color:rgba(29,160,29,1);margin-left: 0.12rem;"> |
| | | {{boss.weixin}} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="copy" v-on:click="copyBossWeiXin">复制</div> |
| | | </div> |
| | | <div class="cutline"></div> |
| | | |
| | | <div style="height: 0.69rem;display: flex; align-items: center;justify-content: space-between;padding-right: 0.07rem;" |
| | | v-if="boss.phone"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <img src="img/icon_phone.png" style="width: 0.18rem;height: 0.18rem;"> |
| | | <div style="font-size:0.22rem;font-weight:400;color:#074B8B;margin-left: 0.12rem;"> |
| | | {{boss.phone}} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="copy" v-on:click="copyBossPhone">复制</div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div v-else class="person" style="background:#C2F5A3;box-shadow:0px 2px 6px 0px rgba(10,2,4,0.22);border-radius:0.15rem;font-size:0.30rem;font-weight:400;color:rgba(10,161,24,1);padding-bottom: 0.69rem;" |
| | | v-html="boss.desc.replace(/\n/g, '<br>')"> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | <div style="height: 0.4rem;background: #F3F3F3;"> |
| | | |
| | | </div> |
| | | |
| | | <div style="background: #FFFFFF;padding-left: 0.4rem;padding-right: 0.4rem;padding-bottom: 0.8rem;"> |
| | | |
| | | <div class="item"> |
| | | <div class="title"> |
| | | |
| | | <img class="level" src="img/icon_level_daren.png"> |
| | | |
| | | <div class="count"> |
| | | 共{{daRen.total}}人 |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" v-on:click="jumpToday('daRen')"> |
| | | <div class="title"> |
| | | 今日新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{daRen.today}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" v-on:click="jumpMonth('daRen')"> |
| | | <div class="title"> |
| | | 本月新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{daRen.month}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | |
| | | </div> |
| | | |
| | | <div class="item" style="background: #E9D2AF;"> |
| | | <div class="title"> |
| | | |
| | | <img class="level" src="img/icon_level_high.png"> |
| | | |
| | | <div class="count"> |
| | | 共{{highVIP.total}}人 |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" v-on:click="jumpToday('highVIP')"> |
| | | <div class="title"> |
| | | 今日新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{highVIP.today}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" style="background: #FBF1E1;" v-on:click="jumpMonth('highVIP')"> |
| | | <div class="title"> |
| | | 本月新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{highVIP.month}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | |
| | | </div> |
| | | |
| | | |
| | | <div class="item" style="background: #E9D2AF;"> |
| | | <div class="title"> |
| | | |
| | | <img class="level" src="img/icon_level_super.png"> |
| | | |
| | | <div class="count"> |
| | | 共{{superVIP.total}}人 |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" v-on:click="jumpToday('superVIP')"> |
| | | <div class="title"> |
| | | 今日新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{superVIP.today}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="child" style="background: #FBF1E1;" v-on:click="jumpMonth('superVIP')"> |
| | | <div class="title"> |
| | | 本月新增 |
| | | </div> |
| | | <div class="count"> |
| | | {{superVIP.month}}人 |
| | | <img src="img/ic_array.png"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> |
| | | <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> |
| | | <script src="http://img.flqapp.com/resource/app2019101617.js"></script> |
| | | </body> |
| | | <script> |
| | | var app = null; |
| | | |
| | | |
| | | $(function() { |
| | | try { |
| | | app = new Vue({ |
| | | el: '#data', |
| | | |
| | | // 数据定义 |
| | | data: { |
| | | tearcher: null, |
| | | boss: { |
| | | desc: '', |
| | | exist: false, |
| | | }, |
| | | daRen: { |
| | | total: 0, |
| | | today: 0, |
| | | month: 0 |
| | | }, |
| | | highVIP: { |
| | | total: 0, |
| | | today: 0, |
| | | month: 0 |
| | | }, |
| | | superVIP: { |
| | | total: 0, |
| | | today: 0, |
| | | month: 0 |
| | | } |
| | | }, |
| | | watch: { |
| | | superVIP: function() { |
| | | $("body").css("visibility", "visible"); |
| | | } |
| | | }, |
| | | methods: { |
| | | copyBossWeiXin: function() { |
| | | yesApp.copyText(app.boss.weixin); |
| | | yesApp.toast("复制成功"); |
| | | }, |
| | | copyBossPhone: function() { |
| | | yesApp.copyText(app.boss.phone); |
| | | yesApp.toast("复制成功"); |
| | | }, |
| | | copyTearcherWeiXin: function() { |
| | | yesApp.copyText(app.tearcher.weixin); |
| | | yesApp.toast("复制成功"); |
| | | }, |
| | | copyTearcherPhone: function() { |
| | | yesApp.copyText(app.tearcher.phone); |
| | | yesApp.toast("复制成功"); |
| | | }, |
| | | jumpToday: function(level) { |
| | | |
| | | }, |
| | | jumpMonth: function(level) { |
| | | |
| | | }, |
| | | getData: function() { |
| | | |
| | | var uid = yesApp.getUid(); |
| | | if (uid == null || uid <= 0) { |
| | | yesApp.login(); |
| | | return; |
| | | } |
| | | |
| | | var params = { |
| | | uid: uid |
| | | }; |
| | | params = yesApp.getRequestBaseParams(JSON.stringify(params)); |
| | | yesApp.showLoading(); |
| | | $.ajax({ |
| | | type: "GET", |
| | | data: JSON.parse(params), |
| | | url: "http://192.168.1.253:8080/fanli/api/v2/invite/countMyTeamV2", |
| | | dataType: "jsonp", |
| | | async: true, |
| | | success: function(result) { |
| | | yesApp.hideLoading(); |
| | | if (result.code == 0) { |
| | | if (result.data.boss != null && result.data.boss.phone != null && result.data.boss.phone.indexOf("*") > |
| | | -1) |
| | | result.data.boss.phone = ''; |
| | | |
| | | app.boss = result.data.boss; |
| | | |
| | | app.tearcher = result.data.tearcher; |
| | | app.daRen = result.data.daren; |
| | | app.highVIP = result.data.highVIP; |
| | | app.superVIP = result.data.superVIP; |
| | | callback(); |
| | | } else { |
| | | yesApp.toast(result.msg); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | } catch (e) {} |
| | | app.getData(); |
| | | }); |
| | | </script> |
| | | </html> |