2aa05c72 |
1 | /*\r |
2 | * To change this template, choose Tools | Templates\r |
3 | * and open the template in the editor.\r |
4 | */\r |
5 | package org.ufcspa.simdecs.comunicacao;\r |
6 | \r |
7 | \r |
8 | import java.io.IOException;\r |
7247f51c |
9 | import java.io.PrintWriter;\r |
2aa05c72 |
10 | import java.text.ParseException;\r |
11 | import java.text.SimpleDateFormat;\r |
12 | import java.util.Date;\r |
13 | import java.util.logging.Level;\r |
14 | import java.util.logging.Logger;\r |
15 | import javax.persistence.EntityManager;\r |
16 | import javax.persistence.EntityManagerFactory;\r |
7247f51c |
17 | import javax.persistence.NoResultException;\r |
2aa05c72 |
18 | import javax.persistence.Persistence;\r |
19 | import javax.servlet.ServletException;\r |
20 | import javax.servlet.http.HttpServlet;\r |
21 | import javax.servlet.http.HttpServletRequest;\r |
22 | import javax.servlet.http.HttpServletResponse;\r |
23 | import javax.servlet.http.HttpSession;\r |
24 | import org.ufcspa.simdecs.entidade.Log;\r |
7247f51c |
25 | import org.ufcspa.simdecs.entidade.RespostaMediador;\r |
26 | import org.ufcspa.simdecs.entidade.Usuario;\r |
448adc04 |
27 | import org.ufcspa.simdecs.comunicacao.util.UtilitarioSql;\r |
2aa05c72 |
28 | \r |
29 | /**\r |
30 | *\r |
31 | * @author pbarros\r |
32 | */\r |
33 | public class MetodoParaGravarLog extends HttpServlet {\r |
34 | \r |
35 | /**\r |
36 | * Processes requests for both HTTP\r |
37 | * <code>GET</code> and\r |
38 | * <code>POST</code> methods.\r |
39 | *\r |
40 | * @param request servlet request\r |
41 | * @param response servlet response\r |
42 | * @throws ServletException if a servlet-specific error occurs\r |
43 | * @throws IOException if an I/O error occurs\r |
44 | */\r |
2aa05c72 |
45 | \r |
2aa05c72 |
46 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)\r |
47 | throws ServletException, IOException, ParseException {\r |
48 | HttpSession session = request.getSession(true);\r |
49 | session.getId();\r |
50 | \r |
51 | Date dt = new Date();\r |
52 | Long idLong = new Long(request.getParameter("id"));\r |
ca3a57c8 |
53 | Long tipoLog = new Long(request.getParameter("tipoLog"));\r |
7247f51c |
54 | UtilitarioSql util = new UtilitarioSql();\r |
55 | PrintWriter out = response.getWriter();\r |
56 | // alteracao solicitado mosmmann \r |
57 | //response.setContentType("text/html;charset=UTF-8");\r |
ca3a57c8 |
58 | /*\r |
59 | * \r |
60 | * 1 Iniciar simulador\r |
61 | * 2 Caso \r |
62 | * 3 Ficha do paciente \r |
63 | * 4 Sinais / Sintomas \r |
64 | * 5 Exames complementares \r |
65 | * 6 Diagnóstico \r |
66 | * 7 Tratamento \r |
67 | * 8 Auxílio pedagógico \r |
68 | * 9 Intervenção do Mediador \r |
69 | * \r |
70 | * \r |
71 | */\r |
72 | \r |
73 | \r |
7247f51c |
74 | \r |
75 | response.setContentType( "text/xml" );\r |
76 | response.setHeader( "Cache-Control", "no-cache" );\r |
77 | out.println( "<xml>" );\r |
2aa05c72 |
78 | \r |
79 | \r |
80 | EntityManagerFactory emf = Persistence.createEntityManagerFactory("simdecsPU");\r |
81 | EntityManager em = emf.createEntityManager();\r |
82 | em.getTransaction().begin();\r |
83 | Log lg =new Log();\r |
7247f51c |
84 | lg.setDatalog(util.converteDataUtilToSql(dt)); \r |
2aa05c72 |
85 | lg.setDescricaolog(request.getParameter("log"));\r |
ca3a57c8 |
86 | lg.setIdTipolog(tipoLog);\r |
2aa05c72 |
87 | lg.setHoralog(dt);\r |
88 | lg.setUsuid(idLong);\r |
89 | em.persist(lg);\r |
90 | em.getTransaction().commit();\r |
7247f51c |
91 | \r |
92 | RespostaMediador resp;\r |
93 | \r |
94 | try {\r |
95 | em.getTransaction().begin();\r |
96 | resp = (RespostaMediador) em.createQuery("select resposta from RespostaMediador as resposta where resposta.idUsuario=:id and resposta.dataResposta is null" )\r |
97 | .setParameter("id", idLong)\r |
98 | //.setParameter("data",dtNull )\r |
99 | .getSingleResult();\r |
100 | if(resp.getId()>0)\r |
101 | {\r |
102 | out.println( "<id>" + String.valueOf(resp.getId()) + "</id>" );\r |
103 | out.println("<resposta>" + resp.getNome() + "</resposta>");\r |
104 | out.println("<arquivo>" + resp.getEndArquivo() + "</arquivo>");\r |
105 | resp.setDataResposta(util.converteDataUtilToSql(dt));\r |
106 | }\r |
107 | else \r |
108 | {\r |
109 | out.println( "<id>0</id>" );\r |
110 | out.println("<resposta></resposta>");\r |
111 | out.println("<arquivo></arquivo>");\r |
112 | }\r |
113 | \r |
114 | // out.println("OK "+ user.getId());\r |
115 | // out.close();\r |
116 | } catch (NoResultException ne) {\r |
117 | \r |
118 | // request.setAttribute("id","0"); \r |
119 | // out.println("Usuario ou senha Inválido ");\r |
120 | out.println( "<id>" + "0" + "</id>" );\r |
121 | \r |
122 | } finally { \r |
123 | em.persist(lg);\r |
124 | em.getTransaction().commit();\r |
125 | out.println( "</xml>" );\r |
126 | out.close();\r |
127 | }\r |
128 | \r |
2aa05c72 |
129 | \r |
130 | }\r |
131 | \r |
132 | // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">\r |
133 | /**\r |
134 | * Handles the HTTP\r |
135 | * <code>GET</code> method.\r |
136 | *\r |
137 | * @param request servlet request\r |
138 | * @param response servlet response\r |
139 | * @throws ServletException if a servlet-specific error occurs\r |
140 | * @throws IOException if an I/O error occurs\r |
141 | */\r |
142 | \r |
143 | \r |
144 | /**\r |
145 | * Handles the HTTP\r |
146 | * <code>POST</code> method.\r |
147 | *\r |
148 | * @param request servlet request\r |
149 | * @param response servlet response\r |
150 | * @throws ServletException if a servlet-specific error occurs\r |
151 | * @throws IOException if an I/O error occurs\r |
152 | */\r |
153 | @Override\r |
154 | protected void doPost(HttpServletRequest request, HttpServletResponse response)\r |
155 | throws ServletException, IOException {\r |
156 | try {\r |
157 | processRequest(request, response);\r |
158 | } catch (ParseException ex) {\r |
159 | Logger.getLogger(MetodoParaGravarLog.class.getName()).log(Level.SEVERE, null, ex);\r |
160 | }\r |
161 | }\r |
162 | \r |
163 | /**\r |
164 | * Returns a short description of the servlet.\r |
165 | *\r |
166 | * @return a String containing servlet description\r |
167 | */\r |
168 | @Override\r |
169 | public String getServletInfo() {\r |
170 | return "Short description";\r |
171 | }// </editor-fold>\r |
172 | }\r |