|
@@ -2,9 +2,7 @@ package controllers
|
|
|
|
|
|
import (
|
|
|
"eta/eta_report/models"
|
|
|
- "eta/eta_report/utils"
|
|
|
"html"
|
|
|
- "time"
|
|
|
)
|
|
|
|
|
|
// ReportShareController 报告分享
|
|
@@ -39,6 +37,29 @@ func (this *ReportShareController) Detail() {
|
|
|
}
|
|
|
report.ContentSub = html.UnescapeString(report.ContentSub)
|
|
|
report.Content = html.UnescapeString(report.Content)
|
|
|
+ report.ContentStruct = html.UnescapeString(report.ContentStruct)
|
|
|
+
|
|
|
+ if report.HeadResourceId > 0 {
|
|
|
+ headResource, err := models.GetResourceItemById(report.HeadResourceId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "操作失败"
|
|
|
+ br.ErrMsg = "获取资源库版头失败, Err: " + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ report.HeadImg = headResource.ImgUrl
|
|
|
+ report.HeadStyle = headResource.Style
|
|
|
+ }
|
|
|
+
|
|
|
+ if report.EndResourceId > 0 {
|
|
|
+ endResource, err := models.GetResourceItemById(report.EndResourceId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "操作失败"
|
|
|
+ br.ErrMsg = "获取资源库版头失败, Err: " + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ report.EndImg = endResource.ImgUrl
|
|
|
+ report.EndStyle = endResource.Style
|
|
|
+ }
|
|
|
|
|
|
resp := new(models.ReportShareDetailResp)
|
|
|
// 免责声明
|
|
@@ -65,10 +86,10 @@ func (this *ReportShareController) Detail() {
|
|
|
resp.WatermarkReport = v
|
|
|
}
|
|
|
|
|
|
- // 晨周报
|
|
|
+ // 章节类型的报告
|
|
|
resp.Report = new(models.ReportItem)
|
|
|
reportChapters := make([]*models.ReportChapter, 0)
|
|
|
- if utils.BusinessCode == utils.BusinessCodeRelease && report.HasChapter == 1 {
|
|
|
+ if report.HasChapter == 1 {
|
|
|
// 获取章节内容
|
|
|
chapters, e := models.GetPublishedChapterListByReportId(report.Id)
|
|
|
if e != nil {
|
|
@@ -78,55 +99,22 @@ func (this *ReportShareController) Detail() {
|
|
|
}
|
|
|
|
|
|
if len(chapters) > 0 {
|
|
|
- // 获取更新规则
|
|
|
- researchType := chapters[0].ReportType
|
|
|
- types, e := models.GetAllReportChapterTypeListByResearchType(researchType)
|
|
|
- if e != nil {
|
|
|
- br.Msg = "获取更新规则失败"
|
|
|
- br.ErrMsg = "获取更新规则失败, Err: " + e.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // 调整章节更新
|
|
|
- nowTime := time.Now().Local()
|
|
|
for _, chapter := range chapters {
|
|
|
- stop := false
|
|
|
- for _, rule := range types {
|
|
|
- if rule.ReportChapterTypeId != chapter.TypeId {
|
|
|
- continue
|
|
|
- }
|
|
|
- // 如果被永久暂停更新了
|
|
|
- if rule.Enabled == 0 && chapter.IsEdit == 0 { //该章节已被永久禁用,同时未被操作过
|
|
|
- stop = true
|
|
|
- } else if rule.PauseStartTime != "" && rule.PauseEndTime != "" && rule.PauseStartTime != utils.EmptyDateStr && rule.PauseEndTime != utils.EmptyDateStr {
|
|
|
- startTime, e := time.ParseInLocation(utils.FormatDate, rule.PauseStartTime, time.Local)
|
|
|
- if e != nil {
|
|
|
- br.Msg = "获取更新规则失败"
|
|
|
- br.ErrMsg = "更新规则开始时间转换失败, Err: " + e.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- endTime, e := time.ParseInLocation(utils.FormatDate, rule.PauseEndTime, time.Local)
|
|
|
- if e != nil {
|
|
|
- br.Msg = "获取更新规则失败"
|
|
|
- br.ErrMsg = "更新规则结束时间转换失败, Err: " + e.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- // 暂停更新
|
|
|
- if nowTime.After(startTime) && nowTime.Before(endTime.AddDate(0, 0, 1)) {
|
|
|
- stop = true
|
|
|
- }
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- if !stop {
|
|
|
- chapter.Content = html.UnescapeString(chapter.Content)
|
|
|
- chapter.ContentSub = html.UnescapeString(chapter.ContentSub)
|
|
|
- reportChapters = append(reportChapters, chapter)
|
|
|
- }
|
|
|
+ chapter.Content = html.UnescapeString(chapter.Content)
|
|
|
+ chapter.ContentSub = html.UnescapeString(chapter.ContentSub)
|
|
|
+ reportChapters = append(reportChapters, chapter)
|
|
|
}
|
|
|
}
|
|
|
- report.Abstract = report.Title
|
|
|
+ //report.Abstract = report.Title
|
|
|
}
|
|
|
+
|
|
|
+ // 更新pv
|
|
|
+ if e = models.UpdateReportPv(report.Id); e != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "更新报告pv失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
resp.Report.Report = report
|
|
|
resp.Report.ChapterList = reportChapters
|
|
|
|