public ViewResult Questionnaire(UserResponse userResponse)
 {
     if (ModelState.IsValid)
     {
         repository.AddResponse(userResponse);
         return(View("Thankyou", userResponse));
     }
     else
     {
         return(View());
     }
 }
        public async Task Create([FromBody] ResponseJsonPayload payload)
        {
            try
            {
                if (payload != null && payload.responseDetails != null)
                {
                    ResponseUser user = new ResponseUser();
                    user.surveyId  = payload.surveyId;
                    user.userName  = payload.userName;
                    user.userPhone = payload.userPhone;
                    user.userEmail = payload.userEmail;
                    user.optIn     = payload.optIn;

                    await _surveyResponseRepository.AddResponseUser(user);

                    // get _id of inserted item
                    var newUserId = user.internalId;

                    // construct response and user objects
                    var responseDetails = payload.responseDetails;
                    foreach (var rd in responseDetails)
                    {
                        Response responseObj = new Response();
                        responseObj.surveyId   = rd.surveyId;
                        responseObj.questionId = rd.questionId;
                        responseObj.choice     = rd.choice;
                        responseObj.userId     = newUserId;

                        await _surveyResponseRepository.AddResponse(responseObj);
                    }

                    // generate random coupon code and insert into couponCode collection
                    int        randomNum = GenerateRandomNo();
                    CouponCode coupon    = new CouponCode();
                    coupon.userId = newUserId;
                    coupon.code   = randomNum;
                    await _surveyResponseRepository.AddCouponCode(coupon);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public ViewResult RsvpForm(Response response)
 {
     response.Events = repositoryEvent.GetEvent(response.EventID);
     if (ModelState.IsValid)
     {
         if (!repository.IsRegistered(response))
         {
             repository.AddResponse(response);
             return(View("Registered", response));
         }
         else
         {
             TempData["message"] = $"{response.Email} is already registered to this event.";
             return(View(response));
         }
     }
     else
     {
         return(View(response));
     }
 }
Beispiel #4
0
 public void AddResponse(ResponseModel model, int pollId)
 {
     _repo.AddResponse(model, pollId);
 }