Ver Fonte

同步路演精华

xingzai há 3 anos atrás
pai
commit
42c53c1702
4 ficheiros alterados com 109 adições e 1 exclusões
  1. 11 0
      controllers/report.go
  2. 50 0
      models/article.go
  3. 1 1
      models/report.go
  4. 47 0
      services/task.go

+ 11 - 0
controllers/report.go

@@ -1410,6 +1410,9 @@ func (this *ReportController) ResearchDetail() {
 					if v3.VideoUrl != "" {
 						listThird[k3].IsHaveVideo = true
 					}
+					if v3.ReportLink == "0" {
+						listThird[k3].ReportLink = ""
+					}
 				}
 			}
 		}
@@ -1512,6 +1515,11 @@ func (this *ReportController) MinutesDetail() {
 		}
 		if len(listSonLog) > 0 {
 			listLog[k].List = listSonLog
+			for k2, v2 := range listSonLog {
+				if v2.ReportLink == "0" {
+					listSonLog[k2].ReportLink = ""
+				}
+			}
 		}
 	}
 	historyRecord := new(models.CygxReportHistoryRecord)
@@ -1585,6 +1593,9 @@ func (this *ReportController) RoadshowDetail() {
 		detail.Abstract, _ = services.GetReportContentTextSub(detail.Abstract)
 		detail.PublishDate = utils.StrTimeToTime(detail.PublishDate).Format("2006-01-02")
 		detail.VideoPlaySeconds = utils.Mp3Time(detail.VideoPlaySeconds)
+		if detail.ReportLink == "0" {
+			detail.ReportLink = ""
+		}
 		if companyPermission == "" {
 			if applyCount > 0 {
 				hasPermission = 5

+ 50 - 0
models/article.go

@@ -30,6 +30,16 @@ type CygxArticle struct {
 	ReportType       int    `description:"报告类型,1行业报告,2产业报告,0无"`
 	FileLink         string `description:"下载预览链接"`
 	MatchTypeName    string `description:"匹配类型"`
+
+	Periods          string `description:"期数"`
+	ReportLink       string `description:"报告链接"`
+	ArticleType      string `description:"文章类型 文章类型,lyjh:路演精华 "`
+	HavePublish      int    `description:"是否发布过,1是 ,0 否"`
+	Source           int    `description:"来源 0策略平台同步,1小程序后台添加"`
+	SellerAndMobile  string `description:"销售和手机号"`
+	VideoUrl         string `description:"音频文件URL"`
+	VideoName        string `description:"音频文件名称"`
+	VideoPlaySeconds string `description:"音频播放时长"`
 }
 
 type CygxArticleEs struct {
@@ -422,3 +432,43 @@ WHERE
 	err = o.Raw(sql, uid, uid, articleId).QueryRow(&item)
 	return
 }
+
+//日度点评的数据同步
+type ReportDetail struct {
+	Id                 int    `orm:"column(id)" description:"报告Id"`
+	AddType            int    `description:"新增方式:1:新增报告,2:继承报告"`
+	ClassifyIdFirst    int    `description:"一级分类id"`
+	ClassifyNameFirst  string `description:"一级分类名称"`
+	ClassifyIdSecond   int    `description:"二级分类id"`
+	ClassifyNameSecond string `description:"二级分类名称"`
+	Title              string `description:"标题"`
+	Abstract           string `description:"摘要"`
+	Author             string `description:"作者"`
+	Frequency          string `description:"频度"`
+	CreateTime         string `description:"创建时间"`
+	ModifyTime         string `description:"修改时间"`
+	State              int    `description:"1:未发布,2:已发布"`
+	PublishTime        string `description:"发布时间"`
+	Stage              int    `description:"期数"`
+	MsgIsSend          int    `description:"消息是否已发送,0:否,1:是"`
+	Content            string `description:"内容"`
+	VideoUrl           string `description:"音频文件URL"`
+	VideoName          string `description:"音频文件名称"`
+	VideoPlaySeconds   string `description:"音频播放时长"`
+	ContentSub         string `description:"内容前两个章节"`
+}
+
+func GetReportList() (items []*ReportDetail, err error) {
+	o := orm.NewOrm()
+	o.Using("rddp")
+	sql := `SELECT * FROM report WHERE  classify_id_second = '57'`
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}
+
+func GetMaxArticleIdInfo() (item *ArticleDetail, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM cygx_article   ORDER BY article_id desc  LIMIT 1`
+	err = o.Raw(sql).QueryRow(&item)
+	return
+}

+ 1 - 1
models/report.go

@@ -237,7 +237,7 @@ type ReportDetailRoadshow struct {
 	Abstract         string `description:"摘要"`
 	Body             string `description:"内容"`
 	CategoryName     string `description:"行业名称"`
-	ReportLink       string `description:"报告链接"`
+	ReportLink       string `orm:"column(link_article_id)"description:"报告链接"`
 }
 
 type RoadshowDetailResp struct {

+ 47 - 0
services/task.go

@@ -63,6 +63,8 @@ func Task() {
 	//task.AddTask("editUserOutboundMobile", editUserOutboundMobile)
 
 	//IndustrialArticleNum()
+
+	//GetAddpArticle() //同步日度点评数据
 	task.StartTask()
 	fmt.Println("end")
 }
@@ -359,3 +361,48 @@ type ElasticTestArticleDetailV4 struct {
 	IsSummary   int    `description:"是否属于纪要库"`
 	IsReport    int    `description:"是否属于报告"`
 }
+
+func GetAddpArticle() {
+	list, err := models.GetReportList()
+	for _, v := range list {
+		var articleId int
+		maxArticleIdArticleInfo, errMax := models.GetMaxArticleIdInfo()
+		if errMax != nil {
+			fmt.Println(errMax)
+			return
+		}
+		articleId = maxArticleIdArticleInfo.ArticleId + 1
+		item := new(models.CygxArticle)
+		item.Title = v.Title
+		item.ArticleId = articleId
+		item.SellerAndMobile = v.Author
+		item.PublishDate = v.PublishTime
+		item.Abstract = v.Abstract
+		item.Body = v.Content
+		item.BodyText, _ = GetReportContentTextSub(v.Content)
+		item.IsReport = 1
+		item.Source = 1
+		item.ArticleIdMd5 = utils.MD5(strconv.Itoa(articleId))
+		item.Department = "弘则产品组"
+		item.ArticleType = "lyjh"
+		item.IsClass = 1
+		item.CreateDate = v.CreateTime
+		item.UpdateFrequency = "unknow"
+
+		item.CategoryId = 100 // 100是路演精华对应ID
+		item.SubCategoryName = "路演精华"
+		item.HavePublish = 1
+		item.PublishStatus = 1
+		item.Periods = strconv.Itoa(v.Stage)
+		item.VideoUrl = v.VideoUrl
+		item.VideoName = v.VideoName
+		item.VideoPlaySeconds = v.VideoPlaySeconds
+		newId, _ := models.AddCygxArticles(item)
+		fmt.Println(articleId)
+		fmt.Println(newId)
+		fmt.Println(item.ArticleIdMd5)
+	}
+	fmt.Println(err)
+	fmt.Println(list)
+
+}