Commit 5dfda88b9cce1e1565f746f195b7ee989dba8551

Authored by gibransodre
1 parent 4e92bdfd
Exists in master

Correções!

WebContent/WEB-INF/jsp/questionario/questionario.jsp
@@ -39,8 +39,7 @@ table, th, td { @@ -39,8 +39,7 @@ table, th, td {
39 <br> <label for=>Data Recebimento Email: </label> <input 39 <br> <label for=>Data Recebimento Email: </label> <input
40 type="date" id="dataRecebimentoEmail" name="dataRecebimentoEmail" 40 type="date" id="dataRecebimentoEmail" name="dataRecebimentoEmail"
41 onload="pegarDataAtual()"><br> 41 onload="pegarDataAtual()"><br>
42 - <br> <label for=>Data Resposta Email: </label> <input  
43 - type="date" id="dataRespostaEmail" name="dataRespostaEmail"><br> 42 +
44 <br> <input type="submit" value="Salvar"> 43 <br> <input type="submit" value="Salvar">
45 </fieldset> 44 </fieldset>
46 </form> 45 </form>
@@ -51,6 +50,7 @@ table, th, td { @@ -51,6 +50,7 @@ table, th, td {
51 <th>Orgão</th> 50 <th>Orgão</th>
52 <th>Responsável</th> 51 <th>Responsável</th>
53 <th>Cargo</th> 52 <th>Cargo</th>
  53 + <th>Telefone</th>
54 <th>Email</th> 54 <th>Email</th>
55 <th>Recebimento Email</th> 55 <th>Recebimento Email</th>
56 <th>Resposta Email</th> 56 <th>Resposta Email</th>
@@ -67,24 +67,25 @@ table, th, td { @@ -67,24 +67,25 @@ table, th, td {
67 <td>${questionario.noOrgao}</td> 67 <td>${questionario.noOrgao}</td>
68 <td>${questionario.responsavel}</td> 68 <td>${questionario.responsavel}</td>
69 <td>${questionario.cargoResponsavel}</td> 69 <td>${questionario.cargoResponsavel}</td>
  70 + <td>${questionario.telefone}</td>
70 <td>${questionario.emailDestinoOrgao}</td> 71 <td>${questionario.emailDestinoOrgao}</td>
71 <td>${questionario.dtRecebimentoEmail}</td> 72 <td>${questionario.dtRecebimentoEmail}</td>
72 <td>${questionario.dtRespostaEmail}</td> 73 <td>${questionario.dtRespostaEmail}</td>
73 <td>${questionario.dataRespostaQuestionario}</td> 74 <td>${questionario.dataRespostaQuestionario}</td>
74 75
75 <c:if test="${not empty questionario.dataRespostaQuestionario}"> 76 <c:if test="${not empty questionario.dataRespostaQuestionario}">
76 - <td><input type="checkbox" checked="checked"> </td> 77 + <td><input type="checkbox" checked="checked" disabled="disabled"> </td>
77 </c:if> 78 </c:if>
78 <c:if test="${empty questionario.dataRespostaQuestionario}"> 79 <c:if test="${empty questionario.dataRespostaQuestionario}">
79 - <td><input type="checkbox"> </td> 80 + <td><input type="checkbox" disabled="disabled"> </td>
80 </c:if> 81 </c:if>
81 82
82 83
83 <c:if test="${questionario.planoTrabalhoEnviado == true}"> 84 <c:if test="${questionario.planoTrabalhoEnviado == true}">
84 - <td><input type="checkbox" checked="checked"> </td> 85 + <td><input type="checkbox" checked="checked" disabled="disabled"> </td>
85 </c:if> 86 </c:if>
86 <c:if test="${questionario.planoTrabalhoEnviado == false}"> 87 <c:if test="${questionario.planoTrabalhoEnviado == false}">
87 - <td><input type="checkbox"> </td> 88 + <td><input type="checkbox" disabled="disabled"> </td>
88 </c:if> 89 </c:if>
89 90
90 </tr> 91 </tr>
src/br/com/controller/QuestionarioController.java
@@ -62,8 +62,7 @@ public class QuestionarioController { @@ -62,8 +62,7 @@ public class QuestionarioController {
62 62
63 @Path("/salvar-questionario") 63 @Path("/salvar-questionario")
64 public void questionarioSalvar(String autorizacao, String noOrgao, String nomeResponsavel, 64 public void questionarioSalvar(String autorizacao, String noOrgao, String nomeResponsavel,
65 - String cargoResponsavel, String emailDestinoOrgao, String telefoneResponsavel, String dataRecebimentoEmail,  
66 - String dataRespostaEmail) { 65 + String cargoResponsavel, String emailDestinoOrgao, String telefoneResponsavel, String dataRecebimentoEmail) {
67 66
68 67
69 AutorizacaoGeracaoHashDao autorizacaoGeracaoHashDao = new AutorizacaoGeracaoHashDao(); 68 AutorizacaoGeracaoHashDao autorizacaoGeracaoHashDao = new AutorizacaoGeracaoHashDao();
@@ -118,17 +117,19 @@ public class QuestionarioController { @@ -118,17 +117,19 @@ public class QuestionarioController {
118 Validacao validate = new Validacao(); 117 Validacao validate = new Validacao();
119 118
120 questionario.setDtRecebimentoEmail(dataRecebimentoEmail); 119 questionario.setDtRecebimentoEmail(dataRecebimentoEmail);
121 - questionario.setDtRespostaEmail(dataRespostaEmail);  
122 questionario.setIdAutorizacaoGeracaoHash(idAutorizacaoGeracaoHash); 120 questionario.setIdAutorizacaoGeracaoHash(idAutorizacaoGeracaoHash);
123 121
124 QuestionarioDao questionarioDao = new QuestionarioDao(); 122 QuestionarioDao questionarioDao = new QuestionarioDao();
125 // List<String> corpoEmail = new ArrayList<String>(); 123 // List<String> corpoEmail = new ArrayList<String>();
126 - if (questionarioDao.salvarQuestionario(path, questionario)) { 124 +
  125 + int idQuestionario = questionarioDao.salvarQuestionario(path, questionario);
  126 +
  127 + if (idQuestionario > -1) {
127 128
128 StringBuffer mensagem = new StringBuffer(); 129 StringBuffer mensagem = new StringBuffer();
129 130
130 mensagem.append("Prezado(a),</br>"); 131 mensagem.append("Prezado(a),</br>");
131 - mensagem.append("<p>Senhor(a) " + nomeResponsavel + ", " + cargoResponsavel + ", do " 132 + mensagem.append("<p>Senhor(a) " + nomeResponsavel + ", " + cargoResponsavel + ", do(a) "
132 + noOrgao + ", conforme solicitado, o acesso "); 133 + noOrgao + ", conforme solicitado, o acesso ");
133 mensagem.append("ao FAD para o preenchimento de informações sobre a atual situação da "); 134 mensagem.append("ao FAD para o preenchimento de informações sobre a atual situação da ");
134 mensagem 135 mensagem
@@ -177,7 +178,15 @@ public class QuestionarioController { @@ -177,7 +178,15 @@ public class QuestionarioController {
177 contato.setNome(nomeResponsavel); 178 contato.setNome(nomeResponsavel);
178 179
179 if (enviarHashPorEmail(contato)) { 180 if (enviarHashPorEmail(contato)) {
180 - mensagemEnvio = "Questionário salvo e enviado por email com suceso!"; 181 + if(questionarioDao.atualizarDataRespostaQuestionario(path, idQuestionario))
  182 + {
  183 + mensagemEnvio = "Questionário salvo e enviado por email com suceso!";
  184 + }
  185 + else
  186 + {
  187 + mensagemEnvio = "Questionário salvo e enviado por email, mas, não foi possível atualizar a data de resposta!";
  188 + }
  189 +
181 } else { 190 } else {
182 mensagemEnvio = "Questionário salvo, mas não foi possível enviar email!"; 191 mensagemEnvio = "Questionário salvo, mas não foi possível enviar email!";
183 } 192 }
src/br/com/dao/QuestionarioDao.java
@@ -29,13 +29,18 @@ public class QuestionarioDao { @@ -29,13 +29,18 @@ public class QuestionarioDao {
29 29
30 ResultSet rset = null; 30 ResultSet rset = null;
31 Questionario questionario; 31 Questionario questionario;
32 - RespostaQuestionarioDao respostaQuestionarioDao = new RespostaQuestionarioDao();  
33 - PlanoTrabalhoDao planoTrabalhoDao = new PlanoTrabalhoDao(); 32 + RespostaQuestionarioDao respostaQuestionarioDao;
  33 + PlanoTrabalhoDao planoTrabalhoDao;
34 34
35 rset = retornarQuestionario(path); 35 rset = retornarQuestionario(path);
  36 + String dataRespostaQuestionario = "";
36 try { 37 try {
37 while (rset.next()) { 38 while (rset.next()) {
  39 + dataRespostaQuestionario = "";
  40 +
38 questionario = new Questionario(); 41 questionario = new Questionario();
  42 + respostaQuestionarioDao = new RespostaQuestionarioDao();
  43 + planoTrabalhoDao = new PlanoTrabalhoDao();
39 44
40 questionario.setIdQuestionario(rset.getInt("id_questionario")); 45 questionario.setIdQuestionario(rset.getInt("id_questionario"));
41 questionario.setDtInicioQuestionario(DateUtil.dataHoraFormatadaDiaMesAno(rset.getString("dt_inicio_questionario"))); 46 questionario.setDtInicioQuestionario(DateUtil.dataHoraFormatadaDiaMesAno(rset.getString("dt_inicio_questionario")));
@@ -49,7 +54,17 @@ public class QuestionarioDao { @@ -49,7 +54,17 @@ public class QuestionarioDao {
49 questionario.setTelefone(rset.getString("telefone")); 54 questionario.setTelefone(rset.getString("telefone"));
50 questionario.setIdAutorizacaoGeracaoHash(rset.getInt("idAutorizacao")); 55 questionario.setIdAutorizacaoGeracaoHash(rset.getInt("idAutorizacao"));
51 questionario.setDtRecebimentoEmail(DateUtil.dataHoraFormatadaDiaMesAno(rset.getString("data_recebimento_email"))); 56 questionario.setDtRecebimentoEmail(DateUtil.dataHoraFormatadaDiaMesAno(rset.getString("data_recebimento_email")));
52 - questionario.setDtRespostaEmail(DateUtil.dataHoraFormatadaDiaMesAno(rset.getString("data_resposta_email"))); 57 +
  58 + dataRespostaQuestionario = rset.getString("data_resposta_email");
  59 + if(dataRespostaQuestionario != null)
  60 + {
  61 + questionario.setDtRespostaEmail(DateUtil.dataHoraFormatadaDiaMesAnoComParametro(dataRespostaQuestionario));
  62 + }
  63 + else
  64 + {
  65 + questionario.setDtRespostaEmail(dataRespostaQuestionario);
  66 + }
  67 +
53 68
54 69
55 questionario.setDataRespostaQuestionario(respostaQuestionarioDao.verificaRespostaQuestionario(path, rset.getInt("id_questionario"))); 70 questionario.setDataRespostaQuestionario(respostaQuestionarioDao.verificaRespostaQuestionario(path, rset.getInt("id_questionario")));
@@ -97,6 +112,47 @@ public class QuestionarioDao { @@ -97,6 +112,47 @@ public class QuestionarioDao {
97 } 112 }
98 113
99 } 114 }
  115 +
  116 + public boolean atualizarDataRespostaQuestionario(String path, int idQuestionario)
  117 + {
  118 +
  119 + StringBuffer sql = new StringBuffer();
  120 + Connection con = Conexao.conecta(path);
  121 + PreparedStatement estado;
  122 + int resultado = 0;
  123 + boolean salvoComSucesso = false;
  124 +
  125 +
  126 +
  127 + try {
  128 +
  129 + Date dtRespostaEmail = new Date();
  130 + java.sql.Date sqlDtRespostaEmail = new java.sql.Date(dtRespostaEmail.getTime());
  131 +
  132 +
  133 + sql = new StringBuffer();
  134 + sql.append(" UPDATE public.questionario SET data_resposta_email=(SELECT NOW()) WHERE id_questionario = ?; ");
  135 +
  136 + estado = con.prepareStatement(sql.toString());
  137 +
  138 + estado.setInt(1, idQuestionario);
  139 +
  140 + resultado = estado.executeUpdate();
  141 +
  142 + if (resultado == 0) {
  143 + salvoComSucesso = false;
  144 + } else {
  145 +
  146 + salvoComSucesso = true;
  147 + }
  148 +
  149 + } catch (SQLException e) {
  150 +
  151 + e.printStackTrace();
  152 + }
  153 +
  154 + return salvoComSucesso;
  155 + }
100 156
101 157
102 public ResultSet retornarQuestionarioPorId(String path, int idQuestionario) { 158 public ResultSet retornarQuestionarioPorId(String path, int idQuestionario) {
@@ -132,18 +188,18 @@ public class QuestionarioDao { @@ -132,18 +188,18 @@ public class QuestionarioDao {
132 188
133 } 189 }
134 190
  191 +
135 192
136 -  
137 - public boolean salvarQuestionario(String path, Questionario questionario) { 193 + public int salvarQuestionario(String path, Questionario questionario) {
138 194
139 //File file = new File(caminhoArquivo); 195 //File file = new File(caminhoArquivo);
140 196
141 Connection con = null; 197 Connection con = null;
142 con = Conexao.conecta(path); 198 con = Conexao.conecta(path);
143 - int resultado = 0; 199 + int resultado = -1;
144 StringBuffer sql; 200 StringBuffer sql;
145 201
146 - boolean salvoComSucesso = false; 202 + //boolean salvoComSucesso = false;
147 203
148 try { 204 try {
149 205
@@ -152,12 +208,12 @@ public class QuestionarioDao { @@ -152,12 +208,12 @@ public class QuestionarioDao {
152 Date dtInicioQuestionario = DateUtil.dataFormatada(questionario.getDtInicioQuestionario()); 208 Date dtInicioQuestionario = DateUtil.dataFormatada(questionario.getDtInicioQuestionario());
153 Date dtFimQuestionario = DateUtil.dataFormatada(questionario.getDtFimQuestionario()); 209 Date dtFimQuestionario = DateUtil.dataFormatada(questionario.getDtFimQuestionario());
154 Date dtRecebimentoEmail = DateUtil.dataFormatada(questionario.getDtRecebimentoEmail()); 210 Date dtRecebimentoEmail = DateUtil.dataFormatada(questionario.getDtRecebimentoEmail());
155 - Date dtRespostaEmail = DateUtil.dataFormatada(questionario.getDtRespostaEmail()); 211 + //Date dtRespostaEmail = new Date();
156 212
157 java.sql.Date sqlDtInicioQuestionario = new java.sql.Date(dtInicioQuestionario.getTime()); 213 java.sql.Date sqlDtInicioQuestionario = new java.sql.Date(dtInicioQuestionario.getTime());
158 java.sql.Date sqlDtFimQuestionario = new java.sql.Date(dtFimQuestionario.getTime()); 214 java.sql.Date sqlDtFimQuestionario = new java.sql.Date(dtFimQuestionario.getTime());
159 java.sql.Date sqlDtRecebimentoEmail = new java.sql.Date(dtRecebimentoEmail.getTime()); 215 java.sql.Date sqlDtRecebimentoEmail = new java.sql.Date(dtRecebimentoEmail.getTime());
160 - java.sql.Date sqlDtRespostaEmail = new java.sql.Date(dtRespostaEmail.getTime()); 216 + //java.sql.Date sqlDtRespostaEmail = new java.sql.Date(dtRespostaEmail.getTime());
161 217
162 if (con != null) { 218 if (con != null) {
163 219
@@ -166,12 +222,13 @@ public class QuestionarioDao { @@ -166,12 +222,13 @@ public class QuestionarioDao {
166 sql.append(" dt_inicio_questionario, dt_fim_questionario, "); 222 sql.append(" dt_inicio_questionario, dt_fim_questionario, ");
167 sql.append(" no_orgao, hash_autenticacao, questionario_respondido, email_destino_orgao, "); 223 sql.append(" no_orgao, hash_autenticacao, questionario_respondido, email_destino_orgao, ");
168 sql.append(" responsavel, cargo_responsavel, telefone, idAutorizacao, "); 224 sql.append(" responsavel, cargo_responsavel, telefone, idAutorizacao, ");
169 - sql.append(" data_recebimento_email, data_resposta_email) ");  
170 - sql.append(" VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);"); 225 + sql.append(" data_recebimento_email) ");
  226 + sql.append(" VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);");
171 227
172 228
173 // cria statement para executar a query 229 // cria statement para executar a query
174 - PreparedStatement estado = con.prepareStatement(sql.toString()); 230 + PreparedStatement estado = con.prepareStatement(sql.toString(), Statement.RETURN_GENERATED_KEYS);
  231 +
175 estado.setDate(1, sqlDtInicioQuestionario); 232 estado.setDate(1, sqlDtInicioQuestionario);
176 estado.setDate(2, sqlDtFimQuestionario); 233 estado.setDate(2, sqlDtFimQuestionario);
177 estado.setString(3, questionario.getNoOrgao()); 234 estado.setString(3, questionario.getNoOrgao());
@@ -183,26 +240,33 @@ public class QuestionarioDao { @@ -183,26 +240,33 @@ public class QuestionarioDao {
183 estado.setString(9, questionario.getTelefone()); 240 estado.setString(9, questionario.getTelefone());
184 estado.setInt(10, questionario.getIdAutorizacaoGeracaoHash()); 241 estado.setInt(10, questionario.getIdAutorizacaoGeracaoHash());
185 estado.setDate(11, sqlDtRecebimentoEmail); 242 estado.setDate(11, sqlDtRecebimentoEmail);
186 - estado.setDate(12, sqlDtRespostaEmail); 243 + //estado.setDate(12, sqlDtRespostaEmail);
187 244
188 - resultado = estado.executeUpdate(); 245 + //resultado = estado.executeUpdate();
189 246
190 - if (resultado == 0) { 247 + estado.executeUpdate();
  248 + ResultSet rs = estado.getGeneratedKeys();
  249 +
  250 + if (rs.next()) {
  251 + resultado = rs.getInt("id_questionario");
  252 + }
  253 +
  254 + /* if (resultado == 0) {
191 salvoComSucesso = false; 255 salvoComSucesso = false;
192 } else { 256 } else {
193 257
194 salvoComSucesso = true; 258 salvoComSucesso = true;
195 - } 259 + }*/
196 } 260 }
197 261
198 - return salvoComSucesso; 262 + return resultado;
199 263
200 } catch (SQLException e) { 264 } catch (SQLException e) {
201 e.printStackTrace(); 265 e.printStackTrace();
202 - return salvoComSucesso; 266 + return resultado;
203 } catch (ParseException e) { 267 } catch (ParseException e) {
204 e.printStackTrace(); 268 e.printStackTrace();
205 - return salvoComSucesso; 269 + return resultado;
206 } finally { 270 } finally {
207 if (con != null) { 271 if (con != null) {
208 try { 272 try {
src/br/com/util/DateUtil.java
@@ -12,6 +12,7 @@ public class DateUtil { @@ -12,6 +12,7 @@ public class DateUtil {
12 return dateFormat.format(new Date()); 12 return dateFormat.format(new Date());
13 } 13 }
14 14
  15 +
15 public static Date dataFormatada(String data) throws ParseException { 16 public static Date dataFormatada(String data) throws ParseException {
16 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 17 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
17 Date dataFormatada = dateFormat.parse(data); 18 Date dataFormatada = dateFormat.parse(data);
@@ -36,6 +37,22 @@ public class DateUtil { @@ -36,6 +37,22 @@ public class DateUtil {
36 return dataFormatadaCorreta; 37 return dataFormatadaCorreta;
37 } 38 }
38 39
  40 + public static String dataHoraFormatadaDiaMesAnoComParametro(String dataParametro) {
  41 +
  42 + Date dataParametroConvertida = new Date();
39 43
  44 + SimpleDateFormat dataFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  45 + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
  46 + String dataFormatadaCorreta = null;
  47 +
  48 + try {
  49 + dataParametroConvertida = dataFormat.parse(dataParametro);
  50 + dataFormatadaCorreta = sdf.format(dataParametroConvertida);
  51 + } catch (ParseException e) {
  52 + e.printStackTrace();
  53 + }
  54 +
  55 + return dataFormatadaCorreta;
  56 + }
40 57
41 } 58 }