Browse Source

no message

xingzai 1 year ago
parent
commit
6a8f478ba5

+ 6 - 8
controllers/micro_roadshow.go

@@ -95,7 +95,7 @@ func (this *MicroRoadShowController) List() {
 		} else if item.VideoId > 0 {
 			mapvideoIds[item.VideoId] = item.VideoId
 		} else if item.ActivityVideoId > 0 {
-			mapactivityVideoIds[item.ActivityVoiceId] = item.ActivityVoiceId
+			mapactivityVideoIds[item.ActivityVideoId] = item.ActivityVideoId
 		}
 	}
 
@@ -321,7 +321,6 @@ func (this *MicroRoadShowController) CommentAdd() {
 			br.ErrMsg = "操作失败 ,更新活动音频留言次数失败:" + strconv.Itoa(sourceId)
 			return
 		}
-		//resourceId = activityVoiceInfo.ActivityId
 	} else if sourceType == 2 {
 		activityInfo, _ := models.GetCygxActivityVideoByActivityId(sourceId)
 		if activityInfo == nil {
@@ -337,7 +336,6 @@ func (this *MicroRoadShowController) CommentAdd() {
 			br.ErrMsg = "操作失败 ,更新活动视频留言次数失败:" + strconv.Itoa(sourceId)
 			return
 		}
-		//resourceId = activityInfo.ActivityId
 	} else if sourceType == 3 {
 		item.VideoId = sourceId
 		microVideo, e := models.GetMicroRoadshowVideoById(sourceId)
@@ -459,13 +457,13 @@ func (this *MicroRoadShowController) Collect() {
 		br.Success = true
 		br.Data = resp
 	} else if req.SourceType == 2 {
-		_, err := models.GetCygxActivityVideoById(sourceId)
+		detail, err := models.GetCygxActivityVideoByActivityIdInfo(sourceId)
 		if err != nil {
 			br.Msg = "获取信息失败"
 			br.ErrMsg = "获取信息失败,Err:" + err.Error()
 			return
 		}
-		count, err := models.GetActivityVideoCollectCount(uid, sourceId)
+		count, err := models.GetActivityVideoCollectCount(uid, detail.Id)
 		if err != nil {
 			br.Msg = "获取数据失败!"
 			br.ErrMsg = "获取数据失败,Err:" + err.Error()
@@ -474,7 +472,7 @@ func (this *MicroRoadShowController) Collect() {
 		resp := new(models.ArticleCollectResp)
 		if count <= 0 {
 			item := new(models.CygxArticleCollect)
-			item.ActivityVideoId = sourceId
+			item.ActivityVideoId = detail.Id
 			item.UserId = uid
 			item.CreateTime = time.Now()
 			item.ModifyTime = time.Now()
@@ -494,7 +492,7 @@ func (this *MicroRoadShowController) Collect() {
 			// 文章收藏消息发送
 			//go services.ArticleUserRemind(user, detail, 2)
 		} else {
-			err = models.RemoveActivityVideoCollect(uid, sourceId)
+			err = models.RemoveActivityVideoCollect(uid, detail.Id)
 			if err != nil {
 				br.Msg = "取消收藏失败"
 				br.ErrMsg = "取消收藏失败,Err:" + err.Error()
@@ -503,7 +501,7 @@ func (this *MicroRoadShowController) Collect() {
 			br.Msg = "已取消收藏"
 			resp.Status = 2
 		}
-		collectTotal, err := models.GetActivityVideoCollectUsersCount(sourceId)
+		collectTotal, err := models.GetActivityVideoCollectUsersCount(detail.Id)
 		if err != nil {
 			br.Msg = "获取数据失败"
 			br.ErrMsg = "获取数据失败,Err:" + err.Error()

+ 32 - 0
models/activity_video.go

@@ -122,6 +122,38 @@ func GetActivityVideoActivityIds() (activityIds string, err error) {
 	return
 }
 
+type CygxActivityVideoDetailResp struct {
+	ActivityId          int    ` description:"活动ID"`
+	Id                  int    `description:"视频ID"`
+	Title               string `description:"标题"`
+	ResourceUrl         string `description:"链接"`
+	BackgroundImg       string `description:"背景图"`
+	PlaySeconds         int    `description:"音视频时长"`
+	ChartPermissionId   int    `description:"行业ID"`
+	ChartPermissionName string `description:"行业名称"`
+	Type                int    `description:"类型: 1-音频; 2-活动视频; 3-产业视频 、 4-系列问答视频"`
+}
+
+// GetCygxActivityVideoById 获取活动视频
+func GetCygxActivityVideoByActivityIdInfo(activityId int) (item *CygxActivityVideoDetailResp, err error) {
+	sql := `SELECT
+			v.video_id AS id,
+			v.video_name AS title,
+			v.video_url AS resource_url,
+			v.video_duration AS play_seconds,
+			v.activity_id,
+			a.chart_permission_id,
+			a.chart_permission_name
+		FROM
+			cygx_activity_video AS v
+			INNER JOIN cygx_activity AS a  ON  v.activity_id = a.activity_id
+		WHERE
+			 v.activity_id = ? 
+			LIMIT 1 `
+	err = orm.NewOrm().Raw(sql, activityId).QueryRow(&item)
+	return
+}
+
 func UpdateActivityVideoCommentNum(activityId int) (err error) {
 	sql := `UPDATE cygx_activity_video SET comment_num = comment_num+1 WHERE activity_id = ?  `
 	o := orm.NewOrm()

+ 46 - 15
services/askserie_video.go

@@ -11,10 +11,11 @@ import (
 
 // 记录用户活动音频播放记录
 func AddAskserieVideoHistoryRecord(user *models.WxUserItem, askserieVideoId, playSeconds int) {
-	key := "CYGX_VIDEO_HISTORY" + utils.CYGX_OBJ_ASKSERIEVIDEO + strconv.Itoa(askserieVideoId) + "_" + strconv.Itoa(user.UserId)
-	if utils.Rc.IsExist(key) && playSeconds == 0 {
+	if playSeconds == 0 {
 		return
 	}
+	key := utils.CYGX_VIDEO_HISTORY_KEY + utils.CYGX_OBJ_ASKSERIEVIDEO + strconv.Itoa(askserieVideoId) + "_" + strconv.Itoa(user.UserId)
+
 	var err error
 	defer func() {
 		if err != nil {
@@ -30,7 +31,7 @@ func AddAskserieVideoHistoryRecord(user *models.WxUserItem, askserieVideoId, pla
 	item.Email = user.Email
 	item.CompanyId = user.CompanyId
 	item.CompanyName = user.CompanyName
-	item.CreateTime = time.Now()
+	item.CreateTime = time.Now().Add(-time.Duration(playSeconds) * time.Second) //减去观看时长当做,阅读时间
 	item.ModifyTime = time.Now()
 	item.RegisterPlatform = utils.REGISTER_PLATFORM
 	sellerItem, e := models.GetSellerByCompanyIdCheckFicc(user.CompanyId, 2)
@@ -41,34 +42,64 @@ func AddAskserieVideoHistoryRecord(user *models.WxUserItem, askserieVideoId, pla
 	if sellerItem != nil {
 		item.SellerName = sellerItem.RealName
 	}
-	if playSeconds != 0 {
-		lastItem, e := models.GetLastCygxAskserieVideoHistoryRecord(askserieVideoId, user.UserId)
+
+	if !utils.Rc.IsExist(key) {
+		//添加记录
+		e = models.AddCygxAskserieVideoHistoryRecord(item)
 		if e != nil {
-			err = errors.New("GetLastCygxActivityVideoHistory, Err: " + e.Error())
+			err = errors.New("AddCygxAskserieVideoHistoryRecord, Err: " + e.Error())
 			return
 		}
-		//更新播放时间
-		e = models.UpdateLastCygxAskserieVideoHistoryRecord(strconv.Itoa(playSeconds), lastItem.Id)
+		//播放记录加1
+		e = models.UpdateAskserieVideoCounts(askserieVideoId)
 		if e != nil {
-			err = errors.New("UpdateLastCygxAskserieVideoHistoryRecord, Err: " + e.Error())
+			err = errors.New("UpdateActivityVideoCounts, Err: " + e.Error())
 			return
 		}
 		utils.Rc.Put(key, 1, 10*time.Second)
 	} else {
-		//添加记录
-		e = models.AddCygxAskserieVideoHistoryRecord(item)
+		//更新停留时长
+		lastItem, e := models.GetLastCygxAskserieVideoHistoryRecord(askserieVideoId, user.UserId)
 		if e != nil {
-			err = errors.New("AddCygxAskserieVideoHistoryRecord, Err: " + e.Error())
+			err = errors.New("GetLastCygxActivityVideoHistory, Err: " + e.Error())
 			return
 		}
-		//播放记录加1
-		e = models.UpdateAskserieVideoCounts(askserieVideoId)
+		//更新播放时间
+		e = models.UpdateLastCygxAskserieVideoHistoryRecord(strconv.Itoa(playSeconds), lastItem.Id)
 		if e != nil {
-			err = errors.New("UpdateActivityVideoCounts, Err: " + e.Error())
+			err = errors.New("UpdateLastCygxAskserieVideoHistoryRecord, Err: " + e.Error())
 			return
 		}
 	}
 
+	//if playSeconds != 0 {
+	//	//lastItem, e := models.GetLastCygxAskserieVideoHistoryRecord(askserieVideoId, user.UserId)
+	//	//if e != nil {
+	//	//	err = errors.New("GetLastCygxActivityVideoHistory, Err: " + e.Error())
+	//	//	return
+	//	//}
+	//	////更新播放时间
+	//	//e = models.UpdateLastCygxAskserieVideoHistoryRecord(strconv.Itoa(playSeconds), lastItem.Id)
+	//	//if e != nil {
+	//	//	err = errors.New("UpdateLastCygxAskserieVideoHistoryRecord, Err: " + e.Error())
+	//	//	return
+	//	//}
+	//
+	//} else {
+	//	//添加记录
+	//	e = models.AddCygxAskserieVideoHistoryRecord(item)
+	//	if e != nil {
+	//		err = errors.New("AddCygxAskserieVideoHistoryRecord, Err: " + e.Error())
+	//		return
+	//	}
+	//	//播放记录加1
+	//	e = models.UpdateAskserieVideoCounts(askserieVideoId)
+	//	if e != nil {
+	//		err = errors.New("UpdateActivityVideoCounts, Err: " + e.Error())
+	//		return
+	//	}
+	//}
+
 	return
 }
 

+ 2 - 2
services/cygx_activity_video_history.go

@@ -51,7 +51,7 @@ import (
 // 添加活动视频的播放记录
 func AddActivityVideoHistory(user *models.WxUserItem, activityId, playSeconds int) {
 	// 十分钟之内的合并
-	key := "CYGX_VIDEO_HISTORY" + utils.CYGX_OBJ_ACTIVITYVIDEO + strconv.Itoa(activityId) + "_" + strconv.Itoa(user.UserId)
+	key := utils.CYGX_VIDEO_HISTORY_KEY + utils.CYGX_OBJ_ACTIVITYVIDEO + strconv.Itoa(activityId) + "_" + strconv.Itoa(user.UserId)
 	if utils.Rc.IsExist(key) && playSeconds == 0 {
 		return
 	}
@@ -124,7 +124,7 @@ func AddActivityVideoHistory(user *models.WxUserItem, activityId, playSeconds in
 
 // 记录用户活动音频播放记录
 func AddActivityVoiceHistory(user *models.WxUserItem, activityId, playSeconds int) {
-	key := "CYGX_VIDEO_HISTORY" + utils.CYGX_OBJ_ACTIVITYVOICE + strconv.Itoa(activityId) + "_" + strconv.Itoa(user.UserId)
+	key := utils.CYGX_VIDEO_HISTORY_KEY + utils.CYGX_OBJ_ACTIVITYVOICE + strconv.Itoa(activityId) + "_" + strconv.Itoa(user.UserId)
 	if utils.Rc.IsExist(key) && playSeconds == 0 {
 		return
 	}

+ 2 - 2
services/micro_roadshow.go

@@ -776,7 +776,7 @@ func GetMicroRoadShowMycollectV12(pageSize, currentIndex int, audioIds, activity
 		} else if item.VideoId > 0 {
 			mapvideoIds[item.VideoId] = item.VideoId
 		} else if item.ActivityVideoId > 0 {
-			mapactivityVideoIds[item.ActivityVoiceId] = item.ActivityVoiceId
+			mapactivityVideoIds[item.ActivityVideoId] = item.ActivityVideoId
 		}
 	}
 
@@ -970,7 +970,7 @@ func MicroRoadshowVideoUserRmind(user *models.WxUserItem, videoId int) (err erro
 
 // 记录产业视频播放记录
 func AddMicroRoadshowVideoRecord(user *models.WxUserItem, videoId, playSeconds int) {
-	key := "CYGX_VIDEO_HISTORY" + utils.CYGX_OBJ_ROADSHOW + strconv.Itoa(videoId) + "_" + strconv.Itoa(user.UserId)
+	key := utils.CYGX_VIDEO_HISTORY_KEY + utils.CYGX_OBJ_ROADSHOW + strconv.Itoa(videoId) + "_" + strconv.Itoa(user.UserId)
 	if utils.Rc.IsExist(key) && playSeconds == 0 {
 		return
 	}

+ 3 - 2
utils/constants.go

@@ -246,8 +246,9 @@ const (
 )
 
 const (
-	CYGX_YANXUAN_SPECIAL = "研选专栏" //用户阅读数据
-	CYGX_YANXUAN_ARTICLE = "买方研选" //用户阅读数据
+	CYGX_YANXUAN_SPECIAL   = "研选专栏"                   //用户阅读数据
+	CYGX_YANXUAN_ARTICLE   = "买方研选"                   //用户阅读数据
+	CYGX_VIDEO_HISTORY_KEY = "CYGX_VIDEO_HISTORY_XCX" //路演播放Key 小程序、web端
 )
 
 const (