public ActionResult _ValidateQuestion(long groupId, string myAnswer) { StatusMessageData message = null; TopicEntity group = topicService.Get(groupId); if (group == null) { return(Json(new StatusMessageData(StatusMessageType.Error, "找不到专题!"))); } //已修改 IUser currentUser = UserContext.CurrentUser; if (currentUser == null) { return(Json(new StatusMessageData(StatusMessageType.Error, "您尚未登录!"))); } if (group.JoinWay != TopicJoinWay.ByQuestion) { return(Json(new StatusMessageData(StatusMessageType.Error, "当前加入方式不是问题验证"))); } bool isMember = topicService.IsMember(group.TopicId, currentUser.UserId); if (!isMember) { if (group.Answer == myAnswer) { TopicMember member = TopicMember.New(); member.UserId = UserContext.CurrentUser.UserId; member.TopicId = group.TopicId; member.IsManager = false; topicService.CreateTopicMember(member); message = new StatusMessageData(StatusMessageType.Success, "加入专题成功!"); } else { message = new StatusMessageData(StatusMessageType.Error, "答案错误!"); } } else { message = new StatusMessageData(StatusMessageType.Hint, "您已加入过该专题!"); } return(Json(message)); }
public ActionResult JoinTopic(long groupId) { //需判断是否已经加入过专题 StatusMessageData message = null; TopicEntity group = topicService.Get(groupId); if (group == null) { return(Json(new StatusMessageData(StatusMessageType.Error, "找不到专题!"))); } IUser currentUser = UserContext.CurrentUser; if (currentUser == null) { return(Json(new StatusMessageData(StatusMessageType.Error, "您尚未登录!"))); } if (group.JoinWay != TopicJoinWay.Direct) { return(Json(new StatusMessageData(StatusMessageType.Error, "当前加入方式不是直接加入"))); } //已修改 //判断是否加入过该专题 bool isMember = topicService.IsMember(groupId, currentUser.UserId); //未加入 if (!isMember) { TopicMember member = TopicMember.New(); member.UserId = currentUser.UserId; member.TopicId = group.TopicId; member.IsManager = false; topicService.CreateTopicMember(member); message = new StatusMessageData(StatusMessageType.Success, "加入专题成功!"); } else { message = new StatusMessageData(StatusMessageType.Hint, "您已加入过该专题!"); } return(Json(message)); }