From bfbcab0fd4f198f55b57c4a7603c7d87c235d054 Mon Sep 17 00:00:00 2001
From: gibransodre
Date: Wed, 4 Jan 2017 09:02:04 -0200
Subject: [PATCH] Correções nas datas limites de preenchimento.
---
WebContent/WEB-INF/jsp/login/login.jsp | 2 +-
WebContent/WEB-INF/tags/baseLayout.tag | 2 +-
src/br/com/controller/QuestionarioController.java | 3 +--
src/br/com/controller/formularioOrgaoController.java | 397 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
src/br/com/dao/HashDao.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++++---
src/br/com/model/entity/EnvioEmailSemAutenticacao.java | 16 ++++++++--------
6 files changed, 237 insertions(+), 234 deletions(-)
diff --git a/WebContent/WEB-INF/jsp/login/login.jsp b/WebContent/WEB-INF/jsp/login/login.jsp
index fa0c5bd..bbcb33c 100644
--- a/WebContent/WEB-INF/jsp/login/login.jsp
+++ b/WebContent/WEB-INF/jsp/login/login.jsp
@@ -115,7 +115,7 @@
impressão e assinatura do FAD, assim como a elaboração de Plano de Trabalho para cada
ambiente digital que não esteja em conformidade com as diretrizes de acessibilidade e o envio
destes (através da opção 'Anexar Documentos' ou 'Enviar Relatório à PFDC/MPF' na barra de menu acima) para à Procuradoria Federal dos Direitos do Cidadão (PFDC) do Ministério Público Federal (MPF) e
- publicação no sÃtio ou portal eletrônico do órgão ou entidade até o dia 2 de janeiro de 2017.
+ publicação no sÃtio ou portal eletrônico do órgão ou entidade até o dia 02 de janeiro de 2017.
Para preenchimento deste questionário, o órgão deverá informar, pelo menos, o sÃtio institucional
e selecionar quatro páginas deste mesmo sÃtio (Exemplo: contato, serviços, perguntas frequentes e notÃcias) para submissão das respostas. Observando que os sÃtios informados não
diff --git a/WebContent/WEB-INF/tags/baseLayout.tag b/WebContent/WEB-INF/tags/baseLayout.tag
index 9a05980..5025565 100644
--- a/WebContent/WEB-INF/tags/baseLayout.tag
+++ b/WebContent/WEB-INF/tags/baseLayout.tag
@@ -94,7 +94,7 @@
-
+
diff --git a/src/br/com/controller/QuestionarioController.java b/src/br/com/controller/QuestionarioController.java
index 7526146..e8a94ef 100644
--- a/src/br/com/controller/QuestionarioController.java
+++ b/src/br/com/controller/QuestionarioController.java
@@ -201,8 +201,7 @@ public class QuestionarioController {
mensagem.append("inteira responsabilidade.");
mensagem.append("O FAD poderá ser preenchido no perÃodo "
- + DateUtil.dataHoraFormatadaDiaMesAno(prop.getProperty("dataInicio")) + " a "
- + DateUtil.dataHoraFormatadaDiaMesAno(prop.getProperty("dataFim")) + ", data limite ");
+ + DateUtil.dataHoraFormatadaDiaMesAno(prop.getProperty("dataInicio")) + " a 02/01/2017, data limite ");
mensagem
.append("para o envio do relatório circunstanciado (formulário de acessibilidade digital e plano de ");
mensagem
diff --git a/src/br/com/controller/formularioOrgaoController.java b/src/br/com/controller/formularioOrgaoController.java
index dead13c..95a8d15 100644
--- a/src/br/com/controller/formularioOrgaoController.java
+++ b/src/br/com/controller/formularioOrgaoController.java
@@ -3,11 +3,6 @@ package br.com.controller;
import java.util.ArrayList;
import java.util.List;
-
-
-
-
-
import javax.servlet.ServletContext;
import br.com.caelum.vraptor.Path;
@@ -47,10 +42,8 @@ public class formularioOrgaoController {
}
@Path("/logout")
- public void logout()
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("usuarioLogado", false);
+ public void logout() {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("usuarioLogado", false);
}
@Path("/formularioOrgao")
@@ -58,269 +51,235 @@ public class formularioOrgaoController {
Validacao validacao = new Validacao();
mensagemValidacaoCampos = new ArrayList();
- mensagemValidacaoCampos = validacao.validarHash(path, valorHash);
-
- if (mensagemValidacaoCampos.size() > 0) {
- result.include("mensagemValidacaoCampos", mensagemValidacaoCampos);
- this.validator.add(new ValidationMessage("", ""));
- this.validator.onErrorUsePageOf(loginController.class).login();
- }
HashDao hashDao = new HashDao();
+
questionario = new Questionario();
questionario = hashDao.verificarHash(path, valorHash);
verificarPosicaoUsuario(questionario);
-
- if(!questionario.isFlagEnviado())
- {
-
- if (questionario.getDtInicioQuestionario() != null && !valorHash.equalsIgnoreCase("")) {
-
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("usuarioLogado", true);
-
-
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("valorHash", valorHash);
-
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("questionario", questionario);
-
- RespostaQuestionarioDao respostaQuestionarioDao = new RespostaQuestionarioDao();
-
- List lsRespostaQuestionario = new ArrayList();
-
- lsRespostaQuestionario =
- respostaQuestionarioDao.retornarRespostaQuestionarioPorQuestionario(path ,questionario
- .getIdQuestionario());
- int idPergunta;
-
- for (RespostaQuestionario respostaQuestionario : lsRespostaQuestionario) {
- idPergunta = respostaQuestionario.getPergunta().getIdPergunta();
- switch (respostaQuestionario.getPergunta().getIdPergunta()) {
- case 1:
- result.include("nomeOrgao", respostaQuestionario.getTextoResposta());
- break;
- case 2:
- result.include("nomePessoa", respostaQuestionario.getTextoResposta());
- break;
- case 3:
- result.include("cargo", respostaQuestionario.getTextoResposta());
- break;
- case 4:
- result.include("telefone", respostaQuestionario.getTextoResposta());
- break;
- case 5:
- result.include("email", respostaQuestionario.getTextoResposta());
- break;
- default:
- break;
+
+ if (!questionario.isFlagEnviado()) {
+ if (!hashDao.verificarDataExpirada(path, valorHash)) {
+
+ mensagemValidacaoCampos = validacao.validarHash(path, valorHash);
+
+ if (mensagemValidacaoCampos.size() > 0) {
+ result.include("mensagemValidacaoCampos", mensagemValidacaoCampos);
+ this.validator.add(new ValidationMessage("", ""));
+ this.validator.onErrorUsePageOf(loginController.class).login();
}
-
- String nomeCampo = respostaQuestionario.getAmostragemSiteQuestionario().getNomeCampo();
-
- if(nomeCampo != null)
- {
- setValorCamposUrl(nomeCampo,
- respostaQuestionario.getAmostragemSiteQuestionario().getUrlAmostraSiteQuestionario());
+
+
+
+ if (questionario.getDtInicioQuestionario() != null && !valorHash.equalsIgnoreCase("")) {
+
+ VRaptorRequestHolder.currentRequest().getServletContext()
+ .setAttribute("usuarioLogado", true);
+
+
+ VRaptorRequestHolder.currentRequest().getServletContext()
+ .setAttribute("valorHash", valorHash);
+
+ VRaptorRequestHolder.currentRequest().getServletContext()
+ .setAttribute("questionario", questionario);
+
+ RespostaQuestionarioDao respostaQuestionarioDao = new RespostaQuestionarioDao();
+
+ List lsRespostaQuestionario = new ArrayList();
+
+ lsRespostaQuestionario =
+ respostaQuestionarioDao.retornarRespostaQuestionarioPorQuestionario(path,
+ questionario.getIdQuestionario());
+ int idPergunta;
+
+ for (RespostaQuestionario respostaQuestionario : lsRespostaQuestionario) {
+ idPergunta = respostaQuestionario.getPergunta().getIdPergunta();
+ switch (respostaQuestionario.getPergunta().getIdPergunta()) {
+ case 1:
+ result.include("nomeOrgao", respostaQuestionario.getTextoResposta());
+ break;
+ case 2:
+ result.include("nomePessoa", respostaQuestionario.getTextoResposta());
+ break;
+ case 3:
+ result.include("cargo", respostaQuestionario.getTextoResposta());
+ break;
+ case 4:
+ result.include("telefone", respostaQuestionario.getTextoResposta());
+ break;
+ case 5:
+ result.include("email", respostaQuestionario.getTextoResposta());
+ break;
+ default:
+ break;
+ }
+
+ String nomeCampo = respostaQuestionario.getAmostragemSiteQuestionario().getNomeCampo();
+
+ if (nomeCampo != null) {
+ setValorCamposUrl(nomeCampo, respostaQuestionario.getAmostragemSiteQuestionario()
+ .getUrlAmostraSiteQuestionario());
+ }
+ }
}
+
+ } else {
+ validacao = new Validacao();
+ validacao.setCampo("valorHash");
+ validacao.setMensagem("ATENÇÃO: O prazo para o preenchimento do formulário está expirado.");
+
+ mensagemValidacaoCampos.add(validacao);
+
+ result.include("mensagemValidacaoCampos", mensagemValidacaoCampos);
+ this.validator.add(new ValidationMessage("", ""));
+ this.validator.onErrorUsePageOf(loginController.class).login();
}
- }
- }
- else
- {
+
+ } else {
validacao = new Validacao();
validacao.setCampo("valorHash");
validacao
.setMensagem("ATENÇÃO: Você já concluiu todos os passos do envio do relatório circunstanciado à PFDC/MPF. Não é mais possÃvel alterar seus dados.");
-
+
mensagemValidacaoCampos.add(validacao);
-
+
result.include("mensagemValidacaoCampos", mensagemValidacaoCampos);
this.validator.add(new ValidationMessage("", ""));
this.validator.onErrorUsePageOf(loginController.class).login();
}
}
- private void setValorCamposUrl(String nomeCampo, String valorCampo)
- {
- //ambiente 1
- if(nomeCampo.equalsIgnoreCase("hAmbiente1"))
- {
- result.include("ambiente1", valorCampo);
+ private void setValorCamposUrl(String nomeCampo, String valorCampo) {
+ // ambiente 1
+ if (nomeCampo.equalsIgnoreCase("hAmbiente1")) {
+ result.include("ambiente1", valorCampo);
}
-
- if(nomeCampo.equalsIgnoreCase("hPagina11"))
- {
- result.include("pagina11", valorCampo);
+
+ if (nomeCampo.equalsIgnoreCase("hPagina11")) {
+ result.include("pagina11", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina12"))
- {
- result.include("pagina12", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina12")) {
+ result.include("pagina12", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina13"))
- {
- result.include("pagina13", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina13")) {
+ result.include("pagina13", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina14"))
- {
- result.include("pagina14", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina14")) {
+ result.include("pagina14", valorCampo);
}
-
- //ambiente 2
- if(nomeCampo.equalsIgnoreCase("hAmbiente2"))
- {
- result.include("ambiente2", valorCampo);
+
+ // ambiente 2
+ if (nomeCampo.equalsIgnoreCase("hAmbiente2")) {
+ result.include("ambiente2", valorCampo);
}
-
- if(nomeCampo.equalsIgnoreCase("hPagina21"))
- {
- result.include("pagina21", valorCampo);
+
+ if (nomeCampo.equalsIgnoreCase("hPagina21")) {
+ result.include("pagina21", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina22"))
- {
- result.include("pagina22", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina22")) {
+ result.include("pagina22", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina23"))
- {
- result.include("pagina23", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina23")) {
+ result.include("pagina23", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina24"))
- {
- result.include("pagina24", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina24")) {
+ result.include("pagina24", valorCampo);
}
-
- //ambiente 3
- if(nomeCampo.equalsIgnoreCase("hAmbiente3"))
- {
- result.include("ambiente3", valorCampo);
+
+ // ambiente 3
+ if (nomeCampo.equalsIgnoreCase("hAmbiente3")) {
+ result.include("ambiente3", valorCampo);
}
-
- if(nomeCampo.equalsIgnoreCase("hPagina31"))
- {
- result.include("pagina31", valorCampo);
+
+ if (nomeCampo.equalsIgnoreCase("hPagina31")) {
+ result.include("pagina31", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina32"))
- {
- result.include("pagina32", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina32")) {
+ result.include("pagina32", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina33"))
- {
- result.include("pagina33", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina33")) {
+ result.include("pagina33", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina34"))
- {
- result.include("pagina34", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina34")) {
+ result.include("pagina34", valorCampo);
}
-
- //ambiente 4
- if(nomeCampo.equalsIgnoreCase("hAmbiente4"))
- {
- result.include("ambiente4", valorCampo);
+
+ // ambiente 4
+ if (nomeCampo.equalsIgnoreCase("hAmbiente4")) {
+ result.include("ambiente4", valorCampo);
}
-
- if(nomeCampo.equalsIgnoreCase("hPagina41"))
- {
- result.include("pagina41", valorCampo);
+
+ if (nomeCampo.equalsIgnoreCase("hPagina41")) {
+ result.include("pagina41", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina42"))
- {
- result.include("pagina42", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina42")) {
+ result.include("pagina42", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina43"))
- {
- result.include("pagina43", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina43")) {
+ result.include("pagina43", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina44"))
- {
- result.include("pagina44", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina44")) {
+ result.include("pagina44", valorCampo);
}
-
-
- //ambiente 5
- if(nomeCampo.equalsIgnoreCase("hAmbiente5"))
- {
- result.include("ambiente5", valorCampo);
+
+
+ // ambiente 5
+ if (nomeCampo.equalsIgnoreCase("hAmbiente5")) {
+ result.include("ambiente5", valorCampo);
}
-
- if(nomeCampo.equalsIgnoreCase("hPagina51"))
- {
- result.include("pagina51", valorCampo);
+
+ if (nomeCampo.equalsIgnoreCase("hPagina51")) {
+ result.include("pagina51", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina52"))
- {
- result.include("pagina52", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina52")) {
+ result.include("pagina52", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina53"))
- {
- result.include("pagina53", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina53")) {
+ result.include("pagina53", valorCampo);
}
- if(nomeCampo.equalsIgnoreCase("hPagina54"))
- {
- result.include("pagina54", valorCampo);
+ if (nomeCampo.equalsIgnoreCase("hPagina54")) {
+ result.include("pagina54", valorCampo);
}
}
-
- public void verificarPosicaoUsuario(Questionario questionario)
- {
+
+ public void verificarPosicaoUsuario(Questionario questionario) {
PlanoTrabalho planoTrabalho = new PlanoTrabalho();
PlanoTrabalhoDao planoTrabalhoDao = new PlanoTrabalhoDao();
-
- //Solicitou código de Acesso?
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_01", true);
-
- //Respondeu FAD?
- if(questionario.isQuestionario_respondido())
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_02", true);
- }
- else
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_02", false);
+
+ // Solicitou código de Acesso?
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_01", true);
+
+ // Respondeu FAD?
+ if (questionario.isQuestionario_respondido()) {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_02", true);
+ } else {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_02", false);
}
-
+
planoTrabalho = planoTrabalhoDao.recuperarPlanoTrabalho(path, questionario);
-
- //Anexou Fad?
- if(planoTrabalho.getArquivoRelatorioAss() != null)
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_03", true);
- }
- else
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_03", false);
- }
-
- //Anexou Plano de Trabalho?
- if(planoTrabalho.getArquivoPlanoTrabalho() != null)
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_04", true);
- }
- else
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_04", false);
+
+ // Anexou Fad?
+ if (planoTrabalho.getArquivoRelatorioAss() != null) {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_03", true);
+ } else {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_03", false);
}
-
- //Processo finalizado?
- if(questionario.isFlagEnviado())
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_05", true);
+
+ // Anexou Plano de Trabalho?
+ if (planoTrabalho.getArquivoPlanoTrabalho() != null) {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_04", true);
+ } else {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_04", false);
}
- else
- {
- VRaptorRequestHolder.currentRequest().getServletContext()
- .setAttribute("nivel_05", false);
+
+ // Processo finalizado?
+ if (questionario.isFlagEnviado()) {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_05", true);
+ } else {
+ VRaptorRequestHolder.currentRequest().getServletContext().setAttribute("nivel_05", false);
}
-
+
}
}
diff --git a/src/br/com/dao/HashDao.java b/src/br/com/dao/HashDao.java
index 0df5933..e50dbd1 100644
--- a/src/br/com/dao/HashDao.java
+++ b/src/br/com/dao/HashDao.java
@@ -12,6 +12,51 @@ import br.com.util.GeradorCodigoHash;
public class HashDao {
+ public boolean verificarDataExpirada(String path, String valorHash) {
+
+ StringBuffer sql = new StringBuffer();
+ Connection con = Conexao.conecta(path);
+ Statement estado;
+ ResultSet rset = null;
+ boolean dataExpirada = true;
+
+
+ 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, questionario_respondido, email_destino_orgao, ");
+ sql.append(" responsavel, cargo_responsavel, telefone, data_recebimento_email, ");
+ sql.append(" idautorizacao, data_resposta_email, flag_enviado ");
+ 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()) {
+ dataExpirada = false;
+ }
+
+ } catch (SQLException e) {
+ System.out.println("Deu erro!");
+ e.printStackTrace();
+
+ } finally {
+ if (con != null) {
+ try {
+ con.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ return dataExpirada;
+ }
public Questionario verificarHash(String path, String valorHash) {
StringBuffer sql = new StringBuffer();
@@ -30,9 +75,9 @@ public class HashDao {
sql.append(" no_orgao, hash_autenticacao, questionario_respondido, email_destino_orgao, ");
sql.append(" responsavel, cargo_responsavel, telefone, data_recebimento_email, ");
sql.append(" idautorizacao, data_resposta_email, flag_enviado ");
- sql.append(" FROM questionario where hash_autenticacao = '" + valorHash + "'");
- sql.append(" and (dt_inicio_questionario <= '" + DateUtil.dataHoraAtual() + "')");
- sql.append(" and (dt_fim_questionario >= '" + DateUtil.dataHoraAtual() + "');");
+ 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());
diff --git a/src/br/com/model/entity/EnvioEmailSemAutenticacao.java b/src/br/com/model/entity/EnvioEmailSemAutenticacao.java
index af6b28c..efdd39f 100644
--- a/src/br/com/model/entity/EnvioEmailSemAutenticacao.java
+++ b/src/br/com/model/entity/EnvioEmailSemAutenticacao.java
@@ -255,14 +255,14 @@ public class EnvioEmailSemAutenticacao {
multipart.addBodyPart(attachment0);
- MimeBodyPart attachment1 = new MimeBodyPart();
-
- attachment1.setDataHandler(arquivoPlano);
- attachment1.setFileName(nomeArquivoPlano);
- multipart.addBodyPart(attachment1);
-
-
-
+ if(arquivoPlano != null)
+ {
+ MimeBodyPart attachment1 = new MimeBodyPart();
+
+ attachment1.setDataHandler(arquivoPlano);
+ attachment1.setFileName(nomeArquivoPlano);
+ multipart.addBodyPart(attachment1);
+ }
// Setando o conte�do/corpo do email
MimeBodyPart attachment2 = new MimeBodyPart();
--
libgit2 0.21.2