Browse Source

no message

zhangchuanxing 3 weeks ago
parent
commit
107f5babc9

+ 1 - 1
models/industrial_activity_group_management.go

@@ -96,7 +96,7 @@ func GetCygxIndustrialActivityGroupManagementList(condition string, pars []inter
 }
 
 // 列表
-func GetIndustrialActivityGroupManagementListByArticleId(activityId int) (items []*IndustrialActivityGroupManagementRep, err error) {
+func GetIndustrialActivityGroupManagementListByActivityId(activityId int) (items []*IndustrialActivityGroupManagementRep, err error) {
 	o := orm.NewOrm()
 	sql := `SELECT
 			m.industry_name 

+ 2 - 2
services/cygx_activity_video_history.go

@@ -102,7 +102,7 @@ func AddActivityVideoHistory(user *models.WxUserItem, activityId, playSeconds in
 	}
 	//设置消息提醒
 	go ActivityVideoUserRmind(user, activityId, 1)
-
+	go ActivityVivoWxUserRaiLabelRedisAdd(activityId, user.UserId, item.CreateTime) // 添加用户播放活动音视频标签到Redis
 	//if !utils.Rc.IsExist(key) {
 	//	//添加记录
 	//	e = models.AddCygxActivityVideoHistory(item)
@@ -230,7 +230,7 @@ func AddActivityVoiceHistory(user *models.WxUserItem, activityId, playSeconds in
 			return
 		}
 	}
-
+	go ActivityVivoWxUserRaiLabelRedisAdd(activityId, user.UserId, item.CreateTime) // 添加用户播放活动音视频标签到Redis
 	//小程序端的回传两次,第一次没有播放时长,第二次有播放时长
 	//if playSeconds != 0 {
 	//	lastItem, e := models.GetLastCygxActivityVoiceHistory(activityId, user.UserId)

+ 132 - 1
services/wx_user_rai_label.go

@@ -87,6 +87,25 @@ func ActivityWxUserRaiLabelRedisAdd(sourceId, uid int, createTime time.Time) (er
 	return
 }
 
+// 添加用户播放活动音视频标签到Redis
+func ActivityVivoWxUserRaiLabelRedisAdd(sourceId, uid int, createTime time.Time) (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			msg := fmt.Sprint("sourceId:", sourceId, "userId:", uid)
+			go utils.SendAlarmMsg("添加用户参加活动标签,写入Redis队列消息失败:"+err.Error()+msg, 2)
+		}
+	}()
+	log := &models.WxUserRaiLabelRedis{UserId: uid, SourceId: sourceId, SourceType: 9, CreateTime: createTime, RegisterPlatform: utils.REGISTER_PLATFORM}
+	if utils.Re == nil {
+		err := utils.Rc.LPush(utils.WX_USER_RAI_LABEL_KEY, log)
+		if err != nil {
+			fmt.Println("ActivityWxUserRaiLabelRedisAdd LPush Err:" + err.Error())
+		}
+	}
+	return
+}
+
 func UpdateWxUserRaiLabelRedis() (err error) {
 	for {
 		//	SourceType       int       `description:"来源1:搜索关键字标签、2:产业/个股标签(线下活动)、3:产业/个股标签(线下路演)、4:产业/个股标签(线上活动)、5:产业/个股标签(线上路演)、6:销售输入标签、7:产业/个股标签(报告)、8:报告类型标签"`
@@ -111,6 +130,10 @@ func UpdateWxUserRaiLabelRedis() (err error) {
 					go RoadshowWxUserRaiLabelRedisAddReduce(log)
 					fmt.Println("活动到会")
 					break
+				case 9:
+					go ActivityVivoWxUserRaiLabelRedisAddReduce(log)
+					fmt.Println("活动音视频播放")
+					break
 				default:
 					fmt.Println(string(b))
 					go utils.SendAlarmMsg("用户更新相关标签处理Redis队列消息失败:"+string(b), 2)
@@ -209,7 +232,7 @@ func ActivityWxUserRaiLabelRedisAddReduce(log models.WxUserRaiLabelRedis) (err e
 	//正常的有产业报告
 	var labelArr []string
 	//建立首页资源表,与产业的关系
-	industrialList, e := models.GetIndustrialActivityGroupManagementListByArticleId(sourceId)
+	industrialList, e := models.GetIndustrialActivityGroupManagementListByActivityId(sourceId)
 	if e != nil && e.Error() != utils.ErrNoRow() {
 		err = errors.New("GetIndustrialArticleGroupManagementListByArticleId, Err: " + e.Error() + "sourceId:" + strconv.Itoa(sourceId))
 		return
@@ -628,6 +651,114 @@ func ReportSelectionWxUserRaiLabelRedisAddReduce(log models.WxUserRaiLabelRedis)
 	return
 }
 
+// 9:活动音视频回放标签处理
+func ActivityVivoWxUserRaiLabelRedisAddReduce(log models.WxUserRaiLabelRedis) (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			go utils.SendAlarmMsg("用户查看活动音视频回放,相关标签,处理Redis队列消息失败:ActivityVivoWxUserRaiLabelRedisAddReduce"+err.Error()+fmt.Sprint("SourceId", log.SourceId, "userId", log.UserId), 2)
+		}
+	}()
+	userId := log.UserId
+	sourceId := log.SourceId
+	wxUser, e := models.GetWxUserItemByUserId(userId)
+	if e != nil {
+		err = errors.New("GetWxUserItemByUserId" + e.Error())
+		return
+	}
+	activityDetail, e := models.GetAddActivityDetailByActivityId(sourceId)
+	if e != nil {
+		err = errors.New("GetAddActivityDetailByActivityId" + e.Error())
+		return
+	}
+
+	var sourceType int
+	sourceType = 9
+
+	//正常的有产业报告
+	var labelArr []string
+	//建立首页资源表,与产业的关系
+	industrialList, e := models.GetIndustrialActivityGroupManagementListByActivityId(sourceId)
+	if e != nil && e.Error() != utils.ErrNoRow() {
+		err = errors.New("GetIndustrialActivityGroupManagementListByActivityId, Err: " + e.Error() + "sourceId:" + strconv.Itoa(sourceId))
+		return
+	}
+
+	var items []*models.WxUserRaiLabel
+	for _, v := range industrialList {
+		item := new(models.WxUserRaiLabel)
+		item.UserId = wxUser.UserId
+		item.RealName = wxUser.RealName
+		item.Mobile = wxUser.Mobile
+		item.Email = wxUser.Email
+		item.CompanyId = wxUser.CompanyId
+		item.CompanyName = wxUser.CompanyName
+		item.Label = v.IndustryName
+		item.SourceType = sourceType
+		item.SourceId = sourceId
+		item.CreateTime = log.CreateTime
+		item.ModifyTime = time.Now()
+		item.RegisterPlatform = log.RegisterPlatform
+		item.TableName = ""
+		items = append(items, item)
+		labelArr = append(labelArr, v.IndustryName)
+	}
+
+	//建立首页资源表,与标的 的关系
+	subjectList, e := models.GetSubjectActivityGroupManagementListByActivityId(sourceId)
+	if e != nil && e.Error() != utils.ErrNoRow() {
+		err = errors.New("GetSubjectActivityGroupManagementListByActivityId, Err: " + e.Error() + "sourceId:" + strconv.Itoa(sourceId))
+		return
+	}
+	//fmt.Println("subjectList", subjectList)
+	for _, v := range subjectList {
+		item := new(models.WxUserRaiLabel)
+		item.UserId = wxUser.UserId
+		item.RealName = wxUser.RealName
+		item.Mobile = wxUser.Mobile
+		item.Email = wxUser.Email
+		item.CompanyId = wxUser.CompanyId
+		item.CompanyName = wxUser.CompanyName
+		item.Label = v.SubjectName
+		item.SourceType = sourceType
+		item.SourceId = sourceId
+		item.CreateTime = log.CreateTime
+		item.ModifyTime = time.Now()
+		item.RegisterPlatform = log.RegisterPlatform
+		item.TableName = ""
+		items = append(items, item)
+		labelArr = append(labelArr, v.SubjectName)
+	}
+
+	//如果两个标签都没有,就添加临时标签
+	if len(labelArr) == 0 {
+		item := new(models.WxUserRaiLabel)
+		item.UserId = wxUser.UserId
+		item.RealName = wxUser.RealName
+		item.Mobile = wxUser.Mobile
+		item.Email = wxUser.Email
+		item.CompanyId = wxUser.CompanyId
+		item.CompanyName = wxUser.CompanyName
+		item.Label = activityDetail.Label
+		item.SourceType = sourceType
+		item.SourceId = sourceId
+		item.CreateTime = log.CreateTime
+		item.ModifyTime = time.Now()
+		item.RegisterPlatform = log.RegisterPlatform
+		item.TableName = ""
+		items = append(items, item)
+		labelArr = append(labelArr, activityDetail.Label)
+	}
+
+	e = models.AddWxUserRaiLabelMulti(items, labelArr, userId)
+	if e != nil {
+		err = errors.New("AddWxUserRaiLabelMulti" + e.Error())
+		return
+	}
+
+	return
+}
+
 //func init() {
 //	fmt.Println(GetArticlelabelArrByArticleId(11796))
 //}