public List <OutPutPessoaJuridicaGrid> PesquisaPessoaJuridica(string palavra)
        {
            using (var db = new FIPEContratosContext())
            {
                try
                {
                    var listaPessoaJuridica = new List <OutPutPessoaJuridicaGrid>();
                    var bPessoaJuridica     = new bPessoaJuridica(db);
                    var pessoasJuridicas    = bPessoaJuridica.BuscarPessoaJuridica();
                    var query       = new List <OutPutPessoaJuridicaGrid>();
                    var pesqPalavra = palavra.Split(" ");

                    foreach (var itemPalavra in pesqPalavra)
                    {
                        var queryPalavra = pessoasJuridicas.Where(w => (w.NmFantasia != null && w.NmFantasia.ToUpper().Contains(itemPalavra.ToUpper())) ||
                                                                  (w.Endereco != null && w.Endereco.ToUpper().Contains(itemPalavra.ToUpper())) ||
                                                                  (w.Cnpj != null && w.Cnpj.ToUpper().Contains(itemPalavra.ToUpper())) ||
                                                                  (w.IdCidade > 0 && bPessoaJuridica.ObterNomeCidade((Int32)w.IdCidade).ToUpper().Contains(itemPalavra.ToUpper()))).ToList();

                        foreach (var item in queryPalavra)
                        {
                            var itemPessoaJuridica = new OutPutPessoaJuridicaGrid();

                            if (queryPalavra != null)
                            {
                                itemPessoaJuridica.IdPessoaJuridica = item.IdPessoaJuridica;
                                itemPessoaJuridica.NmFantasia       = item.NmFantasia;
                                itemPessoaJuridica.Endereco         = item.Endereco;
                                itemPessoaJuridica.IdCidade         = db.Cidade.Where(w => w.IdCidade == item.IdCidade).FirstOrDefault().NmCidade;
                                itemPessoaJuridica.cnpj             = item.Cnpj;

                                query.Add(itemPessoaJuridica);
                            }
                        }
                    }

                    return(query.OrderBy(o => o.IdPessoaJuridica).ToList());
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaJuridicaController-PesquisaPessoaJuridica");


                    throw;
                }
            }
        }
        public List <OutPutPessoaJuridicaGrid> ListaPessoaJuridica()
        {
            using (var db = new FIPEContratosContext())
            {
                try
                {
                    var listaPessoaJuridica = new List <OutPutPessoaJuridicaGrid>();

                    var pessoasJuridicas = new bPessoaJuridica(db).BuscarPessoaJuridica();

                    foreach (var item in pessoasJuridicas)
                    {
                        var pessoaJuridica = new OutPutPessoaJuridicaGrid();
                        pessoaJuridica.IdPessoaJuridica = item.IdPessoaJuridica;
                        pessoaJuridica.NmFantasia       = item.NmFantasia;
                        if (item.IdCidade != null)
                        {
                            pessoaJuridica.IdCidade = db.Cidade.Where(w => w.IdCidade == item.IdCidade).FirstOrDefault().NmCidade;
                        }
                        pessoaJuridica.Endereco = item.Endereco;
                        if (item.Cnpj != null)
                        {
                            pessoaJuridica.cnpj = item.Cnpj;
                        }
                        pessoaJuridica.Uf = item.Uf;

                        listaPessoaJuridica.Add(pessoaJuridica);
                    }

                    return(listaPessoaJuridica.OrderBy(o => o.NmFantasia).ToList());
                }
                catch (Exception ex)
                {
                    new bEmail(db).EnviarEmailTratamentoErro(ex, "PessoaJuridicaController-ListaPessoaJuridica");


                    throw;
                }
            }
        }