diff options
author | sreyes <sreyes@dataworks.com.py> | 2014-09-30 12:55:41 (GMT) |
---|---|---|
committer | sreyes <sreyes@dataworks.com.py> | 2014-09-30 12:55:41 (GMT) |
commit | 0a25b660f3decececd0bd6c88761c2d4a492b4ed (patch) | |
tree | f682eb66c5bb11c513831ea75e5020230e097000 | |
parent | d7575563a46b0bbd8f27e4c079c6d404206c413e (diff) | |
parent | 5270f36069849801c0949a922ca2b3de031003d4 (diff) |
Merge remote-tracking branch 'remotes/origin/Cecilia' into samurey
Conflicts:
EjercitarServer/build/classes/beans/AdministracionBean.class
EjercitarServer/build/classes/beans/AdministracionBeanRemote.class
EjercitarServer/build/classes/beans/EjercitarWSBean.class
EjercitarWeb/build/classes/src/NuevoEjercicioServlet.class
EjercitarWeb/build/classes/src/NuevoTemaServlet.class
20 files changed, 258 insertions, 257 deletions
diff --git a/EjercitarJPA/src/model/Alumno.java b/EjercitarJPA/src/model/Alumno.java index 45d1fbb..b878a19 100644 --- a/EjercitarJPA/src/model/Alumno.java +++ b/EjercitarJPA/src/model/Alumno.java @@ -73,13 +73,13 @@ public class Alumno implements Serializable { @ManyToOne private Curso curso; @Transient - private String tipoAlumno; + private Double tipoAlumno; - public String getTipoAlumno() { + public Double getTipoAlumno() { return tipoAlumno; } - public void setTipoAlumno(String tipoAlumno) { + public void setTipoAlumno(Double tipoAlumno) { this.tipoAlumno = tipoAlumno; } diff --git a/EjercitarJPA/src/model/Curso.java b/EjercitarJPA/src/model/Curso.java index cf34ae6..dea2e82 100644 --- a/EjercitarJPA/src/model/Curso.java +++ b/EjercitarJPA/src/model/Curso.java @@ -9,6 +9,7 @@ import java.util.List; import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; @@ -49,10 +50,11 @@ public class Curso implements Serializable { @Size(max = 1) @Column(name = "turno") private String turno; - @JoinTable(name = "curso_profesor", joinColumns = { + /*@JoinTable(name = "curso_profesor", joinColumns = { @JoinColumn(name = "id_curso", referencedColumnName = "id_curso")}, inverseJoinColumns = { @JoinColumn(name = "id_profesor", referencedColumnName = "id_profesor")}) - @ManyToMany + @ManyToMany*/ + @ManyToMany(mappedBy = "cursoList", fetch=FetchType.EAGER) private List<Profesor> profesorList; @JoinColumn(name = "escuela", referencedColumnName = "id_escuela") @ManyToOne diff --git a/EjercitarJPA/src/model/Profesor.java b/EjercitarJPA/src/model/Profesor.java index 1aca780..76a14d4 100644 --- a/EjercitarJPA/src/model/Profesor.java +++ b/EjercitarJPA/src/model/Profesor.java @@ -14,6 +14,8 @@ import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.JoinTable; import javax.persistence.ManyToMany; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; @@ -72,7 +74,11 @@ public class Profesor implements Serializable { @Size(max = 10) @Column(name = "password") private String password; - @ManyToMany(mappedBy = "profesorList", fetch=FetchType.EAGER) + //@ManyToMany(mappedBy = "profesorList", fetch=FetchType.EAGER) + @JoinTable(name = "curso_profesor", joinColumns = { + @JoinColumn(name = "id_profesor", referencedColumnName = "id_profesor")}, inverseJoinColumns = { + @JoinColumn(name = "id_curso", referencedColumnName = "id_curso")}) + @ManyToMany private List<Curso> cursoList; @OneToMany(mappedBy = "profesor") private List<Ejercicio> ejercicioList; diff --git a/EjercitarServer/build/classes/META-INF/MANIFEST.MF b/EjercitarServer/build/classes/META-INF/MANIFEST.MF deleted file mode 100644 index 59499bc..0000000 --- a/EjercitarServer/build/classes/META-INF/MANIFEST.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - diff --git a/EjercitarServer/build/classes/beans/red_alumno_1.xdsl b/EjercitarServer/build/classes/beans/red_alumno_1.xdsl deleted file mode 100644 index 9e30f46..0000000 --- a/EjercitarServer/build/classes/beans/red_alumno_1.xdsl +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000"> - <nodes> - <cpt id="C1"> - <state id="State0" /> - <state id="State1" /> - <probabilities>0.5 0.5</probabilities> - </cpt> - <cpt id="E1"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E2"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E3"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - </nodes> - <extensions> - <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate"> - <node id="E1"> - <name>E1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>203 276 251 306</position> - </node> - <node id="E2"> - <name>E2</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>365 272 413 302</position> - </node> - <node id="E3"> - <name>E3</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>508 290 556 320</position> - </node> - <node id="C1"> - <name>C1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>354 101 390 123</position> - </node> - </genie> - </extensions> -</smile> diff --git a/EjercitarServer/build/classes/red_alumno_1.xdsl b/EjercitarServer/build/classes/red_alumno_1.xdsl deleted file mode 100644 index 9e30f46..0000000 --- a/EjercitarServer/build/classes/red_alumno_1.xdsl +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000"> - <nodes> - <cpt id="C1"> - <state id="State0" /> - <state id="State1" /> - <probabilities>0.5 0.5</probabilities> - </cpt> - <cpt id="E1"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E2"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E3"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - </nodes> - <extensions> - <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate"> - <node id="E1"> - <name>E1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>203 276 251 306</position> - </node> - <node id="E2"> - <name>E2</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>365 272 413 302</position> - </node> - <node id="E3"> - <name>E3</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>508 290 556 320</position> - </node> - <node id="C1"> - <name>C1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>354 101 390 123</position> - </node> - </genie> - </extensions> -</smile> diff --git a/EjercitarServer/build/classes/red_base_curso_1.xdsl b/EjercitarServer/build/classes/red_base_curso_1.xdsl deleted file mode 100644 index 9e30f46..0000000 --- a/EjercitarServer/build/classes/red_base_curso_1.xdsl +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> -<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000"> - <nodes> - <cpt id="C1"> - <state id="State0" /> - <state id="State1" /> - <probabilities>0.5 0.5</probabilities> - </cpt> - <cpt id="E1"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E2"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - <cpt id="E3"> - <state id="State0" /> - <state id="State1" /> - <parents>C1</parents> - <probabilities>0.5 0.5 0.5 0.5</probabilities> - </cpt> - </nodes> - <extensions> - <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate"> - <node id="E1"> - <name>E1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>203 276 251 306</position> - </node> - <node id="E2"> - <name>E2</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>365 272 413 302</position> - </node> - <node id="E3"> - <name>E3</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>508 290 556 320</position> - </node> - <node id="C1"> - <name>C1</name> - <interior color="e5f6f7" /> - <outline color="000080" /> - <font color="000000" name="Arial" size="8" /> - <position>354 101 390 123</position> - </node> - </genie> - </extensions> -</smile> diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java index 5fb58dd..1bd9f69 100644 --- a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java +++ b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java @@ -255,6 +255,12 @@ public class EjercitarWSBean implements EjercitarWSRemote { if(utilidadMaxParcial > utilidadMax) {
utilidadMax = utilidadMaxParcial;
ejercicio = ejercicioConcepto;
+ } else if (utilidadMaxParcial == utilidadMax) {
+ Random rnd = new Random();
+ int eleccion = rnd.nextInt(2);
+ if (eleccion == 1) {
+ ejercicio = ejercicioConcepto;
+ }
}
hUtilidades.put(utilidadMaxParcial, ejercicioConcepto);
@@ -433,7 +439,7 @@ public class EjercitarWSBean implements EjercitarWSRemote { public void corregirProbabilidadesEjercicios() {
- Asignatura asignatura = em.find(Asignatura.class, 13);
+ Asignatura asignatura = em.find(Asignatura.class, 3);
System.out.println(asignatura.getNombre());
List<Tema> temas = (List<Tema>) em.createQuery("select t from Tema t where t.asignatura = :asignatura").setParameter("asignatura", asignatura).getResultList();
@@ -444,7 +450,7 @@ public class EjercitarWSBean implements EjercitarWSRemote { System.out.println("conceptos " + conceptos.size() );
Network net = new Network();
- net.readFile("/home/redes/red_asignatura_13.xdsl");
+ net.readFile("/home/redes/red_asignatura_3.xdsl");
System.out.println("########## leido #############");
@@ -461,7 +467,7 @@ public class EjercitarWSBean implements EjercitarWSRemote { }
}
- net.writeFile("/home/redes/red_asignatura_13.xdsl");
+ net.writeFile("/home/redes/red_asignatura_3.xdsl");
}
diff --git a/EjercitarServer/ejbModule/beans/Simulacion.java b/EjercitarServer/ejbModule/beans/Simulacion.java index a82eaa0..5ee614e 100644 --- a/EjercitarServer/ejbModule/beans/Simulacion.java +++ b/EjercitarServer/ejbModule/beans/Simulacion.java @@ -1,5 +1,9 @@ package beans; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + import javax.ejb.EJB; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; @@ -7,15 +11,19 @@ import javax.persistence.PersistenceContext; import model.Alumno; import model.Asignatura; import model.Curso; +import model.Ejercicio; +import model.Tarea; public class Simulacion { @EJB AdministracionBean admin; - - public Alumno crearAlumno(Curso curso, String tipo){ + @EJB + EjercitarWSBean ws; + + public Alumno crearAlumno(Curso curso, Double tipo){ Alumno alumno = new Alumno(); @@ -33,32 +41,74 @@ public class Simulacion { } - public void generacionAlumno(Asignatura asignatura){ + public List<Alumno> generacionAlumnos(Asignatura asignatura){ Curso curso = asignatura.getCurso(); int cantidadAlumnos = 30; - String tipo; + Double tipo; + + List<Alumno> alumnos = new ArrayList<Alumno>(); + for (int i = 0; i < cantidadAlumnos; i++) { if(i <= 10){ tipo = TipoAlumno.NIVEL_CONOCIMIENTO_BAJO; - }else if(i >10 && i <=15){ + }else if(i >10 && i <=20){ tipo = TipoAlumno.NIVEL_CONOCIMIENTO_MEDIO; }else{ tipo = TipoAlumno.NIVEL_CONOCIMIENTO_ALTO; } - crearAlumno(curso, tipo); - + Alumno alumno = crearAlumno(curso, tipo); + + alumnos.add(alumno); } admin.crearRedAlumnos(asignatura.getIdAsignatura()); - + + return alumnos; + } + + + public void simular(Asignatura asignatura, Tarea tarea) { + + + List<Alumno> alumnos = generacionAlumnos(asignatura); + + for(Alumno alumno : alumnos) { + + String siguienteEjercicio = ws.getSiguienteEjercicio(tarea.getIdTarea(), alumno.getIdAlumno(), 0, "respuesta"); + Boolean parada = false; + int cant = 0; + while(!parada) { + + String [] ejercicioString = siguienteEjercicio.split("#"); + int idEjercicio = Integer.valueOf(ejercicioString[0]); + Ejercicio ejercicio = null;//admin.getEjercicio(idEjercicio); + + Random rnd = new Random(); + int decision = rnd.nextInt(100); + String respuesta = null; + int idRespuesta; + if(decision <= (alumno.getTipoAlumno()*100)) { + respuesta = ejercicio.getRespuesta().getDescripcion(); + idRespuesta = ejercicio.getRespuesta().getIdRespuesta(); + } else { + respuesta = ejercicio.getRespuestaList().get(0).equals(ejercicio.getRespuesta()) ? + ejercicio.getRespuestaList().get(1).getDescripcion() : ejercicio.getRespuestaList().get(0).getDescripcion(); + idRespuesta = ejercicio.getRespuestaList().get(0).equals(ejercicio.getRespuesta()) ? + ejercicio.getRespuestaList().get(1).getIdRespuesta() : ejercicio.getRespuestaList().get(0).getIdRespuesta(); + } + + siguienteEjercicio = ws.getSiguienteEjercicio(tarea.getIdTarea(), alumno.getIdAlumno(), idRespuesta, respuesta); + + } + } } public static class TipoAlumno { - public static final String NIVEL_CONOCIMIENTO_BAJO = "OO"; - public static final String NIVEL_CONOCIMIENTO_MEDIO = "0.5"; - public static final String NIVEL_CONOCIMIENTO_ALTO = "1"; + public static final Double NIVEL_CONOCIMIENTO_BAJO = 0.0; + public static final Double NIVEL_CONOCIMIENTO_MEDIO = 0.5; + public static final Double NIVEL_CONOCIMIENTO_ALTO = 1.0; } diff --git a/EjercitarWeb/WebContent/Asignatura.jsp b/EjercitarWeb/WebContent/Asignatura.jsp index 38469f5..3a42a91 100644 --- a/EjercitarWeb/WebContent/Asignatura.jsp +++ b/EjercitarWeb/WebContent/Asignatura.jsp @@ -19,7 +19,7 @@ <div class="e-panel-bd panel panel-primary"> <div class="panel-heading">Nueva Asignatura</div> <div class="panel-body"> - <form class="form-horizontal" role="form" name="form" method="post" action=""> + <form class="form-horizontal" role="form" id="form1"name="form" method="post" action=""> <div class="form-group"> <label for="nombre" class="col-sm-2 control-label">Nombre:</label> <div class="col-sm-10"> diff --git a/EjercitarWeb/WebContent/Concepto.jsp b/EjercitarWeb/WebContent/Concepto.jsp index 659ca95..c89e28a 100644 --- a/EjercitarWeb/WebContent/Concepto.jsp +++ b/EjercitarWeb/WebContent/Concepto.jsp @@ -51,15 +51,16 @@ </select> </div> </div> - <fieldset class="span4"> - <legend>Probabilidades</legend> - <div class="form-group"> - <label for="a_priori" class="col-sm-2 control-label">A priori:</label> - <div class="col-sm-10"> - <input type="text" name="a_priori" id="a_priori" value="0.5" /> + <div class="form-group"> + <label for="a_priori" class="col-sm-2 control-label">Conocimiento inicial:</label> + <div class="col-sm-10 " > + <input type="text" name="a_priori" id="a_priori" value="0.5" disabled/> </div> - </div> - <div class="form-group"> + </div> + <!-- >fieldset class="span4"> + + + <>div class="form-group"> <label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label> <div class="col-sm-10"> <input type="text" name="adivinanza" id="adivinanza" value="0.2" /> @@ -71,7 +72,7 @@ <input type="text" name="descuido" id="descuido" value="0.2" /> </div> </div> - </fieldset> + </fieldset--> <button class="btn btn-default btn-primary" type="submit" name="Submit"> <span class="e-button-text">Guardar</span> </button> diff --git a/EjercitarWeb/WebContent/Ejercicios.jsp b/EjercitarWeb/WebContent/Ejercicios.jsp index 3d7f01b..f6b347e 100644 --- a/EjercitarWeb/WebContent/Ejercicios.jsp +++ b/EjercitarWeb/WebContent/Ejercicios.jsp @@ -28,7 +28,7 @@ <div class="e-panel-bd panel panel-primary"> <div class="panel-heading">Nuevo Ejercicio</div> <div class="panel-body"> - <form class="form-horizontal" role="form" name="ejercicio_form" method="post" enctype="multipart/form-data"> + <form class="form-horizontal" role="form" id="form1" name="ejercicio_form" method="post" enctype="multipart/form-data"> <input type="hidden" name="lista_conceptos" id="lista_conceptos" value="asdf"> <input type="hidden" name="asignatura" id="asignatura" value=<%=request.getParameter("asignatura")%>> <%Profesor profesor = (Profesor) request.getSession().getAttribute("profesor");%> @@ -54,19 +54,19 @@ <div class="form-group"> <label for="respuesta2" class="col-sm-2 control-label">Respuesta 2:</label> <div class="col-sm-10"> - <input type="text" name="respuesta2" class="form-control" id="respuesta2"> + <input type="text" name="respuesta2" id="respuesta2" class="form-control" id="respuesta2"> </div> </div> <div class="form-group"> <label for="respuesta3" class="col-sm-2 control-label">Respuesta 3:</label> <div class="col-sm-10"> - <input type="text" name="respuesta3" class="form-control" id="respuesta3"> + <input type="text" name="respuesta3" id="respuesta3" class="form-control" id="respuesta3"> </div> </div> <div class="form-group"> <label for="respuesta4" class="col-sm-2 control-label">Respuesta 4:</label> <div class="col-sm-10"> - <input type="text" name="respuesta4" class="form-control" id="respuesta4"> + <input type="text" name="respuesta4" id="respuesta4" class="form-control" id="respuesta4"> </div> </div> <div class="form-group"> @@ -81,15 +81,25 @@ </div> </div> <div class="form-group"> - <label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label> + <label for="adivinanza" class="col-sm-2 control-label">Descuido:</label> <div class="col-sm-10"> - <input type="text" name="adivinanza" class="form-control" id="adivinanza"/> + <!-- >input type="text" name="adivinanza" class="form-control" id="adivinanza"/--> + <select class="form-control" name="descuido"> + <option id="1" name="des_1" value="0.1">Bajo</option> + <option id="2" name="des_2" value="0.2">Medio</option> + <option id="3" name="des_3" value="0.3">Alto</option> + </select> </div> </div> <div class="form-group"> <label for="dificultad" class="col-sm-2 control-label">Dificultad:</label> <div class="col-sm-10"> - <input type="text" name="dificultad" class="form-control" id="dificultad"/> + <!-- >input type="text" name="dificultad" class="form-control" id="dificultad"/--> + <select class="form-control" name="dificultad"> + <option id="1" name="dif_1" value="1">Fácil</option> + <option id="2" name="dif_2" value="2">Normal</option> + <option id="3" name="dif_33" value="3">Dificil</option> + </select> </div> </div> <div class="form-group"> diff --git a/EjercitarWeb/WebContent/Tarea.jsp b/EjercitarWeb/WebContent/Tarea.jsp index aa61038..0037220 100644 --- a/EjercitarWeb/WebContent/Tarea.jsp +++ b/EjercitarWeb/WebContent/Tarea.jsp @@ -29,7 +29,7 @@ <div class="e-panel-bd panel panel-primary"> <div class="panel-heading">Nueva Tarea</div> <div class="panel-body"> - <form class="form-horizontal" role="form" name="ejercicio_form" method="post"> + <form class="form-horizontal" role="form" id="form1" name="ejercicio_form" method="post"> <input type="hidden" name="lista_conceptos" id="lista_conceptos" value="asdf"> <input type="hidden" name="asignatura" id="asignatura" value=<%= request.getParameter("asignatura") %>> <div class="form-group"> diff --git a/EjercitarWeb/WebContent/concepto_ed.jsp b/EjercitarWeb/WebContent/concepto_ed.jsp index 6c6c87c..edf40da 100644 --- a/EjercitarWeb/WebContent/concepto_ed.jsp +++ b/EjercitarWeb/WebContent/concepto_ed.jsp @@ -39,7 +39,7 @@ </div> </div> <div class="form-group"> - <label for="descripcion" class="col-sm-2 control-label">Descripci�n:</label> + <label for="descripcion" class="col-sm-2 control-label">Descripción:</label> <div class="col-sm-10"> <input type="text" class="form-control" name="descripcion" id="descripcion" value=<%= concepto.getDescripcion() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %>></input> </div> @@ -50,14 +50,15 @@ <input type="text" name="tema" id="tema" class="form-control" value=<%=concepto.getTema().getNombre()%> disabled> </div> </div> - <fieldset class="span4"> - <legend>Probabilidades</legend> - <div class="form-group"> - <label for="a_priori" class="col-sm-2 control-label">A priori:</label> + <div class="form-group"> + <label for="a_priori" class="col-sm-2 control-label">Conocimiento inicial:</label> <div class="col-sm-10"> - <input type="text" name="a_priori" id="a_priori" value=<%= concepto.getApriori() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> /> + <input type="text" name="a_priori" id="a_priori" value=<%= concepto.getApriori() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> disabled/> </div> - </div> + </div> + <!-- > fieldset class="span4"> + <legend>Probabilidad:</legend> + <div class="form-group"> <label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label> <div class="col-sm-10"> @@ -70,7 +71,7 @@ <input type="text" name="descuido" id="descuido" value=<%= concepto.getDescuido() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> /> </div> </div> - </fieldset> + </fieldset--> <button class="btn btn-default btn-primary" type="submit" name="Submit"> <span class="e-button-text">Guardar</span> </button> @@ -95,7 +96,7 @@ max: 1, min: 0 }); - $("#adivinanza").spinner({ + /*$("#adivinanza").spinner({ step: 0.1, numberFormat: "n", max: 1, @@ -106,7 +107,7 @@ numberFormat: "n", max: 1, min: 0 - }); + });*/ </script> </body> </html>
\ No newline at end of file diff --git a/EjercitarWeb/WebContent/js/validaciones.js b/EjercitarWeb/WebContent/js/validaciones.js index 8a4fdc8..df56fde 100644 --- a/EjercitarWeb/WebContent/js/validaciones.js +++ b/EjercitarWeb/WebContent/js/validaciones.js @@ -4,26 +4,87 @@ //js para validaciones de formularios +$.validator.addMethod("dateFormat", + function(value, element) { + return value.match(/^dd?-dd?-dd$/); +}, + "Ingrese la fecha con formato dd-mm-yyyy."); + + $(document).ready(function(){ $('#form1').validate({ rules: { + //validaciones para profesor nombre: { minlength: 4, required: true }, - descripcion: { - required: true - }, + usuario: { + minlength: 5, + required: true + }, + password: { + minlength: 5, + required: true + }, + apellido: { + required: true + }, + cedula: { + required: true, + number: true + }, + + cursos: { + required: true + } , + descripcion: { + required: true + }, curso: { required: true }, tema: { required: true }, + a_priori: { + required: true, + number:true, + pattern: /0+(\.[0-9][0-9]?)?/ + }, + enunciado: { + minlength: 4, + required: true + + }, + respuesta1: { + required: true + + }, + respuesta2: { + required: true + + }, + respuesta3: { + required: true + + }, + respuesta4: { + required: true + + }, + cantejercicio: { + required: true, + number: true + }, + fecha_nac:{ + date:true, + dateFormat: true + }, message: { minlength: 2, required: true, @@ -32,19 +93,55 @@ $(document).ready(function(){ } }, messages: { - - descripcion: " El campo descripcion es obligatorio", + descripcion: " El campo descripción es obligatorio", curso: "Se requiere seleccionar un curso", tema: "Se requiere seleccionar un tema", nombre: { required: " El campo Nombre es obligatorio.", minlength: jQuery.format(" Ingrese mas de {0} caracteres "), remote: jQuery.format("{0} is already in use") - } + }, + apellido: { + required: " El campo Apellido es obligatorio.", + minlength: jQuery.format(" Ingrese mas de {0} caracteres "), + remote: jQuery.format("{0} is already in use") + }, + password: { + required: " El campo Contraseña es obligatorio.", + minlength: jQuery.format(" Ingrese mas de {0} caracteres "), + remote: jQuery.format("{0} is already in use") + }, + tema: "El campo Tema es obligatorio", + usuario: "El campo Usuario es obligatorio", + cursos: "Se requiere seleccionar un curso", + cedula: { + required: "El campo cédula es obligatorio", + number: "Se requiere valor numérico" + }, + a_priori: { + number: "El campo Conocimiento Inicial es obligatorio", + pattern: "Se requiere ingresar de la forma o.dd" + }, + fecha_nac: { + date: "Ingrese una fecha válida", + }, + respuesta1: "El campo Respuesta 1 es obligatorio", + respuesta2: "El campo Respuesta 2 es obligatorio", + respuesta3: "El campo Respuesta 3 es obligatorio", + respuesta4: "El campo Respuesta 4 es obligatorio", + enunciado: { + required: " El campo enunciado es obligatorio.", + minlength: jQuery.format(" Ingrese mas de {0} caracteres "), + remote: jQuery.format("{0} is already in use") + }, + cantejercicio: { + required: "El campo Cantidad Ejercicio es obligatorio", + number: "Se requiere valor numérico" + }, + } }); - - + });
\ No newline at end of file diff --git a/EjercitarWeb/WebContent/profesor.jsp b/EjercitarWeb/WebContent/profesor.jsp index 77f3c07..2c6358e 100644 --- a/EjercitarWeb/WebContent/profesor.jsp +++ b/EjercitarWeb/WebContent/profesor.jsp @@ -9,6 +9,7 @@ <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css" /> <link rel="stylesheet" href="css/ejercitar-base.css" /> <link rel="stylesheet" href="css/jquery.multiselect.css" /> + <link rel="stylesheet" href="/resources/demos/style.css"> <!-- Scripts --> <script type="text/javascript" src="js/smoothness/jquery-1.10.2.js"></script> <script type="text/javascript" src="js/smoothness/jquery-ui-1.10.4.custom.js"></script> @@ -17,6 +18,14 @@ <script type="text/javascript" src="js/validaciones.js"></script> <script type="text/javascript" src="js/multiselect/jquery.multiselect.min.js"></script> <script type="text/javascript" src="js/multiselect/jquery.multiselect.es.js"></script> + <script> + $(function() { + $.datepicker.setDefaults($.datepicker.regional["es"]); + $( "#fecha_nac" ).datepicker(); + }); + + + </script> </head> <body class="e-body"> <div class="container e-viewport"> @@ -27,7 +36,7 @@ <div class="e-panel-bd panel panel-primary"> <div class="panel-heading">Ingresar Nuevo Profesor</div> <div class="panel-body"> - <form class="form-horizontal" role="form" name="form1" method="post" action=""> + <form class="form-horizontal" role="form" name="form1" id="form1" method="post" action=""> <input type="hidden" name="lista_cursos" id="lista_cursos" value="asdf"> <div class="form-group"> <label for="usuario" class="col-sm-2 control-label">Usuario:</label> diff --git a/EjercitarWeb/src/src/EditarConceptoServlet.java b/EjercitarWeb/src/src/EditarConceptoServlet.java index cad6362..949f743 100644 --- a/EjercitarWeb/src/src/EditarConceptoServlet.java +++ b/EjercitarWeb/src/src/EditarConceptoServlet.java @@ -80,17 +80,17 @@ public class EditarConceptoServlet extends HttpServlet { }
else {
- String adivinanza = request.getParameter("adivinanza");
+ //String adivinanza = request.getParameter("adivinanza");
String apriori = request.getParameter("a_priori");
- String descuido = request.getParameter("descuido");
+ //String descuido = request.getParameter("descuido");
//String peso = request.getParameter("peso");
String descripcion = request.getParameter("descripcion");
String nombre = request.getParameter("nombre");
int idProfesor = Integer.valueOf(request.getParameter("profesor"));
//int idTema = Integer.valueOf(request.getParameter("tema"));
- concepto.setAdivinanza(Double.parseDouble(adivinanza));
+ //concepto.setAdivinanza(Double.parseDouble(adivinanza));
concepto.setApriori(Double.parseDouble(apriori));
- concepto.setDescuido(Double.parseDouble(descuido));
+ //concepto.setDescuido(Double.parseDouble(descuido));
//concepto.setPeso(Double.valueOf(peso));
concepto.setDescripcion(descripcion);
concepto.setNombre(nombre);
diff --git a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java index abbeed5..ff43f67 100644 --- a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java +++ b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java @@ -49,8 +49,9 @@ public class NuevaAsignaturaServlet extends HttpServlet { response.setContentType("text/html;charset=UTF-8"); RequestDispatcher rd = getServletContext().getRequestDispatcher("/Asignatura.jsp"); Profesor profesor = (Profesor)request.getSession().getAttribute("profesor"); - - List<Curso> cursos = profesor.getCursoList(); + List<Curso> cursos = em.createQuery("select c from Curso c join c.profesorList p where p.idProfesor = :profesor").setParameter("profesor", profesor.getIdProfesor()).getResultList(); + System.out.println(cursos.size()); + // List<Curso> cursos = profesor.getCursoList(); request.setAttribute("lista_cursos", cursos); rd.forward(request, response); } diff --git a/EjercitarWeb/src/src/NuevoConceptoServlet.java b/EjercitarWeb/src/src/NuevoConceptoServlet.java index 46dc5c9..5d25943 100644 --- a/EjercitarWeb/src/src/NuevoConceptoServlet.java +++ b/EjercitarWeb/src/src/NuevoConceptoServlet.java @@ -68,18 +68,17 @@ public class NuevoConceptoServlet extends HttpServlet { //ProfesorEAO profesor = new ProfesorEAO(); //TemaEAO tema = new TemaEAO(); //ConceptoEAO conceptoEAO = new ConceptoEAO(); - String adivinanza = request.getParameter("adivinanza"); - System.out.println("aaaddddddddddddddddddddd " + adivinanza); + //String adivinanza = request.getParameter("adivinanza"); String apriori = request.getParameter("a_priori"); - String descuido = request.getParameter("descuido"); + //String descuido = request.getParameter("descuido"); // String peso = request.getParameter("peso"); String descripcion = request.getParameter("descripcion"); String nombre = request.getParameter("nombre"); int idProfesor = Integer.valueOf(request.getParameter("profesor")); int idTema = Integer.valueOf(request.getParameter("tema")); - concepto.setAdivinanza(Double.parseDouble(adivinanza)); + //concepto.setAdivinanza(Double.parseDouble(adivinanza)); concepto.setApriori(Double.parseDouble(apriori)); - concepto.setDescuido(Double.parseDouble(descuido)); + //concepto.setDescuido(Double.parseDouble(descuido)); //concepto.setPeso(Double.valueOf(peso)); concepto.setDescripcion(descripcion); concepto.setNombre(nombre); diff --git a/EjercitarWeb/src/src/NuevoEjercicioServlet.java b/EjercitarWeb/src/src/NuevoEjercicioServlet.java index 9528c7a..5aa0b5b 100644 --- a/EjercitarWeb/src/src/NuevoEjercicioServlet.java +++ b/EjercitarWeb/src/src/NuevoEjercicioServlet.java @@ -110,7 +110,7 @@ public class NuevoEjercicioServlet extends HttpServlet { Part filePart = request.getPart("imagen"); - //byte [] imagen = request.getParameter("imagen").; + //byte [] imagen = request.getParameter("imagen").getBytes(); //ejercicio.setImagen(imagen); int respuesta = Integer.valueOf(request.getParameter("respuesta_correcta")); @@ -129,20 +129,21 @@ public class NuevoEjercicioServlet extends HttpServlet { break; } int idAsignatura = Integer.valueOf(request.getParameter("asignatura")); - - double adivinanza = Double.valueOf(request.getParameter("adivinanza")); + System.out.println(request.getParameter("descuido")); + System.out.println(request.getParameter("dificultad")); + double adivinanza = Double.valueOf(request.getParameter("descuido")); ejercicio.setAdivinanza(adivinanza); ejercicio.setNivelDificultad(Integer.valueOf(request.getParameter("dificultad"))); - //System.out.println(request.getParameter("imagen").getBytes()); +// System.out.println(request.getParameter("imagen").getBytes()); abr.agregarEjercicio(ejercicio, idAsignatura); - - /* Ejercicio ej = (Ejercicio) em.createQuery("Select e from Ejercicio e where e.enunciado = :enunciado") + System.out.print(request.getServletContext().getRealPath("/")); + Ejercicio ej = (Ejercicio) em.createQuery("Select e from Ejercicio e where e.enunciado = :enunciado") .setParameter("enunciado", ejercicio.getEnunciado()).getSingleResult(); - filePart.write("img/imagen_ejercicio_" + ej.getIdEjercicio());*/ + //filePart.write("img/imagen_ejercicio_" + ej.getIdEjercicio()+ ".png"); response.sendRedirect("/EjercitarWeb/VistaAsignaturaServlet?asignatura="+idAsignatura); } |