diff options
author | Samu <samurey@gmail.com> | 2013-11-24 19:14:52 (GMT) |
---|---|---|
committer | Samu <samurey@gmail.com> | 2013-11-24 19:14:52 (GMT) |
commit | 12ed707da2678d53e2b05e2a569557d963a3c6b9 (patch) | |
tree | 7286a2ddc327033fa233cedb7531e84dad2ac263 | |
parent | 06f3b39d7d57400bdcfbd6397edbaf36b5d855c1 (diff) |
ya
-rw-r--r-- | EjercitarJPA/src/model/Sesion.java | 19 | ||||
-rw-r--r-- | EjercitarJPA/src/model/Tarea.java | 11 | ||||
-rw-r--r-- | EjercitarServer/ejbModule/beans/EjercitarWSBean.java | 67 | ||||
-rw-r--r-- | EjercitarServer/ejbModule/beans/EjercitarWSRemote.java | 4 |
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 |