Example #1
0
        public async Task <IActionResult> List(PagedBroodsForm form)
        {
            var page = await _broods.GetList(form);

            form.Total = await _broods.Count(form);

            return(View(new PagedViewModel <HbBrood, PagedBroodsForm>(page, form)));
        }
Example #2
0
        public async Task <int> Count(PagedBroodsForm form)
        {
            var query = _dc.Broods
                        .Where(u => !u.IsDeleted)
                        .Where(u => u.BroodDate > form.Start && u.BroodDate < form.End.Value)
                        .AsQueryable();

            if (form.LotId.HasValue)
            {
                query = query.Where(u => u.LotId == form.LotId.Value);
            }

            return(await query.CountAsync());
        }
Example #3
0
        public async Task <IEnumerable <HbBrood> > GetList(PagedBroodsForm form)
        {
            var query = _dc.Broods.Include(u => u.Lot)
                        .Where(u => !u.IsDeleted)
                        .Where(u => u.BroodDate > form.Start && u.BroodDate < form.End.Value)
                        .AsQueryable();

            if (form.LotId.HasValue)
            {
                query = query.Where(u => u.LotId == form.LotId.Value);
            }

            var broods = await query.OrderByDescending(u => u.Id)
                         .Skip(form.Offset)
                         .Take(form.Count)
                         .ToArrayAsync();

            return(broods.Select(_mapper.Map <HbBrood>).ToArray());
        }