public ActionResult ComentarPublicacaoImagem(ComentarioPublicacaoViewModel comentario)
        {
            DAOComentarioPublicacao daoComentarioPublicacao  = null;
            ComentarioPublicacao    novoComentarioPublicacao = null;
            Usuario usuario = null;

            try
            {
                usuario = (Usuario)Session["Usuario"];

                novoComentarioPublicacao       = new ComentarioPublicacao();
                novoComentarioPublicacao.Texto = comentario.Texto;
                novoComentarioPublicacao.Autor = usuario;

                daoComentarioPublicacao = new DAOComentarioPublicacao();
                if (daoComentarioPublicacao.IncluirComentarioPublicacao(novoComentarioPublicacao))
                {
                    return(Json(new
                    {
                        info = "true",
                        data = novoComentarioPublicacao.Id.ToString()
                    }));
                }

                return(Json(new
                {
                    info = "false",
                    data = ""
                }));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public bool IncluirComentarioPublicacao(ComentarioPublicacao novoComentario)
        {
            string        connectionString;
            StringBuilder query      = null;
            SqlConnection connection = null;
            SqlCommand    command    = null;
            DateTime      dataHoraComentada;

            try
            {
                dataHoraComentada = DateTime.Now;

                query = new StringBuilder();
                query.Append("BEGIN TRANSACTION ");
                query.Append("INSERT INTO ComentariosPublicacao ( ");
                query.Append("	Texto, ");
                query.Append("  IdAutor, ");
                query.Append("	DataHoraComentada ");
                query.Append(") VALUES ( ");
                query.Append("	@Texto, ");
                query.Append("  @IdAutor, ");
                query.Append("	@DataHoraComentada); ");
                query.Append("SET @Id = SCOPE_IDENTITY(); ");
                query.Append("COMMIT");

                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("@Texto", novoComentario.Texto);
                        command.Parameters.AddWithValue("@IdAutor", novoComentario.Autor.Id);
                        command.Parameters.AddWithValue("@DataHoraComentada", dataHoraComentada);
                        command.Parameters.Add("@Id", SqlDbType.Int).Direction = ParameterDirection.Output;

                        connection.Open();
                        if (command.ExecuteNonQuery() == 0)
                        {
                            return(false);
                        }

                        novoComentario.Id = (int)command.Parameters["@Id"].Value;
                        novoComentario.DataHoraComentada = dataHoraComentada;
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #3
0
        public string gravarComentario(ComentarioPublicacao comentario)
        {
            Parametrizar Parametros = new Parametrizar(6);

            Parametros.AddParam("id_publicacao", comentario.id_publicacao, "string");
            Parametros.AddParam("id_autor_publicacao", comentario.id_autor_publicacao, "string");
            Parametros.AddParam("id_autor_comentario", comentario.id_autor_comentario, "string");
            Parametros.AddParam("id_sequencia", comentario.id_sequencia, "string");
            Parametros.AddParam("texto_comentario", comentario.texto_comentario, "string");
            Parametros.AddParam("operacao", comentario.operacao, "int");

            return(ConnectionDB.executarProcedure("Proc_GravarPublicacaoComentario", Parametros.ObterParametros(), Parametros.getQuantidade(), "string").ToString());
        }
예제 #4
0
        public void PopularComentarios(PublicacaoImagem publicacaoImagem)
        {
            string               connectionString;
            StringBuilder        query                = null;
            SqlConnection        connection           = null;
            SqlCommand           command              = null;
            SqlDataReader        dataReader           = null;
            ComentarioPublicacao comentarioPublicacao = null;
            Usuario              autor                = null;

            try
            {
                publicacaoImagem.Comentarios = new List <ComentarioPublicacao>();

                query = new StringBuilder();
                query.Append("SELECT ");
                query.Append("    C.Id, ");
                query.Append("    C.Texto, ");
                query.Append("    C.IdAutor, ");
                query.Append("    C.DataHoraComentada, ");
                query.Append("    C.IdPublicacao, ");
                query.Append("    U.Nome AS NomeAutor ");
                query.Append("FROM ComentariosPublicacao C ");
                query.Append("    INNER JOIN Usuarios U ON C.IdAutor = U.Id ");
                query.Append("WHERE IdPublicacao = @IdPublicacao");

                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("@IdPublicacao", publicacaoImagem.Id);

                        connection.Open();
                        using (dataReader = command.ExecuteReader())
                        {
                            if (dataReader.HasRows)
                            {
                                while (dataReader.Read())
                                {
                                    comentarioPublicacao                   = new ComentarioPublicacao();
                                    comentarioPublicacao.Id                = (int)dataReader["Id"];
                                    comentarioPublicacao.Texto             = dataReader["Texto"].ToString();
                                    comentarioPublicacao.DataHoraComentada = (DateTime)dataReader["DataHoraComentada"];

                                    autor      = new Usuario();
                                    autor.Id   = (int)dataReader["IdAutor"];
                                    autor.Nome = dataReader["NomeAutor"].ToString();
                                    comentarioPublicacao.Autor = autor;

                                    publicacaoImagem.Comentarios.Add(comentarioPublicacao);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }