public async Task <IActionResult> Feedback(UserFeedbackViewModel vm) { if (ModelState.IsValid) { bool Isid = int.TryParse(vm.HamperId, out int id); if (Isid == false) { return(BadRequest()); } var user = await _userManagerService.GetUserAsync(User); var feedbacks = _feedBackService.Query(x => x.ApplicationUserId == user.Id) .SingleOrDefault(f => f.HamperId == id); if (feedbacks != null) { ModelState.AddModelError("", "Feedback alread exists"); return(View(vm)); } Feedback feedback = new Feedback { HamperId = id, Rating = vm.rating, UserFeedBack = vm.comment, ApplicationUserId = user.Id, Name = User.Identity.Name }; await _feedBackService.Create(feedback); return(RedirectToAction("Index", "Home")); } return(View(vm)); }
public async Task <IActionResult> Feedback() { var user = await _userManagerService.GetUserAsync(User); var test = _addressService.GetAll() .Where(ad => ad.ApplicationUserId == user.Id) .Include(x => x.CartInvoices); var t = test.SelectMany (s => s.CartInvoices.SelectMany (c => c.Carts.Select (ids => ids.HamperId))) .Distinct(); var hampers = _hamperService.Query(h => t.Any(id => h.HamperId == id)); var selectList = hampers.Select(item => new SelectListItem { Text = item.HamperName, Value = item.HamperId.ToString() }); UserFeedbackViewModel vm = new UserFeedbackViewModel { hampers = selectList }; return(View(vm)); }
public ActionResult Select(UserFeedbackViewModel userFeedback) { var surveryObject = JsonConvert.SerializeObject(userFeedback); try { var userId = User.Identity.GetUserId(); var user = db.Users.Find(userId); var questionDropDownlist = Request.Form.ToDictionary() .Where(x => x.Key.Contains("QuestionDropDownlist")) .Select(each => new { key = each.Key, AnswerText = each.Value, questionId = each.Key.Split(':').LastOrDefault() }); ; foreach (var question in questionDropDownlist) { var answer = new Answer { SurveyId = userFeedback.SurveyId, QuestionId = Convert.ToInt16(question.questionId), AnswerText = question.AnswerText, User = user }; db.Answers.AddOrUpdate(answer); } string sentiment; if (!string.IsNullOrEmpty(userFeedback.UserFeedbackText)) { sentiment = DragonApiClass.GetSentiment(userFeedback.UserFeedbackText); } else { sentiment = "Neutral"; } var userfeeback = new UserFeedback { UserFeedbackText = userFeedback.UserFeedbackText, User = user, SurveyId = userFeedback.SurveyId, Sentiment = sentiment }; db.UserFeedbacks.AddOrUpdate(userfeeback); db.SaveChanges(); return(View("ThankYou")); } catch (Exception exp) { return(RedirectToAction("Index")); } }
public HttpResponseMessage SubmitFeedback(UserFeedbackViewModel objFeedback) { try { UserFeedback objUserFeedback = new UserFeedback(); string mobileNumber = objFeedback.Usercode; //get mobileNumber from user table var number = (from user in dbContext.UserInfo where user.MobileNumber == mobileNumber select user).FirstOrDefault(); if (number != null) { //objUserFeedback.Tr_Id = objFeedback.Tr_Id; objUserFeedback.Usercode = objFeedback.Usercode; objUserFeedback.Product = objFeedback.Product; objUserFeedback.Feedback = objFeedback.Feedback; //objUserFeedback.Tr_Date = !string.IsNullOrEmpty(objFeedback.Tr_Date) ? Convert.ToDateTime(objFeedback.Tr_Date) : (DateTime?)null; objUserFeedback.Tr_Date = DateTime.Now; dbContext.UserFeedback.Add(objUserFeedback); var i = dbContext.SaveChanges(); if (i != 0) { objResponse.Message = "Submitted successfully"; return(Request.CreateResponse(HttpStatusCode.OK, objResponse)); } else { objResponse.Message = "Failed"; return(Request.CreateResponse(HttpStatusCode.OK, objResponse)); } } else { objResponse.Message = "Mobile number not exists."; return(Request.CreateResponse(HttpStatusCode.OK, objResponse)); } } catch (Exception ex) { Log.Info(Convert.ToString(ex.InnerException)); Log.Info(ex.Message); objCommonClasses.InsertExceptionDetails(ex, "UserController", "SubmitFeedback"); return(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, ex.Message)); } }
// GET: api/RestUserFeedBack/5 public UserFeedbackViewModel Get(int id) { var survery = db.Surveys.Find(id); var userFeedback = new UserFeedbackViewModel { SurveyId = survery.SurveyId, StartDate = survery.StartDate, EndDate = survery.EndDate, Description = survery.Description, UserAnswerCollection = survery.Questions.ToList().ConvertAll(x => new UserAnswerViewModel { Question = x.QuestionText, UserAnswerid = x.QuestionId.ToString() }) }; return(userFeedback); }
// GET: FeedBack/Select/5 public ActionResult Select(int id) { showAllsurvery = db.Surveys.ToList(); var survery = showAllsurvery .FirstOrDefault(x => x.SurveyId == id); var userFeedback = new UserFeedbackViewModel { SurveyId = survery.SurveyId, StartDate = survery.StartDate, EndDate = survery.EndDate, Description = survery.Description, UserAnswerCollection = survery.Questions.ToList().ConvertAll(x => new UserAnswerViewModel { Question = x.QuestionText, UserAnswerid = x.QuestionId.ToString() }) }; ViewBag.UserFeedbackData = userFeedback; return(View(userFeedback)); }
public UserFeedbackControl() { InitializeComponent(); //Connectto the instance of view model _viewModel = (UserFeedbackViewModel)this.Resources["viewModel"]; }