From f2b40aa4ad6ab04024d43a7085872d53401a5e4d Mon Sep 17 00:00:00 2001 From: mp-96409975520 Date: Tue, 23 Aug 2016 15:58:23 -0300 Subject: [PATCH] Responsável pelo direcionamento para validações e inserções. --- src/br/com/controller/indexController.java | 391 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 375 insertions(+), 16 deletions(-) diff --git a/src/br/com/controller/indexController.java b/src/br/com/controller/indexController.java index ecffa97..a0a702f 100644 --- a/src/br/com/controller/indexController.java +++ b/src/br/com/controller/indexController.java @@ -1,27 +1,386 @@ package br.com.controller; +import java.util.ArrayList; +import java.util.List; + import br.com.caelum.vraptor.Path; import br.com.caelum.vraptor.Post; import br.com.caelum.vraptor.Resource; +import br.com.caelum.vraptor.Result; +import br.com.caelum.vraptor.Validator; +import br.com.caelum.vraptor.validator.ValidationMessage; import br.com.dao.HashDao; +import br.com.dao.RespostaQuestionarioDao; +import br.com.model.entity.Formulario; +import br.com.model.entity.OpcaoResposta; +import br.com.model.entity.Pergunta; import br.com.model.entity.Questionario; +import br.com.model.entity.RespostaQuestionario; +import br.com.util.Validacao; @Resource public class indexController { - - private Questionario questionario; - - public Questionario getQuestionario() { - return questionario; - } - - //@Path("/") - @Post("/formulario") - public void index(String valorHash) { - - HashDao hashDao = new HashDao(); - questionario = new Questionario(); - questionario = hashDao.verificarHash(valorHash); - - } + + private Questionario questionario; + private List mensagemValidacaoCampos = new ArrayList(); + private Result result; + private Pergunta pergunta; + private OpcaoResposta opcaoResposta; + private RespostaQuestionario respostaQuestionario; + private Validator validator; + + public indexController(Result result, Validator validator) + { + this.result = result; + this.validator = validator; + } + + public Questionario getQuestionario() { + return questionario; + } + + public List getMensagemValidacaoCampos() { + return mensagemValidacaoCampos; + } + + public void setMensagemValidacaoCampos(List mensagemValidacaoCampos) { + this.mensagemValidacaoCampos = mensagemValidacaoCampos; + } + + + @Post("/formulario") + public void formulario(String valorHash) { + + Validacao validacao = new Validacao(); + mensagemValidacaoCampos = new ArrayList(); + mensagemValidacaoCampos = validacao.validarHash(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(valorHash); + + + if(questionario.getDtInicioQuestionario() != null && !valorHash.equalsIgnoreCase("")) + { + result.include("questionario",questionario); + RespostaQuestionarioDao respostaQuestionarioDao = new RespostaQuestionarioDao(); + + List lsRespostaQuestionario = new ArrayList(); + + lsRespostaQuestionario = respostaQuestionarioDao.retornarRespostaQuestionarioPorQuestionario(questionario.getIdQuestionario()); + List curso = new ArrayList(); + List simValidacao = new ArrayList(); + List assistiva = new ArrayList(); + List ferramentaValidacao = new ArrayList(); + + for (RespostaQuestionario respostaQuestionario : lsRespostaQuestionario) { + + 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; + case 6: + result.include("indicacaoSitios", respostaQuestionario.getTextoResposta()); + break; + case 7: + result.include("perguntaAcessibilidade", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 8: + result.include("reclamacao", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 9: + result.include("espacoReclamacao", respostaQuestionario.getTextoResposta()); + break; + case 10: + result.include("perguntaEstimulo", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 11: + curso.add(respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 12: + result.include("requisito", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 13: + result.include("justificativaRequisito", respostaQuestionario.getTextoResposta()); + break; + case 14: + result.include("opcaoContrat", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 15: + result.include("perguntaValidacao", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 16: + simValidacao.add(respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 17: + ferramentaValidacao.add(respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 18: + result.include("outroAvaliador", respostaQuestionario.getTextoResposta()); + break; + case 19: + result.include("nivelAses", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 20: + result.include("nivelAccessMonitor", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 21: + result.include("nivelWcag", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 22: + result.include("checklistQtnList", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 23: + result.include("funcionalidade", respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 24: + assistiva.add(respostaQuestionario.getOpcaoResposta().getIdOpcaoResposta()); + break; + case 25: + result.include("justificativaAssistiva", respostaQuestionario.getTextoResposta()); + break; + case 26: + result.include("dificuldadePrazo", respostaQuestionario.getTextoResposta()); + break; + default: + break; + } + result.include("curso", curso); + result.include("simValidacao", simValidacao); + result.include("assistiva", assistiva); + result.include("ferramentaValidacao", ferramentaValidacao); + + } + + } + + } + + + @Post("/salvar-formulario") + public void FormularioControllerSalvar(String hNomePessoa, + String nomePessoa, String hCargo, String cargo, String hTelefone, String telefone, + String hEmail, String email, String hIndicacaoSitios, String indicacaoSitios, + String hPerguntaAcessibilidade, String perguntaAcessibilidade, String hReclamacao, + String reclamacao, String hEspacoReclamacao, String espacoReclamacao, + String hPerguntaEstimulo, String perguntaEstimulo, String hCurso, String[] curso, + String hRequisito, String requisito, String hJustificativaRequisito, + String justificativaRequisito, String hOpcaoContrat, String opcaoContrat, + String hPerguntaValidacao, String perguntaValidacao, String hSimValidacao, + String[] simValidacao, String hFerramentaValidacao, String[] ferramentaValidacao, + String hOutroAvaliador, String outroAvaliador, String hNivelAses, String nivelAses, + String hNivelAccessMonitor, String nivelAccessMonitor, String hNivelWcag, String nivelWcag, + String hChecklistQtnList, String checklistQtnList, String hFuncionalidade, + String funcionalidade, String hAssistiva, String[] assistiva, String hJustificativaAssistiva, + String justificativaAssistiva, String hDificuldadePrazo, String dificuldadePrazo, int idQuestionario) { + + Formulario formulario = new Formulario(); + questionario = new Questionario(idQuestionario); + + formulario.setNomePessoa(nomePessoa); + formulario.setCargo(cargo); + formulario.setTelefone(telefone); + formulario.setEmail(email); + formulario.setIndicacaoSitios(indicacaoSitios); + formulario.setPerguntaAcessibilidade(perguntaAcessibilidade); + formulario.setReclamacao(espacoReclamacao); + formulario.setEspacoReclamacao(espacoReclamacao); + formulario.setPerguntaEstimulo(perguntaEstimulo); + formulario.setCurso(curso); + formulario.setRequisito(requisito); + formulario.setJustificativaRequisito(justificativaRequisito); + formulario.setOpcaoContrat(opcaoContrat); + formulario.setPerguntaValidacao(perguntaValidacao); + formulario.setSimValidacao(simValidacao); + formulario.setFerramentaValidacao(ferramentaValidacao); + formulario.setOutroAvaliador(outroAvaliador); + formulario.setNivelAses(nivelAses); + formulario.setNivelAccessMonitor(nivelAccessMonitor); + formulario.setNivelWcag(nivelWcag); + formulario.setChecklist(checklistQtnList); + formulario.setFuncionalidade(funcionalidade); + formulario.setAssistiva(assistiva); + formulario.setJustificativaAssistiva(justificativaAssistiva); + formulario.setDificuldadePrazo(dificuldadePrazo); + + Validacao validate = new Validacao(); + + + this.setMensagemValidacaoCampos(validate.validarCampos(formulario)); + + + if (this.mensagemValidacaoCampos.size() > 0) { + result.include("mensagemValidacaoCampos", mensagemValidacaoCampos); + this.validator.add(new ValidationMessage("", "")); + this.validator.onErrorUsePageOf(indexController.class).formulario(questionario.getHashAutenticacao()); + } + else { + + List lsRespostaQuestionario = new ArrayList(); + + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hNomePessoa), + Integer.valueOf(1), nomePessoa, questionario)); + // formulario.setNomePessoa(nomePessoa); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hCargo), + Integer.valueOf(1), cargo, questionario)); + // formulario.setCargo(cargo); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hTelefone), + Integer.valueOf(1), telefone, questionario)); + // formulario.setTelefone(telefone); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hEmail), + Integer.valueOf(1), email, questionario)); + // formulario.setEmail(email); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hIndicacaoSitios), + Integer.valueOf(1), indicacaoSitios, questionario)); + // formulario.setIndicacaoSitios(indicacaoSitios); + + lsRespostaQuestionario.add(retornarRespostaQuestionario( + Integer.valueOf(hPerguntaAcessibilidade), Integer.valueOf(perguntaAcessibilidade), "", + questionario)); + // formulario.setPerguntaAcessibilidade(perguntaAcessibilidade); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hReclamacao), + Integer.valueOf(reclamacao), "", questionario)); + // formulario.setReclamacao(espacoReclamacao); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hEspacoReclamacao), + Integer.valueOf(1), espacoReclamacao, questionario)); + // formulario.setEspacoReclamacao(espacoReclamacao); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hPerguntaEstimulo), + Integer.valueOf(perguntaEstimulo), "", questionario)); + // formulario.setPerguntaEstimulo(perguntaEstimulo); + + for (String strCurso : curso) { + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hCurso), + Integer.valueOf(strCurso), "", questionario)); + } + + // formulario.setCurso(curso); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hRequisito), + Integer.valueOf(requisito), "", questionario)); + // formulario.setRequisito(requisito); + + lsRespostaQuestionario.add(retornarRespostaQuestionario( + Integer.valueOf(hJustificativaRequisito), Integer.valueOf(1), justificativaRequisito, + questionario)); + // formulario.setJustificativaRequisito(justificativaRequisito); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hOpcaoContrat), + Integer.valueOf(opcaoContrat), "", questionario)); + // formulario.setOpcaoContrat(opcaoContrat); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hPerguntaValidacao), + Integer.valueOf(perguntaValidacao), "", questionario)); + // formulario.setPerguntaValidacao(perguntaValidacao); + + for (String strSimValidacao : simValidacao) { + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hSimValidacao), + Integer.valueOf(strSimValidacao), "", questionario)); + } + + // formulario.setSimValidacao(simValidacao); + + for (String strFerramentaValidacao : ferramentaValidacao) { + lsRespostaQuestionario.add(retornarRespostaQuestionario( + Integer.valueOf(hFerramentaValidacao), Integer.valueOf(strFerramentaValidacao), "", + questionario)); + } + + // formulario.setFerramentaValidacao(ferramentaValidacao); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hOutroAvaliador), + Integer.valueOf(1), outroAvaliador, questionario)); + // formulario.setOutroAvaliador(outroAvaliador); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hNivelAses), + Integer.valueOf(nivelAses), "", questionario)); + // formulario.setNivelAses(nivelAses); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hNivelWcag), + Integer.valueOf(nivelWcag), "", questionario)); + // formulario.setNivelWcag(nivelWcag); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hNivelAccessMonitor), + Integer.valueOf(nivelAccessMonitor), "", questionario)); + // formulario.setNivelAccessMonitor(nivelAccessMonitor); + + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hChecklistQtnList), + Integer.valueOf(checklistQtnList), "", questionario)); + // formulario.setChecklist(checklist); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hFuncionalidade), + Integer.valueOf(funcionalidade), "", questionario)); + // formulario.setFuncionalidade(funcionalidade); + + + for (String strAssistiva : assistiva) { + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hAssistiva), + Integer.valueOf(strAssistiva), "", questionario)); + } + + // lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hAssistiva), + // assistiva, "" , questionario)); + // formulario.setAssistiva(assistiva); + + lsRespostaQuestionario.add(retornarRespostaQuestionario( + Integer.valueOf(hJustificativaAssistiva), Integer.valueOf(1), justificativaAssistiva, + questionario)); + // formulario.setJustificativaAssistiva(justificativaAssistiva); + + lsRespostaQuestionario.add(retornarRespostaQuestionario(Integer.valueOf(hDificuldadePrazo), + Integer.valueOf(1), dificuldadePrazo, questionario)); + // formulario.setDificuldadePrazo(dificuldadePrazo); + + RespostaQuestionarioDao respostaQuestionarioDao = new RespostaQuestionarioDao(); + + boolean formularioGravado; + + formularioGravado = respostaQuestionarioDao.salvar(lsRespostaQuestionario); + + + lsRespostaQuestionario = null; + } + } + + private RespostaQuestionario retornarRespostaQuestionario(int idPergunta, int idOpcaoResposta, + String textoResposta, Questionario questionario) { + + pergunta = new Pergunta(idPergunta); + opcaoResposta = new OpcaoResposta(idOpcaoResposta); + respostaQuestionario = new RespostaQuestionario(); + + respostaQuestionario.setOpcaoResposta(opcaoResposta); + respostaQuestionario.setPergunta(pergunta); + respostaQuestionario.setQuestionario(questionario); + respostaQuestionario.setTextoResposta(textoResposta); + + return respostaQuestionario; + } } -- libgit2 0.21.2