|
@@ -2971,9 +2971,115 @@ func (this *ReportController) SearchReportAndResource() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- for _, v2 := range list {
|
|
|
- if mapHistroyArticleId[v2.ArticleId] == 0 && user.CreatedTime.Before(utils.StrDateToTime(v.PublishDate)) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrDateToTime(v.PublishDate)) {
|
|
|
- listHzResource[k].IsRed = true
|
|
|
+ mapUPdateTime := make(map[int]string)
|
|
|
+ //获取这些产业下最新更新的文章
|
|
|
+
|
|
|
+ //时间线的更新时间
|
|
|
+ // maptimelineUPdateTime := make(map[int]string)
|
|
|
+ listtimelinePublishdate, err := models.GetTimeLineReportIndustrialPublishdateList(industrialIdArr)
|
|
|
+ if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, v := range listtimelinePublishdate {
|
|
|
+ if mapUPdateTime[v.IndustrialManagementId] != "" {
|
|
|
+ if utils.StrTimeToTime(v.PublishDate).After(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) {
|
|
|
+ mapUPdateTime[v.IndustrialManagementId] = v.PublishDate
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //mapHistroyArticleId := make(map[int]int)
|
|
|
+
|
|
|
+ //if userId > 0 {
|
|
|
+ // listArticleHistory, e := models.GetUserToArticleHistory(userId, articleIdArr)
|
|
|
+ // if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ // err = errors.New("获取产业关联的视频失败,GetindustryVideo " + e.Error())
|
|
|
+ // return
|
|
|
+ // }
|
|
|
+ // for _, v := range listArticleHistory {
|
|
|
+ // mapHistroyArticleId[v.ArticleId] = v.ArticleId
|
|
|
+ // }
|
|
|
+ //}
|
|
|
+ var industrialIds string
|
|
|
+ for _, id := range industrialIdArr {
|
|
|
+ industrialIds += strconv.Itoa(id) + ","
|
|
|
+ }
|
|
|
+ industrialIds = strings.TrimRight(industrialIds, ",")
|
|
|
+ articleList, err := models.GetReportIndustrialReadNumList(user.UserId, industrialIds, user.CreatedTime)
|
|
|
+ mapHistroyindustrialId := make(map[int]int)
|
|
|
+ for _, v := range articleList {
|
|
|
+ mapHistroyindustrialId[v.IndustrialManagementId] = v.Readnum
|
|
|
+ }
|
|
|
+ //nowTime := time.Now().Local()
|
|
|
+ //threeMonBefore := nowTime.AddDate(0, -3, 0)
|
|
|
+
|
|
|
+ //查询用户今天是否看过时间线
|
|
|
+ //haveMorningMeeting := false
|
|
|
+ //var morningMeetingTime string
|
|
|
+ recrodList, err := models.GetTimeLineRecordAllCount(user.UserId, time.Now().Format(utils.FormatDate))
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var industrialManagementIdstr string
|
|
|
+ industrialIdMap := make(map[string]time.Time)
|
|
|
+ for _, v := range recrodList {
|
|
|
+ industrialManagementIdstr = strings.TrimLeft(v.Parameter, "PageSize=10&CurrentIndex=1&CategoryId=99999&IndustrialManagementId=")
|
|
|
+ if createTime, ok := industrialIdMap[industrialManagementIdstr]; ok{
|
|
|
+ if createTime.Before(v.CreateTime) {
|
|
|
+ industrialIdMap[industrialManagementIdstr] = v.CreateTime
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ industrialIdMap[industrialManagementIdstr] = v.CreateTime
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ mmList, err := models.GetCygxMorningMeetingReviewsListByIndustrialIds(industrialIds)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ morningMeetingTimeMap := make(map[int]time.Time)
|
|
|
+ for _, v := range mmList {
|
|
|
+ morningMeetingTimeMap[v.IndustryId] = v.CreateTime
|
|
|
+ }
|
|
|
+ timeLineRedMap := make(map[int]bool, 0)
|
|
|
+
|
|
|
+ for _, industrialId := range industrialIdArr {
|
|
|
+ if createTime, ok := industrialIdMap[strconv.Itoa(industrialId)]; ok{
|
|
|
+ if createTime.Before(morningMeetingTimeMap[industrialId]) {
|
|
|
+ timeLineRedMap[industrialId] = true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for k, v := range list {
|
|
|
+ list[k].UpdateTime = utils.TimeRemoveHms(mapUPdateTime[v.IndustrialManagementId])
|
|
|
+ if user.UserId > 0 {
|
|
|
+ //如果文章没有阅读,而且,文章的发布时间晚于项目的上线时间,而且文章的发布时间晚于用户的注册时间,就进行标红处理
|
|
|
+ if mapHistroyindustrialId[v.IndustrialManagementId] == 0 || timeLineRedMap[v.IndustrialManagementId] {
|
|
|
+ if user.CreatedTime.Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) {
|
|
|
+ list[k].IsRed = true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) {
|
|
|
+ list[k].IsRed = true
|
|
|
+ }
|
|
|
+ list[k].IsFollow = 0
|
|
|
+ }
|
|
|
+
|
|
|
+ list[k].UpdateTime = utils.TimeRemoveHms(mapUPdateTime[v.IndustrialManagementId])
|
|
|
+ if user.UserId > 0 {
|
|
|
+ //如果文章没有阅读,而且,文章的发布时间晚于项目的上线时间,而且文章的发布时间晚于用户的注册时间,就进行标红处理
|
|
|
+ if mapHistroyindustrialId[v.IndustrialManagementId] == 0 || timeLineRedMap[v.IndustrialManagementId] {
|
|
|
+ if user.CreatedTime.Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) {
|
|
|
+ list[k].IsRed = true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(mapUPdateTime[v.IndustrialManagementId])) {
|
|
|
+ list[k].IsRed = true
|
|
|
+ }
|
|
|
+ list[k].IsFollow = 0
|
|
|
}
|
|
|
}
|
|
|
|