diff --git a/src/main/java/com/casaculturaqxd/sgec/DAO/EventoDAO.java b/src/main/java/com/casaculturaqxd/sgec/DAO/EventoDAO.java index 849f55f3..d2319dfe 100644 --- a/src/main/java/com/casaculturaqxd/sgec/DAO/EventoDAO.java +++ b/src/main/java/com/casaculturaqxd/sgec/DAO/EventoDAO.java @@ -209,13 +209,33 @@ public ArrayList listarUltimosEventos() throws SQLException { return eventos; } + public ArrayList listarNomesEventos() throws SQLException { + String sql = "select nome_evento from evento"; + PreparedStatement stmt = connection.prepareStatement(sql); + try { + ArrayList nomes = new ArrayList<>(); + + ResultSet resultSet = stmt.executeQuery(); + while (resultSet.next()) { + nomes.add(resultSet.getString("nome_evento")); + } + return nomes; + } catch (Exception e) { + logException(e); + throw new SQLException("falha listando nomes dos eventos", e); + } finally { + stmt.close(); + } + } + public ArrayList pesquisarEvento(String nome, Date inicioDate, Date fimDate) { - String sql = "select id_evento,nome_evento,data_inicial, horario, id_service_file from evento where nome_evento ilike ? "; + String sql = "SELECT * FROM pesquisar_evento where nome ilike ? "; + if (inicioDate != null) - sql += "and data_inicial >= '" + inicioDate.toString() + "' "; + sql += "and inicio >= '" + inicioDate.toString() + "' "; if (fimDate != null) - sql += "and data_final <= '" + fimDate.toString() + "' "; + sql += "and fim <= '" + fimDate.toString() + "' "; if (nome == "" && inicioDate == null && fimDate == null) sql += "limit 30"; @@ -226,6 +246,7 @@ public ArrayList pesquisarEvento(String nome, Date inicioDate, Date fimD PreparedStatement stmt = connection.prepareStatement(sql); stmt.setString(1, "%" + nome + "%"); ResultSet resultSet = stmt.executeQuery(); + while (resultSet.next()) { Evento evento = new Evento(resultSet.getInt("id_evento")); eventos.add(getPreviewEvento(evento).get()); @@ -340,9 +361,8 @@ public Optional getEvento(String nomeEvento) throws SQLException { } public Optional getPreviewEvento(Evento evento) throws SQLException { - String sql = "SELECT id_evento,nome_evento,data_inicial, horario, id_service_file FROM evento WHERE id_evento = ?"; + String sql = "SELECT id_evento, nome_evento, acessivel_em_libras, data_inicial, horario, id_service_file FROM evento WHERE id_evento = ?"; PreparedStatement preparedStatement = connection.prepareStatement(sql); - try { preparedStatement.setInt(1, evento.getIdEvento()); ResultSet resultSet = preparedStatement.executeQuery(); @@ -352,13 +372,18 @@ public Optional getPreviewEvento(Evento evento) throws SQLException { Optional resultOptional = serviceFileDAO.getArquivo(imagemCapa); if (resultOptional.isPresent()) { imagemCapa = serviceFileDAO.getArquivo(imagemCapa).get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); } else { imagemCapa = null; } EventoBuilder eventoBuilder = new EventoBuilder(); - eventoBuilder.setHorario(resultSet.getTime("horario")).setId(resultSet.getInt("id_evento")) - .setNome(resultSet.getString("nome_evento")).setDataInicial(resultSet.getDate("data_inicial")) + eventoBuilder + .setHorario(resultSet.getTime("horario")) + .setAcessivelEmLibras(resultSet.getBoolean("acessivel_em_libras")) + .setId(resultSet.getInt("id_evento")) + .setNome(resultSet.getString("nome_evento")) + .setDataInicial(resultSet.getDate("data_inicial")) .setImagemCapa(imagemCapa); return Optional.ofNullable(eventoBuilder.getEvento()); @@ -374,28 +399,6 @@ public Optional getPreviewEvento(Evento evento) throws SQLException { } } - public Optional getPreviewEvento(String nomeEvento) throws SQLException { - String sql = "SELECT id_evento FROM evento WHERE nome_evento ILIKE ?"; - PreparedStatement preparedStatement = connection.prepareStatement(sql); - - try { - preparedStatement.setString(1, nomeEvento); - ResultSet resultSet = preparedStatement.executeQuery(); - if (resultSet.next()) { - Evento evento = new Evento(resultSet.getInt("id_evento")); - - return getPreviewEvento(evento); - } else { - return Optional.empty(); - } - } catch (Exception e) { - logException(e); - throw new SQLException("falha buscando evento com nome" + nomeEvento, e); - } finally { - preparedStatement.close(); - } - } - private ArrayList buscarArquivosPorEvento(Evento evento) throws SQLException { ServiceFileDAO serviceFileDAO = new ServiceFileDAO(connection); return serviceFileDAO.listarArquivosEvento(evento); diff --git a/src/main/java/com/casaculturaqxd/sgec/DAO/GrupoEventosDAO.java b/src/main/java/com/casaculturaqxd/sgec/DAO/GrupoEventosDAO.java index 1e9b4418..870a7c8d 100644 --- a/src/main/java/com/casaculturaqxd/sgec/DAO/GrupoEventosDAO.java +++ b/src/main/java/com/casaculturaqxd/sgec/DAO/GrupoEventosDAO.java @@ -115,7 +115,9 @@ public Optional getGrupoEventos(GrupoEventos grupoEventos) throws .setOrganizadores(listOrganizadores(grupoEventos)) .setEventos(listEventos(grupoEventos)); if (resultFile.isPresent()) { - grupoEventosBuilder.setImagemCapa(resultFile.get()); + ServiceFile imagemCapa = resultFile.get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + grupoEventosBuilder.setImagemCapa(imagemCapa); } return Optional.of(grupoEventosBuilder.getGrupoEventos()); } else { @@ -150,7 +152,9 @@ public Optional getPreviewGrupoEventos(GrupoEventos grupoEventos) .setDataInicial(resultSet.getDate("data_inicial")) .setDataFinal(resultSet.getDate("data_final")); if (resultFile.isPresent()) { - grupoEventosBuilder.setImagemCapa(resultFile.get()); + ServiceFile imagemCapa = resultFile.get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + grupoEventosBuilder.setImagemCapa(imagemCapa); } return Optional.of(grupoEventosBuilder.getGrupoEventos()); } else { diff --git a/src/main/java/com/casaculturaqxd/sgec/DAO/InstituicaoDAO.java b/src/main/java/com/casaculturaqxd/sgec/DAO/InstituicaoDAO.java index 2cf254f3..919ac79e 100644 --- a/src/main/java/com/casaculturaqxd/sgec/DAO/InstituicaoDAO.java +++ b/src/main/java/com/casaculturaqxd/sgec/DAO/InstituicaoDAO.java @@ -42,7 +42,9 @@ public Optional getInstituicao(Instituicao instituicao) throws SQLE ServiceFile imagemCapa = new ServiceFile(resultado.getInt("id_service_file")); if (imagemCapa.getServiceFileId() > 0) { // setar a capa somente se o arquivo existir - instituicao.setImagemCapa(serviceFileDAO.getArquivo(imagemCapa).get()); + imagemCapa = serviceFileDAO.getArquivo(imagemCapa).get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + instituicao.setImagemCapa(imagemCapa); } instituicao.setIdInstituicao(resultado.getInt("id_instituicao")); instituicao.setNome(resultado.getString("nome_instituicao")); @@ -74,7 +76,9 @@ public Optional getInstituicao(String nome) throws SQLException { ServiceFile imagemCapa = new ServiceFile(resultado.getInt("id_service_file")); if (imagemCapa.getServiceFileId() > 0) { // setar a capa somente se o arquivo existir - instituicao.setImagemCapa(serviceFileDAO.getArquivo(imagemCapa).get()); + imagemCapa = serviceFileDAO.getArquivo(imagemCapa).get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + instituicao.setImagemCapa(imagemCapa); } instituicao.setIdInstituicao(resultado.getInt("id_instituicao")); @@ -305,7 +309,7 @@ public ArrayList listarColaboradoresGrupoEventos(int idGrupoEventos public boolean vincularOrganizadorEvento(Instituicao instituicao, Integer idEvento) throws SQLException { String sql = "insert into organizador_evento (id_instituicao,id_evento,descricao_contribuicao, valor_contribuicao)" - + " values(?, ?, ?, ?)"; + + " values(?, ?, ?, ?)"; PreparedStatement statement = conn.prepareStatement(sql); try { @@ -326,9 +330,9 @@ public boolean vincularOrganizadorEvento(Instituicao instituicao, Integer idEven } public boolean vincularOrganizadorEvento(Integer idInstituicao, Integer idEvento, String descricaoContribuicao, - String valorContribuicao) throws SQLException { + String valorContribuicao) throws SQLException { String sql = "insert into organizador_evento (id_instituicao,id_evento,descricao_contribuicao, valor_contribuicao)" - + " values(?, ?, ?, ?)"; + + " values(?, ?, ?, ?)"; PreparedStatement statement = conn.prepareStatement(sql); try { @@ -348,7 +352,7 @@ public boolean vincularOrganizadorEvento(Integer idInstituicao, Integer idEvento public boolean vincularColaboradorEvento(Instituicao instituicao, Integer idEvento) throws SQLException { String sql = "insert into colaborador_evento (id_instituicao,id_evento,descricao_contribuicao, valor_contribuicao)" - + " values(?, ?, ?, ?)"; + + " values(?, ?, ?, ?)"; PreparedStatement statement = conn.prepareStatement(sql); try { @@ -368,9 +372,9 @@ public boolean vincularColaboradorEvento(Instituicao instituicao, Integer idEven } public boolean vincularColaboradorEvento(Integer idInstituicao, Integer idEvento, String descricaoContribuicao, - String valorContribuicao) throws SQLException { + String valorContribuicao) throws SQLException { String sql = "insert into colaborador_evento (id_instituicao,id_evento,descricao_contribuicao, valor_contribuicao)" - + " values(?, ?, ?, ?)"; + + " values(?, ?, ?, ?)"; PreparedStatement statement = conn.prepareStatement(sql); try { @@ -390,7 +394,7 @@ public boolean vincularColaboradorEvento(Integer idInstituicao, Integer idEvento public boolean atualizarOrganizadorEvento(Instituicao instituicao, Integer idEvento) throws SQLException { String sql = "UPDATE organizador_evento SET descricao_contribuicao=?, valor_contribuicao=?" - + " WHERE id_instituicao = ? AND id_evento = ?"; + + " WHERE id_instituicao = ? AND id_evento = ?"; PreparedStatement stmt = conn.prepareStatement(sql); try { atualizarInstituicao(instituicao); @@ -411,7 +415,7 @@ public boolean atualizarOrganizadorEvento(Instituicao instituicao, Integer idEve public boolean atualizarColaboradorEvento(Instituicao instituicao, Integer idEvento) throws SQLException { String sql = "UPDATE colaborador_evento SET descricao_contribuicao=?, valor_contribuicao=?" - + " WHERE id_instituicao = ? AND id_evento = ?"; + + " WHERE id_instituicao = ? AND id_evento = ?"; PreparedStatement stmt = conn.prepareStatement(sql); try { atualizarInstituicao(instituicao); diff --git a/src/main/java/com/casaculturaqxd/sgec/DAO/ParticipanteDAO.java b/src/main/java/com/casaculturaqxd/sgec/DAO/ParticipanteDAO.java index 44b3b80e..0942bf64 100644 --- a/src/main/java/com/casaculturaqxd/sgec/DAO/ParticipanteDAO.java +++ b/src/main/java/com/casaculturaqxd/sgec/DAO/ParticipanteDAO.java @@ -45,15 +45,17 @@ public Optional getParticipante(Participante participante) throws ResultSet resultado = statement.executeQuery(); if (resultado.next()) { - ServiceFile resultFile = new ServiceFile(resultado.getInt("id_service_file")); - + Optional optionalImagemCapa = serviceFileDAO + .getArquivo(new ServiceFile(resultado.getInt("id_service_file"))); participante.setIdParticipante(resultado.getInt("id_participante")); participante.setAreaDeAtuacao(resultado.getString("area_atuacao")); participante.setNome(resultado.getString("nome_participante")); participante.setBio(resultado.getString("bio")); participante.setLinkMapaDaCultura(resultado.getString("link_perfil")); - if (serviceFileDAO.getArquivo(resultFile).isPresent()) { - participante.setImagemCapa(serviceFileDAO.getArquivo(resultFile).get()); + if (optionalImagemCapa.isPresent()) { + ServiceFile imagemCapa = optionalImagemCapa.get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + participante.setImagemCapa(imagemCapa); } return Optional.of(participante); } else { @@ -71,9 +73,9 @@ public Optional getParticipante(Participante participante) throws public Optional getParticipantePorNome(String nome) throws SQLException { String getParticipanteQuery = "SELECT id_participante,nome_participante,area_atuacao,bio,link_perfil,id_service_file FROM participante WHERE nome_participante=?"; - + PreparedStatement statement = conn.prepareStatement(getParticipanteQuery); - + try { statement.setString(1, nome); @@ -81,7 +83,8 @@ public Optional getParticipantePorNome(String nome) throws SQLExce ResultSet resultado = statement.executeQuery(); if (resultado.next()) { - ServiceFile resultFile = new ServiceFile(resultado.getInt("id_service_file")); + Optional optionalImagemCapa = serviceFileDAO + .getArquivo(new ServiceFile(resultado.getInt("id_service_file"))); Participante participante = new Participante(0); @@ -91,8 +94,10 @@ public Optional getParticipantePorNome(String nome) throws SQLExce participante.setBio(resultado.getString("bio")); participante.setLinkMapaDaCultura(resultado.getString("link_perfil")); - if (serviceFileDAO.getArquivo(resultFile).isPresent()) { - participante.setImagemCapa(serviceFileDAO.getArquivo(resultFile).get()); + if (optionalImagemCapa.isPresent()) { + ServiceFile imagemCapa = optionalImagemCapa.get(); + imagemCapa.setContent(serviceFileDAO.getContent(imagemCapa)); + participante.setImagemCapa(imagemCapa); } return Optional.of(participante); } else { @@ -122,7 +127,7 @@ public boolean inserirParticipante(Participante participante) throws SQLExceptio statement.executeUpdate(); ResultSet rs = statement.getGeneratedKeys(); - + if (rs.next()) { participante.setIdParticipante(rs.getInt("id_participante")); return true; @@ -206,9 +211,9 @@ public ArrayList obterListaNomesParticipantes() throws SQLException { String sql = "SELECT nome_participante FROM participante"; PreparedStatement statement = conn.prepareStatement(sql); - + ArrayList nomesParticipantes = new ArrayList(); - + try { ResultSet resultado = statement.executeQuery();