public ActionResult ValidateCandidatesWithApplications(CandidatesWithApplicationsParameters parameters)
        {
            var response = _reportMediator.ValidateCandidatesWithApplicationsParameters(parameters);

            switch (response.Code)
            {
            case ReportMediatorCodes.ValidateCandidatesWithApplicationsParameters.Ok:
                return(View("CandidatesWithApplications", response.ViewModel));

            case ReportMediatorCodes.ValidateCandidatesWithApplicationsParameters.ValidationError:
                ModelState.Clear();
                response.ValidationResult.AddToModelStateWithSeverity(ModelState, string.Empty);
                return(View("CandidatesWithApplications", response.ViewModel));

            default:
                throw new InvalidMediatorCodeException(response.Code);
            }
        }
Esempio n. 2
0
        public MediatorResponse <byte[]> GetCandidatesWithApplications(CandidatesWithApplicationsParameters parameters, string username, string ukprn)
        {
            try
            {
                IList <CandidatesWithApplicationsResultItem> reportResult = _reportingProvider.GetCandidatesWithApplicationsResultItem(parameters.FromDate.Date, parameters.ToDate.Date, username, ukprn);

                var headerBuilder = new StringBuilder();
                headerBuilder.AppendLine("PROTECT,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,");
                headerBuilder.AppendLine(",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,");
                headerBuilder.AppendLine(",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,");

                var bytes = GetCsvBytes <CandidatesWithApplicationsResultItem, CandidatesWithApplicationsResultItemClassMap>(reportResult, headerBuilder.ToString());
                return(GetMediatorResponse(ReportMediatorCodes.GetCandidatesWithApplications.Ok, bytes));
            }
            catch (Exception ex)
            {
                _logService.Warn(ex);
                return(GetMediatorResponse(ReportMediatorCodes.GetCandidatesWithApplications.ValidationError, new byte[0]));
            }
        }
        public ActionResult DownloadCandidatesWithApplications(CandidatesWithApplicationsParameters parameters)
        {
            var response = _reportMediator.GetCandidatesWithApplications(parameters, User.Identity.Name, User.GetUkprn());

            return(File(response.ViewModel, "text/csv", "CandidatesWithApplications.csv"));
        }
Esempio n. 4
0
        public MediatorResponse <CandidatesWithApplicationsParameters> ValidateCandidatesWithApplicationsParameters(CandidatesWithApplicationsParameters parameters)
        {
            var validationResult = _reportDateRangeValidator.Validate(parameters);

            parameters.IsValid = validationResult.IsValid;
            if (!validationResult.IsValid)
            {
                return(GetMediatorResponse(ReportMediatorCodes.ValidateCandidatesWithApplicationsParameters.ValidationError, parameters, validationResult));
            }

            return(GetMediatorResponse(ReportMediatorCodes.ValidateCandidatesWithApplicationsParameters.Ok, parameters, validationResult));
        }