// GET: ConsentToEnrollments public async Task <IActionResult> Index(ConsentToEnrollmentsFilterAndSortModel filterAndSortModel) { var consentToEnrollments = _consentToEnrollmentRepository .GetConsentToEnrollments(filterAndSortModel) .OrderByDescending(c => c.ChangingDateTime); ViewBag.FilterAndSortModel = filterAndSortModel; ViewBag.EduForms = _selectListRepository.GetSelectListEduForms(filterAndSortModel.EduFormId); ViewBag.EducationDocuments = _selectListRepository.GetSelectListEducationDocumentsForAbiturients(filterAndSortModel.EducationDocumentFileDataTypeId); ViewBag.EduProfiles = _selectListRepository.GetSelectListEduProfileFullNames(filterAndSortModel.EduProfileId); ViewBag.QuotaTypes = _selectListRepository.GetSelectListQuotaTypes(filterAndSortModel.QuotaTypeId); ViewBag.RowStatuses = _selectListRepository.GetSelectListRowStatuses(filterAndSortModel.RowStatusId); if (filterAndSortModel.IsRequestDataImmediately) { return(View(await consentToEnrollments.ToListAsync())); } else { return(View(new List <ConsentToEnrollment>())); } }
/// <summary> /// Возвращает запрос на выборку всех объектов заявлений о согласии на зачисление, /// удовлетворяющих заданному фильтру /// </summary> /// <param name="filterAndSortModel"></param> /// <returns></returns> public IQueryable <ConsentToEnrollment> GetConsentToEnrollments(ConsentToEnrollmentsFilterAndSortModel filterAndSortModel) { var query = GetConsentToEnrollments(); if (!string.IsNullOrWhiteSpace(filterAndSortModel.FilterLastNameFragment)) { query = query.Where(a => a.ApplicationForAdmission.Abiturient.AppUser.LastName.Contains(filterAndSortModel.FilterLastNameFragment)); } if (filterAndSortModel.EducationDocumentFileDataTypeId != 0) { query = query.Where(a => a.ApplicationForAdmission.Abiturient.AppUser.UserDocuments.Any(ud => ud.FileDataTypeId == filterAndSortModel.EducationDocumentFileDataTypeId)); } if (filterAndSortModel.EduFormId != 0) { query = query.Where(a => a.ApplicationForAdmission.EduFormId == filterAndSortModel.EduFormId); } if (filterAndSortModel.EduProfileId != 0) { query = query.Where(a => a.ApplicationForAdmission.EduProfileId == filterAndSortModel.EduProfileId); } if (filterAndSortModel.QuotaTypeId != 0) { query = query.Where(a => a.ApplicationForAdmission.QuotaTypeId == filterAndSortModel.QuotaTypeId); } if (filterAndSortModel.RowStatusId != 0) { query = query.Where(a => a.RowStatusId == filterAndSortModel.RowStatusId); } return(query); }