Exemplo n.º 1
0
        public IActionResult List()
        {
            JobOfferListViewModel model = new JobOfferListViewModel();

            model.JobOffers = jobOffersService.GetAllByUserId(HttpContext.Session.GetInt32("loggedUserId").Value);

            return(View(model));
        }
Exemplo n.º 2
0
        public IActionResult List()
        {
            JobOfferListViewModel model = new JobOfferListViewModel();

            model.JobOffers = jobOffersService.GetJobOffersWithUser();

            return(View(model));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Action gets the view containing list of job offers matching filters defined as parametrs.
        /// </summary>
        /// <param name="sortOrder"></param>
        /// <param name="currentFilter"></param>
        /// <param name="searchString"></param>
        /// <param name="page"></param>
        /// <returns></returns>
        public async Task <PartialViewResult> GetJobOffers(string sortOrder, string currentFilter, string searchString, int?page)
        {
            ViewBag.CurrentSort = sortOrder;

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewBag.CurrentFilter = searchString;

            var jobOffers = from s in _context.JobOffers select s;

            if (!String.IsNullOrEmpty(searchString))
            {
                jobOffers = jobOffers.Where(s => s.Title.Contains(searchString));
            }

            jobOffers = sortOrder switch
            {
                "name" => jobOffers.OrderBy(s => s.Title),
                "name_desc" => jobOffers.OrderByDescending(s => s.Title),
                "date" => jobOffers.OrderBy(s => s.AddedOn),
                "date_desc" => jobOffers.OrderByDescending(s => s.AddedOn),
                _ => jobOffers.OrderBy(s => s.Title),
            };

            int pageNumber = (page ?? 1);

            jobOffers = jobOffers.Where(s => s.CompanyId.ToString() == User.FindFirst(ClaimTypes.GroupSid).Value);

            ViewBag.CurrentPage = pageNumber;
            ViewBag.PagesCount  = paginationHelper.GetPagesCount(pageSize, await jobOffers.CountAsync());
            List <JobOffer> jobOffersList = await jobOffers
                                            .Skip(paginationHelper.GetFirstIndexOnPage(pageSize, pageNumber))
                                            .Take(pageSize)
                                            .ToListAsync();

            JobOfferListViewModel jobOfferListViewModel = new JobOfferListViewModel()
            {
                JobOffers     = jobOffersList,
                PendingOffers = new List <int>()
            };

            return(PartialView("_JobOfferList", jobOfferListViewModel));
        }