public List <Entidades.Noticia> Consultar(Entidades.Noticia entidade) { try { DataTable objDataTable = null; Dados.LimparParametros(); Dados.AdicionarParametros("@vchAcao", "SELECIONAR"); Dados.AdicionarParametros("@intIdNoticia", entidade.IdNoticia); Dados.AdicionarParametros("@vchTitulo", entidade.Titulo); Dados.AdicionarParametros("@vchConteudo", entidade.Conteudo); objDataTable = Dados.ExecutaConsultar(System.Data.CommandType.StoredProcedure, "spNoticia"); List <Entidades.Noticia> objRetorno = new List <Entidades.Noticia>(); if (objDataTable.Rows.Count <= 0) { return(objRetorno); } foreach (DataRow objLinha in objDataTable.Rows) { Entidades.Noticia objNovaNoticia = new Entidades.Noticia(); objNovaNoticia.IdNoticia = objLinha["IdNoticia"] != DBNull.Value ? Convert.ToInt32(objLinha["IdNoticia"]) : 0; objNovaNoticia.Titulo = objLinha["Titulo"] != DBNull.Value ? Convert.ToString(objLinha["Titulo"]) : null; objNovaNoticia.Conteudo = objLinha["Conteudo"] != DBNull.Value ? Convert.ToString(objLinha["Conteudo"]) : null; objNovaNoticia.PalavrasChave = new AcessoDados.PalavraChave().Consultar(new Entidades.PalavraChave() { IdPalavraChave = null, Noticia = objNovaNoticia, PalavraChaveTexto = null }); List <Entidades.StatusNoticia> statusConsulta = new List <Entidades.StatusNoticia>(); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.Aprovada }); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.Criada }); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.Editada }); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.GrupoVinculado }); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.ImagensAssociadas }); statusConsulta.Add(new Entidades.StatusNoticia() { IdStatus = (int)Entidades.StatusNoticiaEnum.Submetida }); List <Entidades.Historico> historicos = new AcessoDados.Historico().Consultar(new Entidades.Historico() { Noticia = objNovaNoticia, Usuario = new Entidades.Usuario() { IdUsuario = null } }, statusConsulta); if (historicos.Count > 0) { var statusNoticia = (from f in historicos select f).OrderByDescending(p => p.DataHora).First().StatusNoticia; objNovaNoticia.StatusNoticia = statusNoticia; } objRetorno.Add(objNovaNoticia); } return(objRetorno); } catch (Exception ex) { throw ex; } }