Exemple #1
0
        // GET: Pessoa
        public ActionResult Index(string Ordenacao = "", string TextoPesquisa = "", string ColunaPesquisa = "", string FiltroAtual = "", int pagina = 1)
        {
            ViewBag.Ordenacao      = Ordenacao;
            ViewBag.ColunaPesquisa = ColunaPesquisa;
            if (TextoPesquisa == null)
            {
                TextoPesquisa = FiltroAtual.ToUpper();
            }
            ViewBag.TextoPesquisa = TextoPesquisa.ToUpper();
            PessoaModel lista         = new PessoaModel();
            var         listaOrdenada = from s in lista.PessoaLista()
                                        select s;

            if (!String.IsNullOrEmpty(TextoPesquisa))
            {
                switch (ColunaPesquisa)
                {
                case "Nome":
                    listaOrdenada = listaOrdenada.Where(s => s.Nome.Contains(TextoPesquisa.ToUpper()));
                    break;

                case "CpfCnpj":
                    listaOrdenada = listaOrdenada.Where(s => s.CpfCnpj.Contains(TextoPesquisa.ToUpper()));
                    break;

                case "Cidade":
                    listaOrdenada = listaOrdenada.Where(s => s.Cidade.Contains(TextoPesquisa.ToUpper()));
                    break;
                }
            }
            switch (Ordenacao)
            {
            case "Id":
                listaOrdenada = listaOrdenada.OrderByDescending(s => s.Id);
                break;

            case "Nome":
                listaOrdenada = listaOrdenada.OrderBy(s => s.Nome);
                break;

            case "CpfCnpj":
                listaOrdenada = listaOrdenada.OrderBy(s => s.CpfCnpj);
                break;

            case "Bairro":
                listaOrdenada = listaOrdenada.OrderBy(s => s.Bairro);
                break;

            case "Cidade":
                listaOrdenada = listaOrdenada.OrderBy(s => s.Cidade);
                break;

            case "Estado":
                listaOrdenada = listaOrdenada.OrderBy(s => s.Estado);
                break;

            default:
                listaOrdenada = listaOrdenada.OrderBy(s => s.Id);
                break;
            }

            return(View(listaOrdenada.ToPagedList(pagina, 5)));
        }