Ejemplo n.º 1
0
        public IActionResult _List(CompanyFilterModel filter)
        {
            ViewBag.Companies = new SelectList(db.Company.Where(s => !s.Deleted).Select(s => new LookupEntity {
                Id = s.Id, Name = s.Name
            }).ToList(), "Id", "Name");
            var companies = (from c in db.Company
                             join coc in db.CompanyOutsourceCompany on c.Id equals coc.OutsourceCompanyId
                             into cod
                             from d in cod.DefaultIfEmpty()
                             where !c.Deleted &&
                             (filter.CompanyId == null || c.Id == filter.CompanyId) &&
                             (filter.MainCompanyId == null || d.CompanyId == filter.MainCompanyId)
                             orderby c.Name
                             select new ComapnyListViewModel
            {
                Id = c.Id,
                Name = c.Name,
                MainCompanyId = d.Company != null ? d.CompanyId : 0,
                MainCorporationName = d.Company != null ? d.Company.Name : "",
                Scale = c.CompanyScale != null ? c.CompanyScale.Name : "",
                Type = c.CompanyType != null ? c.CompanyType.Name : "",
                WorkLine = c.CompanyWorkLine != null ? c.CompanyWorkLine.Name : ""
            }
                             )
                            .ToPagedFilteredResult(filter);

            return(PartialView(companies));
        }
Ejemplo n.º 2
0
        public async Task <List <Company> > GetCompanies(CompanyFilterModel filterRequest)
        {
            Expression <Func <Company, bool> > filterPredicate = c => true;

            if (filterRequest != null)
            {
                var isIdExist    = filterRequest.Id != null;
                var isTitleExist = !string.IsNullOrEmpty(filterRequest.Title);

                filterPredicate = c =>
                                  (!isIdExist || (c.Id == filterRequest.Id)) &&
                                  (!isTitleExist || (c.Title == filterRequest.Title));
            }
            return(await _companyRepository.FindBy(filterPredicate).ToListAsync());
        }
Ejemplo n.º 3
0
        public async Task <ActionResult <ListItemResponse <CompanyViewModel> > > GetAll(int?id, string name)
        {
            CompanyFilterModel filterModel = new CompanyFilterModel
            {
                Id   = id,
                Name = name,
            };

            ListItemResponse <Company> companyList = await _companyRepository.GetAll(filterModel);

            return(Ok(new ListItemResponse <CompanyViewModel>
            {
                Items = companyList.Items.Select(u => _mapper.Map <CompanyViewModel>(u)),
                TotalItems = companyList.TotalItems
            }));
        }
Ejemplo n.º 4
0
        public async System.Threading.Tasks.Task <List <CompanyModel> > GetCompanies(CompanyFilterModel filter = null)
        {
            var filters = new List <ReqestParameter>();

            if (filter?.Location != null)
            {
                filters.Add(new ReqestParameter {
                    Name = "Location", Value = filter.Location
                });
            }

            if (filter?.Industry != null)
            {
                filters.Add(new ReqestParameter {
                    Name = "Industry", Value = filter.Industry.DescriptionAttr()
                });
            }

            return(await requestProvider.GetAsync <List <CompanyModel> >(ListCompaniesEndpoint, filters));
        }
Ejemplo n.º 5
0
        public async Task <PageModel <CompanyModel> > GetCompanies(PageModel pageModel, CompanyFilterModel filter = null)
        {
            var query = _context.Companies
                        .Include(x => x.Creator)
                        .AsQueryable();

            if (filter != null)
            {
                if (!string.IsNullOrEmpty(filter.Search))
                {
                    var searchUpper = filter.Search.ToUpper();
                    query = query.Where(x => x.Name.ToUpper().Contains(searchUpper));
                }
                if (filter.CreatedFrom.HasValue)
                {
                    query = query.Where(x => x.CreatedDate >= filter.CreatedFrom);
                }
                if (filter.CreatedTo.HasValue)
                {
                    query = query.Where(x => x.CreatedDate <= filter.CreatedTo);
                }
            }

            var total = await query.CountAsync();

            var items = await query
                        .OrderBy(x => x.Name)
                        .GetPage(pageModel)
                        .ToListAsync();

            return(new PageModel <CompanyModel>
            {
                Page = pageModel.Page,
                PageSize = pageModel.PageSize,
                Total = total,
                Items = items
            });
        }
Ejemplo n.º 6
0
 public SearchService()
 {
     CurrentJobFilter     = new JobFilterModel();
     CurrentCompanyFilter = new CompanyFilterModel();
     CurrentPeopleFilter  = new PeopleFilterModel();
 }