(no commit message)
authormaroni <maroni@192.168.1.103>
Thu, 15 Mar 2012 04:35:51 +0000 (01:35 -0300)
committermaroni <maroni@192.168.1.103>
Thu, 15 Mar 2012 04:35:51 +0000 (01:35 -0300)
src/java/org/ufcspa/simdecs/comunicacao/MetodoIniciaCaso.java
web/login.xhtml

index c9f01a1..d4ba7c5 100644 (file)
@@ -44,14 +44,14 @@ public class MetodoIniciaCaso extends HttpServlet {
     }
 
     
-    private String getRespostaNodo(NodoPaciente nodoPaciente) {
+    private String getRespostaNodo(Nodo nodo, Paciente paciente) {
         EntityManager em = DbUtil.getInstance().getEntityManager();
 
-        UnBUtil unBUtil = UnBUtil.getInstance(nodoPaciente.getPaciente().getRede());
-        unBUtil.abreRede(nodoPaciente.getPaciente().getRede());
+        UnBUtil unBUtil = UnBUtil.getInstance(paciente.getRede());
+        unBUtil.abreRede(paciente.getRede());
         
         Iterator<NodoPaciente> it = em.createQuery("From NodoPaciente Where paciente.id=:pIdPaciente")
-                                      .setParameter("pIdPaciente", nodoPaciente.getPaciente().getId())
+                                      .setParameter("pIdPaciente", paciente.getId())
                                       .getResultList()
                                       .iterator();
         
@@ -62,11 +62,11 @@ public class MetodoIniciaCaso extends HttpServlet {
             unBUtil.ativarNodo(pn);
         }
         
-        NodoBean nodoBean = unBUtil.getNodoBeanByNodo(nodoPaciente.getNodo());
+        NodoBean nodoBean = unBUtil.getNodoBeanByNodo(nodo);
         nodoBean.getPercentualProbabilidade();
 
         List <RespostaNodo> respostas = em.createQuery("From RespostaNodo where nodo.id=:pIdNodo")
-                                         .setParameter("pIdNodo", nodoPaciente.getNodo().getId())
+                                         .setParameter("pIdNodo", nodo.getId())
                                          .getResultList();
         
         int random = (int) (1+Math.random()*respostas.size());
@@ -150,8 +150,21 @@ public class MetodoIniciaCaso extends HttpServlet {
                     if (!nodo.getNodo().getTipo().equals(Nodo.SINAL_SINTOMA))
                         continue;
                 
-                    out.println("                <sintoma uid=\"sintoma-" + nodo.getId() + "\" nomeCientifico=\"" + nodo.getNodo().getNome() + "\" nomePopular=\"" + getPerguntaNodo(nodo.getNodo().getId()) + "\" imagem=\"\" som=\"\" video=\"\" dependencia=\"" + getDependencia(nodo.getNodo().getId()) + "\" falaPaciente=\"" + getRespostaNodo(nodo)  + "\" />");
+                    out.println("                <sintoma uid=\"sintoma-" + nodo.getId() + "\" nomeCientifico=\"" + nodo.getNodo().getNome() + "\" nomePopular=\"" + getPerguntaNodo(nodo.getNodo().getId()) + "\" imagem=\"\" som=\"\" video=\"\" dependencia=\"" + getDependencia(nodo.getNodo().getId()) + "\" falaPaciente=\"" + getRespostaNodo(nodo.getNodo(), paciente)  + "\" />");
                 }
+
+                // Sinais e sintomas inativos
+                List<Nodo> nodosNaoSelecionados = em.createQuery("From Nodo Where nodo.rede.id=:pIDRede and nodo.id not in (Select nodo.id from NodoPaciente Where paciente.id=:pIDPaciente)")
+                                             .setParameter("pIDRede", paciente.getRede().getId())                
+                                             .setParameter("pIDPaciente", paciente.getId())                
+                                             .getResultList();
+                for(Nodo nodo : nodosNaoSelecionados) {
+                    if (!nodo.getTipo().equals(Nodo.SINAL_SINTOMA))
+                        continue;
+                
+                    out.println("                <sintoma uid=\"sintoma-" + nodo.getId() + "\" nomeCientifico=\"" + nodo.getNome() + "\" nomePopular=\"" + getPerguntaNodo(nodo.getId()) + "\" imagem=\"\" som=\"\" video=\"\" dependencia=\"" + getDependencia(nodo.getId()) + "\" falaPaciente=\"" + getRespostaNodo(nodo, paciente)  + "\" />");
+                }
+                
                 out.println("            </perguntar_sintoma>");
 
                 // Exame Físico
index b9c9667..05f45c6 100644 (file)
@@ -33,7 +33,7 @@
             </p:panel>
             <br/>
             <br/>
-            <h:outputText value="Versão 1.69" />
+            <h:outputText value="Versão 1.70" />
         </center>
     </h:body>
 </html>