import java.util.Iterator;
import java.util.Map;
import javax.persistence.EntityManager;
+import javax.persistence.Persistence;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
- EntityManager em = DbUtil.getInstance().getEntityManager();
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
}
printDebug("------------------------------------------------------------------------------------");
+ EntityManager em = null;
try {
-
+ // EntityManager em = DbUtil.getInstance().getEntityManager();
+ em = Persistence.createEntityManagerFactory("SimDeCSPU").createEntityManager();
+
executaServico(em, request, response, out);
} catch(Exception e) {
out.println("<xml>" );
out.println("</xml>" );
e.printStackTrace();
- } finally {
+ } finally {
+ if (em != null)
+ em.close();
+
out.close();
}
}
*/
public class MetodoIniciaCaso extends BaseComunicacao {
- private String getPerguntaNodo(Long idNodo) {
- EntityManager em = DbUtil.getInstance().getEntityManager();
+ private String getPerguntaNodo(Long idNodo, EntityManager em) {
List <PerguntaNodo> perguntas = em.createQuery("From PerguntaNodo where nodo.id=:pIdNodo")
.setParameter("pIdNodo", idNodo)
.getResultList();
}
{
- String pergunta = getPerguntaNodo(nodo.getNodo().getId());
+ String pergunta = getPerguntaNodo(nodo.getNodo().getId(), em);
String resposta = getRespostaNodo(nodo.getNodo(), paciente);
registraPerguntaLog(em, sessaoUsuario, paciente, nodo.getNodo(), true, Nodo.SINAL_SINTOMA, pergunta, nodo.getNodo().getNomeAmigavel(), resposta);
listaSintomas.add(" <sintoma uid=\"sintoma-np-" + nodo.getId() + ":paciente-" + paciente.getId() + "\" nomeCientifico=\"" + clear(nodo.getNodo().getNome()) + "\" nomePopular=\"" + clear(pergunta) + "\" imagem=\"\" som=\"\" video=\"\" dependencia=\"" + getDependencia(nodo.getNodo().getId()) + "\" falaPaciente=\"" + clear(resposta) + "\" />");
}
{
- String pergunta = getPerguntaNodo(nodo.getId());
+ String pergunta = getPerguntaNodo(nodo.getId(), em);
String resposta = getRespostaNodo(nodo, paciente);
registraPerguntaLog(em, sessaoUsuario, paciente, nodo, false, Nodo.SINAL_SINTOMA, pergunta, nodo.getNomeAmigavel(), resposta);
listaSintomas.add(" <sintoma uid=\"sintoma-nd-" + nodo.getId() + ":paciente-" + paciente.getId() + "\" nomeCientifico=\"" + clear(nodo.getNome()) + "\" nomePopular=\"" + clear(pergunta) + "\" imagem=\"\" som=\"\" video=\"\" dependencia=\"" + getDependencia(nodo.getId()) + "\" falaPaciente=\"" + clear(resposta) + "\" />");
while (itDiagnosticos.hasNext()) {
Nodo nodo = itDiagnosticos.next();
{
- String resposta = getPerguntaNodo(nodo.getId());
+ String resposta = getPerguntaNodo(nodo.getId(), em);
registraPerguntaLog(em, sessaoUsuario, paciente, nodo, false, Nodo.DIAGNOSTICO, null, nodo.getNomeAmigavel(), resposta);
out.println(" <diagnostico uid=\"diagnostico-" + nodo.getId() + ":paciente-" + paciente.getId() + "\" nome=\"" + clear(nodo.getNomeAmigavel()) + "\" falaMedico=\"" + clear(resposta) + "\" />");
}
while (itConduta.hasNext()) {
Nodo nodo = itConduta.next();
{
- String resposta = getPerguntaNodo(nodo.getId());
+ String resposta = getPerguntaNodo(nodo.getId(), em);
registraPerguntaLog(em, sessaoUsuario, paciente, nodo, false, Nodo.CONDUTA, null, nodo.getNomeAmigavel(), resposta);
out.println(" <conduta uid=\"conduta-" + nodo.getId() + ":paciente-" + paciente.getId() + "\" nome=\"" + clear(nodo.getNomeAmigavel()) + "\" falaMedico=\"" + clear(resposta) + "\" />");
}
private EntityManager em;
- public final void refresh(SessaoUsuario sessaoUsuario, Paciente paciente) throws Exception {
+ public final void refresh(SessaoUsuario sessaoUsuario, Paciente paciente, EntityManager em) throws Exception {
// Inicializa Valores
perguntasRealizadas = perguntasDisponiveis = perguntasProfessor = perguntasBogusRealizadas =
nodosInvestigacao = new ArrayList<Nodo>();
- em = DbUtil.getInstance().getEntityManager();
+ //em = DbUtil.getInstance().getEntityManager();
Iterator<Log> itLog = em.createQuery("From Log where sessaoUsuario.id=:pIDSessao order by data")
.setParameter("pIDSessao", sessaoUsuario.getId())
}
}
- public LogExecucao(SessaoUsuario sessaoUsuario, Paciente paciente) throws Exception {
- refresh(sessaoUsuario, paciente);
+ public LogExecucao(SessaoUsuario sessaoUsuario, Paciente paciente, EntityManager em) throws Exception {
+ refresh(sessaoUsuario, paciente, em);
}
public boolean isAbriuFichaPaciente() {
import java.util.*;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
+import javax.persistence.Persistence;
import org.ufcspa.simdecs.entities.*;
import org.ufcspa.simdecs.util.DbUtil;
import org.ufcspa.simdecs.util.NodoBean;
// Verifica as condutas
- if (logExecucao.isConcluiuConduta()) {
+ if (logExecucao.isConcluiuConduta() && logExecucao.isConcluiuDiagnostico()) {
// Verifica a adequacao da conduta
String resultadoConduta = getResultadoConduta();
resultadosSimulacao.add(resultadoConduta);
}
public NegociacaoPedagogica(long idSessao, Paciente paciente) throws Exception {
- em = DbUtil.getInstance().getEntityManager();
- SessaoUsuario sessaoUsuario = em.find(SessaoUsuario.class, idSessao);
- this.sessaoUsuario = sessaoUsuario;
- this.paciente = paciente;
-
- // Busca o log de execução
- logExecucao = new LogExecucao(sessaoUsuario, paciente);
+ //em = DbUtil.getInstance().getEntityManager();
+ try {
+ em = Persistence.createEntityManagerFactory("SimDeCSPU").createEntityManager();
+ SessaoUsuario sessaoUsuario = em.find(SessaoUsuario.class, idSessao);
+ this.sessaoUsuario = sessaoUsuario;
+ this.paciente = paciente;
+
+ // Busca o log de execução
+ logExecucao = new LogExecucao(sessaoUsuario, paciente, em);
+ } finally {
+ em.close();
+ }
}
public String getIntervencao(String etapa) throws Exception {
<a href="simulador/index.html">Acesso ao Simulador</a>
<br/>
<br/>
- <h:outputText value="Versão 4.1.4" />
+ <h:outputText value="Versão 4.2" />
</center>
</h:body>
</html>