Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamu <samurey@gmail.com>2013-08-17 12:41:28 (GMT)
committer Samu <samurey@gmail.com>2013-08-17 12:41:28 (GMT)
commit8a4bdb7150501fd3556ca398b84ab14400983f4a (patch)
tree005fc730c0de02b90861850b55f48c05ed16e78a
parente99f574f79447f08d5f059f17a72913b9ed665e8 (diff)
resultados generales
-rw-r--r--EjercitarServer/ejbModule/beans/AdministracionBean.java30
-rw-r--r--EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java6
-rw-r--r--EjercitarWeb/WebContent/ver_resultados.jsp12
-rw-r--r--EjercitarWeb/src/src/CargarResultadosGeneralesServlet.java159
-rw-r--r--EjercitarWeb/src/src/CargarResultadosServlet.java4
-rw-r--r--EjercitarWeb/src/src/NuevoEjercicioServlet.java5
6 files changed, 197 insertions, 19 deletions
diff --git a/EjercitarServer/ejbModule/beans/AdministracionBean.java b/EjercitarServer/ejbModule/beans/AdministracionBean.java
index be7ec2e..3b33403 100644
--- a/EjercitarServer/ejbModule/beans/AdministracionBean.java
+++ b/EjercitarServer/ejbModule/beans/AdministracionBean.java
@@ -45,11 +45,11 @@ public class AdministracionBean implements AdministracionBeanRemote{
return conceptoList;
}
- public void agregarEjercicio(Ejercicio ejercicio) {
+ public void agregarEjercicio(Ejercicio ejercicio, int idAsignatura) {
//Poner en una transaccion
// em.getTransaction().begin();
em.persist(ejercicio);
- agregarEjercicioRed(ejercicio);
+ agregarEjercicioRed(ejercicio, idAsignatura);
//em.getTransaction().commit();
}
@@ -78,7 +78,7 @@ public class AdministracionBean implements AdministracionBeanRemote{
private void eliminarTemaRed(Tema tema) {
// TODO Auto-generated method stub
- String nombreRed = "red_base_curso_1.xdsl";
+ String nombreRed = "red_asignatura_" + tema.getAsignatura().getIdAsignatura() + ".xdsl";
Network net = new Network();
net.readFile("redes/" + nombreRed);
net.deleteNode(tema.getNombre());
@@ -107,7 +107,7 @@ public class AdministracionBean implements AdministracionBeanRemote{
private void eliminarConceptoRed(Concepto concepto) {
// TODO Auto-generated method stub\
- String nombreRed = "red_asignatura_" + 1 + ".xdsl";
+ String nombreRed = "red_asignatura_" + concepto.getTema().getAsignatura().getIdAsignatura() + ".xdsl";
Network net = new Network();
net.readFile("redes/" + nombreRed);
net.deleteNode(concepto.getNombre());
@@ -276,9 +276,9 @@ public class AdministracionBean implements AdministracionBeanRemote{
}
- private void agregarEjercicioRed(Ejercicio ejercicio) {
+ private void agregarEjercicioRed(Ejercicio ejercicio, int idAsignatura) {
//operaciones sobre la red bayesiana con smile
- String nombreRed = "red_asignatura_" + 1 + ".xdsl";
+ String nombreRed = "red_asignatura_" + idAsignatura + ".xdsl";
System.out.println("redes/" + nombreRed);
Network net = new Network();
net.readFile("redes/" + nombreRed);
@@ -304,7 +304,7 @@ public class AdministracionBean implements AdministracionBeanRemote{
private void agregarTemaRed(Tema tema) {
//operaciones sobre la red bayesiana con smile
- String nombreRed = "red_asignatura_" + 1 + ".xdsl";
+ String nombreRed = "red_asignatura_" + tema.getAsignatura().getIdAsignatura() + ".xdsl";
System.out.println("redes/" + nombreRed);
Network net = new Network();
net.readFile("redes/" + nombreRed);
@@ -320,7 +320,7 @@ public class AdministracionBean implements AdministracionBeanRemote{
private void agregarConceptoRed(Concepto concepto) {
//operaciones sobre la red bayesiana con smile
- String nombreRed = "red_asignatura_" + 1 + ".xdsl";
+ String nombreRed = "red_asignatura_" + concepto.getTema().getAsignatura().getIdAsignatura() + ".xdsl";
System.out.println("redes/" + nombreRed);
Network net = new Network();
@@ -361,14 +361,24 @@ public class AdministracionBean implements AdministracionBeanRemote{
@Override
public void agregarAsignatura(Asignatura asignatura, boolean usaPlantilla,
String plantilla) {
+ em.persist(asignatura);
+ Network net = new Network();
+ String titulo = asignatura.getNombre();
+ net.addNode(Network.NodeType.Cpt, titulo);
+ net.setOutcomeId(titulo, 0, "No_conoce");
+ net.setOutcomeId(titulo, 1, "Conoce");
+ String nombreRed = "red_asignatura_" + asignatura.getIdAsignatura() + ".xdsl";
+ net.writeFile("redes/" + nombreRed);
+
// TODO Auto-generated method stub
+
}
@Override
- public String getValorNodoRed(String nombre) {
+ public String getValorNodoRed(String nombre, int idAsignatura, int idAlumno) {
// TODO Auto-generated method stub
- String nombreRed = "red_asignatura_" + 1 + ".xdsl";
+ String nombreRed = "red_alumno_" + idAlumno + ".xdsl";
Network net = new Network();
net.readFile("redes/" + nombreRed);
diff --git a/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java b/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java
index d4dfd3e..5395e3e 100644
--- a/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java
+++ b/EjercitarServer/ejbModule/beans/AdministracionBeanRemote.java
@@ -16,7 +16,7 @@ import model.Tema;
public interface AdministracionBeanRemote {
public List getConceptoList(int idTema);
- public void agregarEjercicio(Ejercicio ejercicio);
+ public void agregarEjercicio(Ejercicio ejercicio, int idAsignatura);
public void agregarConcepto(Concepto concepto);
public void agregarTema(Tema tema);
public void agregarProfesor(Profesor profesor);
@@ -29,11 +29,11 @@ public interface AdministracionBeanRemote {
public void eliminarTema(int idTema);
public void agregarTarea(Tarea tarea, ArrayList<Concepto> conceptoList);
- public String getValorNodoRed(String nombre);
-
public void calcularProbabilidades(int idAsignatura);
public void crearRedAlumnos(int idAsignatura);
+
+ String getValorNodoRed(String nombre, int idAsignatura, int idAlumno);
diff --git a/EjercitarWeb/WebContent/ver_resultados.jsp b/EjercitarWeb/WebContent/ver_resultados.jsp
index 2c53c0c..21d51c9 100644
--- a/EjercitarWeb/WebContent/ver_resultados.jsp
+++ b/EjercitarWeb/WebContent/ver_resultados.jsp
@@ -27,8 +27,8 @@
<li><a href="#tabs-3">Individual</a></li>
</ul>
-<div id=tabs-1>
- <p> holas </p>
+<div id=tabs-1 onclick="cargarResultadosGenerales(<%= request.getParameter("asignatura") %>)">
+
</div>
@@ -97,6 +97,14 @@
}
+ function cargarResultadosGenerales(asignatura){
+
+ $("#tabs-1").load("CargarResultadosGeneralesServlet", {asignatura:asignatura});
+ //$("#conceptos").multiselect("refresh");
+ //$("#grafico").attc();
+
+ }
+
function boton(){
$("#grafico").attc();
}
diff --git a/EjercitarWeb/src/src/CargarResultadosGeneralesServlet.java b/EjercitarWeb/src/src/CargarResultadosGeneralesServlet.java
new file mode 100644
index 0000000..d50199e
--- /dev/null
+++ b/EjercitarWeb/src/src/CargarResultadosGeneralesServlet.java
@@ -0,0 +1,159 @@
+package src;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+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 CargarResultadosGeneralesServlet
+ */
+@WebServlet("/CargarResultadosGeneralesServlet")
+public class CargarResultadosGeneralesServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ @PersistenceContext
+ EntityManager em;
+
+ @EJB
+ AdministracionBeanRemote abr;
+
+ /**
+ * @see HttpServlet#HttpServlet()
+ */
+ public CargarResultadosGeneralesServlet() {
+ 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());
+
+ double promedioGeneral = 0;
+ double [] promedioTemas = null;
+ //inicializacion
+ for(int i = 0; i < temaList.size(); i++)
+ promedioTemas[i] = 0;
+
+
+ for(Alumno alumno : alumnoList) {
+ promedioGeneral = promedioGeneral + Double.valueOf(abr.getValorNodoRed(asignatura.getNombre(), asignatura.getIdAsignatura(), alumno.getIdAlumno()));
+ int c=0;
+ //Promedio por temas
+ for(Tema tema: temaList){
+ promedioTemas[c] = promedioTemas[c] + Double.valueOf(abr.getValorNodoRed(tema.getNombre(), asignatura.getIdAsignatura(), alumno.getIdAlumno()));
+ c++;
+ }
+ }
+
+ promedioGeneral = promedioGeneral/alumnoList.size();
+
+ //calculo promedio temas
+ for(int i = 0; i < temaList.size(); i++)
+ promedioTemas[i] = promedioTemas[i]/temaList.size();
+
+
+
+
+
+ try {
+
+
+ out.printf(asignatura.getNombre());
+ out.printf("</br>");
+ out.printf("Promedio: " + promedioGeneral);
+
+ out.printf("<table title=\"Resultados\"" +
+ "summary=\"Resultados por alumno por tema\"" +
+ "data-attc-createChart=\"true\" " +
+ "data-attc-colDescription=\"nombre\" " +
+ "data-attc-colValues=\"tema\"" +
+ "data-attc-location=\"grafico\" " +
+ "data-attc-hideTable=\"false\" " +
+ "data-attc-type=\"pie\" " +
+ "data-attc-googleOptions='{\"is3D\":true}'" +
+ "data-attc-controls='{\"showHide\":true,\"create\":true,\"chartType\":true}'>");
+ 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>");
+
+ int c = 0;
+ for (Tema tema : temaList){
+ //System.out.println(tema.getConceptoList().toString());
+ out.printf("<tr>");
+
+ out.printf("<td class='lname'>");
+ out.printf(tema.getNombre());
+ out.printf("</td>");
+
+ out.printf("<td class='lname'>");
+ out.printf(Double.toString(promedioTemas[c]));
+ 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 {
+ // TODO Auto-generated method stub
+ }
+
+}
diff --git a/EjercitarWeb/src/src/CargarResultadosServlet.java b/EjercitarWeb/src/src/CargarResultadosServlet.java
index a06b5ff..a1677be 100644
--- a/EjercitarWeb/src/src/CargarResultadosServlet.java
+++ b/EjercitarWeb/src/src/CargarResultadosServlet.java
@@ -117,14 +117,14 @@ public class CargarResultadosServlet extends HttpServlet {
out.printf("</td>");
out.printf("<td class='lname'>");
- out.printf(abr.getValorNodoRed(tema.getNombre()));
+ out.printf(abr.getValorNodoRed(tema.getNombre(), Integer.valueOf(idAsignatura), alumno.getIdAlumno()));
out.printf("</td>");
conceptoList = em.createQuery("Select e from Concepto e where e.tema = :tema")
.setParameter("tema", tema).getResultList();
for (Concepto concepto : conceptoList) {
out.printf("<td class='motto'>");
- out.printf(abr.getValorNodoRed(concepto.getNombre()));
+ out.printf(abr.getValorNodoRed(concepto.getNombre(), Integer.valueOf(idAsignatura), alumno.getIdAlumno()));
out.printf("</td>");
}
out.printf("</tr>");
diff --git a/EjercitarWeb/src/src/NuevoEjercicioServlet.java b/EjercitarWeb/src/src/NuevoEjercicioServlet.java
index 52ef355..111fb91 100644
--- a/EjercitarWeb/src/src/NuevoEjercicioServlet.java
+++ b/EjercitarWeb/src/src/NuevoEjercicioServlet.java
@@ -110,10 +110,11 @@ public class NuevoEjercicioServlet extends HttpServlet {
ejercicio.setRespuesta(respuesta4);
break;
}
+ int idAsignatura = Integer.valueOf(request.getParameter("asignatura"));
+
+ abr.agregarEjercicio(ejercicio, idAsignatura);
- abr.agregarEjercicio(ejercicio);
- int idAsignatura = Integer.valueOf(request.getParameter("asignatura"));
response.sendRedirect("/EjercitarWeb/VistaAsignaturaServlet?asignatura="+idAsignatura);
}