Browse Source

Merge branch 'cygx_v2' of hongze/hongze_cygx into master

hongze 4 years ago
parent
commit
f54ff26410
6 changed files with 96 additions and 42 deletions
  1. 14 15
      controllers/report.go
  2. 1 1
      controllers/search.go
  3. 2 2
      models/tactics.go
  4. 3 3
      services/elastic.go
  5. 71 21
      services/tactics.go
  6. 5 0
      services/task.go

+ 14 - 15
controllers/report.go

@@ -8,7 +8,6 @@ import (
 	"hongze/hongze_cygx/utils"
 	"rdluck_tools/paging"
 	"strconv"
-	"strings"
 	"time"
 )
 
@@ -169,13 +168,13 @@ func (this *ReportController) IndustryList() {
 		list = append(listTop, listNoTop...)
 	}
 	for k, v := range list {
-		var analystStr string
-		analystList, err := models.GetIndustrialAnalystAll(v.IndustrialManagementId)
-		if err != nil {
-			br.Msg = "获取信息失败"
-			br.ErrMsg = "获取品种信息失败,Err:" + err.Error()
-			return
-		}
+		//var analystStr string
+		//analystList, err := models.GetIndustrialAnalystAll(v.IndustrialManagementId)
+		//if err != nil {
+		//	br.Msg = "获取信息失败"
+		//	br.ErrMsg = "获取品种信息失败,Err:" + err.Error()
+		//	return
+		//}
 		industrialSubjectList, err := models.GetIndustrialSubjectAll(v.IndustrialManagementId)
 		if err != nil {
 			br.Msg = "获取信息失败"
@@ -183,13 +182,13 @@ func (this *ReportController) IndustryList() {
 			return
 		}
 		list[k].IndustrialSubjectList = industrialSubjectList
-		if len(analystList) > 0 {
-			for _, v2 := range analystList {
-				analystStr += v2.AnalystName + "/"
-			}
-			analystStr = strings.TrimRight(analystStr, "/")
-		}
-		list[k].Analyst = analystStr
+		//if len(analystList) > 0 {
+		//	for _, v2 := range analystList {
+		//		analystStr += v2.AnalystName + "/"
+		//	}
+		//	analystStr = strings.TrimRight(analystStr, "/")
+		//}
+		//list[k].Analyst = analystStr
 		list[k].LayoutTime = utils.TimeRemoveHms(v.LayoutTime)
 		newArtinfo, err := models.GetIndustrialNewArticleDetail(v.IndustrialManagementId)
 		if err != nil {

+ 1 - 1
controllers/search.go

@@ -77,7 +77,7 @@ func (this *SearchController) SearchList() {
 	var total int64
 	var err error
 	if orderColumn == "PublishDate" {
-		tmpResult, tmpTotal, tmpErr := services.EsMultiMatchFunctionScoreQueryTimeSort(indexName, keyWord, startSize, pageSize, user.UserId)
+		tmpResult, tmpTotal, tmpErr := services.EsMultiMatchFunctionScoreQueryTimeSort(indexName, keyWord, startSize, 100, user.UserId)
 		result = tmpResult
 		total = tmpTotal
 		err = tmpErr

+ 2 - 2
models/tactics.go

@@ -90,7 +90,7 @@ func GetTacticsList2(endDate string) (list []*Tactics2, err error) {
 			INNER JOIN article_content AS b ON a.id=b.article_id
 			INNER JOIN article_category AS c ON a.id=c.article_id
 			INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
-			WHERE a.publish_status=1  AND a.publish_date>=? AND d.id IN (7,11,28,32,45,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,95,96) `
+			WHERE a.publish_status=1  AND a.publish_date>=? AND d.id IN (7,9,11,28,32,45,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,93,95,96) `
 	//AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
 	//IN(85,71)
 	_, err = o.Raw(sql, endDate).QueryRows(&list)
@@ -105,7 +105,7 @@ func GetTacticsListAll2() (list []*Tactics2, err error) {
 			INNER JOIN article_content AS b ON a.id=b.article_id
 			INNER JOIN article_category AS c ON a.id=c.article_id
 			INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
-			WHERE a.publish_status=1  AND d.id IN (7,11,28,32,45,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,95,96) `
+			WHERE a.publish_status=1  AND d.id IN (7,9,11,28,32,45,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,93,95,96) `
 	//AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
 	//IN(85,71)
 	_, err = o.Raw(sql).QueryRows(&list)

+ 3 - 3
services/elastic.go

@@ -679,9 +679,9 @@ func EsMultiMatchFunctionScoreQuerySort(indexName, keyWord string, startSize, pa
 			highlight := elastic.NewHighlight()
 			highlight = highlight.PreTags("<font color='red'>").PostTags("</font>")
 			highlight = highlight.Fields(elastic.NewHighlighterField("Title"), elastic.NewHighlighterField("BodyText"))
-			request := client.Search(indexName).Highlight(highlight).Sort("PublishDate", false).From(startSize).Size(pageSize).Query(boolquery)
+			request := client.Search(indexName).Highlight(highlight).Sort("PublishDate", false).From(0).Size(pageSize).Query(boolquery)
 			if orderColumn == "Matching" {
-				request = client.Search(indexName).Highlight(highlight).From(startSize).Size(pageSize).Query(boolquery)
+				request = client.Search(indexName).Highlight(highlight).From(0).Size(pageSize).Query(boolquery)
 			}
 			searchByMatch, err := request.Do(context.Background())
 			if err != nil {
@@ -769,7 +769,7 @@ func EsMultiMatchFunctionScoreQueryTimeSort(indexName, keyWord string, startSize
 	highlight := elastic.NewHighlight()
 	highlight = highlight.Fields(elastic.NewHighlighterField("Title"), elastic.NewHighlighterField("BodyText"))
 	highlight = highlight.PreTags("<font color='red'>").PostTags("</font>")
-	request := client.Search(indexName).Highlight(highlight).Sort("PublishDate", false).Query(boolquery)
+	request := client.Search(indexName).Highlight(highlight).Sort("PublishDate", false).Size(pageSize).Query(boolquery)
 	searchByMatch, err := request.Do(context.Background())
 
 	if searchByMatch != nil {

+ 71 - 21
services/tactics.go

@@ -290,7 +290,7 @@ func SyncTacticsListAddreport() (err error) {
 		}
 	}()
 	fmt.Println("同步数据")
-	indexName := utils.IndexName
+	//indexName := utils.IndexName
 	endDate := time.Now().AddDate(0, 0, -30).Format(utils.FormatDate)
 	list, err := models.GetTacticsList2(endDate)
 	//list, err := models.GetTacticsListAll2()
@@ -337,7 +337,7 @@ func SyncTacticsListAddreport() (err error) {
 		if v.IsReport > 0 {
 			//是否属于策略 策略自动归类
 			//是否属于行业报告 行业报告自动归类
-			if v.CategoryId == 7 || v.CategoryId == 11 || v.CategoryId == 51 || v.CategoryId == 52 || v.CategoryId == 64 || v.CategoryId == 80 || v.CategoryId == 87 {
+			if v.CategoryId == 7 || v.CategoryId == 9 || v.CategoryId == 11 || v.CategoryId == 51 || v.CategoryId == 52 || v.CategoryId == 64 || v.CategoryId == 80 || v.CategoryId == 87 {
 				v.IsClass = 1
 				v.ReportType = 1 //是否属于行业报告
 			} else {
@@ -363,8 +363,8 @@ func SyncTacticsListAddreport() (err error) {
 		expertNumStr, expertContentStr, interviewDateStr := BodyAnalysis(v.Body)
 		var titleNew string
 		titleNew = v.Title
-		// 7资金流向 、11大类资产 、51每日复盘 、80医药周报
-		if v.CategoryId == 7 || v.CategoryId == 11 || v.CategoryId == 51 {
+		// 7资金流向 、11大类资产 、51每日复盘 、80医药周报、9估值研究
+		if v.CategoryId == 7 || v.CategoryId == 11 || v.CategoryId == 51 || v.CategoryId == 9 {
 			if v.UpdateFrequency == "daily" {
 				titleNew = v.Title + "(" + strconv.Itoa(v.PublishDate.Year())[2:len(strconv.Itoa(v.PublishDate.Year()))-0] + v.PublishDate.Format("01") + strconv.Itoa(v.PublishDate.Day()) + ")"
 			} else if v.UpdateFrequency == "weekly" {
@@ -439,25 +439,75 @@ func SyncTacticsListAddreport() (err error) {
 				return err
 			}
 		}
+		////纪要库的数据同步到Es
+		//if v.IsSummary == 1 {
+		//	content := html.UnescapeString(v.Body)
+		//	doc, err := goquery.NewDocumentFromReader(strings.NewReader(content))
+		//	if err != nil {
+		//		fmt.Println("AddCygxArticle Err:", err.Error())
+		//		return err
+		//	}
+		//	doc.Find("a").Each(func(i int, a *goquery.Selection) {
+		//		a.Remove()
+		//	})
+		//	bodyText := doc.Text()
+		//	item := new(ElasticTestArticleDetail)
+		//	item.ArticleId = v.ArticleId
+		//	item.Title = v.Title
+		//	item.BodyText = bodyText
+		//	item.PublishDate = v.PublishDate.Format(utils.FormatDateTime)
+		//	EsAddOrEditData(indexName, strconv.Itoa(v.ArticleId), item)
+		//}
+	}
+	return
+}
+
+//同步策略到Es
+func SyncTacticsListToEs() (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println("同步失败,Err:", err.Error())
+		}
+	}()
+	fmt.Println("同步数据到Es")
+	indexName := utils.IndexName
+	endDate := time.Now().AddDate(0, 0, -30).Format(utils.FormatDate)
+	list, err := models.GetTacticsList(endDate)
+	//list, err := models.GetTacticsListAll()
+	if err != nil {
+		fmt.Println("GetTacticsList Err:", err.Error())
+		return
+	}
+	fmt.Println("list len:", len(list))
+	for k, v := range list {
+		//是否属于纪要库的数据
+		v.Department = "弘则权益研究"
+		fmt.Println(k, v.ArticleId)
+		hh, _ := time.ParseDuration("8h")
+		//pDate := publishDate.Add(hh)
+		v.PublishDate = v.PublishDate.Add(hh)
+		//判断是否已经存在
+		if v.ArticleId < 0 {
+			fmt.Println("AddCygxArticle Err:")
+			return err
+		}
 		//纪要库的数据同步到Es
-		if v.IsSummary == 1 {
-			content := html.UnescapeString(v.Body)
-			doc, err := goquery.NewDocumentFromReader(strings.NewReader(content))
-			if err != nil {
-				fmt.Println("AddCygxArticle Err:", err.Error())
-				return err
-			}
-			doc.Find("a").Each(func(i int, a *goquery.Selection) {
-				a.Remove()
-			})
-			bodyText := doc.Text()
-			item := new(ElasticTestArticleDetail)
-			item.ArticleId = v.ArticleId
-			item.Title = v.Title
-			item.BodyText = bodyText
-			item.PublishDate = v.PublishDate.Format(utils.FormatDateTime)
-			EsAddOrEditData(indexName, strconv.Itoa(v.ArticleId), item)
+		content := html.UnescapeString(v.Body)
+		doc, err := goquery.NewDocumentFromReader(strings.NewReader(content))
+		if err != nil {
+			fmt.Println("AddCygxArticle Err:", err.Error())
+			return err
 		}
+		doc.Find("a").Each(func(i int, a *goquery.Selection) {
+			a.Remove()
+		})
+		bodyText := doc.Text()
+		item := new(ElasticTestArticleDetail)
+		item.ArticleId = v.ArticleId
+		item.Title = v.Title
+		item.BodyText = bodyText
+		item.PublishDate = v.PublishDate.Format(utils.FormatDateTime)
+		EsAddOrEditData(indexName, strconv.Itoa(v.ArticleId), item)
 	}
 	return
 }

+ 5 - 0
services/task.go

@@ -16,8 +16,13 @@ func Task() {
 		//toolbox.StartTask()
 		syncTacticsListAddreport := toolbox.NewTask("syncTacticsListAddreport", "0 */5 * * * *", SyncTacticsListAddreport)
 		toolbox.AddTask("syncTacticsListAddreport", syncTacticsListAddreport)
+
+		//同步纪要库中的Es
+		syncTacticsListToEs := toolbox.NewTask("syncTacticsListToEs", "0 */30 * * * *", SyncTacticsListToEs)
+		toolbox.AddTask("syncTacticsListToEs", syncTacticsListToEs)
 		toolbox.StartTask()
 	}
+
 	fmt.Println("end")
 }