Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamu <samurey@gmail.com>2013-11-24 18:08:56 (GMT)
committer Samu <samurey@gmail.com>2013-11-24 18:08:56 (GMT)
commit06f3b39d7d57400bdcfbd6397edbaf36b5d855c1 (patch)
treece0fd59d2788673f3f69cc4a850d0b81cc5b8742
parent7cec1da39c5552c41bb5eeb69151cd3b695a84af (diff)
blabla
-rw-r--r--EjercitarServer/ejbModule/beans/EjercitarWSBean.java78
-rw-r--r--EjercitarServer/ejbModule/beans/EjercitarWSRemote.java6
2 files changed, 77 insertions, 7 deletions
diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
index 4ae19ea..4d52e3a 100644
--- a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
+++ b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
@@ -24,6 +24,7 @@ import model.Alumno;
import model.Concepto;
import model.Curso;
import model.Ejercicio;
+import model.Respuesta;
import model.Sesion;
import model.Tarea;
import model.Tema;
@@ -46,6 +47,15 @@ public class EjercitarWSBean implements EjercitarWSRemote {
}
+ @WebMethod
+ public String getDatosAlumno(int idAlumno) {
+ // TODO Auto-generated method stub
+ System.out.println("getdatosalumno");
+ Alumno alumno = em.find(Alumno.class, idAlumno);
+ String nombreApellido = alumno.getNombre() + "#" + alumno.getApellido();
+ return nombreApellido;
+ }
+
@WebMethod
public String [] getTareas(int idAlumno) {
@@ -74,6 +84,8 @@ public class EjercitarWSBean implements EjercitarWSRemote {
return curso;
}
+
+ /*
@WebMethod
public Ejercicio getSiguienteEjercicio(int idTarea, int idAlumno, int idEjercicio, String respuesta) {
// TODO Auto-generated method stub
@@ -89,12 +101,45 @@ public class EjercitarWSBean implements EjercitarWSRemote {
//seleccionUtilidadMax(tarea, alumno);
System.out.println(ejercicio.getRespuestaList().toString()); // NO BORRAR
return ejercicio;
+ } */
+
+ @WebMethod
+ public String getSiguienteEjercicio(int idTarea, int idAlumno, int idEjercicio, String respuesta) {
+ // TODO Auto-generated method stub
+ Tarea tarea = em.find(Tarea.class, idTarea);
+ Alumno alumno = em.find(Alumno.class, idAlumno);
+ //
+ if(idEjercicio != 0)
+ responderEjercicio(idEjercicio, respuesta, alumno, tarea.getAsignatura().getIdAsignatura());
+
+ //
+
+ //Ejercicio ejercicio = seleccionAleatoria(tarea);
+ Ejercicio ejercicio = seleccionUtilidadMax(tarea, alumno);
+ String enunciado = toASCII(ejercicio.getEnunciado());
+ System.out.println(enunciado);
+ String ejercicioElement = ejercicio.getIdEjercicio().toString() + "#" + enunciado;
+ return ejercicioElement;
+ }
+
+ @WebMethod
+ public String [] getRespuestas (int idEjercicio) {
+ Ejercicio ejercicio = em.find(Ejercicio.class, idEjercicio);
+ String [] arrayRespuestas = new String [4];
+ int c = 0;
+ for (Respuesta respuesta : ejercicio.getRespuestaList()) {
+ String respuestaElement = respuesta.getDescripcion();
+ arrayRespuestas[c] = respuestaElement;
+ c++;
+ }
+ System.out.println(arrayRespuestas.toString());
+ return arrayRespuestas;
}
- private void responderEjercicio(int idEjercicio, String respuesta, Alumno alumno) {
+ private void responderEjercicio(int idEjercicio, String respuesta, Alumno alumno, int idAsignatura) {
Ejercicio ejercicio = em.find(Ejercicio.class, idEjercicio);
Network net1 = new Network();
- String nombreRed = "red_alumno_" + alumno.getIdAlumno() + ".xdsl";
+ String nombreRed = "red_alumno_" + alumno.getIdAlumno() + "_asignatura_" + idAsignatura + ".xdsl";
net1.readFile("redes/" + nombreRed);
net1.updateBeliefs();
String nombreEjercicio = "E" + idEjercicio;
@@ -134,15 +179,16 @@ public class EjercitarWSBean implements EjercitarWSRemote {
int siguienteID = rnd.nextInt(ejercicios.size());
System.out.println(siguienteID);
Ejercicio ejercicio = ejercicios.get(siguienteID);
- System.out.println(ejercicio.getEnunciado());
+ System.out.println(ejercicio.getEnunciado().getBytes());
return ejercicio;
}
private Ejercicio seleccionUtilidadMax(Tarea tarea, Alumno alumno) {
//Tema tema = tarea.getTema();
//List<Concepto> conceptoList = new ArrayList();
- List<Concepto> conceptoList = tarea.getConceptoList();
+ //List<Concepto> conceptoList = tarea.getConceptoList();
+ List<Concepto> conceptoList = em.createQuery("Select c from Concepto c inner join c.tareaList t where t = :tarea").setParameter("tarea", tarea).getResultList();
// inicializacion
double utilidadMax = 0;
@@ -152,7 +198,7 @@ public class EjercitarWSBean implements EjercitarWSRemote {
//red
Network net1 = new Network();
- String nombreRed = "red_alumno_" + alumno.getIdAlumno() + ".xdsl";
+ String nombreRed = "red_alumno_" + alumno.getIdAlumno() + "_asignatura_" + tarea.getAsignatura().getIdAsignatura() +".xdsl";
System.out.println("redes/" + nombreRed);
net1.readFile("redes/" + nombreRed);
net1.updateBeliefs();
@@ -160,7 +206,7 @@ public class EjercitarWSBean implements EjercitarWSRemote {
//net2.readFile("redes/" + nombreRed);
//red
- String nombreConcepto = "C" + concepto.getIdConcepto();
+ String nombreConcepto = concepto.getNombre();
//prueba de evidencias 1
double [] values = net1.getNodeValue(nombreConcepto);
@@ -233,5 +279,25 @@ public class EjercitarWSBean implements EjercitarWSRemote {
.setParameter("serial", serial).getSingleResult();
return alumno;
}
+
+ /**
+ * Función que elimina acentos y caracteres especiales de
+ * una cadena de texto.
+ * @param input
+ * @return cadena de texto limpia de acentos y caracteres especiales.
+ */
+ public String toASCII(String input) {
+ // Cadena de caracteres original a sustituir.
+ String original = "áàäéèëíìïóòöúùuñÁÀÄÉÈËÍÌÏÓÒÖÚÙÜÑçÇ";
+ // Cadena de caracteres ASCII que reemplazarán los originales.
+ String ascii = "aaaeeeiiiooouuunAAAEEEIIIOOOUUUNcC";
+ String output = input;
+ for (int i=0; i<original.length(); i++) {
+ // Reemplazamos los caracteres especiales.
+ output = output.replace(original.charAt(i), ascii.charAt(i));
+ }//for i
+ System.out.println(output);
+ return output;
+ }//remove1
}
diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java b/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
index 82fddad..13b7814 100644
--- a/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
+++ b/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
@@ -13,10 +13,14 @@ import model.Tema;
@WebService
public interface EjercitarWSRemote {
+
+ public String getDatosAlumno(int idAlumno);
public String [] getTareas(int idAlumno);
- public Ejercicio getSiguienteEjercicio(int idTarea, int idAlumno, int idEjercicio, String respuesta);
+ public String getSiguienteEjercicio(int idTarea, int idAlumno, int idEjercicio, String respuesta);
+
+ public String [] getRespuestas (int idEjercicio);
public String getText();