diff options
author | Samu <samurey@gmail.com> | 2013-11-24 18:08:56 (GMT) |
---|---|---|
committer | Samu <samurey@gmail.com> | 2013-11-24 18:08:56 (GMT) |
commit | 06f3b39d7d57400bdcfbd6397edbaf36b5d855c1 (patch) | |
tree | ce0fd59d2788673f3f69cc4a850d0b81cc5b8742 | |
parent | 7cec1da39c5552c41bb5eeb69151cd3b695a84af (diff) |
blabla
-rw-r--r-- | EjercitarServer/ejbModule/beans/EjercitarWSBean.java | 78 | ||||
-rw-r--r-- | EjercitarServer/ejbModule/beans/EjercitarWSRemote.java | 6 |
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(); |