コード例 #1
0
        public ActionResult Index(PaginacaoViewModel <TagsViewModel> view)
        {
            try
            {
                var result = _tagsAppService.GetAll(new Paginacao(view.Pagina, view.TotalPorPagina));

                ViewBag.PagedList = new StaticPagedList <TagsViewModel>
                                    (
                    result.Resultado,
                    result.Pagina,
                    result.TotalPorPagina,
                    result.Total
                                    );

                ViewBag.TotalItens = result.Total;

                return(View("Index", result));
            }
            catch (Exception ex)
            {
                ViewBag.TotalItens = 0;
                ViewBag.Error      = $"Erro ao pesquisar vaga. Erro: {ex.Message}";
                return(View("Index"));
            }
        }
コード例 #2
0
        protected PaginacaoViewModel <T> Paginar <T>(IQueryable <T> itens, int offset, int limit)
        {
            int totalDeItens   = itens.Count();
            int totalDePaginas = limit > 0 ? totalDeItens / limit : 1;

            itens = itens.Paginar(offset, limit);

            return(PaginacaoViewModel <T> .NovaPaginacao(itens, totalDeItens, totalDePaginas));
        }
コード例 #3
0
        protected PaginacaoViewModel <TMapper> Paginar <T, TMapper>(IQueryable <T> itens, int offset, int limit, Func <IQueryable <T>, IEnumerable <TMapper> > mapper) where TMapper : class
        {
            int totalDeItens   = itens.Count();
            int totalDePaginas = limit > 0 ? totalDeItens / limit : 1;

            itens = itens.Paginar(offset, limit);

            return(PaginacaoViewModel <TMapper> .NovaPaginacao(mapper(itens), totalDeItens, totalDePaginas));
        }
コード例 #4
0
        // GET: Funcionario
        public async Task <IActionResult> Index(string ordem, string filtroAtual, string filtro, int?pagina)
        {
            ViewData["ordemAtual"] = ordem;
            ViewData["NomeParm"]   = String.IsNullOrEmpty(ordem) ? "nome_desc" : "";
            ViewData["DataParm"]   = ordem == "Data" ? "data_desc" : "Data";
            ViewBag.NameSortParm   = String.IsNullOrEmpty(ordem) ? "name_desc" : "";

            if (filtro != null)
            {
                pagina = 1;
            }
            else
            {
                filtro = filtroAtual;
            }
            ViewData["filtroAtual"] = filtro;
            var funcionario = from est in _context.Funcionario select est;

            if (!String.IsNullOrEmpty(filtro))
            {
                funcionario = funcionario.Where(est => est.Email.Contains(filtro) || est.Nome.Contains(filtro));
            }
            switch (ordem)
            {
            case "nome_desc":
                funcionario = funcionario.OrderByDescending(est => est.Nome);
                break;

            case "Data":
                funcionario = funcionario.OrderBy(est => est.DataNascionento);
                break;

            case "data_desc":
                funcionario = funcionario.OrderByDescending(est => est.DataNascionento);
                break;

            case "telefone":
                funcionario = funcionario.OrderBy(est => est.Telefone);
                break;

            case "morada":
                funcionario = funcionario.OrderBy(est => est.Morada);
                break;

            default:
                funcionario = funcionario.OrderBy(est => est.Email);
                break;
            }
            int numeroPage = (pagina ?? 1);

            return(View(await PaginacaoViewModel <Funcionario> .CreateAsync(funcionario.AsNoTracking(), numeroPage, PAGE_SIZE)));
        }
コード例 #5
0
        public async Task <ClassePaginacao <TEntity2> > ObterListaPaginadaViewModel <TEntity1, TEntity2>(
            IBaseService <TEntity1> baseService,
            Func <TEntity1, TEntity2> conversao,
            PaginacaoViewModel paginacaoViewModel) where TEntity2 : class where TEntity1 : EntityBase
        {
            var dadosPaginacao = new DadosPaginacao <TEntity1>();

            MetodosComunsApi.MetodosComuns.CopyT1T2DiferentClass(paginacaoViewModel, dadosPaginacao.DataPaginacao);
            MetodosComunsApi.MetodosComuns.CopyT1T2DiferentClass(paginacaoViewModel, dadosPaginacao);

            var usuPag  = (await baseService.ObterListaPaginada(dadosPaginacao));
            var ListAdd = usuPag.Lista.Select(x => conversao(x));

            var ListRet = new ClassePaginacao <TEntity2>(ListAdd);

            ListRet.TotalRegistros = usuPag.TotalRegistros;
            return(ListRet);
        }
コード例 #6
0
 public LogradourosCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
コード例 #7
0
 public PedidosCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
コード例 #8
0
        public async Task <ConsultaPaginadaViewModel <TViewModel> > Paginar(IQueryable <TEntity> query, PaginacaoViewModel paginacao)
        {
            var totalItens = await query.CountAsync();

            var result = await query.Skip((paginacao.Pagina - 1) *paginacao.ItensPorPagina).Take(paginacao.ItensPorPagina).ToListAsync();

            var retorno = new ConsultaPaginadaViewModel <TViewModel>(paginacao.Pagina, paginacao.ItensPorPagina)
            {
                TotalItens = totalItens,
                Itens      = _mapper.Map <List <TViewModel> >(result)
            };

            return(retorno);
        }
コード例 #9
0
 public ProdutosCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
コード例 #10
0
 public ProprietariosCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
コード例 #11
0
 public AgentesCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
 public CategoriasCadastradasViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }
コード例 #13
0
 public VeiculosCadastradosViewModel()
 {
     Paginacao = new PaginacaoViewModel();
 }