// 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>()));
            }
        }
Example #2
0
        /// <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);
        }