// GET: Celula
        public ActionResult Index(Celula celula, string ordenacao, int?pagina, FormCollection collection)
        {
            try
            {
                //var _celulaViewModel = Mapper.Map<IEnumerable<Celula>, IEnumerable<CelulaViewModel>>(_celulaBL.GetAll());

                //CARREGANDO DADOS
                celula.Nome = String.IsNullOrEmpty(Request.QueryString["FiltrarNome"]) ? String.Empty : Request.QueryString["FiltrarNome"];
                var _celulas = from c in _celulaBL.GetAll().Where(c => c.Nome.Contains(celula.Nome))
                               select c;

                //ORDENAÇÃO DOS DADOS
                ordenacao = (String.IsNullOrEmpty(ordenacao) ? "Nome_Asc" : ordenacao);
                switch (ordenacao)
                {
                case ("Nome_Desc"):
                    _celulas = _celulas.OrderByDescending(c => c.Nome);
                    break;

                default:
                    _celulas = _celulas.OrderBy(c => c.Nome);
                    break;
                }

                //PAGINAÇÃO
                //TODO: PEGAR VALOR DO PARâMETRO
                int _tamanhoPagina = 5;
                pagina = pagina == null ? 1 : pagina;
                pagina = pagina < 1 ? 1 : pagina;
                pagina = _tamanhoPagina >= _celulas.Count() ? 1 : pagina;

                int        _numeroPagina = (pagina ?? 1);
                IPagedList model         = _celulas.ToPagedList(_numeroPagina, _tamanhoPagina);
                _numeroPagina = model.PageNumber;

                //VIEWBAGS
                ViewBag.OrdemPor      = (ordenacao == "Nome_Asc" || String.IsNullOrEmpty(ordenacao) ? "Nome_Desc" : "Nome_Asc");
                ViewBag.Ordenacao     = ordenacao;
                ViewBag.PaginaAtual   = _numeroPagina;
                ViewBag.NomeCorrente  = celula.Nome;
                ViewBag.NomeAplicacao = "NetDocs® 1997-2015";

                ViewBag.TotalRegistros = UtilExtensions.GetPageInfo(_celulas.Count(), model);

                return(View(_celulas.ToPagedList(_numeroPagina, _tamanhoPagina)));
            }
            catch (Exception ex)
            {
                this.AddNotification(@Resources.Resource1.FalhaOperacao + " - " + ex.Message, NotificationType.ERROR);
                return(View());
            }
        }
Example #2
0
        [Authorize]// GET: Celulas
        public ActionResult Index(string ordenacao, int?pagina)
        {
            try
            {
                IEnumerable <CelulaViewModel> _celulas = Models.CelulaModel.GetAll(UtilExtensions.GetToken(Session["USUARIO_LOGIN"].ToString(), Session["USUARIO_SENHA"].ToString(), Session["WEB_API_TOKEN"].ToString()));

                //ORDENAÇÃO DOS DADOS
                ordenacao = (String.IsNullOrEmpty(ordenacao) ? "Nome_Asc" : ordenacao);
                switch (ordenacao)
                {
                case ("Nome_Desc"):
                    _celulas = _celulas.OrderByDescending(c => c.Nome);
                    break;

                default:
                    _celulas = _celulas.OrderBy(c => c.Nome);
                    break;
                }
                //PAGINAÇÃO
                int _tamanhoPagina = UtilExtensions.GetTamanhoPagina();
                pagina = pagina == null ? 1 : pagina;
                pagina = pagina < 1 ? 1 : pagina;
                pagina = _tamanhoPagina >= _celulas.Count() ? 1 : pagina;

                int        _numeroPagina = (pagina ?? 1);
                IPagedList _model        = _celulas.ToPagedList(_numeroPagina, _tamanhoPagina);
                _numeroPagina = _model.PageNumber;

                //VIEWBAGS
                ViewBag.OrdemPor       = (ordenacao == "Nome_Asc" || String.IsNullOrEmpty(ordenacao) ? "Nome_Desc" : "Nome_Asc");
                ViewBag.Ordenacao      = ordenacao;
                ViewBag.NomeCorrente   = string.Empty;
                ViewBag.PaginaAtual    = _numeroPagina;
                ViewBag.TotalRegistros = UtilExtensions.GetPageInfo(_celulas.Count(), _model);

                return(View(_celulas.ToPagedList(_numeroPagina, _tamanhoPagina)));
            }
            catch (Exception ex)
            {
                this.AddNotification(@Resources.Resource1.FalhaOperacao + " - " + ex.Message, NotificationType.ERROR);
                return(View());
            }
        }