Пример #1
0
        public async Task <IActionResult> List([FromQuery] string title, [FromQuery] int?page, [FromQuery] bool active)
        {
            CampaignSearchViewModel model = new CampaignSearchViewModel();

            model.Page   = page;
            model.Title  = title;
            model.Active = active;

            int p = model.Page != null?model.Page.GetValueOrDefault() : 1;

            return(Json(await this.service.GetCampaignPage(model)));
        }
Пример #2
0
        public async Task <List <Campaign> > GetCampaigns(CampaignSearchViewModel search)
        {
            IQueryable <Campaign> query = this.db.Campaigns;

            if (search.Title != null && search.Title != "undefined")
            {
                query = query.Where(c => c.Name.Contains(search.Title));
            }
            if (search.Active)
            {
                query = query.Where(c => c.IsActiveRegistration == true);
            }

            return(await query
                   .Paginate(10, search.Page != null?search.Page.GetValueOrDefault() : 1)
                   .ToListAsync());
        }
Пример #3
0
        public async Task <CampaignListPageViewModel> GetCampaignPage(CampaignSearchViewModel search)
        {
            CampaignListPageViewModel model = new CampaignListPageViewModel();
            var campaigns = await this.GetCampaigns(search);


            model.Campaigns = campaigns.Select(c => new CampaignViewModel()
            {
                Id                   = c.Id,
                Name                 = c.Name,
                StartDate            = c.StartDate.ToString("dd/MM/yyyy"),
                EndDate              = c.EndDate.ToString("dd/MM/yyyy"),
                IsActiveRegistration = c.IsActiveRegistration
            }).ToList();

            model.Page  = search.Page.GetValueOrDefault();
            model.Total = await this.db
                          .Campaigns
                          .CountAsync();

            return(model);
        }