renzheng пре 7 година
родитељ
комит
88a4c9180c

BIN
api文档/剑鱼企业级数据服务接口_v1.3.doc


BIN
api文档/剑鱼企业级数据服务接口_v1.3.pdf


BIN
api文档/剑鱼企业级数据服务接口_v1.4.doc


BIN
api文档/剑鱼企业级数据服务接口_v1.4.pdf


+ 13 - 2
jyservice/src/config.json

@@ -15,7 +15,11 @@
             "title": 1,
             "detail": 1,
             "publishtime": 1,
-            "href": 1
+            "href": 1,
+			"id":1,
+			"department":1,
+			"matchscore":1,
+			"remark":1
         },
         "B": {
             "title": 1,
@@ -27,7 +31,14 @@
             "budget": 1,
             "bidamount": 1,
             "bidopentime": 1,
-            "buyer": 1
+            "buyer": 1,
+			"buyertel":1,
+			"buyerperson":1,
+			"city":1,
+			"id":1,
+			"department":1,
+			"matchscore":1,
+			"remark":1
         }
     }
 }

+ 28 - 5
jyservice/src/usermanager/getdata.go

@@ -211,6 +211,8 @@ func getDataByAppid(appid string, i_day, next, i_all int, limittodaykey string,
 
 	log.Debug("query:", query)
 	i_next = next
+	//是否获取过,默认无值
+	fields["bget"] = 1
 	data, bdata := Mgo.Find("usermail", query, `{"_id":1}`, fields, false, i_next, QUERY_LIMIT)
 	if bdata && data != nil && *data != nil && len(*data) > 0 {
 		infos = *data
@@ -220,20 +222,41 @@ func getDataByAppid(appid string, i_day, next, i_all int, limittodaykey string,
 				redis.Put(REDISDB, "lastid_"+appid, lastid, DesZero())
 			}
 		}
+		newGetLen := 0
+		updateMap := [][]map[string]interface{}{}
 		for _, v := range infos {
+			if util.IntAll(v["bget"]) == 0 {
+				newGetLen++
+				updateMap = append(updateMap, []map[string]interface{}{
+					map[string]interface{}{
+						"_id": v["_id"],
+					},
+					map[string]interface{}{
+						"$set": map[string]interface{}{
+							"bget": 1,
+						},
+					},
+				})
+			}
 			delete(v, "_id")
+			delete(v, "bget")
 		}
 		if len(*data) == QUERY_LIMIT && !blastid {
 			i_next = i_next + QUERY_LIMIT
 		} else {
 			i_next = -1
 		}
-		//处理总条数
-		redis.Decrby(REDISDB, "limitnum_"+appid, len(*data))
+		//处理总条数,有重复获取的信息条不计数,*******************
+		thisLen := len(*data)
+		if newGetLen > 0 {
+			redis.Decrby(REDISDB, "limitnum_"+appid, newGetLen)
+			go Mgo.UpdateBulk("usermail", updateMap...)
+		}
 		go Mgo.Save("userdatalog", map[string]interface{}{
-			"appid":   appid,
-			"datalen": len(*data),
-			"date":    time.Now().Unix(),
+			"appid":     appid,
+			"datalen":   thisLen,
+			"newgetlen": newGetLen,
+			"date":      time.Now().Unix(),
 		})
 	} else { //没有数据
 		i_next = 0

+ 10 - 1
jyservice/src/usermanager/usermanager.go

@@ -3,6 +3,7 @@ package usermanager
 import (
 	"net"
 	"net/http"
+	"net/url"
 	"strings"
 	"sync"
 	"time"
@@ -75,6 +76,14 @@ var lock sync.Mutex
 //用线程处理,增加日志
 
 func addLog(req *http.Request) {
+	req.ParseForm()
+	m := url.Values{}
+	for k, v := range req.Form {
+		m[k] = v
+	}
+	for k, v := range req.PostForm {
+		m[k] = v
+	}
 	timeNow := time.Now()
 	agent := req.Header.Get("user-agent")
 	ref := req.Referer()
@@ -89,7 +98,7 @@ func addLog(req *http.Request) {
 		"i_day":      timeNow.Day(),
 		"i_hour":     timeNow.Hour(),
 		"i_minutes":  timeNow.Minute(),
-		"s_describe": req.Form,
+		"s_describe": m, //req.Form,
 		"s_client":   agent,
 		"s_method":   req.Method,
 		"s_url":      s_url,