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 19:14:52 (GMT)
committer Samu <samurey@gmail.com>2013-11-24 19:14:52 (GMT)
commit12ed707da2678d53e2b05e2a569557d963a3c6b9 (patch)
tree7286a2ddc327033fa233cedb7531e84dad2ac263
parent06f3b39d7d57400bdcfbd6397edbaf36b5d855c1 (diff)
ya
-rw-r--r--EjercitarJPA/src/model/Sesion.java19
-rw-r--r--EjercitarJPA/src/model/Tarea.java11
-rw-r--r--EjercitarServer/ejbModule/beans/EjercitarWSBean.java67
-rw-r--r--EjercitarServer/ejbModule/beans/EjercitarWSRemote.java4
4 files changed, 100 insertions, 1 deletions
diff --git a/EjercitarJPA/src/model/Sesion.java b/EjercitarJPA/src/model/Sesion.java
index 110e35a..c37cfd4 100644
--- a/EjercitarJPA/src/model/Sesion.java
+++ b/EjercitarJPA/src/model/Sesion.java
@@ -62,12 +62,16 @@ public class Sesion implements Serializable {
@Size(max = 10)
@Column(name = "estado_animo")
private String estadoAnimo;
+ @Column(name = "estado_terminado")
+ private Boolean estadoTerminado;
@JoinColumn(name = "id_tarea", referencedColumnName = "id_tarea")
@ManyToOne
private Tarea tarea;
@JoinColumn(name = "id_alumno", referencedColumnName = "id_alumno")
@ManyToOne
private Alumno alumno;
+ @Column(name = "cantidad_ejercicios_resueltos")
+ private Integer cantidadEjerciciosResueltos;
public Sesion() {
}
@@ -90,6 +94,14 @@ public class Sesion implements Serializable {
this.idSesion = idSesion;
}
+ public Integer getcantidadEjerciciosResueltos() {
+ return cantidadEjerciciosResueltos;
+ }
+
+ public void setCantidadEjerciciosResuetos(Integer cantidadEjerciciosResueltos) {
+ this.cantidadEjerciciosResueltos = cantidadEjerciciosResueltos;
+ }
+
public Date getEntrada() {
return entrada;
}
@@ -130,6 +142,13 @@ public class Sesion implements Serializable {
this.estadoAnimo = estadoAnimo;
}
+ public Boolean getEstadoTerminado() {
+ return estadoTerminado;
+ }
+
+ public void setEstadoTerminado(Boolean estadoAnimo) {
+ this.estadoTerminado = estadoAnimo;
+ }
public Tarea getTarea() {
return tarea;
}
diff --git a/EjercitarJPA/src/model/Tarea.java b/EjercitarJPA/src/model/Tarea.java
index 5df55ac..33f8a31 100644
--- a/EjercitarJPA/src/model/Tarea.java
+++ b/EjercitarJPA/src/model/Tarea.java
@@ -65,6 +65,8 @@ public class Tarea implements Serializable {
private Asignatura asignatura;
@OneToMany(mappedBy = "tarea")
private List<Sesion> sesionList;
+ @Column(name = "cantidad_ejercicio_parada")
+ private Integer cantidadEjercicioParada;
public Tarea() {
}
@@ -77,10 +79,17 @@ public class Tarea implements Serializable {
return idTarea;
}
+ public void setCantidadEjercicioParada(Integer cantidadEjercicioParada) {
+ this.cantidadEjercicioParada = cantidadEjercicioParada;
+ }
+
+ public Integer getCantidadEjercicioParada() {
+ return cantidadEjercicioParada;
+ }
+
public void setIdTarea(Integer idTarea) {
this.idTarea = idTarea;
}
-
public String getDescripcion() {
return descripcion;
}
diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
index 4d52e3a..d77208e 100644
--- a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
+++ b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
@@ -299,5 +299,72 @@ public class EjercitarWSBean implements EjercitarWSRemote {
System.out.println(output);
return output;
}//remove1
+
+
+ @WebMethod
+ public Boolean getCriterioParada(Integer idAlumno, Integer idTarea) {
+
+ Tarea tarea = em.find(Tarea.class, idTarea);
+ Alumno alumno = em.find(Alumno.class, idAlumno);
+
+ System.out.println("tareaa "+tarea.getDescripcion());
+ System.out.println("alumno " + alumno.getIdAlumno() + alumno.getNombre());
+
+ Query query = em.createQuery("Select s from Sesion s where s.alumno.idAlumno = :alumno and s.tarea.idTarea = :tarea order by s.salida desc");
+ query.setParameter("alumno", alumno.getIdAlumno());
+
+ query.setParameter("tarea", tarea.getIdTarea());
+ query.setMaxResults(1);
+
+ Sesion sesion = (Sesion) query.getSingleResult();
+
+ System.out.println("sesion cantidad EjercicioResuelto " + sesion.getcantidadEjerciciosResueltos());
+
+ Integer cantEjercicioResuelto = sesion.getcantidadEjerciciosResueltos() + 1;
+ Integer cantMaxEjercicio = sesion.getTarea()
+ .getCantidadEjercicioParada();
+
+ System.out.println("sesion cantidad cantMaxEjercicio " + cantMaxEjercicio);
+ sesion.setCantidadEjerciciosResuetos(cantEjercicioResuelto);
+ try{
+ em.persist(sesion);
+ }catch(Exception e){
+ System.out.println(e.getLocalizedMessage());
+ }
+ if (cantEjercicioResuelto.equals(cantMaxEjercicio)) {
+ System.out.println("true");
+ return true;
+ } else{
+ System.out.println("false");
+ return false;
+ }
+
+ }
+
+ @WebMethod
+ public String obtenerCantidadEjercicioTarea(Integer idAlumno, Integer idTarea){
+
+ Tarea tarea = em.find(Tarea.class, idTarea);
+ Alumno alumno = em.find(Alumno.class, idAlumno);
+
+ System.out.println("tareaa "+tarea.getDescripcion());
+ System.out.println("alumno " + alumno.getIdAlumno() + alumno.getNombre());
+
+ Query query = em.createQuery("Select s from Sesion s where s.alumno.idAlumno = :alumno and s.tarea.idTarea = :tarea and s.salida is not null order by s.salida desc");
+ query.setParameter("alumno", alumno.getIdAlumno());
+
+ query.setParameter("tarea", tarea.getIdTarea());
+ query.setMaxResults(1);
+
+ Sesion sesion = (Sesion) query.getSingleResult();
+
+ Integer cantEjerResueltos = (sesion!=null)? sesion.getcantidadEjerciciosResueltos() : 1;
+ Integer topeEjercicio = tarea.getCantidadEjercicioParada();
+
+ System.out.println(cantEjerResueltos.toString() +"#"+topeEjercicio.toString());
+
+ return cantEjerResueltos.toString() +"#"+topeEjercicio.toString();
+
+ }
}
diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java b/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
index 13b7814..3025c50 100644
--- a/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
+++ b/EjercitarServer/ejbModule/beans/EjercitarWSRemote.java
@@ -27,5 +27,9 @@ public interface EjercitarWSRemote {
public void registrarSesion(int idAlumno, int idTarea, Boolean ayudaPadres, Boolean desdeHogar, String estadoAnimo) ;
public Alumno obtenerIdAlumno(String serial);
+
+ public Boolean getCriterioParada(Integer idAlumno, Integer idTarea);
+
+ public String obtenerCantidadEjercicioTarea(Integer idAlumno, Integer idTarea);
} \ No newline at end of file