Ejemplo n.º 1
0
        public async Task <IActionResult> GoodIndex(int pageIndex)
        {
            if (pageIndex == 0)
            {
                pageIndex = 1;
            }

            int pageSize = 3;   // количество элементов на странице
            var cnt      = await _goodsRepository.CountAsync(null);

            var items = await _goodsRepository.GetListAsync((pageIndex - 1) *pageSize, pageSize);

            var pageViewModel = new PageViewModel(cnt, pageIndex, pageSize);
            var goodsModel    = new List <GoodModel>();

            items.ForEach(p => goodsModel.Add(new GoodModel
            {
                Id          = p.Id,
                Title       = p.Title,
                Cost        = p.Cost,
                RealCost    = p.RealCost,
                Description = p.Description,
                ImagePath   = p.ImagePath,
                IsAvailable = _goodsRepository.IsAvailable(p).Result
            }));
            var indexGoodModel = new IndexGoodModel()
            {
                Goods         = goodsModel,
                PageViewModel = pageViewModel
            };

            return(View(indexGoodModel));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <List <GoodsResponse> > > GetGoodsByCategory(int categoryId, [FromQuery] int?skip,
                                                                                     [FromQuery] int?take)
        {
            var goodsResponse = new List <GoodsResponse>();

            var count = await _goodsRepository.CountAsync(s => s.CategoryId == categoryId);

            var items = await _goodsRepository.GetListByCategoryIdAsync(skip ?? 0, take ?? count, categoryId);

            items.ForEach(p => goodsResponse.Add(new GoodsResponse
            {
                Id          = p.Id,
                Cost        = p.Cost,
                RealCost    = p.RealCost,
                Description = p.Description,
                ImagePath   = p.ImagePath,
                Title       = p.Title,
                IsDisable   = !_goodsRepository.IsAvailable(p).Result,
            }));

            return(new ActionResult <List <GoodsResponse> >(goodsResponse));
        }