Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java
diff options
context:
space:
mode:
Diffstat (limited to 'EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java')
-rw-r--r--EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java164
1 files changed, 164 insertions, 0 deletions
diff --git a/EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java b/EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java
new file mode 100644
index 0000000..d76ecd2
--- /dev/null
+++ b/EjercitarWeb/src/src/CargarResultadosGeneralesConceptosServlet.java
@@ -0,0 +1,164 @@
+package src;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.ejb.EJB;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import beans.AdministracionBeanRemote;
+
+import model.Alumno;
+import model.Asignatura;
+import model.Concepto;
+import model.Curso;
+import model.Tema;
+
+/**
+ * Servlet implementation class CargarResultadosGeneralesConceptosServlet
+ */
+@WebServlet("/CargarResultadosGeneralesConceptosServlet")
+public class CargarResultadosGeneralesConceptosServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ @PersistenceContext
+ EntityManager em;
+
+ @EJB
+ AdministracionBeanRemote abr;
+
+ /**
+ * @see HttpServlet#HttpServlet()
+ */
+ public CargarResultadosGeneralesConceptosServlet() {
+ super();
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ response.setContentType("text/html;charset=UTF-8");
+ PrintWriter out = response.getWriter();
+ //int idTema = Integer.valueOf(request.getParameter("tema_id"));
+ //Tema tema = em.find(Tema.class, idTema);
+
+ String idAsignatura = request.getParameter("asignatura");
+ Asignatura asignatura = em.find(Asignatura.class, Integer.valueOf(idAsignatura));
+ Curso curso = asignatura.getCurso();
+
+ //Promedio General
+ List<Alumno> alumnoList = em.createQuery("Select e from Alumno e where e.curso = :curso")
+ .setParameter("curso", curso).getResultList();
+ List<Tema> temaList = em.createQuery("Select e from Tema e where e.asignatura = :asignatura")
+ .setParameter("asignatura", asignatura).getResultList();
+ request.setAttribute("alumnoList", alumnoList);
+ System.out.println(alumnoList.toString());
+
+ HashMap<String, Double> promedioConceptos = new HashMap<String, Double>();
+ for(Alumno alumno : alumnoList) {
+
+ for(Tema tema: temaList){
+ List<Concepto> conceptoList = em.createQuery("Select e from Concepto e where e.tema = :tema")
+ .setParameter("tema", tema).getResultList();
+
+ for(Concepto concepto : conceptoList) {
+ if (!promedioConceptos.containsKey(concepto.getNombre())) {
+ promedioConceptos.put(concepto.getNombre(), Double.valueOf("0"));
+ System.out.println("valor hash: " + promedioConceptos.get(concepto.getNombre().toString()));
+
+ }
+ //double valorActual =
+ promedioConceptos.put(concepto.getNombre(), promedioConceptos.get(concepto.getNombre())
+ + Double.valueOf(abr.getValorNodoRed(concepto.getNombre(), asignatura.getIdAsignatura(), alumno.getIdAlumno())));
+
+ }
+ }
+ }
+
+
+
+ Iterator<String> keySetIterator = promedioConceptos.keySet().iterator();
+ while(keySetIterator.hasNext()){
+ String key = keySetIterator.next();
+ System.out.println("valor hash: " + promedioConceptos.get(key).toString());
+ promedioConceptos.put(key, promedioConceptos.get(key)/alumnoList.size());
+ }
+
+
+ try {
+ out.printf("<table title=\"Resultados\"" +
+ "id=\"concepto_grafico\"" +
+ "summary=\"tema\"" +
+ "data-attc-createChart=\"true\" " +
+ "data-attc-colDescription=\"tema\" " +
+ "data-attc-colValues=\"promedio\"" +
+ "data-attc-location=\"grafico_conceptos\" " +
+ "data-attc-hideTable=\"true\" " +
+ "data-attc-type=\"column\" " +
+ "data-attc-googleOptions=" + "\'" + "{\"is3D\":true}\'" +
+ "data-attc-controls='{\"showHide\":false,\"create\":false,\"chartType\":false}'>");
+ out.printf("<thead>");
+ out.printf("<tr>");
+
+
+ out.printf("<th id=\"tema\">");
+ out.printf("Tema");
+ out.printf("</th>");
+
+ out.printf("<th id=\"promedio\">");
+ out.printf("Promedio");
+ out.printf("</th>");
+
+ out.printf("</tr>");
+ out.printf("</thead>");
+ out.printf("<tbody>");
+
+ keySetIterator = promedioConceptos.keySet().iterator();
+ while(keySetIterator.hasNext()){
+ String key = keySetIterator.next();
+ //System.out.println(tema.getConceptoList().toString());
+ out.printf("<tr>");
+
+ out.printf("<td class='lname'>");
+ out.printf(key);
+ out.printf("</td>");
+
+ out.printf("<td class='lname'>");
+ out.printf(Double.toString(promedioConceptos.get(key)));
+ out.printf("</td>");
+
+ out.printf("</tr>");
+ }
+ out.printf("</tbody>");
+ out.printf("</table>");
+ } finally {
+ out.close();
+ }
+
+ //List<Concepto> conceptoList = abr.getConceptoList(idTema);
+ System.out.println("prueba");
+ //System.out.println(conceptoList.toString());
+ }
+
+ /**
+ * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ doGet(request, response);
+ }
+
+}
+