Browse Source

Deleted OrganTransferDTO and updates

Mario Martínez Hernández 2 months ago
parent
commit
55692e8c2b

+ 3 - 3
src/main/java/es/uv/saic/domain/CategoriaRepository.java

@@ -9,13 +9,13 @@ import org.springframework.stereotype.Repository;
 @Repository
 public interface CategoriaRepository  extends JpaRepository<Categoria, Integer> {
 	
-	@Query(value="SELECT * FROM categories WHERE pare = ?1 AND (tambit = ?2 OR tambit = 'U') ORDER BY ordre ASC;", nativeQuery=true)
+	@Query(value="SELECT * FROM categories WHERE pare = ?1 AND tambit IN('U', 'C', ?2) ORDER BY ordre ASC;", nativeQuery=true)
 	List<Categoria> findByPareTambitAndU(Integer pare, String tambit); 
 
 	@Query(value="SELECT * FROM categories WHERE pare = ?1 AND (tambit = ?2) ORDER BY ordre ASC;", nativeQuery=true)
 	List<Categoria> findByPareTambit(Integer pare, String tambit); 
 
-	@Query(value="SELECT * FROM categories WHERE tipus = ?1 AND (tambit = ?2 OR tambit = 'U') ORDER BY ordre ASC;", nativeQuery=true)
+	@Query(value="SELECT * FROM categories WHERE tipus = ?1 AND tambit IN('U', 'C', ?2) ORDER BY ordre ASC;", nativeQuery=true)
 	List<Categoria> findByTipusTambitAndU(String tipus, String tambit); 
 
 	@Query(value="SELECT * FROM categories WHERE tipus = ?1 AND (tambit = ?2) ORDER BY ordre ASC;", nativeQuery=true)
@@ -24,7 +24,7 @@ public interface CategoriaRepository  extends JpaRepository<Categoria, Integer>
 	@Query(value="SELECT * FROM categories WHERE pare IS NULL AND (tambit = ?1) ORDER BY ordre ASC;", nativeQuery=true)
 	List<Categoria> findFirstLevel(String ambit);
 
-	@Query(value="SELECT * FROM categories WHERE pare IS NULL AND (tambit = ?1 OR tambit = 'U') ORDER BY ordre ASC;", nativeQuery=true)
+	@Query(value="SELECT * FROM categories WHERE pare IS NULL AND tambit IN('U', 'C', ?1) ORDER BY ordre ASC;", nativeQuery=true)
 	List<Categoria> findFirstLevelAndU(String ambit);
 
 }

+ 0 - 82
src/main/java/es/uv/saic/dto/OrganTransferDTO.java

@@ -1,82 +0,0 @@
-package es.uv.saic.dto;
-
-import es.uv.saic.domain.Organ;
-
-public class OrganTransferDTO {
-    private Integer lugarTitulacion;
-    private Integer lugarCentre;
-    private String nomVal;
-    private String nomCas;
-    private String tambit;
-    private String tambitTitulacion;
-
-    public OrganTransferDTO() {
-    }
-
-    public OrganTransferDTO(Integer lugarTitulacion, Integer lugarCentre, String nomVal, String nomCas, String tambit,
-            String tambitTitulacion) {
-        this.lugarTitulacion = lugarTitulacion;
-        this.lugarCentre = lugarCentre;
-        this.nomVal = nomVal;
-        this.nomCas = nomCas;
-        this.tambit = tambit;
-        this.tambitTitulacion = tambitTitulacion;
-    }
-
-    public OrganTransferDTO(Organ organ) {
-        this.lugarTitulacion = organ.getId().getLugar();
-        this.lugarCentre = organ.getOrgan().getId().getLugar();
-        this.nomVal = organ.getNomVal();
-        this.nomCas = organ.getNomCas();
-        this.tambit = organ.getTambit();
-        this.tambitTitulacion = organ.getOrgan().getTambit();
-    }
-
-    public Integer getLugarTitulacion() {
-        return lugarTitulacion;
-    }
-
-    public void setLugarTitulacion(Integer lugarTitulacion) {
-        this.lugarTitulacion = lugarTitulacion;
-    }
-
-    public Integer getLugarCentre() {
-        return lugarCentre;
-    }
-
-    public void setLugarCentre(Integer lugarCentre) {
-        this.lugarCentre = lugarCentre;
-    }
-
-    public String getNomVal() {
-        return nomVal;
-    }
-
-    public void setNomVal(String nomVal) {
-        this.nomVal = nomVal;
-    }
-
-    public String getNomCas() {
-        return nomCas;
-    }
-
-    public void setNomCas(String nomCas) {
-        this.nomCas = nomCas;
-    }
-
-    public String getTambit() {
-        return tambit;
-    }
-
-    public void setTambit(String tambit) {
-        this.tambit = tambit;
-    }
-
-    public String getTambitTitulacion() {
-        return tambitTitulacion;
-    }
-
-    public void setTambitTitulacion(String tambitTitulacion) {
-        this.tambitTitulacion = tambitTitulacion;
-    }
-}

