Ejemplo n.º 1
0
        public IActionResult ConfirmLevyStatus(Guid applicationId, string ukprn, int applicationRouteId)
        {
            var viewModel = new EmployerLevyStatusViewModel
            {
                ApplicationId      = applicationId,
                UKPRN              = ukprn,
                ApplicationRouteId = applicationRouteId
            };

            PopulateGetHelpWithQuestion(viewModel);

            return(View("~/Views/Roatp/ConfirmLevyStatus.cshtml", viewModel));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> SubmitLevyStatus(EmployerLevyStatusViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.ErrorMessages = new List <ValidationErrorDetail>();
                var modelErrors = ModelState.Values.SelectMany(v => v.Errors);
                foreach (var modelError in modelErrors)
                {
                    model.ErrorMessages.Add(new ValidationErrorDetail
                    {
                        Field        = "LevyPayingEmployer",
                        ErrorMessage = modelError.ErrorMessage
                    });
                }
                return(View("~/Views/Roatp/ConfirmLevyStatus.cshtml", model));
            }

            if (model.ApplicationId == Guid.Empty)
            {
                var applicationDetails = _sessionService.Get <ApplicationDetails>(ApplicationDetailsKey);
                applicationDetails.LevyPayingEmployer = model.LevyPayingEmployer;
                _sessionService.Set(ApplicationDetailsKey, applicationDetails);
            }

            if (model.LevyPayingEmployer == "Y")
            {
                var selectApplicationRouteModel = new SelectApplicationRouteViewModel
                {
                    ApplicationRouteId = model.ApplicationRouteId,
                    ApplicationId      = model.ApplicationId,
                    LevyPayingEmployer = model.LevyPayingEmployer
                };

                if (selectApplicationRouteModel.ApplicationId == Guid.Empty)
                {
                    return(RedirectToAction("ConditionsOfAcceptance", model));
                }
                else
                {
                    return(await UpdateProviderRoute(selectApplicationRouteModel));
                }
            }

            return(RedirectToAction("IneligibleNonLevy", new { applicationId = model.ApplicationId }));
        }