Browse Source

二次推送修改代码

fuwencai 4 năm trước cách đây
mục cha
commit
aa2a4e21e1
1 tập tin đã thay đổi với 34 bổ sung54 xóa
  1. 34 54
      src/service/second_push.go

+ 34 - 54
src/service/second_push.go

@@ -250,40 +250,16 @@ func (s *SecondPush) SecondPushTask() {
 								// 根据id进行去重
 								if _, ok := idMap[l["_id"].(bson.ObjectId)]; !ok {
 									idMap[l["_id"].(bson.ObjectId)] = true
-									// 项目匹配为"1" 以及项目id为空时进行项目id匹配   同时更新数据库项目id
+									// 项目匹配为"1" 以及项目id为空时进行项目id匹配   同时更新数据库
 									if projectIdSearch == "1" && (l["projectId"] == "" || l["projectId"] == nil) {
-										_projectid := ""
-										projectId := GetProjectId(qu.ObjToString(l["id"]))
-										if projectId != "" {
-											l["projectId"] = SE.EncodeString(projectId)
-											_projectid = SE.EncodeString(projectId)
-										} else {
-											l["projectId"] = ""
-											_projectid = ""
-										}
-										updateMap = append(updateMap, []map[string]interface{}{
-											map[string]interface{}{
-												"_id": l["_id"],
-											},
-											map[string]interface{}{
-												"$set": map[string]interface{}{
-													"projectId": _projectid,
-												},
-											},
-										})
-										if len(updateMap) > 500 {
-											b := MgoCus.UpdateBulk("usermail", updateMap...)
-											log.Println("更新是否成功", b)
-											updateMap = [][]map[string]interface{}{}
-										}
-
+										updateMap = searchProjectId(l, updateMap)
 									}
 									xlsxArr = append(xlsxArr, l)
 								}
 							}
 							if len(updateMap) > 0 {
 								b := MgoCus.UpdateBulk("usermail", updateMap...)
-								log.Println("更新是否成功", b)
+								log.Println("项目id更新是否成功", b)
 							}
 						}
 					}
@@ -300,36 +276,13 @@ func (s *SecondPush) SecondPushTask() {
 					for _, l := range *d {
 						// 项目匹配为"1" 以及项目id为空时进行项目id匹配   同时更新数据库
 						if projectIdSearch == "1" && (l["projectId"] == "" || l["projectId"] == nil) {
-							_projectid := ""
-							projectId := GetProjectId(qu.ObjToString(l["id"]))
-							if projectId != "" {
-								l["projectId"] = SE.EncodeString(projectId)
-								_projectid = SE.EncodeString(projectId)
-							} else {
-								l["projectId"] = ""
-								_projectid = ""
-							}
-							updateMap = append(updateMap, []map[string]interface{}{
-								map[string]interface{}{
-									"_id": l["_id"],
-								},
-								map[string]interface{}{
-									"$set": map[string]interface{}{
-										"projectId": _projectid,
-									},
-								},
-							})
-							if len(updateMap) > 500 {
-								b := MgoCus.UpdateBulk("usermail", updateMap...)
-								log.Println("更新是否成功", b)
-								updateMap = [][]map[string]interface{}{}
-							}
+							updateMap = searchProjectId(l, updateMap)
 						}
 						xlsxArr = append(xlsxArr, l)
 					}
 					if len(updateMap) > 0 {
 						b := MgoCus.UpdateBulk("usermail", updateMap...)
-						log.Println("更新是否成功", b)
+						log.Println("项目id更新是否成功", b)
 					}
 				}
 				if len(xlsxArr) == 0 {
@@ -351,6 +304,34 @@ func (s *SecondPush) SecondPushTask() {
 	}
 
 }
+func searchProjectId(l map[string]interface{}, updateMap [][]map[string]interface{}) [][]map[string]interface{} {
+	_projectid := ""
+	projectId := GetProjectId(qu.ObjToString(l["id"]))
+	if projectId != "" {
+		l["projectId"] = projectId
+		_projectid = projectId
+	} else {
+		l["projectId"] = ""
+		_projectid = ""
+		log.Println(l["id"], "未匹配到项目id")
+	}
+	updateMap = append(updateMap, []map[string]interface{}{
+		map[string]interface{}{
+			"_id": l["_id"],
+		},
+		map[string]interface{}{
+			"$set": map[string]interface{}{
+				"projectId": _projectid,
+			},
+		},
+	})
+	if len(updateMap) > 500 {
+		b := MgoCus.UpdateBulk("usermail", updateMap...)
+		log.Println("项目id更新是否成功", b)
+		updateMap = [][]map[string]interface{}{}
+	}
+	return updateMap
+}
 func GetProjectId(id string) string {
 	query := `{"query": {"bool": {"must": [{"term": {"projectset.ids": "%s"}}],"must_not": [],"should": []}}}`
 	querys := fmt.Sprintf(query, id)
@@ -360,10 +341,9 @@ func GetProjectId(id string) string {
 	if data != nil && *data != nil && len(*data) > 0 {
 		for _, v := range *data {
 			projectIdArr = append(projectIdArr, qu.ObjToString(v["_id"]))
-
 		}
 		projectId = strings.Join(projectIdArr, ",")
-		log.Println("projectId", projectId)
+		log.Println("id", id, "projectId", projectId)
 	}
 	return projectId
 }