xingzai 2 anos atrás
pai
commit
b24c112ed8
1 arquivos alterados com 54 adições e 8 exclusões
  1. 54 8
      controllers/report.go

+ 54 - 8
controllers/report.go

@@ -2659,27 +2659,73 @@ func (this *ReportController) SearchReportAndResource() {
 	ListYxReport, err := models.GetArticleCollectionList(` AND a.article_id >= 1000000 `+condition+sqlGroup, user.UserId)
 	if err != nil {
 		br.Msg = "获取信息失败"
-		br.ErrMsg = "获取文章列表失败,Err:" + err.Error()
+		br.ErrMsg = "获取研选文章列表失败,Err:" + err.Error()
 		return
 	}
-	for k, v := range ListYxReport {
-		ListYxReport[k].Source = 2
-		if v.MyCollectNum > 0 {
-			ListYxReport[k].IsCollect = true
-		}
-	}
+
 	ListHzReport, err := models.GetReoprtSearchList(` AND a.article_id < 1000000 `+condition+` OR ( article_type = 'lyjh' `+condition+` ) OR ( a.sub_category_name = '专项调研' `+condition+` )  `+sqlGroup, user.UserId)
 	if err != nil {
 		br.Msg = "获取信息失败"
-		br.ErrMsg = "获取文章列表失败,Err:" + err.Error()
+		br.ErrMsg = "获取弘则报告文章列表失败,Err:" + err.Error()
 		return
 	}
+
+	keyWordArr, err := services.GetIndustryMapNameSliceV3(keyWord)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取分词失败,GetIndustryMapNameSliceV3 Err: " + err.Error()
+		return
+	}
+	keyWordArr = services.RemoveDuplicatesAndEmpty(keyWordArr)
+	var keyWordIk string
+	if len(keyWordArr) > 1 {
+		keyWordIk = services.KeyWordArrSqlRegexp(keyWordArr)
+		var conditionIk string
+		var sqlGroupIk string
+		conditionIk = `AND ( a.title REGEXP '` + keyWordIk + `' OR  a.body REGEXP '` + keyWordIk + `' OR  a.annotation REGEXP '` + keyWordIk + `' OR  a.abstract REGEXP '` + keyWordIk + `') AND a.publish_status = 1 `
+		sqlGroupIk = ` GROUP BY  a.article_id  ORDER BY a.publish_date DESC  `
+		if pageSize > 0 {
+			sqlGroupIk += ` LIMIT 5 `
+		} else {
+			sqlGroupIk += ` LIMIT 20 `
+		}
+		//研选的联想词列表
+		ListYxReportIk, err := models.GetArticleCollectionList(` AND a.article_id >= 1000000 `+conditionIk+sqlGroupIk, user.UserId)
+		if err != nil && err.Error() != utils.ErrNoRow() {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "获取研选IK文章列表失败,Err:" + err.Error()
+			return
+		}
+		if len(ListYxReportIk) > 0 {
+			for _, v := range ListYxReportIk {
+				ListYxReport = append(ListYxReport, v)
+			}
+		}
+		//弘则的联想词列表
+		ListHzReportIk, err := models.GetReoprtSearchList(` AND a.article_id < 1000000 `+conditionIk+` OR ( article_type = 'lyjh' `+conditionIk+` ) OR ( a.sub_category_name = '专项调研' `+conditionIk+` )  `+sqlGroupIk, user.UserId)
+		if err != nil && err.Error() != utils.ErrNoRow() {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "获取研选IK文章列表失败,Err:" + err.Error()
+			return
+		}
+		if len(ListHzReportIk) > 0 {
+			for _, v := range ListHzReportIk {
+				ListHzReport = append(ListHzReport, v)
+			}
+		}
+	}
 	for k, v := range ListHzReport {
 		ListHzReport[k].Source = 1
 		if v.MyCollectNum > 0 {
 			ListHzReport[k].IsCollect = true
 		}
 	}
+	for k, v := range ListYxReport {
+		ListYxReport[k].Source = 2
+		if v.MyCollectNum > 0 {
+			ListYxReport[k].IsCollect = true
+		}
+	}
 
 	if len(ListYxReport) == 0 {
 		ListYxReport = make([]*models.ArticleCollectionResp, 0)