public JsonResult SalvarPublicacaoAntesDepois() { DAOPublicacaoAntesDepois daoPublicacaoAntesDepois = null; Usuario usuario = null; string pathImagem1 = null; string pathImagem2 = null; PublicacaoAntesDepois novaPublicacaoAntesDepois = null; try { usuario = (Usuario)Session["Usuario"]; if (System.Web.HttpContext.Current.Request.Files.AllKeys.Any()) { HttpPostedFile postedFile1 = System.Web.HttpContext.Current.Request.Files["imagemAntes"]; Image imagem1 = Bitmap.FromStream(postedFile1.InputStream); pathImagem1 = @"\ImagensPublicacoes\" + postedFile1.FileName; imagem1.Save(System.Web.HttpContext.Current.Server.MapPath("~") + @"\ImagensPublicacoes\" + postedFile1.FileName); HttpPostedFile postedFile2 = System.Web.HttpContext.Current.Request.Files["imagemDepois"]; Image imagem2 = Bitmap.FromStream(postedFile2.InputStream); pathImagem2 = @"\ImagensPublicacoes\" + postedFile2.FileName; imagem2.Save(System.Web.HttpContext.Current.Server.MapPath("~") + @"\ImagensPublicacoes\" + postedFile2.FileName); } else { throw new Exception(); } novaPublicacaoAntesDepois = new PublicacaoAntesDepois(); novaPublicacaoAntesDepois.Autor = usuario; novaPublicacaoAntesDepois.PathImagemAntes = pathImagem1; novaPublicacaoAntesDepois.PathImagemDepois = pathImagem2; novaPublicacaoAntesDepois.Titulo = System.Web.HttpContext.Current.Request.Form["txtTitulo"]; novaPublicacaoAntesDepois.Texto = System.Web.HttpContext.Current.Request.Form["txtTexto"]; //novaPublicacaoAntesDepois.Etiquetas.AddRange(System.Web.HttpContext.Current.Request.Form["tags"].ToString().Split(',')); daoPublicacaoAntesDepois = new DAOPublicacaoAntesDepois(); if (daoPublicacaoAntesDepois.IncluirPublicacaoAntesDepois(novaPublicacaoAntesDepois)) { return(Json("Aew salvou!")); } else { return(Json("Deu ruim pra salvar a imagem hein...")); } } catch (Exception ex) { throw ex; } }
public bool IncluirPublicacaoAntesDepois(PublicacaoAntesDepois novaPublicacaoAntesDepois) { SqlConnection connection = null; StringBuilder query = null; SqlCommand command = null; DateTime dataHoraRegistrada; try { dataHoraRegistrada = DateTime.Now; query = new StringBuilder(); query.Append("BEGIN TRANSACTION "); query.Append("INSERT INTO Publicacoes ( "); query.Append(" IdTipo, "); query.Append(" DataHoraPublicado, "); query.Append(" IdUsuario "); query.Append(") VALUES ( "); query.Append(" @IdTipo, "); query.Append(" @DataHoraPublicado, "); query.Append(" @IdUsuario); "); query.Append("SET @IdPublicacao = SCOPE_IDENTITY(); "); query.Append("INSERT INTO PublicacoesAntesDepois ( "); query.Append(" Id, "); query.Append(" PathImagemAntes, "); query.Append(" PathImagemDepois, "); query.Append(" Titulo, "); query.Append(" Etiquetas, "); query.Append(" Texto "); query.Append(") VALUES ( "); query.Append(" @IdPublicacao, "); query.Append(" @PathImagemAntes, "); query.Append(" @PathImagemDepois, "); query.Append(" @Titulo, "); query.Append(" @Etiquetas, "); query.Append(" @Texto); "); query.Append("COMMIT"); connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["ConnectionEstudo"].ConnectionString); connection.Open(); command = connection.CreateCommand(); command.CommandType = CommandType.Text; command.CommandText = query.ToString(); command.Parameters.AddWithValue("@IdTipo", (int)novaPublicacaoAntesDepois.Tipo); command.Parameters.AddWithValue("@DataHoraPublicado", dataHoraRegistrada); command.Parameters.AddWithValue("@IdUsuario", novaPublicacaoAntesDepois.Autor.Id); command.Parameters.AddWithValue("@PathImagemAntes", novaPublicacaoAntesDepois.PathImagemAntes); command.Parameters.AddWithValue("@PathImagemDepois", novaPublicacaoAntesDepois.PathImagemDepois); command.Parameters.AddWithValue("@Titulo", novaPublicacaoAntesDepois.Titulo); command.Parameters.AddWithValue("@Texto", novaPublicacaoAntesDepois.Texto); command.Parameters.AddWithValue("@Etiquetas", String.Join(",", novaPublicacaoAntesDepois.Etiquetas)); command.Parameters.Add("@IdPublicacao", SqlDbType.Int).Direction = ParameterDirection.Output; if (command.ExecuteNonQuery() > 0) { novaPublicacaoAntesDepois.Id = (int)command.Parameters["@IdPublicacao"].Value; novaPublicacaoAntesDepois.DataHoraPublicado = dataHoraRegistrada; return(true); } else { return(false); } } catch (Exception ex) { throw ex; } }
public List <Publicacao> ObterPublicacoes() { string connectionString; StringBuilder query = null; SqlConnection connection = null; SqlCommand command = null; SqlDataReader dataReader = null; Usuario autor = null; Imagem imagem = null; PublicacaoImagem publicacaoImagem = null; PublicacaoProjeto publicacaoProjeto = null; PublicacaoAntesDepois publicacaoAntesDepois = null; List <Publicacao> listaPublicacoes = null; try { listaPublicacoes = new List <Publicacao>(); query = new StringBuilder(); query.Append("SELECT "); query.Append(" P.Id, "); query.Append(" P.IdTipo, "); query.Append(" P.DataHoraPublicado, "); query.Append(" P.IdUsuario AS IdAutorPublicacao, "); query.Append(" U.Nome AS NomeAutor, "); query.Append(" U.Email AS EmailAutor, "); query.Append(" PI.IdImagem, "); query.Append(" I.Legenda AS LegendaImagem, "); query.Append(" I.DataHoraInclusao, "); query.Append(" I.PathImagem, "); query.Append(" PP.Titulo AS TituloProjeto, "); query.Append(" PP.Conteudo AS ConteudoPublicacaoProjeto, "); query.Append(" PAD.PathImagemAntes, "); query.Append(" PAD.PathImagemDepois, "); query.Append(" PAD.Titulo AS TituloAntesDepois, "); query.Append(" PAD.Texto AS TextoAntesDepois "); query.Append("FROM Publicacoes P "); query.Append(" LEFT JOIN Usuarios U ON P.Id = U.Id "); query.Append(" LEFT JOIN PublicacoesImagem PI ON P.Id = PI.Id "); query.Append(" LEFT JOIN Imagens I ON PI.IdImagem = I.Id "); query.Append(" LEFT JOIN PublicacoesProjeto PP ON P.Id = PP.Id "); query.Append(" LEFT JOIN PublicacoesAntesDepois PAD ON P.Id = PAD.Id"); connectionString = WebConfigurationManager.ConnectionStrings["ConnectionEstudo"].ConnectionString; using (connection = new SqlConnection(connectionString)) { using (command = connection.CreateCommand()) { command.CommandType = CommandType.Text; command.CommandText = query.ToString(); connection.Open(); using (dataReader = command.ExecuteReader()) { listaPublicacoes = new List <Publicacao>(); while (dataReader.Read()) { switch ((int)dataReader["IdTipo"]) { case (int)Publicacao.TipoPublicacao.PublicacaoImagem: autor = new Usuario(); autor.Id = (int)dataReader["IdAutorPublicacao"]; autor.Nome = dataReader["NomeAutor"].ToString(); autor.Email = dataReader["EmailAutor"].ToString(); imagem = new Imagem(); imagem.Id = (int)dataReader["IdImagem"]; imagem.Legenda = dataReader["LegendaImagem"].ToString(); imagem.DataHoraInclusao = (DateTime)dataReader["DataHoraInclusao"]; imagem.PathImagem = dataReader["PathImagem"].ToString(); imagem.Dono = autor; publicacaoImagem = new PublicacaoImagem(); publicacaoImagem.Id = (int)dataReader["Id"]; publicacaoImagem.Autor = autor; publicacaoImagem.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; publicacaoImagem.Imagem = imagem; listaPublicacoes.Add(publicacaoImagem); break; case (int)Publicacao.TipoPublicacao.PublicacaoProjeto: autor = new Usuario(); autor.Id = (int)dataReader["IdAutorPublicacao"]; autor.Nome = dataReader["NomeAutor"].ToString(); autor.Email = dataReader["EmailAutor"].ToString(); publicacaoProjeto = new PublicacaoProjeto(); publicacaoProjeto.Id = (int)dataReader["Id"]; publicacaoProjeto.Autor = autor; publicacaoProjeto.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; publicacaoProjeto.Titulo = dataReader["TituloProjeto"].ToString(); publicacaoProjeto.Conteudo = JsonConvert.DeserializeObject <List <ItemPublicacao> >(dataReader["ConteudoPublicacaoProjeto"].ToString()); listaPublicacoes.Add(publicacaoProjeto); break; case (int)Publicacao.TipoPublicacao.PublicacaoAntesDepois: autor = new Usuario(); autor.Id = (int)dataReader["IdAutorPublicacao"]; autor.Nome = dataReader["NomeAutor"].ToString(); autor.Email = dataReader["EmailAutor"].ToString(); publicacaoAntesDepois = new PublicacaoAntesDepois(); publicacaoAntesDepois.Id = (int)dataReader["Id"]; publicacaoAntesDepois.Autor = autor; publicacaoAntesDepois.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; publicacaoAntesDepois.PathImagemAntes = dataReader["PathImagemAntes"].ToString(); publicacaoAntesDepois.PathImagemDepois = dataReader["PathImagemDepois"].ToString(); publicacaoAntesDepois.Titulo = dataReader["TituloAntesDepois"].ToString(); publicacaoAntesDepois.Texto = dataReader["TextoAntesDepois"].ToString(); listaPublicacoes.Add(publicacaoAntesDepois); break; } } } } } return(listaPublicacoes); } finally { if (query != null) { query = null; } } }
public void PopularPublicacoes(UsuarioProfissional autor) { string connectionString; StringBuilder query = null; SqlConnection connection = null; SqlCommand command = null; SqlDataReader dataReader = null; PublicacaoImagem publicacaoImagem = null; PublicacaoProjeto publicacaoProjeto = null; PublicacaoAntesDepois publicacaoAntesDepois = null; Imagem imagem = null; try { autor.Publicacoes = new List <Publicacao>(); query = new StringBuilder(); query.Append("SELECT "); query.Append(" P.Id, "); query.Append(" P.IdTipo, "); query.Append(" P.DataHoraPublicado, "); query.Append(" P.IdUsuario, "); query.Append(" PP.Titulo AS TituloProjeto, "); query.Append(" PP.Conteudo AS ConteudoPublicacaoProjeto, "); query.Append(" PAD.Titulo AS TituloAntesDepois, "); query.Append(" PAD.Texto AS TextoAntesDepois, "); query.Append(" PAD.PathImagemAntes, "); query.Append(" PAD.PathImagemDepois, "); query.Append(" PIM.IdImagem, "); query.Append(" IM.Legenda AS LegendaImagem, "); query.Append(" IM.DataHoraInclusao AS DataHoraInclusaoImagem, "); query.Append(" IM.PathImagem "); query.Append("FROM Publicacoes P "); query.Append(" LEFT JOIN PublicacoesProjeto PP ON P.Id = PP.Id "); query.Append(" LEFT JOIN PublicacoesAntesDepois PAD ON P.Id = PAD.Id "); query.Append(" LEFT JOIN PublicacoesImagem PIM ON P.Id = PIM.Id "); query.Append(" LEFT JOIN Imagens IM ON PIM.IdImagem = IM.Id "); query.Append("WHERE P.IdUsuario = @IdUsuario"); connectionString = WebConfigurationManager.ConnectionStrings["ConnectionEstudo"].ConnectionString; using (connection = new SqlConnection(connectionString)) { using (command = connection.CreateCommand()) { command.CommandType = CommandType.Text; command.CommandText = query.ToString(); command.Parameters.AddWithValue("@IdUsuario", autor.Id); connection.Open(); using (dataReader = command.ExecuteReader()) { if (dataReader.HasRows) { while (dataReader.Read()) { switch ((Publicacao.TipoPublicacao)dataReader["IdTipo"]) { case Publicacao.TipoPublicacao.PublicacaoImagem: publicacaoImagem = new PublicacaoImagem(); publicacaoImagem.Id = (int)dataReader["Id"]; publicacaoImagem.Autor = autor; publicacaoImagem.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; imagem = new Imagem(); imagem.Id = (int)dataReader["IdImagem"]; imagem.Legenda = dataReader["LegendaImagem"].ToString(); imagem.PathImagem = dataReader["PathImagem"].ToString(); imagem.DataHoraInclusao = (DateTime)dataReader["DataHoraInclusaoImagem"]; publicacaoImagem.Imagem = imagem; autor.Publicacoes.Add(publicacaoImagem); break; case Publicacao.TipoPublicacao.PublicacaoProjeto: publicacaoProjeto = new PublicacaoProjeto(); publicacaoProjeto.Id = (int)dataReader["Id"]; publicacaoProjeto.Autor = autor; publicacaoProjeto.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; publicacaoProjeto.Titulo = dataReader["TituloProjeto"].ToString(); publicacaoProjeto.Conteudo = JsonConvert.DeserializeObject <List <ItemPublicacao> >(dataReader["ConteudoPublicacaoProjeto"].ToString()); autor.Publicacoes.Add(publicacaoProjeto); break; case Publicacao.TipoPublicacao.PublicacaoAntesDepois: publicacaoAntesDepois = new PublicacaoAntesDepois(); publicacaoAntesDepois.Id = (int)dataReader["Id"]; publicacaoAntesDepois.Autor = autor; publicacaoAntesDepois.DataHoraPublicado = (DateTime)dataReader["DataHoraPublicado"]; publicacaoAntesDepois.Titulo = dataReader["TituloAntesDepois"].ToString(); publicacaoAntesDepois.Texto = dataReader["TextoAntesDepois"].ToString(); publicacaoAntesDepois.PathImagemAntes = dataReader["PathImagemAntes"].ToString(); publicacaoAntesDepois.PathImagemDepois = dataReader["PathImagemDepois"].ToString(); autor.Publicacoes.Add(publicacaoAntesDepois); break; } } } } } } } catch (Exception ex) { throw ex; } finally { } }