Browse Source

添加统计

Rorschach 6 years ago
parent
commit
34033e76f7

+ 1 - 0
component/follow/follow.js

@@ -32,6 +32,7 @@ export const followInit = (that) => {
         followData: that.data.followData,
         followPageTotalNo: res.data.data.totalNo
       })
+      httpRequestApi.userIntoPage('pages/index/index','首页动态')
     });
   }
   that.getWorks(1, 5);

+ 1 - 0
component/group/group.js

@@ -62,6 +62,7 @@ export const groupInit = (that) => {
       that.setData({
         groupData: that.data.groupData
       })
+      httpRequestApi.userIntoPage('pages/index/index','首页热团')
     }).fail((error) => {
       console.log('错误', error)
     })

+ 2 - 2
component/hot/hot.js

@@ -93,7 +93,6 @@ export const hotInit = (that) => {
     httpRequestApi.getIndex(
       uid
     ).success((res) => {
-
       const banner = res.data.data.banner;
       const recommend = res.data.data.recommendLesson;
       const bannerTemp = [];
@@ -119,7 +118,8 @@ export const hotInit = (that) => {
       that.setData({
         [bannerIndex]: bannerTemp,
         [recommendIndex]: recommendTemp
-      })
+      });
+      httpRequestApi.userIntoPage('pages/index/index','首页推荐')
     })
   }
   that.getHotRecommend = (uid, pageNo, pageSize) => {

+ 16 - 0
component/share/share.js

@@ -393,6 +393,22 @@ Component({
         filePath: this.data.imgUrls,
         success: (res) => {
           console.log(res)
+          const data = {};
+          // 团购分享记录
+          if(this.data.shareType === 'group'){
+            data.shareTypeEnum = 'POSTER';
+            data.shareContentEnum = 'GROUP';
+            data.productId = this.data.groupPurchaseInfo.productId;
+          }
+          // 朗读分享记录
+          if(this.data.shareType === 'works'){
+            data.shareTypeEnum = 'POSTER';
+            data.shareContentEnum = 'READ';
+            data.productId = this.data.productId;
+          }
+          httpRequestApi.shareRecord(data).success((res)=>{
+            console.log(res)
+          })
           this.setData({
             imgUrls: false
           })

+ 14 - 17
pages/groupPage/collage-details/collage-details.js

@@ -69,7 +69,7 @@ Page({
   onPullDownRefresh: function () {
     this.setData({
       surplusList: []
-    },()=>{
+    }, () => {
       this.getInfo();
     })
     wx.showNavigationBarLoading() //在标题栏中显示加载
@@ -94,7 +94,7 @@ Page({
         read: options.read
       })
     }
-    if(options.goBackHome == 'true'){
+    if (options.goBackHome == 'true') {
       this.setData({
         goBackHome: true
       })
@@ -113,11 +113,11 @@ Page({
     console.log(orderId)
     this.setData({
       orderId
-    },()=>{
+    }, () => {
       this.getInfo()
     })
   },
-  getInfo: function(){
+  getInfo: function () {
     httpRequestApi.getMygroupInfo(this.data.orderId).success(res => {
       console.log(res);
       const groupOrder = res.data.data.groupPurchaseOrder;
@@ -150,7 +150,7 @@ Page({
         productId: groupOrder.productId,
         groupId: groupOrder.groupId,
         rewardMoney: res.data.data.groupPurchaseInfo.organizerPrice / 100,
-        dataLoading:false,
+        dataLoading: false,
         groupOsType: groupOrder.os
       })
       if (groupOrder.groupType === 'PROMOTION') {
@@ -178,8 +178,7 @@ Page({
     if (ops.from === 'button') {
       console.log(ops.target)
     }
-    // const productId = this.data.productId;
-    // const groupId = this.data.groupId;
+
     const id = this.data.orderId;
     return {
       title: '老师同学都在玩的配音show,你还在等什么?',
@@ -189,16 +188,14 @@ Page({
         // 转发成功
         console.log("转发成功:" + JSON.stringify(res));
         var shareTickets = res.shareTickets;
-        // if (shareTickets.length == 0) {
-        //   return false;
-        // }
-        // //可以获取群组信息
-        // wx.getShareInfo({
-        //   shareTicket: shareTickets[0],
-        //   success: function (res) {
-        //     console.log(res)
-        //   }
-        // })
+        const data = {
+          shareTypeEnum: 'LINK',
+          shareContentEnum: 'GROUP',
+          productId: this.data.productId
+        }
+        httpRequestApi.shareRecord(data).success((res) => {
+          console.log(res)
+        })
       },
       fail: function (res) {
         // 转发失败

+ 1 - 0
pages/groupPage/grade-details/grade-details.js

@@ -338,6 +338,7 @@ Page({
       this.setData({
         lessonList: lessonTemp
       });
+      httpRequestApi.userIntoPage('pages/groupPage/grade-details/grade-details','课本详情页面')
     })
   },
   getGroupInfo: function (productId) {

+ 25 - 3
pages/groupPage/group-details/group-details.js

@@ -182,7 +182,7 @@ Page({
             })
             break;
           case 806:
-          console.log(this.data.haveTapJoin)
+            console.log(this.data.haveTapJoin)
             wx.pageScrollTo({
               scrollTop: 0,
               duration: 17
@@ -376,7 +376,7 @@ Page({
           })
         }
       })
-
+      httpRequestApi.userIntoPage('pages/groupPage/group-details/group-details','团购详情页面')
       if (groupOrder.groupType === 'PROMOTION') {
         //this.data.joinUserList.unshift(res.data.data.organizer);
         this.setData({
@@ -492,13 +492,16 @@ Page({
    */
   onLoad: function (options) {
     console.log(this.data.isIOS)
+    this.setData({
+      options:options
+    })
     if (options.scene || options.shareId) {
       console.log(123)
       this.setData({
         isLoading: true
       })
     }
-
+    
     console.log('onload', options)
     wx.setNavigationBarTitle({
       title: '拼团详情'
@@ -543,7 +546,26 @@ Page({
         haveJoinHelp: res.data.data.joinShare, // 参加过助力团
       })
     });
+      // 增加一条记录
+    const data = {
+      "shareTypeEnum": "POSTER",
+      "shareContentEnum": "GROUP",
+      "productId": productId
+    }
+    if (this.data.option.shareId) {
+      data.shareTypeEnum = 'LINK'
+      httpRequestApi.shareTagRecord(data).success(res => {
+        console.log(res)
+      })
+    }
+    if (this.data.option.scene) {
+      httpRequestApi.shareTagRecord(data).success(res => {
+        console.log(res)
+      })
+    }
   },
+
+
   // 下拉刷新
   onPullDownRefresh: function () {
     //当前在团购页下拉加载

+ 1 - 2
pages/index/index.js

@@ -154,8 +154,7 @@ Page({
     httpRequestApi.getUserWorksInfo().success(res => {
       this.data.myData.user = res.data.data; //直接赋值 给 myData的user对象。
       this.data.myData.user.user.birthday = this.data.myData.user.user.birthday ?  formatDate(res.data.data.user.birthday,4) : '2018年1月1日';
-      console.log(formatDate(res.data.data.user.birthday,1))
-      console.log(this.data.myData.user.birthday)
+      httpRequestApi.userIntoPage('pages/index/index','首页我的')
       this.setData({
         myData: this.data.myData,
       });

+ 1 - 5
pages/main/class/class.js

@@ -58,11 +58,7 @@ Page({
     httpRequestApi.getClassDetail(this.uid, option.id).success(res => {
       console.log(res);
       const classId = this.data.id;
-      // let productId = 0
-      // httpRequestApi.checkLesson(classId).success(res => {
-      //    productId = res.data.data[0];
-      
-      // });
+      httpRequestApi.userIntoPage('pages/main/class/class','官方课程页面')
       this.setData({
         title: res.data.data.lesson.title,
         videoUrl: res.data.data.lesson.playUrl,

+ 5 - 1
pages/main/reading/reading.js

@@ -26,6 +26,7 @@ Page({
 
         const uid = wx.getStorageSync('uid')
         httpRequestApi.getClassDetail(uid, option.id).success(res => {
+            console.log(res)
             wx.setNavigationBarTitle({
                 title: res.data.data.title //页面标题为路由参数
             })
@@ -37,10 +38,12 @@ Page({
                 id: res.data.data.lesson.id,
                 // readingText: res.data.data.lessonText.replace(reg,'')
                 readingText: res.data.data.lesson.lessonText,
-                grade: res.data.data.lesson.gradeClassify
+                grade: res.data.data.lesson.gradeClassify,
+                productId: res.data.data.product.id
             })
             console.log(this.data.readingText)
             console.log(this.data.img)
+            httpRequestApi.userIntoPage('pages/main/reading/reading','朗读页面')
         })
 
         this.recorderManager = wx.getRecorderManager();
@@ -296,6 +299,7 @@ Page({
                 "title": this.data.title,
                 "iconImg": this.data.img,
                 "summary": this.data.grade,
+                productId: this.data.productId
             };
             httpRequestApi.postWork(uid, data).success(res => {
                 wx.hideLoading({

+ 2 - 0
pages/social/replyDetail/replyDetail.js

@@ -15,6 +15,7 @@ Page({
         console.log(option)
         this.setData({
             postId: option.id,
+            productId: option.productId
             // count: option.count === 'undefined' ? 0 : option.count
         })
         wx.setNavigationBarTitle({
@@ -33,6 +34,7 @@ Page({
     replyDone:function(){
       const data = {
         postsId: this.data.postId,
+        productId: this.data.productId,
         content: encodeURI(this.data.replyInfo)
       }
       if(this.data.replyInfo){

+ 46 - 9
pages/social/works/works.js

@@ -62,9 +62,6 @@ Page({
                     goBackHome: true
                 })
             }
-            // wx.setNavigationBarTitle({
-            //     title: option.title //页面标题为路由参数
-            // })
             this.uid = wx.getStorageSync('uid');
             let stackSize = 1;
             if (option.stackSize) {
@@ -74,7 +71,8 @@ Page({
                 // title: option.title,
                 id,
                 myUid: this.uid,
-                stackSize
+                stackSize,
+                option
             })
             this.getWorks(this.uid, id);
         }, (error) => {
@@ -85,6 +83,24 @@ Page({
             return;
         });
     },
+    addRecord: function(){
+        const data = {
+            "shareTypeEnum": "POSTER",
+            "shareContentEnum": "READ",
+            "productId": this.data.productId
+        }
+        if(this.data.option.shareCard){
+            data.shareTypeEnum = 'LINK'
+            httpRequestApi.shareTagRecord(data).success(res=>{
+                console.log(res)
+            })
+        }
+        if(this.data.option.scene){
+            httpRequestApi.shareTagRecord(data).success(res=>{
+                console.log(res)
+            })
+        }
+    },
     onHide: function () {
         // this.data.stackSize >= 2
         console.log(this.data.stackSize)
@@ -132,12 +148,14 @@ Page({
                 isLike: res.data.data.isLike,
                 isFans: res.data.data.isFans,
                 title: works.title
-            })
+            });
+            httpRequestApi.userIntoPage('pages/social/works/works','用户作品页面')
             httpRequestApi.checkLesson(works.lessonId).success(res => {
                 const productId = res.data.data[0];
                 this.setData({
                     productId
                 })
+                this.addRecord();
             });
             // 设置音频路径
             this.innerAudioContext = wx.createInnerAudioContext();
@@ -207,6 +225,7 @@ Page({
                 title: this.data.title,
                 path: `pages/social/works/works`,
                 scene: this.data.id,
+                productId:this.data.productId
                 // tip: this.data.tip,
             }
             // console.log(data)
@@ -315,11 +334,28 @@ Page({
     },
     onShareAppMessage: function () {
         console.log(this.data.productId);
-
+        const data = {
+            shareTypeEnum: 'LINK',
+            shareContentEnum: 'READ'
+        }
+        httpRequestApi.shareRecord(data).success((res)=>{
+            console.log(res)
+          })
         return {
             title: '一样的课文,不一样的味道!我的配音表演已开始,求各位大咖围观、点评!',
             path: `pages/social/works/works?id=${this.data.id}&title=${this.data.title}&shareCard=true`,
-            imageUrl: `https://efunbox.lingjiao.cn/reader/resource/share/read_${this.data.productId}.jpg`
+            imageUrl: `https://efunbox.lingjiao.cn/reader/resource/share/read_${this.data.productId}.jpg`,
+            success: function (res) {
+                // 转发成功
+                const data = {
+                    shareTypeEnum: 'LINK',
+                    shareContentEnum: 'READ',
+                    productId:this.data.productId
+                }
+                httpRequestApi.shareRecord(data).success((res)=>{
+                    console.log(res)
+                  })
+              },
         }
     },
     follow: function () {
@@ -424,7 +460,7 @@ Page({
         let id = e.currentTarget.dataset.id;
         // let count = e.currentTarget.dataset.count;
         wx.navigateTo({
-            url: `../../social/replyDetail/replyDetail?id=${id}`
+            url: `../../social/replyDetail/replyDetail?id=${id}&productId=${this.data.productId}`
         })
     },
     //  绑定输入框内容
@@ -441,7 +477,8 @@ Page({
                 "columnId": this.data.id,
                 colunmNames: 'what',
                 // "detailDesc": encodeURI(this.data.inputValue)
-                "detailDesc": this.data.inputValue
+                "detailDesc": this.data.inputValue,
+                "productId": this.data.productId
             }
             httpRequestApi.postReply(this.uid, data).success(res => {
                 this.setData({

+ 1 - 0
pages/user/myEdit/myEdit.js

@@ -114,6 +114,7 @@ Page({
           title: option.title
         });
       }
+      httpRequestApi.userIntoPage('pages/user/myEdit/myEdit','修改资料页面')
     });
 
   },

+ 2 - 0
pages/user/myworks/myworks.js

@@ -56,6 +56,7 @@ Page({
     let uid = this.data.uid;
     console.log('用户身份',uid);
     APIClient.getUserMsg(uid, pageNo, pageSize).success(res => {
+      console.log(res)
       res.data.data.user.birthday = formatDate(res.data.data.user.birthday,4)
       this.setData({
         wareCards: res.data.data,
@@ -67,6 +68,7 @@ Page({
       console.log(err);
     });
     APIClient.userWorks(uid, pageNo, pageSize).success(res => {
+      console.log(res)
       this.setData({
         worksList: this.data.worksList.concat(res.data.data.list),
         totalNo: res.data.data.totalNo

+ 35 - 4
utils/APIClient.js

@@ -187,7 +187,7 @@ module.exports = {
     }).url(url).data(data).method('POST').send();
   },
   // 获取推荐团购信息
-  getGroupList(pageNo,osType) {
+  getGroupList(pageNo, osType) {
     let url = getBaseUrl(`wx/groupPurchaseInfo/recommend`);
     return request.getInstance().header({
       uid: wx.getStorageSync('uid')
@@ -212,7 +212,7 @@ module.exports = {
     }).url(url).data(data).method('POST').send();
   },
   // 参加团购
-  JoinGroupPurchas(orderId,formId) {
+  JoinGroupPurchas(orderId, formId) {
     console.log(formId)
     console.log(orderId)
     let url = getBaseUrl(`wx/groupPurchase/join`);
@@ -343,12 +343,12 @@ module.exports = {
     }).send();
   },
   // 课程鉴权 包括助力团
-  areYouSuperSecond(os,productId) {
+  areYouSuperSecond(os, productId) {
     let url = getBaseUrl(`wx/groupPurchase/authAll`);
     return request.getInstance().header({
       uid: wx.getStorageSync('uid')
     }).url(url).data({
-      osType:os,
+      osType: os,
       productId
     }).send();
   },
@@ -388,4 +388,35 @@ module.exports = {
       pageSize: pageSize
     }).url(url).send();
   },
+  // 分享记录
+  shareRecord(data) {
+    let url = getBaseUrl('wx/ShareStatistics/share');
+    return request.getInstance().header({
+      uid: wx.getStorageSync('uid')
+    }).data(data).url(url).method('POST').send();
+  },
+  // 由分享进入的记录
+  shareTagRecord(data) {
+    let url = getBaseUrl('wx/ShareStatistics/click');
+    return request.getInstance().header({
+      uid: wx.getStorageSync('uid')
+    }).data(data).url(url).method('POST').send();
+  },
+  // 用户登录记录
+  userLoginRecord(uid) {
+    let url = getBaseUrl('wx/loginLog');
+    return request.getInstance().header({
+      uid
+    }).url(url).send();
+  },
+  // 用户进入页面统计
+  userIntoPage(action,actionName) {
+    let url = getBaseUrl('wx/userEvent');
+    return request.getInstance().header({
+      uid: wx.getStorageSync('uid')
+    }).data({
+      action,
+      actionName
+    }).url(url).method('POST').send();
+  },
 }

+ 4 - 4
utils/const.js

@@ -1,7 +1,7 @@
 // 常量列表
 module.exports = {
-	productApi: 'https://reader.lingjiao.cn/readerProduct/',
-	// productApi: 'https://readertest.lingjiao.cn/readerProduct/',
-	baseApi: 'https://reader.lingjiao.cn/readerBase/'
-	// baseApi: 'https://readertest.lingjiao.cn/readerBase/'
+	// productApi: 'https://reader.lingjiao.cn/readerProduct/',
+	productApi: 'https://readertest.lingjiao.cn/readerProduct/',
+	// baseApi: 'https://reader.lingjiao.cn/readerBase/'
+	baseApi: 'https://readertest.lingjiao.cn/readerBase/'
 }

+ 4 - 0
utils/httpUtil.js

@@ -1,6 +1,7 @@
 const request = require('./WXHttpRequest.js');
 const url = require('./const.js');
 const util = require('./util.js');
+const httpRequestApi = require('./APIClient');
 
 const HOST = url.baseApi;
 
@@ -56,6 +57,9 @@ function getLoginSchedule(sessionKey, openId, successcallback, failcallback) {
                       })
                       wx.setStorageSync('uid', res.data.data.data.uid)
                       wx.setStorageSync('user', res.data.data.data)
+                      httpRequestApi.userLoginRecord(res.data.data.data.uid).success((res)=>{
+                          console.log('用户登录记一次')
+                      })
                       console.log(res)
                       successcallback(res)
                   });