diff --git a/src/br/com/dao/HashDao.java b/src/br/com/dao/HashDao.java index 68303d0..5de1ecc 100644 --- a/src/br/com/dao/HashDao.java +++ b/src/br/com/dao/HashDao.java @@ -6,42 +6,53 @@ import java.sql.SQLException; import java.sql.Statement; import br.com.model.entity.Questionario; +import br.com.util.DateUtil; public class HashDao { - public Questionario verificarHash(String valorHash) { - - StringBuffer sql = new StringBuffer(); - String orgao = ""; - Connection con = Conexao.conecta(); - Statement estado; - ResultSet rset = null; - Questionario questionario = new Questionario(); - - try { - estado = con.createStatement(); - - estado.execute(sql.toString()); - sql.append("SELECT id_questionario, dt_inicio_questionario, dt_fim_questionario,"); - sql.append("no_orgao, hash_autenticacao"); - sql.append(" FROM questionario where hash_autenticacao = '" + valorHash + "'"); - - rset = estado.executeQuery(sql.toString()); - - while (rset.next()) { - questionario.setIdQuestionario(rset.getInt("id_questionario")); - questionario.setDtFimQuestionario(rset.getString("dt_fim_questionario")); - questionario.setDtInicioQuestionario(rset.getString("dt_inicio_questionario")); - questionario.setHashAutenticacao(rset.getString("hash_autenticacao")); - questionario.setNoOrgao(rset.getString("no_orgao")); - } - - } catch (SQLException e) { - System.out.println("Deu errooooooooooooooooooo: "); - e.printStackTrace(); - - } - - return questionario; - } + public Questionario verificarHash(String valorHash) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + Questionario questionario = new Questionario(); + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append("SELECT id_questionario, dt_inicio_questionario, dt_fim_questionario,"); + sql.append("no_orgao, hash_autenticacao"); + sql.append(" FROM questionario where hash_autenticacao = '" + valorHash + "'"); + sql.append(" and (dt_inicio_questionario <= '" + DateUtil.dataHoraAtual() + "')"); + sql.append(" and (dt_fim_questionario >= '" + DateUtil.dataHoraAtual() + "');"); + + rset = estado.executeQuery(sql.toString()); + + while (rset.next()) { + questionario.setIdQuestionario(rset.getInt("id_questionario")); + questionario.setDtFimQuestionario(rset.getString("dt_fim_questionario")); + questionario.setDtInicioQuestionario(rset.getString("dt_inicio_questionario")); + questionario.setHashAutenticacao(rset.getString("hash_autenticacao")); + questionario.setNoOrgao(rset.getString("no_orgao")); + questionario.setHashAutenticacao(rset.getString("hash_autenticacao")); + } + + } catch (SQLException e) { + System.out.println("Deu erro!"); + e.printStackTrace(); + + } finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + return questionario; + } } diff --git a/src/br/com/dao/OpcaoRespostaDao.java b/src/br/com/dao/OpcaoRespostaDao.java new file mode 100644 index 0000000..cf3bc69 --- /dev/null +++ b/src/br/com/dao/OpcaoRespostaDao.java @@ -0,0 +1,41 @@ +package br.com.dao; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; + +public class OpcaoRespostaDao { + + public ResultSet retornarOpcaoResposta(int idOpcaoResposta) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append(" SELECT id_opcao_resposta, desc_opcao_resposta FROM public.opcao_resposta where id_opcao_resposta = "+ idOpcaoResposta +"; "); + + rset = estado.executeQuery(sql.toString()); + + return rset; + } catch (SQLException e) { + e.printStackTrace(); + return null; + + }finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + } +} diff --git a/src/br/com/dao/PerguntaDao.java b/src/br/com/dao/PerguntaDao.java new file mode 100644 index 0000000..ff93309 --- /dev/null +++ b/src/br/com/dao/PerguntaDao.java @@ -0,0 +1,41 @@ +package br.com.dao; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; + +public class PerguntaDao { + + public ResultSet retornarPergunta(int idPergunta) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append(" SELECT id_pergunta, desc_pergunta FROM public.pergunta where id_pergunta = "+ idPergunta +"; "); + + rset = estado.executeQuery(sql.toString()); + + return rset; + } catch (SQLException e) { + e.printStackTrace(); + return null; + + }finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + } +} diff --git a/src/br/com/dao/QuestionarioDao.java b/src/br/com/dao/QuestionarioDao.java new file mode 100644 index 0000000..e63167d --- /dev/null +++ b/src/br/com/dao/QuestionarioDao.java @@ -0,0 +1,42 @@ +package br.com.dao; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; + +public class QuestionarioDao { + + public ResultSet retornarQuestionario(int idQuestionario) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append(" SELECT id_questionario, dt_inicio_questionario, dt_fim_questionario, no_orgao, hash_autenticacao "); + sql.append(" FROM public.questionario where id_questionario = "+ idQuestionario +";"); + + rset = estado.executeQuery(sql.toString()); + + return rset; + } catch (SQLException e) { + e.printStackTrace(); + return null; + + }finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + } +} diff --git a/src/br/com/dao/RespostaQuestionarioDao.java b/src/br/com/dao/RespostaQuestionarioDao.java index 3514e10..2c47354 100644 --- a/src/br/com/dao/RespostaQuestionarioDao.java +++ b/src/br/com/dao/RespostaQuestionarioDao.java @@ -5,74 +5,149 @@ import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; - +import java.util.ArrayList; import java.util.List; import br.com.controller.confirmacaoController; +import br.com.model.entity.Pergunta; +import br.com.model.entity.Questionario; import br.com.model.entity.RespostaQuestionario; +import br.com.util.DateUtil; public class RespostaQuestionarioDao { - public boolean salvar(List lsRespostaQuestionario) { - - Connection con = null; - int resultado = 0; - StringBuffer sql; - Statement estado; - boolean salvoComSucesso = false; - - try { - - con = Conexao.conecta(); - if (con != null) { - con.setAutoCommit(false); - // cria statement para executar a query - estado = con.createStatement(); - for (RespostaQuestionario respostaQuestionario : lsRespostaQuestionario) { - sql = new StringBuffer(); - - sql.append("INSERT INTO resposta_questionario(id_pergunta, id_opcao_resposta, texto_resposta, dt_resposta_questionario, id_questionario)"); - sql.append("VALUES (" - + respostaQuestionario.getPergunta() - .getIdPergunta() - + "," - + respostaQuestionario.getOpcaoResposta() - .getIdOpcaoResposta() + ",'"); - sql.append(respostaQuestionario.getOpcaoResposta() - .getDescOpcaoResposta() + "','2016-08-17',"); - sql.append(respostaQuestionario.getQuestionario() - .getIdQuestionario() + ");"); - - resultado = estado.executeUpdate(sql.toString()); - - if (resultado == 0) { - con.rollback(); - break; - } - } - if (resultado > 0) { - con.commit(); - salvoComSucesso = true; - } - } - - } - - catch (SQLException e) { - System.err.print(e.getMessage()); - } finally { - if (con != null) { - try { - con.close(); - lsRespostaQuestionario = null; - } catch (SQLException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - - return salvoComSucesso; - } + + public ResultSet retornarRespostaQuestionario(int id_resposta_questionario) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append(" SELECT id_resposta_questionario, id_pergunta, id_opcao_resposta, texto_resposta, dt_resposta_questionario, id_questionario"); + sql.append(" FROM public.resposta_questionario where id_resposta_questionario = "+ id_resposta_questionario +";"); + + rset = estado.executeQuery(sql.toString()); + + return rset; + } catch (SQLException e) { + e.printStackTrace(); + return null; + + }finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + } + + public List retornarRespostaQuestionarioPorQuestionario(int idQuestionario) { + + StringBuffer sql = new StringBuffer(); + Connection con = Conexao.conecta(); + Statement estado; + ResultSet rset = null; + + RespostaQuestionario respostaQuestionario; + List lsRespostaQuestionario = new ArrayList(); + + try { + estado = con.createStatement(); + + estado.execute(sql.toString()); + sql.append(" SELECT id_resposta_questionario "); + sql.append(" FROM public.resposta_questionario where dt_resposta_questionario = (SELECT max(dt_resposta_questionario) as dt_resposta_questionario "); + sql.append(" FROM public.resposta_questionario where id_questionario = "+ idQuestionario +") and id_questionario = "+ idQuestionario +";"); + + rset = estado.executeQuery(sql.toString()); + con.close(); + + while (rset.next()) { + respostaQuestionario = new RespostaQuestionario(Integer.parseInt(rset.getString("id_resposta_questionario"))); + lsRespostaQuestionario.add(respostaQuestionario); + } + + } catch (SQLException e) { + System.out.println("Deu erro!"); + e.printStackTrace(); + + }finally { + if (con != null) { + try { + con.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + } + + return lsRespostaQuestionario; +} + + public boolean salvar(List lsRespostaQuestionario) { + + Connection con = null; + int resultado = 0; + StringBuffer sql; + Statement estado; + boolean salvoComSucesso = false; + + try { + + con = Conexao.conecta(); + if (con != null) { + con.setAutoCommit(false); + // cria statement para executar a query + estado = con.createStatement(); + for (RespostaQuestionario respostaQuestionario : lsRespostaQuestionario) { + sql = new StringBuffer(); + + sql.append("INSERT INTO resposta_questionario(id_pergunta, id_opcao_resposta, texto_resposta, dt_resposta_questionario, id_questionario)"); + sql.append("VALUES (" + respostaQuestionario.getPergunta().getIdPergunta() + "," + + respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta() + ",'"); + sql.append(respostaQuestionario.getTextoResposta() + "','" + + DateUtil.dataHoraAtual() + "',"); + sql.append(respostaQuestionario.getQuestionario().getIdQuestionario() + ");"); + + resultado = estado.executeUpdate(sql.toString()); + + if (resultado == 0) { + con.rollback(); + break; + } + } + if (resultado > 0) { + con.commit(); + salvoComSucesso = true; + } + } + + } + + catch (SQLException e) { + System.err.print(e.getMessage()); + } finally { + if (con != null) { + try { + con.close(); + lsRespostaQuestionario = null; + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + } + return salvoComSucesso; + } + } -- libgit2 0.21.2