Пример #1
0
        public IActionResult FindAll(string query)
        {
            FullSearchModel model = new FullSearchModel();

            if (query == null)
            {
                return(View(model));
            }

            var planResult = _context.Plan
                             .Include(d => d.Profile)
                             .Where(plan => plan.Search(query))
                             .ToList();

            var profileResult = _context.Profile
                                .Include(d => d.Direction)
                                .Where(profile => profile.Search(query))
                                .ToList();

            var disciplines = _context.DisciplineInfo
                              .Include(d => d.Discipline)
                              .Include(d => d.Plan).ToList();

            var disciplinesResult = disciplines
                                    .Where(discipline => discipline.Search(query)).ToList();

            model.Profiles    = profileResult;
            model.Plans       = planResult;
            model.Disciplines = disciplinesResult;


            return(View(model));
        }
        public async Task <List <NaturalPersonModel> > FullSearchAsync(FullSearchModel model)
        {
            var natuarlPersons = this.uow.NaturalPersons.GetAll().Where(x => x.DeleteDate == null);

            var birthDate = default(DateTime);

            if (model.BirthDate != null)
            {
                birthDate = model.BirthDate.Value.Date;
            }


            var data = await natuarlPersons.Where
                       (
                x => (string.IsNullOrEmpty(model.FirstName) ? true : x.FirstName.Contains(model.FirstName)) &&
                (string.IsNullOrEmpty(model.LastName) ? true : x.LastName.Contains(model.LastName)) &&
                (string.IsNullOrEmpty(model.IdentityNumber) ? true : x.IdentityNumber.Contains(model.IdentityNumber)) &&
                (model.Gender == null ? true : x.GenderId == (int)model.Gender) &&
                (model.BirthDate == null ? true : x.BirthDate == birthDate) &&
                (model.City == null ? true : x.CityId == (int)model.City)
                       ).ToListAsync();

            var result = mapper.Map <List <NaturalPerson>, List <NaturalPersonModel> >(data);

            return(PaginatedList <NaturalPersonModel> .Create(result, model.pageNumber ?? 1, model.pageSize));
        }
Пример #3
0
        public async Task <IActionResult> FullSearch(FullSearchModel model)
        {
            var data = await this.naturalPersonService.FullSearchAsync(model);

            return(Ok(data));
        }