Cambio en el tratmiento del filtro 2

This commit is contained in:
Isidoro Nevares Martín 2025-10-30 14:23:00 +01:00
parent a7505cecfe
commit d34b0bffec

View File

@ -145,39 +145,47 @@ public class GestorInstitutoXML {
// Obtener atributo codigo // Obtener atributo codigo
nivelCiclo = ciclo.getAttribute("nivel"); nivelCiclo = ciclo.getAttribute("nivel");
// Comprobar que es un ciclo de grado superior
if (nivelCiclo.equals("CFGS")) {
NodeList listaNodosCurso = ciclo.getElementsByTagName("curso"); NodeList listaNodosCurso = ciclo.getElementsByTagName("curso");
for (int j = 0; j < listaNodosCurso.getLength(); j++) { for (int j = 0; j < listaNodosCurso.getLength(); j++) {
Node nodoCurso = listaNodosCurso.item(j); Node nodoCurso = listaNodosCurso.item(j);
if (nodoCurso.getNodeType() == Node.ELEMENT_NODE) { if (nodoCurso.getNodeType() == Node.ELEMENT_NODE) {
Element curso = (Element) nodoCurso; Element curso = (Element) nodoCurso;
// Obtener atributo codigo // Obtener atributo codigo
numeroCurso = curso.getAttribute("numero"); numeroCurso = curso.getAttribute("numero");
NodeList listaNodosModulo = curso.getElementsByTagName("modulo");
for (int k = 0; k < listaNodosModulo.getLength(); k++) { // Comprobar que es el primer curso
Node nodoModulo = listaNodosModulo.item(k); if (numeroCurso.equals("1")) {
if (nodoModulo.getNodeType() == Node.ELEMENT_NODE) { NodeList listaNodosModulo = curso.getElementsByTagName("modulo");
Element modulo = (Element) nodoModulo; for (int k = 0; k < listaNodosModulo.getLength(); k++) {
// Comprobar que el nodo padre es un curso y no otro (como por ejemplo Node nodoModulo = listaNodosModulo.item(k);
// instituto) if (nodoModulo.getNodeType() == Node.ELEMENT_NODE) {
if (modulo.getParentNode().getNodeName() == "curso") { Element modulo = (Element) nodoModulo;
// Obtener texto del Título // Comprobar que el nodo padre es un curso y no otro (como por ejemplo
String titulo = modulo.getElementsByTagName("titulo").item(0).getTextContent(); // instituto)
// Obtener Número de horas if (modulo.getParentNode().getNodeName() == "curso") {
int numeroHoras = Integer.parseInt( // Obtener texto del Título
modulo.getElementsByTagName("numerohoras").item(0).getTextContent()); String titulo = modulo.getElementsByTagName("titulo").item(0)
if (((titulo.startsWith("Programa") .getTextContent();
|| titulo.toLowerCase().startsWith("desarrollo")) && numeroHoras >= 100) // Obtener Número de horas
&& numeroHoras > 100 && nivelCiclo.equals("CFGS")) { int numeroHoras = Integer.parseInt(modulo
// Obtener atributos id y referencia .getElementsByTagName("numerohoras").item(0).getTextContent());
String id = modulo.getAttribute("id"); if (((titulo.startsWith("Programa") && numeroHoras >= 100)
String referencia = modulo.getAttribute("ref"); || titulo.toLowerCase().contains("desarrollo"))) {
// Obtener atributos id y referencia
String id = modulo.getAttribute("id");
String referencia = modulo.getAttribute("ref");
String mensajeCiclo = String.format( String mensajeCiclo = String.format(
"Ciclo: %s - Curso: %s - Modelo (Id: %s - Referencia: %s - Título: %s - Número de horas: %s)", "Ciclo: %s - Curso: %s - Modelo (Id: %s - Referencia: %s - Título: %s - Número de horas: %s)",
nivelCiclo, numeroCurso, id, referencia, titulo, numeroHoras); nivelCiclo, numeroCurso, id, referencia, titulo, numeroHoras);
System.out.println(mensajeCiclo); System.out.println(mensajeCiclo);
}
}
} }
} }
} }