Procházet zdrojové kódy

重点公司,小程序和后台中,公司对应的资源包和综述报告,都做成实时更新

xingzai před 2 roky
rodič
revize
87f518f13a
3 změnil soubory, kde provedl 49 přidání a 2 odebrání
  1. 2 2
      controllers/report_selection.go
  2. 14 0
      models/article.go
  3. 33 0
      services/article.go

+ 2 - 2
controllers/report_selection.go

@@ -2,7 +2,6 @@ package controllers
 
 import (
 	"encoding/json"
-	"fmt"
 	"hongze/hongze_cygx/models"
 	"hongze/hongze_cygx/services"
 	"hongze/hongze_cygx/utils"
@@ -73,7 +72,6 @@ func (this *ReportSelectionController) Detail() {
 	if detail.VisibleRange == 1 || user.CompanyId == utils.HZ_COMPANY_ID {
 		resp.IsShow = true
 	}
-	fmt.Println(resp.IsShow)
 	resp.HasPermission = hasPermission
 	if hasPermission != 1 || !resp.IsShow {
 		br.Ret = 200
@@ -86,6 +84,7 @@ func (this *ReportSelectionController) Detail() {
 		articleIdLink, _ := services.GetReportLinkToArticleid(detail.ReportLink)
 		detail.CeLueArticleId = articleIdLink
 	}
+	articleStockMap, _ := services.GetArticleStockMap()
 	detail.PublishDate = utils.StrTimeToTime(detail.PublishDate).Format("2006-01-02")
 	existMap := make(map[int]int)
 	var items []*models.ReportSelectionChartPermission
@@ -130,6 +129,7 @@ func (this *ReportSelectionController) Detail() {
 						br.ErrMsg = "获取信息失败,Err:" + err.Error()
 						return
 					}
+					listSonLog[k2].OverviewArticleId = articleStockMap[v2.SubjectName]
 					listSonLog[k2].List = listIndustrial
 					if v2.Label != "" {
 						v2.CompanyLabel = strings.Split(v2.Label, "{|}")

+ 14 - 0
models/article.go

@@ -708,3 +708,17 @@ WHERE
 type SummaryArticleStockResp struct {
 	List []*SummaryArticleStock
 }
+
+// 综述报告
+func GetArticleStock() (items []*SummaryArticleStock, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT
+			stock,article_id
+		FROM
+			cygx_article AS art 
+		WHERE
+			1 = 1 
+			AND type_name = '综述报告' `
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}

+ 33 - 0
services/article.go

@@ -1989,3 +1989,36 @@ func GetReportLinkToArticleid(reportLink string) (articleId int, err error) {
 	}
 	return
 }
+
+//func init() {
+//	GetArticleStockMap()
+//}
+
+// GetArticleStockMap 获取个股标签所对应的文章ID
+func GetArticleStockMap() (mapResp map[string]int, err error) {
+	defer func() {
+		if err != nil {
+			go utils.SendAlarmMsg("获取个股标签所对应的文章ID失败"+err.Error(), 2)
+		}
+	}()
+	list, err := models.GetArticleStock()
+	if err != nil && err.Error() != utils.ErrNoRow() {
+		return
+	}
+	mapResp = make(map[string]int, 0)
+	if len(list) > 0 {
+		//一对一精准匹配
+		for _, v := range list {
+			sliceSubjects := strings.Split(v.Stock, "/")
+			if len(sliceSubjects) > 0 {
+				for _, vSubject := range sliceSubjects {
+					sliceKuohao := strings.Split(vSubject, "(")           //过滤括号
+					sliceXiahuaxian := strings.Split(sliceKuohao[0], "-") //过滤下划线
+					subject := sliceXiahuaxian[0]
+					mapResp[subject] = v.ArticleId
+				}
+			}
+		}
+	}
+	return
+}