| 299 | } |
| 300 | |
| 301 | func (vs *VoteService) sendEvent(ctx context.Context, |
| 302 | req *schema.VoteReq, objectInfo *schema.SimpleObjectInfo, resp *schema.VoteResp) { |
| 303 | var event *schema.EventMsg |
| 304 | switch objectInfo.ObjectType { |
| 305 | case constant.QuestionObjectType: |
| 306 | event = schema.NewEvent(constant.EventQuestionVote, req.UserID).TID(objectInfo.QuestionID). |
| 307 | QID(objectInfo.QuestionID, objectInfo.ObjectCreatorUserID) |
| 308 | case constant.AnswerObjectType: |
| 309 | event = schema.NewEvent(constant.EventAnswerVote, req.UserID).TID(objectInfo.AnswerID). |
| 310 | AID(objectInfo.AnswerID, objectInfo.ObjectCreatorUserID) |
| 311 | case constant.CommentObjectType: |
| 312 | event = schema.NewEvent(constant.EventCommentVote, req.UserID).TID(objectInfo.CommentID). |
| 313 | CID(objectInfo.CommentID, objectInfo.ObjectCreatorUserID) |
| 314 | default: |
| 315 | return |
| 316 | } |
| 317 | event.AddExtra("vote_up_amount", fmt.Sprintf("%d", resp.UpVotes)) |
| 318 | event.AddExtra("vote_down_amount", fmt.Sprintf("%d", resp.DownVotes)) |
| 319 | vs.eventQueueService.Send(ctx, event) |
| 320 | } |