public bool inserirRevisao(Materia dadosMateria, Comentario dadosComentario, int codMateria) { SqlConnection conexao = new SqlConnection(Conexao.StringDeConexao); SqlTransaction trans = null;//transação try { conexao.Open(); trans = conexao.BeginTransaction(IsolationLevel.ReadCommitted); //Inserção da Revisão através da atualização dos dados na tabela Materia string sqlMateria = @"UPDATE Materia SET nome=@nome, materiaEscrita=@materiaEscrita, status=@status, dataAtualizacao=@dataAtualizacao, revisao=@revisao, parecerJornalista=@parecerJornalista, parecerRevisor=@parecerRevisor, alteracaoJornalista=@alteracaoJornalista, alteracaoRevisor=@alteracaoRevisor WHERE codMateria=@codMateria"; SqlCommand comandoMateria = new SqlCommand(sqlMateria, conexao); comandoMateria.Transaction = trans; comandoMateria.Parameters.AddWithValue("@codMateria", codMateria); comandoMateria.Parameters.AddWithValue("@nome", dadosMateria.nome); comandoMateria.Parameters.AddWithValue("@materiaEscrita", dadosMateria.materiaEscrita); comandoMateria.Parameters.AddWithValue("@status", dadosMateria.status); comandoMateria.Parameters.AddWithValue("@dataAtualizacao", dadosMateria.dataAtualizacao); comandoMateria.Parameters.AddWithValue("@revisao", dadosMateria.revisao); comandoMateria.Parameters.AddWithValue("@parecerJornalista", dadosMateria.parecerJornalista); comandoMateria.Parameters.AddWithValue("@parecerRevisor", dadosMateria.parecerRevisor); comandoMateria.Parameters.AddWithValue("@alteracaoJornalista", dadosMateria.alteracaoJornalista); comandoMateria.Parameters.AddWithValue("@alteracaoRevisor", dadosMateria.alteracaoRevisor); foreach (SqlParameter Parameter in comandoMateria.Parameters) { if (Parameter.Value == null) { Parameter.Value = DBNull.Value; } else if (String.IsNullOrEmpty(Parameter.Value.ToString())) { Parameter.Value = DBNull.Value; } } comandoMateria.ExecuteNonQuery(); /////////////////////////////////// //Inserção dos comentários string sqlComentario = @"INSERT INTO Comentario(codMateria, codPessoa, titulo, comentario, dataCadastro) VALUES(@codMateria, @codPessoa, @titulo, @comentario, @dataCadastro)"; SqlCommand comandoComentario = new SqlCommand(sqlComentario, conexao); comandoComentario.Transaction = trans; comandoComentario.Parameters.AddWithValue("@codMateria", dadosComentario.codMateria); comandoComentario.Parameters.AddWithValue("@codPessoa", dadosComentario.codPessoa); comandoComentario.Parameters.AddWithValue("@titulo", dadosComentario.titulo); comandoComentario.Parameters.AddWithValue("@comentario", dadosComentario.comentario); comandoComentario.Parameters.AddWithValue("@dataCadastro", dadosComentario.dataCadastro); foreach (SqlParameter Parameter in comandoComentario.Parameters) { if (Parameter.Value == null) { Parameter.Value = DBNull.Value; } else if (String.IsNullOrEmpty(Parameter.Value.ToString())) { Parameter.Value = DBNull.Value; } } comandoComentario.ExecuteNonQuery(); /////////////////////////////////// trans.Commit(); return(true); } catch { trans.Rollback(); return(false); } finally { conexao.Close(); } }
//public List<Materia> filtrarMateria(int codPessoa_Jornalista, int codPessoa_Revisor, int codPessoa_Publicador, int codPessoa_Gerente, string dataAnterior = "", string dataAtual = "", int top = 0, string tipoPessoa) public List <Materia> filtrarMateria(int codPessoa, string tipoPessoa, string dataAnterior = "", string dataAtual = "", int top = 0) { List <Materia> materia = new List <Materia>(); SqlConnection conexao = new SqlConnection(Conexao.StringDeConexao); string select = ""; if (top == 0) { select = "SELECT"; } else { select = "SELECT TOP " + top.ToString(); } string campos = @" codMateria, codPessoa_Jornalista, codPessoa_Revisor, codPessoa_Publicador, m.nome, materiaEscrita, m.codSecao, status, m.dataCadastro, dataAtualizacao, pj.nome as Jornalista, pr.nome as Revisor, pp.nome as Publicador, p.nome as Gerente, revisao, codPessoa_Gerente FROM Materia m INNER JOIN Pessoa pj ON pj.codPessoa=m.codPessoa_Jornalista LEFT JOIN Pessoa pr ON pr.codPessoa=m.codPessoa_Revisor LEFT JOIN Pessoa pp ON pp.codPessoa=m.codPessoa_Publicador INNER JOIN Secao s ON s.codSecao=m.codSecao INNER JOIN Pessoa p ON p.codPessoa=s.codPessoa_Gerente"; string filtro = ""; if (tipoPessoa.Equals("G")) { filtro = " WHERE (codPessoa_Gerente = @codPessoa AND CONVERT(VARCHAR(10), m.dataCadastro, 103) BETWEEN @dataInicial AND @dataFinal) ORDER BY m.dataAtualizacao DESC"; } else if (tipoPessoa.Equals("P")) { filtro = " WHERE (codPessoa_Publicador = @codPessoa AND CONVERT(VARCHAR(10), m.dataCadastro, 103) BETWEEN @dataInicial AND @dataFinal) ORDER BY m.dataAtualizacao DESC"; } else if (tipoPessoa.Equals("R")) { filtro = " WHERE (codPessoa_Revisor = @codPessoa AND CONVERT(VARCHAR(10), m.dataCadastro, 103) BETWEEN @dataInicial AND @dataFinal) ORDER BY m.dataAtualizacao DESC"; } else if (tipoPessoa.Equals("J")) { filtro = " WHERE (codPessoa_Jornalista = @codPessoa AND CONVERT(VARCHAR(10), m.dataCadastro, 103) BETWEEN @dataInicial AND @dataFinal) ORDER BY m.dataAtualizacao DESC"; } string SQL = select + campos + filtro; SqlCommand comando = new SqlCommand(SQL, conexao); //comando.Parameters.AddWithValue("@codPessoa_Gerente", codPessoa_Gerente); //comando.Parameters.AddWithValue("@codPessoa_Jornalista", codPessoa_Jornalista); //comando.Parameters.AddWithValue("@codPessoa_Revisor", codPessoa_Revisor); //comando.Parameters.AddWithValue("@codPessoa_Publicador", codPessoa_Publicador); comando.Parameters.AddWithValue("@codPessoa", codPessoa); comando.Parameters.AddWithValue("@dataInicial", dataAnterior); comando.Parameters.AddWithValue("@dataFinal", dataAtual); try { conexao.Open(); SqlDataReader resultado = comando.ExecuteReader(); while (resultado.Read()) { Materia dadosMateria = new Materia(); dadosMateria.codMateria = (int)resultado["codMateria"]; dadosMateria.codPessoa_Jornalista = (int)resultado["codPessoa_Jornalista"]; dadosMateria.codPessoa_Revisor = resultado["codPessoa_Revisor"] is DBNull ? 0 : (int)resultado["codPessoa_Revisor"]; dadosMateria.codPessoa_Publicador = resultado["codPessoa_Publicador"] is DBNull ? 0 : (int)resultado["codPessoa_Publicador"]; dadosMateria.nome = resultado["nome"].ToString(); dadosMateria.materiaEscrita = resultado["materiaEscrita"].ToString(); dadosMateria.codSecao = (int)resultado["codSecao"]; dadosMateria.status = resultado["status"].ToString().Equals("") ? "Não enviada" : resultado["status"].ToString(); dadosMateria.dataCadastro = (DateTime)resultado["dataCadastro"]; dadosMateria.dataAtualizacao = resultado["dataAtualizacao"] is DBNull ? DateTime.MinValue : (DateTime)resultado["dataAtualizacao"]; dadosMateria.Jornalista = resultado["Jornalista"].ToString(); dadosMateria.Revisor = resultado["Revisor"].ToString(); dadosMateria.Publicador = resultado["Publicador"].ToString(); dadosMateria.Gerente = resultado["Gerente"].ToString(); dadosMateria.revisao = resultado["revisao"].ToString(); dadosMateria.codPessoa_Gerente = (int)resultado["codPessoa_Gerente"]; materia.Add(dadosMateria); } return(materia); } catch { return(null); } finally { conexao.Close(); } }
public List <Materia> listarMateriaGerente(int codPessoa_Gerente) { List <Materia> materia = new List <Materia>(); SqlConnection conexao = new SqlConnection(Conexao.StringDeConexao); string SQL = @"SELECT codMateria, codPessoa_Jornalista, codPessoa_Revisor, codPessoa_Publicador, m.nome, materiaEscrita, m.codSecao, status, m.dataCadastro, dataAtualizacao, pj.nome as Jornalista, pr.nome as Revisor, pp.nome as Publicador, p.nome as Gerente, revisao, codPessoa_Gerente FROM Materia m INNER JOIN Pessoa pj ON pj.codPessoa=m.codPessoa_Jornalista LEFT JOIN Pessoa pr ON pr.codPessoa=m.codPessoa_Revisor LEFT JOIN Pessoa pp ON pp.codPessoa=m.codPessoa_Publicador INNER JOIN Secao s ON s.codSecao=m.codSecao INNER JOIN Pessoa p ON p.codPessoa=s.codPessoa_Gerente WHERE (codPessoa_Gerente = @codPessoa_Gerente) ORDER BY m.dataAtualizacao DESC"; SqlCommand comando = new SqlCommand(SQL, conexao); comando.Parameters.AddWithValue("@codPessoa_Gerente", codPessoa_Gerente); try { conexao.Open(); SqlDataReader resultado = comando.ExecuteReader(); while (resultado.Read()) { Materia dadosMateria = new Materia(); dadosMateria.codMateria = (int)resultado["codMateria"]; dadosMateria.codPessoa_Jornalista = (int)resultado["codPessoa_Jornalista"]; dadosMateria.codPessoa_Revisor = resultado["codPessoa_Revisor"] is DBNull ? 0 : (int)resultado["codPessoa_Revisor"]; dadosMateria.codPessoa_Publicador = resultado["codPessoa_Publicador"] is DBNull ? 0 : (int)resultado["codPessoa_Publicador"]; dadosMateria.nome = resultado["nome"].ToString(); dadosMateria.materiaEscrita = resultado["materiaEscrita"].ToString(); dadosMateria.codSecao = (int)resultado["codSecao"]; dadosMateria.status = resultado["status"].ToString().Equals("") ? "Não enviada" : resultado["status"].ToString(); dadosMateria.dataCadastro = (DateTime)resultado["dataCadastro"]; dadosMateria.dataAtualizacao = resultado["dataAtualizacao"] is DBNull ? DateTime.MinValue : (DateTime)resultado["dataAtualizacao"]; dadosMateria.Jornalista = resultado["Jornalista"].ToString(); dadosMateria.Revisor = resultado["Revisor"].ToString(); dadosMateria.Publicador = resultado["Publicador"].ToString(); dadosMateria.Gerente = resultado["Gerente"].ToString(); dadosMateria.revisao = resultado["revisao"].ToString(); dadosMateria.codPessoa_Gerente = (int)resultado["codPessoa_Gerente"]; materia.Add(dadosMateria); } return(materia); } catch { return(null); } finally { conexao.Close(); } }