|
@@ -1,254 +0,0 @@
|
|
|
-// pages/liveData/liveData.js
|
|
|
-const app = getApp();
|
|
|
-let peopleList = [{ "time": "13:00", "value": 9944 }, { "time": "14:00", "value": 8920 }, { "time": "15:00", "value": 14656 }, { "time": "16:00", "value": 13084 }];
|
|
|
-Page({
|
|
|
- /**
|
|
|
- * 页面的初始数据
|
|
|
- */
|
|
|
- data: {
|
|
|
- error: "",
|
|
|
- detail: "",
|
|
|
- diglogTitle: "",
|
|
|
- title: "",
|
|
|
- headData: {},
|
|
|
- lineList: [],
|
|
|
- region: [],
|
|
|
- series: [],
|
|
|
- oriList: [
|
|
|
- {
|
|
|
- type: 'pie',
|
|
|
- label: {
|
|
|
- show: false
|
|
|
- },
|
|
|
- data: [{ value: 1048, name: '百度' }, { value: 735, name: '谷歌' }, { value: 735, name: '360' }, { value: 735, name: '搜狗' }, { value: 735, name: '其他' }]
|
|
|
- },
|
|
|
- ]
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 生命周期函数--监听页面加载
|
|
|
- */
|
|
|
- onLoad: function (options) {
|
|
|
- this.setData({
|
|
|
- title: decodeURIComponent(options.title),
|
|
|
- platform: options.platform
|
|
|
- }, () => {
|
|
|
- this.getData()
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 生命周期函数--监听页面初次渲染完成
|
|
|
- */
|
|
|
- onReady: function () {
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 生命周期函数--监听页面显示
|
|
|
- */
|
|
|
- onShow: function () {
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 生命周期函数--监听页面隐藏
|
|
|
- */
|
|
|
- onHide: function () {
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 生命周期函数--监听页面卸载
|
|
|
- */
|
|
|
- onUnload: function () {
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 页面相关事件处理函数--监听用户下拉动作
|
|
|
- */
|
|
|
- onPullDownRefresh: function () {
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 页面上拉触底事件的处理函数
|
|
|
- */
|
|
|
- onReachBottom: function () {
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 用户点击右上角分享
|
|
|
- */
|
|
|
- onShareAppMessage: function () {
|
|
|
-
|
|
|
- },
|
|
|
- formatNumber: function (val) {
|
|
|
- let out = val;
|
|
|
- if (val >= 1000 && val < 10000) {
|
|
|
- out = (val / 1000).toFixed(2) - 0 + "千"
|
|
|
- } else if (val >= 10000 && val < 100000000) {
|
|
|
- out = (val / 10000).toFixed(0) - 0 + "万"
|
|
|
- } else if (val >= 100000000) {
|
|
|
- out = (val / 100000000).toFixed(2) - 0 + "亿"
|
|
|
- }
|
|
|
- return out
|
|
|
- },
|
|
|
- getData: function () {
|
|
|
- let _this = this;
|
|
|
- wx.showLoading();
|
|
|
- wx.request({
|
|
|
- url: app.baseUrl + '/live-result',
|
|
|
- data: {
|
|
|
- topic: this.data.title,
|
|
|
- platform: this.data.platform
|
|
|
- },
|
|
|
- success: function (res) {
|
|
|
- wx.hideLoading()
|
|
|
- if (res.statusCode !== 200) return wx.showToast({
|
|
|
- title: '请重启小程序',
|
|
|
- icon: "error"
|
|
|
- })
|
|
|
- let oriData = res.data || {};
|
|
|
- let region = [];
|
|
|
- let trend = oriData.trend || {};
|
|
|
- let RealTimeTraffic = {
|
|
|
- title: "实时流量",
|
|
|
- subTitle: "",
|
|
|
- id: 'id' + 10,
|
|
|
- canvasId: 'canvasId' + 10,
|
|
|
- type: "line",
|
|
|
- yType: "value",
|
|
|
- xType: "time",
|
|
|
- peopleList: []
|
|
|
- };
|
|
|
- let RealTimePersonTime = {
|
|
|
- title: "观看人次",
|
|
|
- subTitle: "",
|
|
|
- id: 'id' + 11,
|
|
|
- canvasId: 'canvasId' + 11,
|
|
|
- type: "line",
|
|
|
- yType: "value",
|
|
|
- xType: "time",
|
|
|
- peopleList: []
|
|
|
- };
|
|
|
- let AddUpFans = {
|
|
|
- title: "累计粉丝量",
|
|
|
- subTitle: "",
|
|
|
- id: 'id' + 12,
|
|
|
- canvasId: 'canvasId' + 12,
|
|
|
- type: "line",
|
|
|
- yType: "value",
|
|
|
- xType: "time",
|
|
|
- peopleList: []
|
|
|
- };
|
|
|
- let LikeTheTrend = {
|
|
|
- title: "点赞走势",
|
|
|
- subTitle: "",
|
|
|
- id: 'id' + 13,
|
|
|
- canvasId: 'canvasId' + 13,
|
|
|
- type: "line",
|
|
|
- yType: "value",
|
|
|
- xType: "time",
|
|
|
- peopleList: []
|
|
|
- };
|
|
|
- // 实时流量
|
|
|
- RealTimeTraffic.subTitle = "在线人数峰值:" + _this.formatNumber((trend.user || {}).user_count || 0) + " 出现时间:" + _this.formatNumber((trend.user || {}).crawl_date || "") + " 平均人数:" + _this.formatNumber((trend.user || {}).avg_user_count || 0);
|
|
|
- // 观看人次
|
|
|
- RealTimePersonTime.subTitle = _this.formatNumber((trend.user || {}).stats_user_composition_from_my_follow_count || 0) + "人来自关注页面 " + _this.formatNumber((trend.user || {}).stats_user_composition_from_video_detail_count || 0) + "人来自视频推荐";
|
|
|
- // 累计粉丝量
|
|
|
- AddUpFans.subTitle = "粉丝峰值:" + _this.formatNumber((trend.fans || {}).club_info_total_fans_count || 0) + " 出现在:" + _this.formatNumber((trend.fans || {}).crawl_date || "");
|
|
|
- console.log(oriData);
|
|
|
- // 点赞走势
|
|
|
- LikeTheTrend.subTitle = "点赞峰值:" + _this.formatNumber((trend.like || {}).add_like_count || 0) + " 出现在:" + _this.formatNumber((trend.like || {}).crawl_date || "");
|
|
|
- // 趋势图数据
|
|
|
- for (let i = 0; i < (trend.webcastTrendList || []).length; i++) {
|
|
|
- const v = (trend.webcastTrendList || [])[i];
|
|
|
- let time = v.crawl_date.split(" ")[1] || "";
|
|
|
- RealTimeTraffic.peopleList.push({
|
|
|
- value: _this.formatNumber(v.user_count || 0),
|
|
|
- time: time
|
|
|
- });
|
|
|
- RealTimePersonTime.peopleList.push({
|
|
|
- value: _this.formatNumber(v.stats_total_user || 0),
|
|
|
- time: time
|
|
|
- });
|
|
|
- AddUpFans.peopleList.push({
|
|
|
- value: _this.formatNumber(v.club_info_total_fans_count || 0),
|
|
|
- time: time
|
|
|
- });
|
|
|
- LikeTheTrend.peopleList.push({
|
|
|
- value: _this.formatNumber(v.like_count || 0),
|
|
|
- time: time
|
|
|
- });
|
|
|
- }
|
|
|
- console.log(oriData);
|
|
|
- // 基础数据
|
|
|
- let base = {
|
|
|
- msg_count: (oriData.webcastMessageList ? oriData.webcastMessageList.count || 0 : 0),
|
|
|
- like_count: (trend.like || {}).add_like_count || 0,
|
|
|
- total_fans_count: (trend.fans || {}).club_info_total_fans_count || 0,
|
|
|
- peopel_time: (trend.user || {}).stats_total_user || 0
|
|
|
- }
|
|
|
- console.log(base)
|
|
|
- // 来源城市
|
|
|
- let city = oriData.city || []
|
|
|
- for (let i = 0; i < city.length; i++) {
|
|
|
- const element = city[i] || {};
|
|
|
- region.push({
|
|
|
- name: element.key || "",
|
|
|
- value: element.count || 0
|
|
|
- })
|
|
|
- }
|
|
|
- // 性别比
|
|
|
- let gender = [];
|
|
|
- let oriGender = oriData.gender || [];
|
|
|
- for (let i = 0; i < oriGender.length; i++) {
|
|
|
- const v = oriGender[i];
|
|
|
- gender.push({
|
|
|
- name: v.key == "1" ? "男" : "女",
|
|
|
- value: v.count
|
|
|
- })
|
|
|
- }
|
|
|
- let p = {
|
|
|
- headData: base,
|
|
|
- region: [],
|
|
|
- series: [],
|
|
|
- lineList: []
|
|
|
- }
|
|
|
- region.length && p.region.push(region);
|
|
|
- if (gender.length)
|
|
|
- p.series = [
|
|
|
- {
|
|
|
- type: 'pie',
|
|
|
- label: {
|
|
|
- position: 'inner',
|
|
|
- fontSize: 14,
|
|
|
- },
|
|
|
- data: gender,
|
|
|
- emphasis: {
|
|
|
- itemStyle: {
|
|
|
- shadowBlur: 10,
|
|
|
- shadowOffsetX: 0,
|
|
|
- shadowColor: 'rgba(0, 0, 0, 0.5)'
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- ];
|
|
|
- AddUpFans && p.lineList.push(AddUpFans);
|
|
|
- LikeTheTrend && p.lineList.push(LikeTheTrend);
|
|
|
- RealTimeTraffic && p.lineList.push(RealTimeTraffic);
|
|
|
- RealTimePersonTime && p.lineList.push(RealTimePersonTime);
|
|
|
- _this.setData(p)
|
|
|
-
|
|
|
- },
|
|
|
- fail: function (err) {
|
|
|
- wx.hideLoading()
|
|
|
- wx.showToast({
|
|
|
- title: '请重启小程序',
|
|
|
- icon: "error"
|
|
|
- })
|
|
|
- },
|
|
|
- })
|
|
|
- }
|
|
|
-})
|