Prechádzať zdrojové kódy

Cambio en el servicio usuarios

Mario Martínez Hernández 1 deň pred
rodič
commit
af3d3fd2de

+ 11 - 1
src/main/java/es/uv/saic/shared/dto/ImportDTO.java

@@ -15,6 +15,7 @@ public class ImportDTO {
     String locale;
     String clau;
     List<String> ignoredColumns;
+    Boolean isAdmin;
 
     // Campos específicos para importación desde archivo
     byte[] fileContent;
@@ -28,7 +29,7 @@ public class ImportDTO {
     Integer dstCurs;
 
     // Constructor completo para todos los campos
-    public ImportDTO(MultipartFile file, String tipus, String principal, String enquesta, String ambit, String estudi,
+    public ImportDTO(MultipartFile file, String tipus, String principal, Boolean isAdmin, String enquesta, String ambit, String estudi,
             String locale, String delim, String clau, List<String> ignoredColumns, Integer dbOrigen, String vista,
             Integer curs, Integer dstCurs) {
         if (file != null) {
@@ -41,6 +42,7 @@ public class ImportDTO {
         }
         this.tipus = tipus;
         this.principal = principal;
+        this.isAdmin = isAdmin;
         this.enquesta = enquesta;
         this.ambit = ambit;
         this.estudi = estudi;
@@ -174,4 +176,12 @@ public class ImportDTO {
     public void setDstCurs(Integer dstCurs) {
         this.dstCurs = dstCurs;
     }
+
+    public Boolean isAdmin() {
+        return isAdmin;
+    }
+
+    public void setAdmin(Boolean isAdmin) {
+        this.isAdmin = isAdmin;
+    }
 }

+ 104 - 1
src/main/java/es/uv/saic/shared/dto/UsuariDTO.java

@@ -1,5 +1,8 @@
 package es.uv.saic.shared.dto;
 
+import java.time.LocalDateTime;
+import java.util.List;
+
 import es.uv.saic.shared.domain.Usuari;
 
 public class UsuariDTO {
@@ -7,12 +10,32 @@ public class UsuariDTO {
     private String cognoms;
     private String email;
     private String usuari;
+    private String clau;
+    private LocalDateTime dataUltim;
+    private String locale;
+    private List<InstanciaTascaDTO> instanciesTasques;
+    private Boolean isGranted;
+    private Boolean isAdmin;
+    private Boolean isVigent;
+    private Boolean ldap;
+    private List<String> permisions;
+
+    public UsuariDTO(){};
     
-    public UsuariDTO(String nom, String cognoms, String email, String usuari) {
+    public UsuariDTO(String nom, String cognoms, String email, String usuari, String clau, LocalDateTime dataUltim, String locale, List<InstanciaTascaDTO> instanciesTasques, Boolean isGrantedUser, Boolean isVigent, Boolean ldap, Boolean isAdmin, List<String> permisions) {
         this.nom = nom;
         this.cognoms = cognoms;
         this.email = email;
         this.usuari = usuari;
+        this.clau = clau;
+        this.dataUltim = dataUltim;
+        this.locale = locale;
+        this.instanciesTasques = instanciesTasques;
+        this.isGranted = isGrantedUser;
+        this.isAdmin = isAdmin;
+        this.ldap = ldap;
+        this.isVigent = isVigent;
+        this.permisions = permisions;
     }
 
     public UsuariDTO(Usuari usuari) {
@@ -20,6 +43,15 @@ public class UsuariDTO {
         this.cognoms = usuari.getCognoms();
         this.email = usuari.getEmail();
         this.usuari = usuari.getUsuari();
+        this.clau = usuari.getClau();
+        this.dataUltim = usuari.getDataUltim();
+        this.locale = usuari.getLocale();
+        this.instanciesTasques = usuari.getInstanciesTasques().stream().map(InstanciaTascaDTO::new).toList();
+        this.isGranted = usuari.isGranted();
+        this.isAdmin = usuari.isAdmin();
+        this.ldap = usuari.getLdap();
+        this.isVigent = false;
+        this.permisions = null;
     }
 
     public String getNom() {
@@ -53,5 +85,76 @@ public class UsuariDTO {
     public void setUsuari(String usuari) {
         this.usuari = usuari;
     }
+
+    public String getClau() {
+        return this.clau;
+    }
+
+    public void setClau(String clau) {
+        this.clau = clau;
+    }
     
+    public LocalDateTime getDataUltim() {
+        return dataUltim;
+    }
+
+    public void setDataUltim(LocalDateTime dataUltim) {
+        this.dataUltim = dataUltim;
+    }
+
+    public String getLocale() {
+        return locale;
+    }
+
+    public void setLocale(String locale) {
+        this.locale = locale;
+    }
+
+    public List<InstanciaTascaDTO> getInstanciesTasques() {
+        return instanciesTasques;
+    }
+
+    public void setInstanciesTasques(List<InstanciaTascaDTO> instanciesTasques) {
+        this.instanciesTasques = instanciesTasques;
+    }
+
+    public Boolean isGranted() {
+        return isGranted;
+    }
+
+    public void setGrantedUser(Boolean isGrantedUser) {
+        this.isGranted = isGrantedUser;
+    }
+
+    public Boolean isVigent() {
+        return isVigent;
+    }
+
+    public void setVigent(Boolean isVigent) {
+        this.isVigent = isVigent;
+    }
+
+    public Boolean isAdmin() {
+        return isAdmin;
+    }
+
+    public void setAdmin(Boolean isAdmin) {
+        this.isAdmin = isAdmin;
+    }
+
+    public List<String> getPermisions() {
+        return this.permisions;
+    }
+
+    public void setPermisions(List<String> permisions) {
+        this.permisions = permisions;
+    }
+
+    public boolean getLdap(){
+        return ldap;
+    }
+
+    public void setLdap(Boolean ldap) {
+        this.ldap = ldap;
+    }
 }

+ 1 - 1
src/main/java/es/uv/saic/shared/feign/OrganClient.java

@@ -70,7 +70,7 @@ public interface OrganClient {
     @PostMapping("/organ/centres")
 	public HashMap<String, Object> getAllCentresByAmbit(@RequestParam("procedure") Integer idProces);
 
-    @GetMapping("/organ/titulacions/{centre}/{tambit}")
+    @GetMapping("/organ/titulacions/{centre}/tambit/{tambit}")
     public List<OrganDTO> getTitulacionsByCentreTambit(@PathVariable("centre") Integer lugar, @PathVariable("tambit") String tambit);
 
     @GetMapping("/organ/titulacions/type/{lugar}/{ambit}")

+ 12 - 0
src/main/java/es/uv/saic/shared/feign/UsuariClient.java

@@ -1,11 +1,14 @@
 package es.uv.saic.shared.feign;
 
+import java.time.LocalDateTime;
 import java.util.List;
+import java.util.Locale;
 
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import es.uv.saic.shared.domain.Usuari;
 import es.uv.saic.shared.dto.RolDTO;
@@ -27,4 +30,13 @@ public interface UsuariClient {
 
     @GetMapping("/user")
     public List<UsuariDTO> findAllUsers();
+
+    @GetMapping("/user/{username}")
+    public UsuariDTO findByUsername(@RequestParam String username);
+
+    @PostMapping("/user/{username}/locale/{locale}")
+    public void saveLocale(@RequestParam String username, @RequestParam String locale);
+
+    @PostMapping("/user/{username}/ultim")
+    public void saveUltim(@RequestParam String username, @RequestBody LocalDateTime dataUltim);
 }