xingzai 3 år sedan
förälder
incheckning
38967a7607
1 ändrade filer med 1 tillägg och 490 borttagningar
  1. 1 490
      controllers/article.go

+ 1 - 490
controllers/article.go

@@ -18,8 +18,7 @@ import (
 	"hongze/hongze_cygx/services"
 	"hongze/hongze_cygx/utils"
 	"html"
-	//"io"
-	"io/ioutil"
+
 	nhttp "net/http"
 	//"os"
 	"regexp"
@@ -900,491 +899,3 @@ func (this *ArticleController) Pdfwatermark() {
 	br.Msg = "获取成功"
 	br.Data = resp
 }
-
-// @Title 同步策略报告内容
-// @Description 同步策略报告内容接口
-// @Param   ArticleIdMd5   query   int  true       "报告ID"
-// @Success 200 {object} models.ArticleDetailResp
-// @router /look/listApi [get]
-func (this *ArticleCommonController) ListApi() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	url := "https://vmp.hzinsights.com/v2api/articles/mp?take=20&skip=0&publish_status=1"
-	url = ""
-	method := "GET"
-	client := &nhttp.Client{}
-	req, err := nhttp.NewRequest(method, url, nil)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	req.Header.Add("Authorization", "bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkiLCJwaG9uZV9udW1iZXIiOiIxMjM0NTY3ODkiLCJuYW1lIjoi5YW25LuWIiwiZW50cmFuY2UiOiJwYXNzd3dvcmQiLCJpYXQiOjE2MzQ4NzA1OTQsImV4cCI6MTYzNDg3NDE5NH0.tho2L9jsbDPn8ltEGUVDve_nHsh0Kzf6ZrSz0RcZ0ag")
-	res, err := client.Do(req)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	defer res.Body.Close()
-	body, err := ioutil.ReadAll(res.Body)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	var pdfResult models.ArticleResultApi
-	err = json.Unmarshal(body, &pdfResult)
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "Unmarshal,Err:" + err.Error()
-		return
-	}
-	exitMap := make(map[int]int)
-	listMap, err := models.GetArticleApiMap()
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取映射关系失败,Err:" + err.Error()
-		return
-	}
-	//新旧分类 反向隐射
-	for _, v := range listMap {
-		exitMap[v.Id] = v.OldId
-	}
-	listData := pdfResult.Data
-	var list []*models.Tactics2
-	var listAuthor []*models.CygxArticleAuthor
-	for _, v := range listData {
-		if exitMap[v.SeriesId] > 0 {
-			item := new(models.Tactics2)
-			itemAuthor := new(models.CygxArticleAuthor)
-			item.ArticleId = v.ArticleId
-			item.Title = v.Title
-			item.TitleEn = v.TitleEn
-			if v.Frequency == "日度" {
-				item.UpdateFrequency = "daily"
-			} else if v.Frequency == "周度" {
-				item.UpdateFrequency = "weekly"
-			} else if v.Frequency == "月度" {
-				item.UpdateFrequency = "monthly"
-			} else if v.Frequency == "季度" {
-				item.UpdateFrequency = "quarterly"
-			} else if v.Frequency == "年度" {
-				item.UpdateFrequency = "yearly"
-			} else {
-				item.UpdateFrequency = "unknow"
-			}
-			item.CreateDate = v.CreateDate
-			item.PublishDate = v.PublishDate
-			item.PublishStatus = v.PublishStatus
-			item.Body = v.Content.Body
-			item.Abstract = v.Content.Abstract
-			item.CategoryName = v.Industry.Name
-			item.CategoryId = exitMap[v.SeriesId]
-			item.SubCategoryName = v.Series.Name
-			list = append(list, item)
-			itemAuthor.ArticleId = v.ArticleId
-			itemAuthor.Name = v.Author.Name
-			itemAuthor.Mobile = v.Author.PhoneNumber
-			listAuthor = append(listAuthor, itemAuthor)
-		}
-	}
-
-	//同步作者
-	for _, v := range listAuthor {
-		count, err := models.GetActivityAuthorCount(v.ArticleId, v.Mobile)
-		if err != nil {
-			fmt.Println("GetCount Err:", err.Error())
-			return
-		}
-		if count == 0 {
-			_, err := models.AddCygxActivityAuthor(v)
-			if err != nil {
-				fmt.Println("AddCygxActivityAuthor Err:", err.Error())
-				return
-			}
-		}
-	}
-	fmt.Println("同步文章条数:", len(list))
-	listCustomArticle, err := models.GetCustomArticleId() //手动归类的文章,不替换文章类型
-	if err != nil {
-		fmt.Println("GetTacticsList Err:", err.Error())
-		return
-	}
-	listGetMatchTypeName, errMatch := models.GetMatchTypeNamenNotNull() //手动归类的文章,不替换文章类型
-	if errMatch != nil {
-		fmt.Println("GetTacticsList Err:", errMatch.Error())
-		return
-	}
-
-	fmt.Println("list len:", len(list))
-	summaryCategoryIds := "28,32,45,50,57,62,72,74,79,84,86,88,90,93,95,96" //纪要库的文章类型categoty_id
-	listSummary := strings.Split(summaryCategoryIds, ",")
-	noSummaryArticleIds := "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" //非纪要库类型的文章ID
-	listNoSummaryArticleIds := strings.Split(noSummaryArticleIds, ",")
-	listPermission, errper := models.GetPermissionMappingCategoryID()
-	if errper != nil {
-		fmt.Println("GetTacticsList Err:", errper.Error())
-		return
-	}
-	summaryMap := make(map[int]int)
-	for _, vSum := range listSummary {
-		vSumInt, _ := strconv.Atoi(vSum)
-		summaryMap[vSumInt] = 1
-	}
-	for k, v := range list {
-		//同步匹配类型
-		matchTypeName := ""
-		for _, vMatch := range listGetMatchTypeName {
-			if v.CategoryId == vMatch.CategoryId {
-				matchTypeName = vMatch.MatchTypeName
-			}
-		}
-		//是否属于纪要库的数据
-		if _, has := summaryMap[v.CategoryId]; has {
-			v.IsSummary = 1
-		}
-		//排除不属于纪要库类型的文章
-		for _, vArt := range listNoSummaryArticleIds {
-			vArtInt, _ := strconv.Atoi(vArt)
-			if v.ArticleId == vArtInt {
-				v.IsSummary = 0
-			}
-		}
-		for _, vPer := range listPermission {
-			if v.CategoryId == vPer.CategoryId {
-				v.IsReport = 1
-			}
-		}
-		if v.IsReport > 0 {
-			//是否属于策略 策略自动归类
-			//是否属于行业报告 行业报告自动归类
-			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 {
-				v.ReportType = 2 //是否属于产业报告
-			}
-		}
-		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
-		}
-		count, err := models.GetArticleCountById(v.ArticleId)
-		if err != nil && err.Error() != utils.ErrNoRow() {
-			fmt.Println("AddCygxArticle Err:", err.Error())
-			return
-		}
-		v.Body = strings.Replace(v.Body, "http://vmp.hzinsights.com", "https://vmp.hzinsights.com", -1)
-		expertNumStr, expertContentStr, interviewDateStr, fileLink, bodyReturn := services.BodyAnalysis2(v.Body)
-		if strings.Index(v.Body, "报告全文(") > 0 && strings.Index(v.Body, "PDF格式报告下载.pdf") > 0 {
-			v.Body = strings.Replace(v.Body, "报告全文(", "", -1)
-			v.Body = strings.Replace(v.Body, "PDF格式报告下载.pdf", "", -1)
-			v.Body = strings.Replace(v.Body, "):", "", -1)
-		}
-		var titleNew string
-		titleNew = v.Title
-		// 7资金流向 、11大类资产 、51每日复盘 、80医药周报、9估值研究
-		if v.CategoryId == 7 || v.CategoryId == 11 || v.CategoryId == 51 || v.CategoryId == 9 {
-			if v.UpdateFrequency == "daily" {
-				var daystr string
-				daystr = strconv.Itoa(v.PublishDate.Day())
-				if len(daystr) == 1 {
-					daystr = "0" + daystr
-				}
-				titleNew = v.Title + "(" + strconv.Itoa(v.PublishDate.Year())[2:len(strconv.Itoa(v.PublishDate.Year()))-0] + v.PublishDate.Format("01") + daystr + ")"
-			} else if v.UpdateFrequency == "weekly" {
-				titleNew = v.Title + utils.WeekByDate(v.PublishDate)
-			}
-		}
-		if v.CategoryId == 80 {
-			titleNew = v.Title + utils.WeekByDate(v.PublishDate)
-		}
-		if count > 0 {
-			fmt.Println(k, v.ArticleId, "edit")
-			var isCustom bool
-			bodyText, _ := services.GetReportContentTextSub(v.Body)
-			updateParams := make(map[string]interface{})
-			//updateParams["Title"] = v.Title
-			updateParams["Title"] = titleNew
-			updateParams["TitleEn"] = v.TitleEn
-			updateParams["UpdateFrequency"] = v.UpdateFrequency
-			updateParams["CreateDate"] = v.CreateDate
-			updateParams["PublishDate"] = v.PublishDate
-			//updateParams["Body"] = html.EscapeString(v.Body)
-			updateParams["Body"] = html.EscapeString(bodyReturn)
-			updateParams["BodyText"] = bodyText
-			updateParams["Abstract"] = html.EscapeString(v.Abstract)
-			updateParams["CategoryName"] = v.CategoryName
-
-			for _, vCustom := range listCustomArticle {
-				if v.ArticleId == vCustom.ArticleId {
-					fmt.Println("手动归类的文章:" + strconv.Itoa(v.ArticleId))
-					isCustom = true
-				}
-			}
-			if isCustom == false {
-				updateParams["CategoryId"] = v.CategoryId
-				updateParams["MatchTypeName"] = matchTypeName
-				updateParams["IsSummary"] = v.IsSummary
-				updateParams["IsReport"] = v.IsReport
-				updateParams["ReportType"] = v.ReportType
-				updateParams["SubCategoryName"] = v.SubCategoryName
-			}
-			//updateParams["CategoryId"] = v.CategoryId
-			updateParams["PublishStatus"] = v.PublishStatus
-			updateParams["ExpertBackground"] = expertContentStr
-			updateParams["ExpertNumber"] = expertNumStr
-			updateParams["InterviewDate"] = interviewDateStr
-			//updateParams["IsClass"] = v.IsClass
-
-			if v.Department != "弘则权益研究" {
-				v.Department = "弘则权益研究"
-			}
-			updateParams["Department"] = v.Department
-			updateParams["FileLink"] = fileLink
-			whereParam := map[string]interface{}{"article_id": v.ArticleId}
-			err = models.UpdateByExpr(models.CygxArticle{}, whereParam, updateParams)
-			if err != nil {
-				fmt.Println("UpdateByExpr Err:" + err.Error())
-			}
-		} else {
-			fmt.Println(k, v.ArticleId, "add")
-			item := new(models.CygxArticle)
-			articleIdInt := v.ArticleId
-			item.ArticleId = articleIdInt
-			//item.Title = v.Title
-			item.Title = titleNew
-			item.TitleEn = v.TitleEn
-			item.UpdateFrequency = v.UpdateFrequency
-			item.CreateDate = v.CreateDate
-			item.PublishDate = v.PublishDate.Format(utils.FormatDateTime)
-			//item.Body = html.EscapeString(v.Body)
-			item.Body = html.EscapeString(bodyReturn)
-			item.Abstract = html.EscapeString(v.Abstract)
-			item.CategoryName = v.CategoryName
-			item.SubCategoryName = v.SubCategoryName
-			item.CategoryId = v.CategoryId
-			item.PublishStatus = v.PublishStatus
-			item.ExpertBackground = expertContentStr
-			item.ExpertNumber = expertNumStr
-			item.InterviewDate = interviewDateStr
-			item.Department = v.Department
-			item.ArticleIdMd5 = utils.MD5(strconv.Itoa(articleIdInt))
-			item.IsClass = v.IsClass
-			item.IsSummary = v.IsSummary
-			item.IsReport = v.IsReport
-			item.ReportType = v.ReportType
-			item.FileLink = fileLink
-			item.MatchTypeName = matchTypeName
-			_, err = models.AddCygxArticles(item)
-			if err != nil {
-				fmt.Println("AddCygxArticle Err:", err.Error())
-				return
-			}
-		}
-
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = string(body)
-}
-
-// @Title 同步参会记录
-// @Description 获取报告详情接口
-// @Param   ArticleIdMd5   query   int  true       "报告ID"
-// @Success 200 {object} models.ArticleDetailResp
-// @router /look/detaisl [get]
-func (this *ArticleCommonController) Detaisl() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-
-	var condition string
-	fmt.Println(condition)
-	//
-	//list, err := models.GetOfflineMeetingDetailList()
-	//if err != nil {
-	//	br.Msg = "获取失败"
-	//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//	return
-	//}
-	//
-	//for _, v := range list {
-	//	item := new(models.CygxActivityMeetDetailLog)
-	//	item.ActivityId = v.ActivityId
-	//	item.RealName = v.RealName
-	//	item.Mobile = v.Mobile
-	//	item.CompanyName = v.CompanyName
-	//	item.CompanyId = v.CompanyId
-	//	item.CreateTime = v.CreateTime
-	//	newId, err := models.AddCygxActivityMeetDetailLog(item)
-	//	if err != nil {
-	//		br.Msg = "同步失败"
-	//		br.ErrMsg = "新增优化建议失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	fmt.Println(newId)
-	//}
-	//
-	//list, err := models.GetActivityMeetDetailLog()
-	//if err != nil {
-	//	br.Msg = "获取失败"
-	//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//	return
-	//}
-	//fmt.Println(len(list))
-	//for _, v := range list {
-	//	condition = ` AND company_name = '` + v.CompanyName + `' `
-	//	total, err := models.GetActivityMeetDetailLogCount(condition)
-	//	if err != nil {
-	//		br.Msg = "获取失败"
-	//		br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	fmt.Println(v.CompanyName, total)
-	//	err = models.UpdateActivityMeetDetailLog(v.CompanyName, total)
-	//	if err != nil {
-	//		br.Msg = "获取失败"
-	//		br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		return
-	//	}
-	//}
-	//
-	//list1, err := models.ListActivityMeetDetailLogByUser()
-	//
-	//if err != nil {
-	//	br.Msg = "获取失败"
-	//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//	return
-	//}
-	//for _, v := range list1 {
-	//	fmt.Println(v.ActivityName, v.ActivityId)
-	//
-	//	list, err := models.GetActivityMeetDetailLogByMobile(v.ActivityId)
-	//	if err != nil {
-	//		br.Msg = "获取失败"
-	//		br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	for _, v := range list {
-	//		//condition = ` AND mobile = '` + v.Mobile + `' `
-	//		//total, err := models.GetActivityMeetDetailLogCount(condition)
-	//		//if err != nil {
-	//		//	br.Msg = "获取失败"
-	//		//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		//	return
-	//		//}
-	//		//fmt.Println(v.Mobile, total)
-	//		//err = models.UpdateActivityMeetDetailLogByUser(v.Mobile, total)
-	//		//if err != nil {
-	//		//	br.Msg = "获取失败"
-	//		//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		//	return
-	//		//}
-	//		//
-	//		err = models.DeleteActivityMeetDetailLogByUser(v)
-	//		if err != nil {
-	//			fmt.Println(err)
-	//		}
-	//	}
-	//
-	//}
-
-	//list, err := models.GetActivityMeetDetailLogByMobile()
-	//if err != nil {
-	//	br.Msg = "获取失败"
-	//	br.ErrMsg = "获取失败,Err:" + err.Error()
-	//	return
-	//}
-	//for _, v := range list {
-	//	condition = ` AND mobile = '` + v.Mobile + `' `
-	//	total, err := models.GetActivityMeetDetailLogCount(condition)
-	//	if err != nil {
-	//		br.Msg = "获取失败"
-	//		br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	fmt.Println(v.Mobile, total)
-	//	err = models.UpdateActivityMeetDetailLogByUser(v.Mobile, total)
-	//	if err != nil {
-	//		br.Msg = "获取失败"
-	//		br.ErrMsg = "获取失败,Err:" + err.Error()
-	//		return
-	//	}
-	//
-	//}
-
-	resp := new(models.ArticleDetailResp)
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = resp
-}
-
-// @Title 同步策略报告分类
-// @Description 同步策略报告内容接口
-// @Param   ArticleIdMd5   query   int  true       "报告ID"
-// @Success 200 {object} models.ArticleDetailResp
-// @router /look/industry [get]
-func (this *ArticleCommonController) Industry() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	url := "https://vmp.hzinsights.com/v2api/articles/industry"
-	method := "GET"
-	client := &nhttp.Client{}
-	req, err := nhttp.NewRequest(method, url, nil)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	req.Header.Add("Authorization", "bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkiLCJwaG9uZV9udW1iZXIiOiIxMjM0NTY3ODkiLCJuYW1lIjoi5YW25LuWIiwiZW50cmFuY2UiOiJwYXNzd3dvcmQiLCJpYXQiOjE2MzQ4NzA1OTQsImV4cCI6MTYzNDg3NDE5NH0.tho2L9jsbDPn8ltEGUVDve_nHsh0Kzf6ZrSz0RcZ0ag")
-	res, err := client.Do(req)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	defer res.Body.Close()
-	body, err := ioutil.ReadAll(res.Body)
-	if err != nil {
-		fmt.Println(err)
-		return
-	}
-	var pdfResult models.ArticleIndustryApi
-	err = json.Unmarshal(body, &pdfResult)
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "Unmarshal,Err:" + err.Error()
-		return
-	}
-	listData := pdfResult.Data
-	//var list []*models.Tactics2
-	for _, v := range listData {
-		item := new(models.Tactics2)
-		for _, v2 := range v.Series {
-			fmt.Println(v2.Name)
-			item.Body = v2.Name
-			//fmt.Println(v.Name, "+", v2.Name, "+", v2.Id)
-			//fmt.Println(v.Name, "+", v2.Name, "+", v2.Id)
-			//fmt.Println(v.Name, "+", v2.Name, "+", v2.Id)
-		}
-		//list = append(list, item)
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = string(body)
-}