wangkaiyue 6 年之前
父節點
當前提交
0d99514338
共有 2 個文件被更改,包括 57 次插入14 次删除
  1. 30 7
      src/jfw/modules/app/src/app/front/login.go
  2. 27 7
      src/jfw/modules/app/src/web/staticres/jyapp/js/common.js

+ 30 - 7
src/jfw/modules/app/src/app/front/login.go

@@ -62,6 +62,7 @@ type Login struct {
 	brand                xweb.Mapper `xweb:"/jyapp/free/message/brand"`        //设置手机类型和推送id
 	afterPageLoadToCheck xweb.Mapper `xweb:"/jyapp/free/afterPageLoadToCheck"` //检测
 	channelSign          xweb.Mapper `xweb:"/jyapp/free/channelSign"`          //渠道统计
+	savePushIdMsg        xweb.Mapper `xweb:"/jyapp/free/savePushIdMsg"`        //推送id记录
 }
 
 var (
@@ -1205,9 +1206,6 @@ func (l *Login) ChannelSign() {
 	result := false
 	channel := l.GetString("sign")
 	deviceId := l.GetString("id")
-	phoneType := l.GetString("phoneType")
-	rid := l.GetString("rid")
-	oid := l.GetString("oid")
 	if channel != "" && deviceId != "" {
 		data := map[string]interface{}{
 			"s_deviceId": deviceId,
@@ -1216,14 +1214,39 @@ func (l *Login) ChannelSign() {
 		if mongodb.Count("jyapp_channel", data) == 0 {
 			data["i_cometime"] = time.Now().Unix()
 			data["s_channel"] = channel
-			data["phoneType"] = phoneType
-			data["rid"] = rid
-			data["oid"] = oid
 			mongodb.Save("jyapp_channel", data)
 		}
 		result = true
 	}
-	log.Printf("channel:%s deviceId:%s phoneType:%s rid:%s oid:%s\n", channel, deviceId, phoneType, rid, oid)
+	l.ServeJson(map[string]interface{}{
+		"success": result,
+	})
+}
+
+func (l *Login) SavePushIdMsg() {
+	result := false
+	deviceId := l.GetString("id")
+	phoneType := l.GetString("phoneType")
+	rid := l.GetString("rid")
+	oid := l.GetString("oid")
+	if rid != "" && deviceId != "" {
+		data := map[string]interface{}{
+			"s_rid": rid,
+		}
+		if mongodb.Count("jyapp_pushId", data) == 0 {
+			data["i_cometime"] = time.Now().Unix()
+			data["s_oid"] = oid
+			data["phoneType"] = phoneType
+			data["s_deviceId"] = deviceId
+			mongodb.Save("jyapp_pushId", data)
+		} else {
+			mongodb.Update("jyapp_pushId", data, map[string]interface{}{"$set": map[string]interface{}{
+				"i_lastTime": time.Now().Unix(),
+			}}, false, true)
+		}
+		result = true
+	}
+	log.Printf("deviceId:%s phoneType:%s rid:%s oid:%s\n", deviceId, phoneType, rid, oid)
 	l.ServeJson(map[string]interface{}{
 		"success": result,
 	})

+ 27 - 7
src/jfw/modules/app/src/web/staticres/jyapp/js/common.js

@@ -66,6 +66,8 @@ $(function(){
 			afterPageInit();
 			//发送渠道统计
 			sendChannelSign();
+			//记录推送id
+			savePushIdMsg();
 		}catch(e){}
 	}
 });
@@ -557,29 +559,47 @@ function prohibitBack(){
 		JyObj.prohibitBack();
 	}catch(e){}
 }
-
 function sendChannelSign(){
 	var first=localStorage.getItem("channelSigned")
 	if(first=="1"){
 		return
 	}
+	try{
+		var sign=getChannel();
+		var id=getDeviceId();
+		if (sign==""||id==""){
+			return
+		}
+		$.post("/jyapp/free/channelSign",{"sign":sign,"id":id},function(data){
+			if(data.success){
+				localStorage.setItem("channelSigned","1")	
+			}
+		})
+	}
+	catch(err){
+		alert(err)
+	}
+}
+
+function savePushIdMsg(){
+	var sign = JyObj.getUserToken();
+	if(sign != ""){
+		return;
+	}
 	try{
 		var interval = setInterval(function(){
-			var sign=getChannel();
 			var id=getDeviceId();
 			var phoneType=getPhoneType();
 			var rid = JyObj.getPushRid();
 			var oid = getOtherPushId();
-			if (sign==""||id==""||phoneType==""||rid==""||oid==""){
-				alert(sign,id,phoneType,rid,oid)
+			if (id==""||phoneType==""||rid==""){
 				return
 			}
-			$.post("/jyapp/free/channelSign",{"sign":sign,"id":id,"phoneType":phoneType,"rid":rid,"oid":oid},function(data){
+			$.post("/jyapp/free/savePushIdMsg",{"id":id,"phoneType":phoneType,"rid":rid,"oid":oid},function(data){
 				if(data.success){
-					localStorage.setItem("channelSigned","1")	
+					clearInterval(interval);
 				}
 			})
-			clearInterval(interval);
 		},1000)	
 	}
 	catch(err){