示例#1
0
 public async Task <IActionResult> Post([FromBody] SurveyAnswerVm viewModel)
 {
     return(await ExecuteAsync(async() =>
     {
         var result = await _surveyService.AddSurveyAnswer(viewModel);
         return result;
     }));
 }
示例#2
0
        public ActionResult Create(int referralId)
        {
            SurveyAnswerVm vm       = new SurveyAnswerVm(referralId);
            var            referral = referralManager.get(referralId);

            ViewBag.returnUrl = Url.Action("Index", "ReferralRecord", new { id = referral.clientId, companyCategoryTypeId = referral.companyCategoryTypeId });

            return(View(vm));
        }
示例#3
0
        public ActionResult Edit(SurveyAnswerVm input)
        {
            if (this.ModelState.IsValid)
            {
                foreach (var item in input.voSlist)
                {
                    if (item.answer != null)
                    {
                        surveyAnswerManager.update(item, item.surveyAnswerId);
                    }
                }
                var referral = referralManager.get(input.voSlist[0].referralId);
                referral.surveyComment = input.comment;
                referralManager.update(referral);
                return(RedirectToAction("Index", "ReferralRecord", new { id = referral.clientId, companyCategoryTypeId = referral.companyCategoryTypeId }));
            }

            return(View(input));
        }
示例#4
0
        public async Task <Guid> AddSurveyAnswer(SurveyAnswerVm viewModel)
        {
            await _modelValidator.ValidateAsync <SurveyAnswerVm, SurveyAnswerVmValidator>(viewModel);

            var model = _objectMapper.Map <SurveyAnswerVm, Core.Model.SurveyAnswer>(viewModel);

            _appRepository.Create(model);

            var question = (await _appRepository.GetAsync <Question>(filter: x => x.Answers.Any(y => y.Id == viewModel.AnswerId))).Single();
            var isLast   = await IsLast(question);

            if (isLast)
            {
                var survey = (await _appRepository.GetAsync <Core.Model.Survey>(filter: x => x.Id == viewModel.SurveyId)).Single();
                survey.SurveyStatus = Core.Enum.SurveyStatus.Submitted;
            }

            await _appRepository.SaveAsync();

            return(model.Id);
        }