public async Task <IActionResult> Configure(int id)
        {
            var report = _reportService.GetReportList().SingleOrDefault(_ => _.Id == id);

            if (report == null)
            {
                AlertDanger = $"Could not find report of type {id}.";
                return(RedirectToAction("Index"));
            }
            PageTitle = $"Configure {report.Name}";

            string viewName = report.Name.Replace(" ", string.Empty);

            if (viewName.EndsWith("Report"))
            {
                viewName = viewName.Substring(0, viewName.Length - 6);
            }

            var systemList = await _siteService.GetSystemList(true);

            var branchList = await _siteService.GetAllBranches(true);

            var programList = await _siteService.GetProgramList();

            var schoolDistrictList = await _schoolService.GetDistrictsAsync();

            var schoolList = await _schoolService.GetSchoolsAsync(schoolDistrictList.FirstOrDefault()?.Id);

            var groupInfoList = await _userService.GetGroupInfosAsync();

            var vendorCodeTypeList = await _vendorCodeService.GetTypeAllAsync();

            var site = await GetCurrentSiteAsync();

            var triggerList = await _triggerService.GetTriggersAwardingPrizesAsync();

            foreach (var trigger in triggerList)
            {
                trigger.AwardPrizeName += $" ({trigger.Name})";
            }

            return(View($"{viewName}Criteria", new ReportCriteriaViewModel
            {
                ReportId = id,
                ProgramStartDate = site.ProgramStarts ?? new DateTime(2018, 01, 01),
                SystemList = new SelectList(systemList, "Id", "Name"),
                BranchList = new SelectList(branchList, "Id", "Name"),
                ProgramList = new SelectList(programList, "Id", "Name"),
                SchoolDistrictList = new SelectList(schoolDistrictList, "Id", "Name"),
                SchoolList = new SelectList(schoolList, "Id", "Name"),
                GroupInfosList = new SelectList(groupInfoList, "Id", "Name"),
                VendorCodeTypeList = new SelectList(vendorCodeTypeList, "Id", "Description"),
                PrizeList = new SelectList(triggerList, "Id", "AwardPrizeName")
            }));
        }