Esempio n. 1
0
        // GET: Partners
        public async Task <IActionResult> Index(int page = 1, int sort = 1, bool ascending = true)
        {
            int pagesize = appData.PageSize;


            var query = _context.Partner.Include(p => p.PartnerTipovi).AsNoTracking();

            int count = query.Count();

            Expression <Func <Partner, object> > orderSelector = null;

            switch (sort)
            {
            case 1:
                orderSelector = d => d.Id;
                break;

            case 2:
                orderSelector = d => d.Naziv;
                break;

            case 3:
                orderSelector = d => d.Adresa;
                break;

            case 4:
                orderSelector = d => d.PartnerTipovi.Naziv;
                break;
            }
            if (orderSelector != null)
            {
                query = ascending ? query.OrderBy(orderSelector) : query.OrderByDescending(orderSelector);

                //if (ascending)
                //    query.OrderBy(orderSelector);
                //else
                //    query.OrderByDescending(orderSelector);
            }


            var viewModel = new PartneriViewModel();

            viewModel.Partneri = await query.ToListAsync();

            var pagingInfo = new PagingInfo
            {
                CurrentPage  = page,
                Sort         = sort,
                Ascending    = ascending,
                ItemsPerPage = pagesize,
                TotalItems   = count
            };

            viewModel.PagingInfo = pagingInfo;


            return(View(viewModel));
        }
Esempio n. 2
0
        // GET: Partneri
        public IActionResult Index()
        {
            var allPartneri = _repository.GetAllPartneri();

            var model = new PartneriViewModel
            {
                Partneri = allPartneri
            };

            return(View(model));
        }
Esempio n. 3
0
        public IActionResult Index(string filter, int page = 1, int sort = 1, bool ascending = true)
        {
            int pagesize = appData.PageSize;
            var query    = ctx.VwPartner.AsQueryable();


            int count = query.Count();

            var pagingInfo = new PagingInfo
            {
                CurrentPage  = page,
                Sort         = sort,
                Ascending    = ascending,
                ItemsPerPage = pagesize,
                TotalItems   = count
            };

            if (page < 1)
            {
                page = 1;
            }
            else if (page > pagingInfo.TotalPages)
            {
                return(RedirectToAction(nameof(Index), new { page = pagingInfo.TotalPages, sort = sort, ascending = ascending }));
            }

            System.Linq.Expressions.Expression <Func <ViewPartner, object> > orderSelector = null;
            switch (sort)
            {
            case 1:
                orderSelector = p => p.IdPartnera;
                break;

            case 2:
                orderSelector = p => p.TipPartnera;
                break;

            case 3:
                orderSelector = p => p.Mbr;
                break;

            case 4:
                orderSelector = p => p.Naziv;
                break;
            }
            if (orderSelector != null)
            {
                query = ascending ?
                        query.OrderBy(orderSelector) :
                        query.OrderByDescending(orderSelector);
            }

            var partneri = query
                           .Skip((page - 1) * pagesize)
                           .Take(pagesize)
                           .ToList();
            var model = new PartneriViewModel
            {
                Partneri   = partneri,
                PagingInfo = pagingInfo
            };

            return(View(model));
        }
Esempio n. 4
0
        public IActionResult Index(string filter, int page = 1, int sort = 1, bool ascending = true)
        {
            int pagesize = appData.PageSize;
            //var sql = "SELECT * FROM vw_partner"; //potrebbon ako se ne zove vw_Partner u FirmaContext
            var query = ctx.vw_Partner
                        .AsNoTracking();
            //.FromSql(sql);


            int count = query.Count();

            var pagingInfo = new PagingInfo
            {
                CurrentPage  = page,
                Sort         = sort,
                Ascending    = ascending,
                ItemsPerPage = pagesize,
                TotalItems   = count
            };

            if (page > pagingInfo.TotalPages)
            {
                return(RedirectToAction(nameof(Index), new { page = pagingInfo.TotalPages, sort = sort, ascending = ascending }));
            }

            System.Linq.Expressions.Expression <Func <ViewPartner, object> > orderSelector = null;
            switch (sort)
            {
            case 1:
                orderSelector = p => p.IdPartnera;
                break;

            case 2:
                orderSelector = p => p.TipPartnera;
                break;

            case 3:
                orderSelector = p => p.OIB;
                break;

            case 4:
                orderSelector = p => p.Naziv;
                break;
            }
            if (orderSelector != null)
            {
                query = ascending ?
                        query.OrderBy(orderSelector) :
                        query.OrderByDescending(orderSelector);
            }

            var partneri = query
                           .Skip((page - 1) * pagesize)
                           .Take(pagesize)
                           .ToList();
            var model = new PartneriViewModel
            {
                Partneri   = partneri,
                PagingInfo = pagingInfo
            };

            return(View(model));
        }