/// <summary> /// 个人提问 /// </summary> public async Task <IActionResult> Question(Guid id, int page = 1) { if (page < 1) { return(NotFound()); } PersonView person = await this.personService.GetPersonViewAsync(id); if (person == null || person.IsDelete) { return(NotFound()); } else { Person p = ObjectMapper.Map <PersonView, Person>(person); PagingResult <PostView> pagingResult = await this.postService.GetPagingResultAsync(person, Library.Enums.PostResultType.Question, page); if (pagingResult.PageCount > 1 && page > pagingResult.PageCount) { return(NotFound()); } UserQuestionViewModel model = new UserQuestionViewModel(pagingResult, person); return(View(model)); } }
public IActionResult UserQuestion() { var viewModel = new UserQuestionViewModel(); viewModel.Users = _userService.GetUsersSummary(); viewModel.QuestionDto = _questionService.GetRandomQuestion(); return(View(viewModel)); }
public IActionResult UserQuestion(UserQuestionViewModel viewModel) { var saveAnswer = _usersAnswerService.AddUserAnswer(viewModel); if (saveAnswer) { return(RedirectToAction("UserQuestion")); } else { return(Content("Hata oluştu daha sonra tekrar deneyiniz.")); } }
public bool AddUserAnswer(UserQuestionViewModel model) { var usersAnswer = new UsersAnswer() { AnswerDate = DateTime.UtcNow, QuestionId = model.QuestionDto.Id, UserId = model.User.Id, Answer = model.QuestionDto.Answer }; _usersAnswerDal.Add(usersAnswer); return(_usersAnswerDal.SaveChanges()); }
public async Task <IHttpActionResult> UpdateUserQuestion(UserQuestionViewModel model) { Country country = null; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var userId = User.Identity.GetUserId <int>(); var user = DbContext.Users.Find(userId); if (model.CountryId != null) { country = DbContext.Countries.Find(model.CountryId); } if (user != null && country != null) { // updating profile user.CountryId = country.Id; user.Children13 = model.Children13; user.Teens = model.Teens; user.Adults = model.Adults; user.Seniors = model.Seniors; user.PostCode = model.PostCode; await DbContext.SaveChangesAsync(); return(Ok(Mapper.Map <UserQuestionViewModel>(user))); } else { return(BadRequest(ModelState)); } }
public IActionResult GetQuestion() { if (Request.Headers.ContainsKey("Username")) { var username = Request.Headers["Username"].FirstOrDefault(); var userExists = _userRepository.UsernameExists(username); if (!userExists) { ModelState.AddModelError("doesntExist", "Username doesnt exist"); return(BadRequest(ModelState)); } var user = _userRepository.GetUserByUsername(username); Random random = new Random(); var questions = _questionRepository.GetUnansweredQuestion(user.Id); if (questions.Count() > 0) { var index = random.Next(0, questions.Count()); var question = questions.ElementAt(index); _answeredQuestionsRepository.Add(new AnsweredQuestions { Question = question, User = user }); return(Ok(UserQuestionViewModel.ToUserQuestionViewModel(question))); } else { ModelState.AddModelError("noQuestions", "No Questions found"); return(BadRequest(ModelState)); } } else { return(NotFound()); } }