+ 9 - 0
src/main/java/es/uv/saic/web/AdminController.java

@@ -88,6 +88,14 @@ public class AdminController {
 
 	public static final String DDMMYYYY = "dd/MM/yyyy";
 
+	public static final Map<Integer, String> acreditaGroups =
+		Map.of(
+			1, "ENERO",   
+			4, "ABRIL",   
+			9, "SEPTIEMBRE",
+			10, "NOVIEMBRE"      
+		);
+
 	@PostMapping("/admin/instances")
 	public HashMap<String, Object> instantiate(@RequestParam("procedure") Integer idProces,
 			@RequestParam("center") Integer idCentre,
@@ -869,6 +877,7 @@ public class AdminController {
 		Acreditacio a = this.as.getById(tlugar, lugar);
 		a.setGrupCurs(grupCurs);
 		a.setGrupNum(grupNum);
+		a.setGrup(acreditaGroups.get(grupNum));
 		a.setDataAcred(new SimpleDateFormat(DDMMYYYY).parse(dataAcred));
 		a.setDataRenov(new SimpleDateFormat(DDMMYYYY).parse(dataRenov));
 		a.setDataSegui(new SimpleDateFormat(DDMMYYYY).parse(dataSegui));

+ 24 - 13
src/main/java/es/uv/saic/web/DashboardController.java

@@ -5,6 +5,7 @@ import java.text.CharacterIterator;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.text.StringCharacterIterator;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.Year;
 import java.time.format.DateTimeFormatter;
@@ -15,7 +16,6 @@ import java.util.Comparator;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
-import java.util.Optional;
 import java.util.UUID;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -26,9 +26,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.i18n.LocaleContextHolder;
 import org.springframework.core.io.FileSystemResource;
-import org.springframework.security.access.annotation.Secured;
-import org.springframework.security.core.Authentication;
-import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -232,8 +229,15 @@ public class DashboardController {
 		List<Informe> informes = this.infs.findByGrupWebTambit("D", o.getTambit());
 		List<AnyDimensioDTO> treeByTitulacio = new ArrayList<AnyDimensioDTO>();
 		List<TreeDTOAny> treeByCentre = new ArrayList<TreeDTOAny>();
-		int currentYear = Year.now().getValue();
-		for(int i=currentYear; i>=currentYear-5; i--) {
+		
+		int maxYear = Year.now().getValue();
+		int minYear = maxYear-5;
+		LocalDate currentdate = LocalDate.now();
+		if(currentdate.getMonthValue() >= 9){ // Si cambiamos de curso académico incrementamos el año
+			maxYear+=1;
+		}
+
+		for(int i=maxYear; i>=minYear; i--) {
 			
 			AnyDimensioDTO treeAnyT = new AnyDimensioDTO();
 			TreeDTOAny treeAnyC = new TreeDTOAny();
@@ -251,12 +255,13 @@ public class DashboardController {
 				for(InformeProcessos ip : dim.getProcessos()) {
 					processos.add(ip.getNomProces());
 				}
-				// Create Dimensio
+				// Crear Dimensión
 				List<TreeDTOOrgan> treeOrgans = new ArrayList<TreeDTOOrgan>();
 				
 				List<Instancia> instanciesT = new ArrayList<Instancia>();
 				List<Instancia> instanciesC = new ArrayList<Instancia>();
 				List<Instancia> instanciesC0 = new ArrayList<Instancia>();
+				List<Instancia> instanciesU = new ArrayList<Instancia>();
 				if(o.getTambit().equals("C")) {
 					instanciesC = is.findByOrganCursNom(o.getId().getTlugar(), o.getId().getLugar(), 
 														o.getId().getLugar(), 1, i, processos);
@@ -267,12 +272,18 @@ public class DashboardController {
 					instanciesC0 = is.findByOrganCursNom(o.getId().getTlugar(), o.getId().getLugar(), 
 														 o.getId().getLugar(), 0, i, processos);
 
+					instanciesU = is.findByOrganCursNom("C", 0, 0, 0, i, processos);
+
 					instanciesC.addAll(instanciesC0);
 
 					TreeDTOOrgan treeOrgC = new TreeDTOOrgan();
+					TreeDTOOrgan treeOrgU = new TreeDTOOrgan();
 					treeOrgC.setText("Centro");
 					treeOrgC.setChildren(instanciesC.stream().map(x -> new TreeDTOInstancia(x)).collect(Collectors.toList()));
+					treeOrgU.setText("Universidad");
+					treeOrgU.setChildren(instanciesU.stream().map(x -> new TreeDTOInstancia(x)).collect(Collectors.toList()));
 
+					treeOrgans.add(treeOrgU);
 					treeOrgans.add(treeOrgC);
 
 					List<Organ> orgChilds = os.findTitulacionsByCentre(Stream.of(o.getId().getLugar()).toList());
@@ -287,13 +298,13 @@ public class DashboardController {
 														    tit.getOrgan().getId().getLugar(), 
 														    tit.getId().getLugar(), i, processos);
 
-						TreeDTOOrgan treeOrg = new TreeDTOOrgan();
-						treeOrg.setText(tit.getNomCas());
-						treeOrg.setChildren(instanciesT.stream().map(x -> new TreeDTOInstancia(x)).collect(Collectors.toList()));
-
-						treeOrgans.add(treeOrg);
+						if(instanciesT.size() > 0){
+							TreeDTOOrgan treeOrg = new TreeDTOOrgan();
+							treeOrg.setText(tit.getNomCas());
+							treeOrg.setChildren(instanciesT.stream().map(x -> new TreeDTOInstancia(x)).collect(Collectors.toList()));
+							treeOrgans.add(treeOrg);
+						}
 					}
-
 				}
 				else {
 					instanciesT = is.findByOrganCursNom(o.getId().getTlugar(), o.getId().getLugar(), 

+ 6 - 7
src/main/java/es/uv/saic/web/OrganController.java

@@ -23,7 +23,6 @@ import es.uv.saic.domain.Proces;
 import es.uv.saic.domain.Usuari;
 import es.uv.saic.dto.OrganDTO;
 import es.uv.saic.dto.OrganRepositoryDTO;
-import es.uv.saic.dto.OrganTransferDTO;
 import es.uv.saic.service.IndicadorEnquestaService;
 import es.uv.saic.service.OrganService;
 import es.uv.saic.service.ProcesService;
@@ -77,10 +76,10 @@ public class OrganController {
      * Endpoint para findById
      */
     @GetMapping("/findById/{tlugar}/{idTitulacio}")
-    public OrganTransferDTO findByID(@PathVariable String tlugar,  @PathVariable Integer idTitulacio) {
+    public OrganDTO findByID(@PathVariable String tlugar,  @PathVariable Integer idTitulacio) {
         Organ organ = os.findByID(tlugar, idTitulacio);
 
-        return new OrganTransferDTO(organ);
+        return new OrganDTO(organ);
 
     }
 
@@ -88,9 +87,9 @@ public class OrganController {
      * Endpoint para getTitulacionsByTypeCentre
      */
     @GetMapping("/getTitulacionsByTypeCentre/{lugar}/{type}")
-    public List<OrganTransferDTO> getTitulacionsByTypeCentre(@PathVariable Integer lugar, @PathVariable Integer type) {
+    public List<OrganDTO> getTitulacionsByTypeCentre(@PathVariable Integer lugar, @PathVariable Integer type) {
         return os.getTitulacionsByTypeCentre(lugar, type).stream()
-			.map(OrganTransferDTO::new)
+			.map(OrganDTO::new)
 			.collect(Collectors.toList());
     }
 
@@ -100,9 +99,9 @@ public class OrganController {
     }
 
     @GetMapping("/getTitulacionsByCentreTambit/{centre}/{tambit}")
-    public List<OrganTransferDTO> getTitulacionsByCentreTambit(@PathVariable Integer centre, @PathVariable String tambit) {
+    public List<OrganDTO> getTitulacionsByCentreTambit(@PathVariable Integer centre, @PathVariable String tambit) {
         return os.findActiveTitulacionsByCentreTambit(centre, tambit).stream()
-			.map(OrganTransferDTO::new)
+			.map(OrganDTO::new)
 			.collect(Collectors.toList());
     }
 

+ 1 - 0
src/main/resources/messages.properties

@@ -164,6 +164,7 @@ managers.titulations = Titulació(ns)
 managers.search = Cercar
 managers.search.title = Resultats de la cerca
 managers.noResults = No s'ha trobar cap responsable amb els criteris de cerca seleccionats
+managers.since = des del
 
 ##########################################
 #	ADMIN PAGE LOCALES

+ 1 - 0
src/main/resources/messages_ca.properties

@@ -163,6 +163,7 @@ managers.titulations = Titulació(ns)
 managers.search = Cercar
 managers.search.title = Resultats de la cerca
 managers.noResults = No s'ha trobar cap responsable amb els criteris de cerca seleccionats
+managers.since = des del
 
 ##########################################
 #	ADMIN PAGE LOCALES

+ 1 - 0
src/main/resources/messages_es.properties

@@ -164,6 +164,7 @@ managers.titulations = Titulación(es)
 managers.search = Buscar
 managers.search.title = Resultados de la búsqueda
 managers.noResults = No se ha encontrado ningun responsable con los criterios seleccionados
+managers.since = desde del
 
 ##########################################
 #	ADMIN PAGE LOCALES