Просмотр исходного кода

Merge branch 'master' into yb_pc2.0

ziwen 2 лет назад
Родитель
Сommit
8b4ad91713

+ 1 - 4
go.mod

@@ -4,7 +4,6 @@ go 1.15
 
 require (
 	github.com/aliyun/aliyun-oss-go-sdk v1.9.8
-	github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20220111164937-1b144fa7b40f // indirect
 	github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f // indirect
 	github.com/fsnotify/fsnotify v1.5.1
 	github.com/gin-gonic/gin v1.7.4
@@ -21,15 +20,13 @@ require (
 	github.com/olivere/elastic/v7 v7.0.31
 	github.com/op/go-logging v0.0.0-20160315200505-970db520ece7
 	github.com/satori/go.uuid v1.2.0 // indirect
-	github.com/shopspring/decimal v1.2.0
 	github.com/silenceper/wechat/v2 v2.0.9
 	github.com/spf13/viper v1.9.0
 	github.com/swaggo/gin-swagger v1.3.3
 	github.com/swaggo/swag v1.7.4
-	github.com/yidane/formula v0.0.0-20210902154546-0782e1736717
 	golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect
 	golang.org/x/image v0.0.0-20190802002840-cff245a6509b
-	golang.org/x/sys v0.0.0-20211107104306-e0b2ad06fe42
+	golang.org/x/sys v0.0.0-20211107104306-e0b2ad06fe42 // indirect
 	golang.org/x/text v0.3.7 // indirect
 	gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
 	gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df

+ 1 - 0
models/response/classify.go

@@ -13,6 +13,7 @@ type ClassifyListItem struct {
 	HomeImgUrl         string `json:"home_img_url"`
 	Stage              int    `description:"期数" json:"stage"`
 	ProductName        string `json:"product_name"`
+	VipTitle		   string `json:"vip_title"`
 }
 
 type ClassifyDetail struct {

+ 1 - 1
models/tables/rddp/classify/query.go

@@ -58,7 +58,7 @@ func GetByClassifyId(id int) (item *Classify, err error) {
 // GetListByPid 根据分类名称查找专栏列表
 func GetListByPid(pid int) (list []*Classify, err error) {
 	err = global.MYSQL["rddp"].Model(Classify{}).
-		Select("id, classify_name, parent_id, report_author, author_descript, home_img_url").
+		Select("id, classify_name, parent_id, report_author, author_descript, home_img_url, vip_title").
 		Where("parent_id = ? AND is_show = 1 ", pid).Order("sort asc, id asc").Scan(&list).Error
 	if err == utils.ErrNoRow {
 		err = nil

+ 9 - 0
services/elastic/report.go

@@ -191,6 +191,14 @@ func ReportListSearch(keyWord string, classifyIdFirst int, classifyIdSeconds []i
 				},
 			},
 		},
+		map[string]interface{}{
+			"match": map[string]interface{}{
+				"ClassifyNameSecond": map[string]interface{}{
+					"query": keyWord,
+					"boost": 2,
+				},
+			},
+		},
 		map[string]interface{}{
 			"match_phrase": map[string]interface{}{
 				"Title": map[string]interface{}{
@@ -255,6 +263,7 @@ func ReportListSearch(keyWord string, classifyIdFirst int, classifyIdSeconds []i
 			"Title":map[string]interface{}{},
 			"Abstract":map[string]interface{}{},
 			"StageStr":map[string]interface{}{},
+			"ClassifyNameSecond":map[string]interface{}{},
 		},
 		"pre_tags" : "<span style=\"color:#E3B377\">",
 		"post_tags": "</span>",

+ 1 - 0
services/report/classify.go

@@ -73,6 +73,7 @@ func GetClassListByClassifyId(user user.UserInfo, classifyIdFirst int) (list []*
 		temp.ReportAuthor = item.ReportAuthor
 		temp.HomeImgUrl = item.HomeImgUrl
 		temp.ClassifyNameSecond = item.ClassifyName
+		temp.VipTitle = item.VipTitle
 		if classifyInfo.ClassifyName == "权益研报" {
 			temp.ProductName = "权益"
 		} else {

+ 19 - 1
services/report/report.go

@@ -682,7 +682,12 @@ func GetReportList(user user.UserInfo, keyWord string, classifyIdFirst, classify
 				temp.ClassifyNameFirst = reportItem.ClassifyNameFirst
 				temp.ClassifyIdSecond = reportItem.ClassifyIdSecond
 				temp.ClassifyNameSecond = reportItem.ClassifyNameSecond
+				if len(v.Highlight["ClassifyNameSecond"]) > 0 {
+					temp.ClassifyNameSecond = v.Highlight["ClassifyNameSecond"][0]
+				}
 				temp.Abstract = reportItem.Abstract
+				stageInt, _ := strconv.Atoi(reportItem.StageStr)
+				temp.Stage = stageInt
 				temp.StageStr = reportItem.StageStr
 				temp.Title = reportItem.Title
 				temp.PublishTime, err = time.Parse("2006-01-02 15:04:05", reportItem.PublishTime)
@@ -738,6 +743,15 @@ func GetReportList(user user.UserInfo, keyWord string, classifyIdFirst, classify
 				return
 			}
 		}
+		// 以下分类图标特殊处理 =_=!
+		reportImgMap := map[string]string{
+			"晨报": "report_list_chen.png",
+			"周报": "report_list_zhou.png",
+			"月报": "report_list_yue.png",
+			"大事点评": "report_list_dashidianping.png",
+			"会议纪要": "report_list_huiyijiyao.png",
+			"年报合集": "report_list_nianbaoheji.png",
+		}
 		for _, reportInfo := range list {
 			reportItem := new(response.ReportListItem)
 			reportItem.ReportId = reportInfo.Id
@@ -758,12 +772,16 @@ func GetReportList(user user.UserInfo, keyWord string, classifyIdFirst, classify
 				stageStr = strconv.Itoa(reportInfo.Stage)
 			}
 			reportItem.TitleInfo = fmt.Sprintf("【第%s期|FICC|%s】", stageStr, reportItem.ClassifyNameSecond)
+			trimClassifyNameSecond := utils.TrimHtml(reportInfo.ClassifyNameSecond)
 			if reportInfo.ClassifyNameFirst == "晨报" || reportInfo.ClassifyNameFirst == "周报" || classifyIdSecond > 0 {
 				reportItem.ReportImgUrl = utils.ALIYUN_YBIMG_HOST + reportImgUrl
 				reportItem.TitleInfo = fmt.Sprintf("【第%s期|FICC|%s】", stageStr, reportItem.ClassifyNameFirst)
-			} else if url, ok := permissionImageMap[reportInfo.ClassifyNameSecond]; ok {
+			} else if url, ok := permissionImageMap[trimClassifyNameSecond]; ok {
 				reportItem.ReportImgUrl = utils.ALIYUN_YBIMG_HOST + url
 			}
+			if img, ok := reportImgMap[reportInfo.ClassifyNameFirst]; ok {
+				reportItem.ReportImgUrl = utils.ALIYUN_YBIMG_HOST + img
+			}
 
 			if classifyParent.ClassifyName == "晨报" && productAuthOk {
 				// 查询当前晨报的所有音频