*/
public class NegociacaoPedagogica {
- public static final String NAO_ABRIU_FICHA_PACIENTE = "NAO_ABRIU_FICHA_PACIENTE";
-
- public static final String INVESTIGACAO_ADEQUADA = "INVESTIGACAO_ADEQUADA";
- public static final String INVESTIGACAO_INSUFICIENTE = "INVESTIGACAO_INSUFICIENTE";
- public static final String INVESTIGACAO_EXCESSIVA = "INVESTIGACAO_EXCESSIVA";
- public static final String INVESTIGACAO_BOGUS = "INVESTIGACAO_BOGUS";
- public static final String INVESTIGACAO_DISPENDIOSA = "INVESTIGACAO_DISPENDIOSA";
- public static final String INVESTIGACAO_DEMORADA = "INVESTIGACAO_DEMORADA";
+ public static final String NAO_ABRIU_FICHA_PACIENTE = "NAO_ABRIU_FICHA_PACIENTE";
+
+ public static final String INVESTIGACAO_ADEQUADA = "INVESTIGACAO_ADEQUADA";
+ public static final String INVESTIGACAO_INSUFICIENTE = "INVESTIGACAO_INSUFICIENTE";
+ public static final String INVESTIGACAO_EXCESSIVA = "INVESTIGACAO_EXCESSIVA";
+ public static final String INVESTIGACAO_BOGUS = "INVESTIGACAO_BOGUS";
+ public static final String INVESTIGACAO_DISPENDIOSA = "INVESTIGACAO_DISPENDIOSA";
+ public static final String INVESTIGACAO_DEMORADA = "INVESTIGACAO_DEMORADA";
+ public static final String INVESTIGACAO_NAO_REALIZADA = "INVESTIGACAO_NAO_REALIZADA";
public static final String DIAGNOSTICO_ADEQUADO = "DIAGNOSTICO_ADEQUADO";
public static final String DIAGNOSTICO_INCORRETO_IMPLAUSIVEL= "DIAGNOSTICO_INCORRETO_IMPLAUSIVEL";
public static final String DIAGNOSTICO_INCORRETO_PLAUSIVEL = "DIAGNOSTICO_INCORRETO_PLAUSIVEL";
+ public static final String DIAGNOSTICO_NAO_SELECIONADO = "DIAGNOSTICO_NAO_SELECIONADO";
public static final String CONDUTA_ADEQUADA = "CONDUTA_ADEQUADA";
public static final String CONDUTA_INCORRETA_COERENTE = "CONDUTA_INCORRETA_COERENTE";
public static final String CONDUTA_EXCESSIVA = "CONDUTA_EXCESSIVA";
public static final String CONDUTA_DEMORADA = "CONDUTA_DEMORADA";
public static final String CONDUTA_DISPENDIOSA = "CONDUTA_DISPENDIOSA";
+ public static final String CONDUTA_NAO_SELECIONADA = "CONDUTA_NAO_SELECIONADA";
private LogExecucao logExecucao;
}
private String getResultadoDiagnostico() throws Exception {
+ // Caso nao selecionou o diagnostico
+ if (logExecucao.getDiagnostico() == null)
+ return DIAGNOSTICO_NAO_SELECIONADO;
+
// Nao selecionou o primeiro diagnostico
if (logExecucao.getPrimeiroDiagnosticoCaso() != null && !logExecucao.getDiagnostico().equals(logExecucao.getPrimeiroDiagnosticoCaso()))
if (logExecucao.getSegundoDiagnosticoCaso() != null && logExecucao.getDiagnostico().equals(logExecucao.getSegundoDiagnosticoCaso()))
private String getResultadoConduta() throws Exception {
+ // Caso nao selecionou a conduta
+ if (logExecucao.getCondutasIdeaisDiagnostico() == null || logExecucao.getCondutasIdeaisDiagnostico().isEmpty())
+ return CONDUTA_NAO_SELECIONADA;
+
// Caso o diagnóstico esteja adequado verifica se a conduta foi excessiva, insuficiente ou adequada!
if (getResultadoDiagnostico().equals(DIAGNOSTICO_ADEQUADO)) {
float custoRealizado=0;
float custoPrevisto=0;
+ if (logExecucao.getCondutas().isEmpty())
+ return null;
+
for(Nodo conduta : logExecucao.getCondutas().values())
custoRealizado+=conduta.getCusto();
float tempoRealizado=0;
float tempoPrevisto=0;
+ if (logExecucao.getCondutas().isEmpty())
+ return null;
+
for(Nodo conduta : logExecucao.getCondutas().values())
tempoRealizado+=conduta.getTempo();
if (!logExecucao.isAbriuFichaPaciente())
resultadosSimulacao.add(NAO_ABRIU_FICHA_PACIENTE);
- // Verifica se a investigação é insuficiente ou excessiva
- int fatorInsuficiente = 0;
- if (anamneseInsuficiente)
- fatorInsuficiente++;
- if (exameComplementarInsuficiente)
- fatorInsuficiente++;
- if (exameFisicoInsuficiente)
- fatorInsuficiente++;
-
- int fatorExcessivo = 0;
- if (anamneseExcessiva)
- fatorExcessivo++;
- if (exameComplementarExcessivo)
- fatorExcessivo++;
- if (exameFisicoExcessivo)
- fatorExcessivo++;
-
- if (fatorExcessivo != 0 || fatorInsuficiente != 0) {
- if (fatorInsuficiente > fatorExcessivo)
- resultadosSimulacao.add(INVESTIGACAO_INSUFICIENTE);
- else
- resultadosSimulacao.add(INVESTIGACAO_EXCESSIVA);
- }
+ // Verifica se realmente realizou a investigacao
+ if (logExecucao.getNodosInvestigacao().size() == 0)
+ resultadosSimulacao.add(INVESTIGACAO_NAO_REALIZADA);
+ else {
+ // Verifica se a investigação é insuficiente ou excessiva
+ int fatorInsuficiente = 0;
+ if (anamneseInsuficiente)
+ fatorInsuficiente++;
+ if (exameComplementarInsuficiente)
+ fatorInsuficiente++;
+ if (exameFisicoInsuficiente)
+ fatorInsuficiente++;
+
+ int fatorExcessivo = 0;
+ if (anamneseExcessiva)
+ fatorExcessivo++;
+ if (exameComplementarExcessivo)
+ fatorExcessivo++;
+ if (exameFisicoExcessivo)
+ fatorExcessivo++;
+
+ if (fatorExcessivo != 0 || fatorInsuficiente != 0) {
+ if (fatorInsuficiente > fatorExcessivo)
+ resultadosSimulacao.add(INVESTIGACAO_INSUFICIENTE);
+ else
+ resultadosSimulacao.add(INVESTIGACAO_EXCESSIVA);
+ }
+ }
// Verifica se é bogus
if (perguntouBogus)
if (logExecucao.isConcluiuInvestigacao()) {
if (!resultadosSimulacao.contains(INVESTIGACAO_BOGUS) && !resultadosSimulacao.contains(INVESTIGACAO_DEMORADA) &&
!resultadosSimulacao.contains(INVESTIGACAO_DISPENDIOSA) && !resultadosSimulacao.contains(INVESTIGACAO_EXCESSIVA) &&
- !resultadosSimulacao.contains(INVESTIGACAO_INSUFICIENTE) ) {
+ !resultadosSimulacao.contains(INVESTIGACAO_INSUFICIENTE) && !resultadosSimulacao.contains(INVESTIGACAO_NAO_REALIZADA)) {
resultadosSimulacao.add(INVESTIGACAO_ADEQUADA);
}
intervencao.setEstrategia(estrategia);
intervencao.setResultado(resultado);
intervencao.setSessaoUsuario(sessaoUsuario);
-
+System.out.println("pResultado: " + resultado);
+System.out.println("pEstrategia: " + estrategia);
TaticaPedagogica tatica = (TaticaPedagogica) em.createQuery("From TaticaPedagogica where resultado=:pResultado and estrategia=:pEstrategia")
.setParameter("pResultado", resultado)
.setParameter("pEstrategia", estrategia)
String resultadoDiagnostico = getResultadoDiagnostico();
if (resultadoDiagnostico.equals(DIAGNOSTICO_ADEQUADO))
retorno.append("-Você chegou ao diagnóstico previsto para esta simulação!\n");
+ else if (resultadoDiagnostico.equals(DIAGNOSTICO_NAO_SELECIONADO))
+ retorno.append("-Você finalizou o atendimento sem selecionar um diagnóstico!\n");
else if (resultadoDiagnostico.equals(DIAGNOSTICO_INCORRETO_PLAUSIVEL))
retorno.append("-Você não chegou ao diagnóstico previsto para esta simulação! Porém, seu diagnóstico é plausível! O diagnóstico esperado seria" + logExecucao.getPrimeiroDiagnosticoCaso().getNomeAmigavel() + ".\n");
else
String resultadoConduta = getResultadoConduta();
if (resultadoConduta.equals(CONDUTA_ADEQUADA))
retorno.append("-A conduta selecionada esta adequada ao previsto pela simulação!\n");
+ else if (resultadoConduta.equals(CONDUTA_NAO_SELECIONADA))
+ retorno.append("-Você finalizou o atendimento sem selecionar uma conduta!\n");
else if (resultadoConduta.equals(CONDUTA_EXCESSIVA))
retorno.append("-A conduta selecionada esta adequada ao previsto pela simulação, porém existem procedimentos em excesso!\n");
else if (resultadoConduta.equals(CONDUTA_INSUFICIENTE))
--- /dev/null
+\feffinsert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(85, 'Mensagem', 'AMPLIACAO', 'Indicaste estar confiante na solução do caso, porém não realizaste nenhum questionamento ao paciente. Para chegar a um Diagnóstico é necessário investigar os indícios e sintomas questionando o paciente. Releia o caso, com base nisso questione o paciente buscando encontrar indícios que possam conduzir a uma hipótese diagnostica.', 'INVESTIGACAO_NAO_REALIZADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(86, 'Mensagem', 'CONTESTACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não realizaste nenhum questionamento ao paciente. Para chegar a um Diagnóstico é necessário investigar os indícios e sintomas questionando o paciente. Reflita sobre o caso e realize perguntas que possam conduzi-lo a um raciocínio diagnóstico correto.', 'INVESTIGACAO_NAO_REALIZADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(87, 'Mensagem', 'COMPROVACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não realizaste nenhum questionamento ao paciente. Para chegar a um Diagnóstico é necessário investigar os indícios e sintomas questionando o paciente. Reflita sobre o caso e realize perguntas que possam conduzi-lo a um raciocínio diagnóstico correto.', 'INVESTIGACAO_NAO_REALIZADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(88, 'Mensagem', 'ORIENTACAO', 'Sua confiança não é alta em realizar o caso provavelmente porque não realizaste nenhum questionamento ao paciente. Volte a fase de investigação e faça perguntas que julgares pertinente, reforçando seu raciocínio diagnóstico e buscando a resolução da simulação.', 'INVESTIGACAO_NAO_REALIZADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(89, 'Mensagem', 'APOIO', 'Sua confiança em resolver o caso é baixa, provavelmente porque não realizaste nenhum questionamento ao paciente. Volte a fase de investigação e faça perguntas que julgares pertinente, reforçando seu raciocínio diagnóstico e buscando a resolução da simulação. Esse procedimento lhe deixará mais confiante.', 'INVESTIGACAO_NAO_REALIZADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(90, 'Mensagem', 'AMPLIACAO', 'Indicaste estar confiante na solução do caso, porém não selecionaste nenhum Diagnóstico para o caso em estudo. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente, selecione um Diagnóstico. ', 'DIAGNOSTICO_NAO_SELECIONADO');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(91, 'Mensagem', 'CONTESTACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não selecionaste nenhum Diagnóstico para o caso em estudo. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente, selecione um Diagnóstico.', 'DIAGNOSTICO_NAO_SELECIONADO');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(92, 'Mensagem', 'COMPROVACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não selecionaste nenhum Diagnóstico para o caso em estudo. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente, selecione um Diagnóstico.', 'DIAGNOSTICO_NAO_SELECIONADO');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(93, 'Mensagem', 'ORIENTACAO', 'Sua confiança não é alta em solucionar esse caso e não selecionaste nenhum Diagnóstico. Reveja as perguntas realizadas ao paciente, se necessário faça novas perguntas e depois volte a fase de Diagnóstico selecionando um que julgue correto. ', 'DIAGNOSTICO_NAO_SELECIONADO');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(94, 'Mensagem', 'APOIO', 'Sua confiança em resolver o caso é baixa, provavelmente a fase de Investigação deva ser revisada. Volte a fase de investigação e faça perguntas que julgares pertinente, reforçando seu raciocínio diagnóstico e buscando a resolução da simulação ou busque informações em alguma leitura complementar. Esse procedimento lhe deixará mais confiante.', 'DIAGNOSTICO_NAO_SELECIONADO');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(95, 'Mensagem', 'AMPLIACAO', 'Indicaste estar confiante na solução do caso, porém não selecionaste nenhuma Conduta para o caso em estudo. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente e no Diagnóstico selecionado, indique a(s) conduta(s) que julgue procedente. ', 'CONDUTA_NAO_SELECIONADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(96, 'Mensagem', 'CONTESTACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não selecionaste nenhuma Conduta para esse caso. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente e no Diagnóstico selecionado, indique a(s) conduta(s) que julgue procedente.', 'CONDUTA_NAO_SELECIONADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(97, 'Mensagem', 'COMPROVACAO', 'Indicaste estar tranquilo quanto a solução do caso, porém não selecionaste nenhuma Conduta para esse caso. Volte a essa fase e, com base nos questionamentos que realizaste ao paciente e no Diagnóstico selecionado, indique a(s) conduta(s) que julgue procedente.', 'CONDUTA_NAO_SELECIONADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(98, 'Mensagem', 'ORIENTACAO', 'Sua confiança não é alta em solucionar esse caso e não selecionaste nenhuma Conduta. Reveja as perguntas realizadas ao paciente, se necessário faça novas perguntas e analise o Diagnóstico selecionado. Com base nisso, indique a(s) conduta(s) que julgue procedente.', 'CONDUTA_NAO_SELECIONADA');
+insert into tatica_pedagogica(id, assunto, estrategia, mensagem, resultado) values(99, 'Mensagem', 'APOIO', 'Sua confiança em resolver o caso é baixa, provavelmente a fase de Investigação e/ou Diagnóstico deva ser revisada. Volte a fase de investigação e Diagnóstico e com base nas perguntas realizadas e no Diagnóstico selecionado indique a(s) conduta(s) que julgue procedente. Esse procedimento lhe deixará mais confiante.', 'CONDUTA_NAO_SELECIONADA');