Browse Source

Merge branch 'feature/v2.3.27' of https://jygit.jydev.jianyu360.cn/jianyu/push into feature/v2.3.27

wangchuanjin 1 year ago
parent
commit
0983b8e1ab
3 changed files with 38 additions and 18 deletions
  1. 2 2
      userBehaviorTask/config.yaml
  2. 33 13
      userBehaviorTask/entity/task.go
  3. 3 3
      userBehaviorTask/main.go

+ 2 - 2
userBehaviorTask/config.yaml

@@ -7,8 +7,8 @@ log:
 bidding:
   dbName: qfw_data
   address: "192.168.3.206:27002"
-  userName: ""
-  passWord: ""
+  userName: "jyDevGroup"
+  passWord: "jy@DevGroup"
   size: 5
 base_service:
   dbName: base_service

+ 33 - 13
userBehaviorTask/entity/task.go

@@ -29,7 +29,7 @@ var ContentInfo = make(map[string][]map[string]interface{})
 var positionUser = map[string]string{}
 
 // 三级页详情获取
-var biddingInfo map[string]string
+var biddingInfo map[string]map[string]interface{}
 
 // 数据库中数据初始化
 var subInItInfo map[string]map[string]string
@@ -58,7 +58,7 @@ func (t *Task) ShuaKu(start, end int64) {
 	ContentInfo = make(map[string][]map[string]interface{})
 	subInfo = make(map[string]map[string]string)
 	searchHandle(start, end)
-	biddingInfo = map[string]string{}
+	biddingInfo = map[string]map[string]interface{}{}
 	ContentHandle(start, end)
 	//批量处理入库
 	for userId, v := range SearchInfo {
@@ -118,6 +118,12 @@ func (t *Task) ShuaKu(start, end int64) {
 			}
 		}
 	}
+	SearchInfo = make(map[string][]map[string]interface{})
+	ContentInfo = make(map[string][]map[string]interface{})
+	subInfo = make(map[string]map[string]string)
+	biddingInfo = map[string]map[string]interface{}{}
+	positionUser = map[string]string{}
+	subInItInfo = map[string]map[string]string{}
 }
 
 func UserHandle() {
@@ -146,7 +152,7 @@ func UserHandle() {
 func searchHandle(start, end int64) {
 	startTime := primitive.NewObjectIDFromTimestamp(time.Unix(start, 0))
 	endTime := primitive.NewObjectIDFromTimestamp(time.Unix(end, 0))
-	logx.Info("start。。。", start, end)
+	logx.Info("start。。。", start, end, startTime, endTime)
 	sess := MgoLog.GetMgoConn()
 	defer MgoLog.DestoryMongoConn(sess)
 	it := sess.DB("qfw").C("jy_search_log").Find(map[string]interface{}{
@@ -238,7 +244,11 @@ func ContentHandle(start, end int64) {
 			"$gte": startTime,
 			"$lt":  endTime,
 		},
-	}).Sort("_id").Select(map[string]interface{}{}).Iter()
+	}).Sort("_id").Select(map[string]interface{}{
+		"date":   1,
+		"url":    1,
+		"userid": 1,
+	}).Iter()
 	for m := make(map[string]interface{}); it.Next(&m); {
 		numb++
 		if numb%1000 == 0 {
@@ -255,7 +265,11 @@ func ContentHandle(start, end int64) {
 			"$gte": startTime,
 			"$lt":  endTime,
 		},
-	}).Sort("_id").Select(map[string]interface{}{}).Iter()
+	}).Sort("_id").Select(map[string]interface{}{
+		"date":   1,
+		"url":    1,
+		"userid": 1,
+	}).Iter()
 	for m := make(map[string]interface{}); it1.Next(&m); {
 		numb++
 		if numb%1000 == 0 {
@@ -306,29 +320,35 @@ func InformationHandle(m map[string]interface{}, data map[string][]map[string]in
 	}
 	//分类标签,bidding表gov_classify.root,过滤掉只有一级的,取最后一级
 	rootStr := ""
+	area := ""
 	if _, ok := biddingInfo[infoId]; !ok {
-		bidding, _ := MgoBidding.FindById("bidding", infoId, "gov_classify")
-		biddingInfo[infoId] = ""
-		if bidding != nil {
+		bidding, _ := MgoBidding.FindById("bidding", infoId, `{"gov_classify":1,"area":1}`)
+		biddingInfo[infoId] = map[string]interface{}{}
+		if bidding == nil {
 			return
 		}
 		gov_classify := gconv.Map((*bidding)["gov_classify"])
-		if gov_classify == nil {
+		area = gconv.String((*bidding)["area"])
+		if gov_classify != nil {
 			root := strings.Split(gconv.String(gov_classify["root"]), "/")
 			if len(root) == 0 {
 				return
 			} else {
-				for i := len(root) - 1; i >= 0; i-- {
+				for i := len(root) - 1; i >= 1; i-- {
 					if root[i] != "" {
 						rootStr = root[i]
-						biddingInfo[infoId] = rootStr
+						biddingInfo[infoId] = map[string]interface{}{
+							"area":    area,
+							"rootStr": rootStr,
+						}
 						break
 					}
 				}
 			}
 		}
 	} else {
-		rootStr = biddingInfo[infoId]
+		rootStr = gconv.String(biddingInfo[infoId]["rootStr"])
+		area = gconv.String(biddingInfo[infoId]["area"])
 	}
 	if rootStr == "" {
 		return
@@ -338,8 +358,8 @@ func InformationHandle(m map[string]interface{}, data map[string][]map[string]in
 		"classify":    rootStr,                                                            //分类标签,bidding表gov_classify.root,过滤掉只有一级的,取最后一级
 		"datetimeInt": gconv.Int64(m["date"]),                                             //访问时间
 		"datetime":    time.Unix(gconv.Int64(m["date"]), 0).Format("2006-01-02 15:04:05"), //搜索时间
+		"area":        area,
 	}
-	logx.Info("1111", gconv.String(m["url"]))
 	if _, ok := data[userId]; ok {
 		data[userId] = append(data[userId], searchMap)
 	} else {

+ 3 - 3
userBehaviorTask/main.go

@@ -9,9 +9,9 @@ func main() {
 	m := flag.Int("m", 0, " 1-指定时间段统计")
 	s := flag.Int64("s", 0, "开始时间")
 	e := flag.Int64("e", 0, "结束时间")
-	/*m := flag.Int("m", 1, " 1-指定时间段统计")
-	s := flag.Int64("s", 1709254323, "开始时间")
-	e := flag.Int64("e", 1710377523, "结束时间")*/
+	/*	m := flag.Int("m", 1, " 1-指定时间段统计")
+		s := flag.Int64("s", 1710729220, "开始时间")
+		e := flag.Int64("e", 1710815620, "结束时间")*/
 	flag.Parse()
 	if *m == 1 {
 		(&entity.Task{}).ShuaKu(*s, *e)