From bd7c480e7ce1edb999462cac19bfbacda0d062cc Mon Sep 17 00:00:00 2001 From: Aurince AKAKPO Date: Fri, 12 Jun 2026 14:16:36 +0100 Subject: [PATCH] gestino restauration --- .../RestaurationController.java | 170 ++++++++++++++---- .../SynchronisationController.java | 17 +- .../entities/infocad/metier/Enquete.java | 16 +- .../entities/infocad/metier/Parcelle.java | 2 +- .../MobileDataCaracteristiqueBatiment.java | 4 +- .../MobileDataCaracteristiqueParcelle.java | 4 +- ...obileDataCaracteristiqueUniteLogement.java | 4 +- .../metadata/MobileDataDeclarationNc.java | 2 +- .../metadata/MobileDataEnqueteActivite.java | 2 +- .../metadata/MobileDataUniteLogement.java | 5 +- .../entities/rfu/metier/EnqueteActivite.java | 4 +- .../entities/rfu/metier/EnqueteBatiment.java | 20 +-- .../rfu/metier/EnqueteUniteLogement.java | 20 +-- .../RestaurationServiceImpl.java | 51 ++++-- .../SynchronisationServiceImpl.java | 123 ++++++------- .../synchronisation/RestaurationService.java | 17 +- .../SynchronisationService.java | 10 +- ...va => CaracteristiqueBatimentPayload.java} | 4 +- ...va => CaracteristiqueParcellePayload.java} | 2 +- ... CaracteristiqueUniteLogementPayload.java} | 2 +- .../paylaods/request/ParcellePayLoad.java | 2 +- ...Paylaod.java => UniteLogementPayload.java} | 2 +- .../response/restoration/TailleObjet.java | 7 + .../MobileDataBatimentRepository.java | 2 +- .../metadata/MobileDataEnqueteRepository.java | 9 + .../MobileDataUniteLogementRepository.java | 2 +- .../metadata/MobileDataUploadRepository.java | 2 + .../fiscad/service/FileStorageService.java | 22 +++ .../CaracteristiqueBatimentAsyncWorker.java | 51 +++--- .../CaracteristiqueParcelleAsyncWorker.java | 45 ++--- ...racteristiqueUniteLogementAsyncWorker.java | 47 +++-- .../service/worker/EnqueteAsyncWorker.java | 2 +- .../worker/UniteLogementAsyncWorker.java | 49 +++-- src/main/resources/application.properties | 4 +- 34 files changed, 422 insertions(+), 303 deletions(-) rename src/main/java/io/gmss/fiscad/paylaods/request/{CaracteristiqueBatimentPaylod.java => CaracteristiqueBatimentPayload.java} (89%) rename src/main/java/io/gmss/fiscad/paylaods/request/{CaracteristiqueParcellePaylod.java => CaracteristiqueParcellePayload.java} (88%) rename src/main/java/io/gmss/fiscad/paylaods/request/{CaracteristiqueUniteLogementPaylod.java => CaracteristiqueUniteLogementPayload.java} (88%) rename src/main/java/io/gmss/fiscad/paylaods/request/{UniteLogementPaylaod.java => UniteLogementPayload.java} (91%) diff --git a/src/main/java/io/gmss/fiscad/controllers/synchronisation/RestaurationController.java b/src/main/java/io/gmss/fiscad/controllers/synchronisation/RestaurationController.java index ee8c461..2eec778 100644 --- a/src/main/java/io/gmss/fiscad/controllers/synchronisation/RestaurationController.java +++ b/src/main/java/io/gmss/fiscad/controllers/synchronisation/RestaurationController.java @@ -14,6 +14,8 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import org.springframework.web.client.HttpClientErrorException; +import java.util.List; + @RestController @RequestMapping(value = "api/restauration", produces = MediaType.APPLICATION_JSON_VALUE) @SecurityRequirement(name = "bearer") @@ -29,11 +31,11 @@ public class RestaurationController { this.restaurationService = restaurationService; } - @GetMapping(path = "/enquete/{terminalId}") - public ResponseEntity getEnquetes(@PathVariable Long terminalId) { + @GetMapping(path = "/enquete") + public ResponseEntity getEnquetes(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getEnquete(terminalId), "liste des enquetes avec succès."), + new ApiResponse<>(true, restaurationService.getEnquete(terminalId,limit,offset), "liste des enquetes avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -52,11 +54,11 @@ public class RestaurationController { } } - @GetMapping(path = "/acteur-concerne/{terminalId}") - public ResponseEntity getActeurConcerne(@PathVariable Long terminalId) { + @GetMapping(path = "/acteur-concerne") + public ResponseEntity getActeurConcerne(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getActeurConcernes(terminalId), "liste des acteurs concernés avec succès."), + new ApiResponse<>(true, restaurationService.getActeurConcernes(terminalId,limit,offset), "liste des acteurs concernés avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -75,11 +77,11 @@ public class RestaurationController { } } - @GetMapping(path = "/personne/{terminalId}") // ok - public ResponseEntity getPersonnes(@PathVariable Long terminalId) { + @GetMapping(path = "/personne") // ok + public ResponseEntity getPersonnes(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getPersonne(terminalId), "liste des personnes avec succès."), + new ApiResponse<>(true, restaurationService.getPersonne(terminalId,limit,offset), "liste des personnes avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -98,11 +100,11 @@ public class RestaurationController { } } - @GetMapping(path = "/membre-groupe/{terminalId}") - public ResponseEntity getMembrePersonnes(@PathVariable Long terminalId) { + @GetMapping(path = "/membre-groupe") + public ResponseEntity getMembrePersonnes(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getMembreGroupe(terminalId), "liste des membres groupe avec succès."), + new ApiResponse<>(true, restaurationService.getMembreGroupe(terminalId,limit,offset), "liste des membres groupe avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -121,11 +123,11 @@ public class RestaurationController { } } - @GetMapping(path = "/parcelle/{terminalId}") - public ResponseEntity getParcelle(@PathVariable Long terminalId) { + @GetMapping(path = "/parcelle") + public ResponseEntity getParcelle(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getParcelle(terminalId), "liste des parcelle avec succès."), + new ApiResponse<>(true, restaurationService.getParcelle(terminalId,limit,offset), "liste des parcelle avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -144,11 +146,11 @@ public class RestaurationController { } } - @GetMapping(path = "/piece/{terminalId}") - public ResponseEntity getPieces(@PathVariable Long terminalId) { + @GetMapping(path = "/caracteristique-parcelle/") + public ResponseEntity getCaracteristiqueParcelle(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getPieces(terminalId), "liste des enquetes avec succès."), + new ApiResponse<>(true, restaurationService.getCaracateristiqueParcelle(terminalId,limit,offset), "liste des caractéristiques des unités de logement avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -167,11 +169,34 @@ public class RestaurationController { } } - @GetMapping(path = "/upload/{terminalId}") - public ResponseEntity getUpload(@PathVariable Long terminalId) { + @GetMapping(path = "/piece") + public ResponseEntity getPieces(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getUpload(terminalId), "liste des enquetes avec succès."), + new ApiResponse<>(true, restaurationService.getPieces(terminalId,limit,offset), "liste des enquetes avec succès."), + HttpStatus.OK + ); + } catch (HttpClientErrorException.MethodNotAllowed e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), HttpStatus.OK); + } catch (NotFoundException | BadRequestException | MyFileNotFoundException | ResourceNotFoundException | + FileStorageException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, e.getMessage()), HttpStatus.OK); + } catch (NullPointerException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Null value has been detected {" + e.getMessage() + "}."), HttpStatus.OK); + } catch (Exception e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK); + } + } + + @GetMapping(path = "/upload") + public ResponseEntity getUpload(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { + try { + return new ResponseEntity<>( + new ApiResponse<>(true, restaurationService.getUploads(terminalId,limit,offset), "liste des enquetes avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -213,12 +238,18 @@ public class RestaurationController { } } - - @GetMapping(path = "/batiment/{terminalId}") - public ResponseEntity getBatiments(@PathVariable Long terminalId) { + @PostMapping(path = "/files/{terminalId}") + public ResponseEntity getCurrentUserTpe(@RequestBody List ids, @PathVariable Long terminalId) { + return new ResponseEntity<>( + new ApiResponse<>(true, restaurationService.getFiles(terminalId, ids), "liste des enquetes avec succès."), + HttpStatus.OK + ); + } + @GetMapping(path = "/batiment") + public ResponseEntity getBatiments(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getBatiment(terminalId), "liste des batiments avec succès."), + new ApiResponse<>(true, restaurationService.getBatiment(terminalId,limit,offset), "liste des batiments avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -238,11 +269,11 @@ public class RestaurationController { } - @GetMapping(path = "/enquete-batiment/{terminalId}") - public ResponseEntity getEnqueteBatiment(@PathVariable Long terminalId) { + @GetMapping(path = "/enquete-batiment") + public ResponseEntity getEnqueteBatiment(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getEnqueteBatiment(terminalId), "liste des enquetes batiments avec succès."), + new ApiResponse<>(true, restaurationService.getEnqueteBatiment(terminalId,limit,offset), "liste des enquetes batiments avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -262,11 +293,11 @@ public class RestaurationController { } - @GetMapping(path = "/caracteristique-batiment/{terminalId}") - public ResponseEntity getCaracteristiqueBatiment(@PathVariable Long terminalId) { + @GetMapping(path = "/caracteristique-batiment") + public ResponseEntity getCaracteristiqueBatiment(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getCaracateristiqueBatiment(terminalId), "liste des caractéristiques batiments avec succès."), + new ApiResponse<>(true, restaurationService.getCaracateristiqueBatiment(terminalId,limit,offset), "liste des caractéristiques batiments avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -285,11 +316,82 @@ public class RestaurationController { } } - @GetMapping(path = "/caracteristique-unite-logement/{terminalId}") - public ResponseEntity getCaracteristiqueUniteLogement(@PathVariable Long terminalId) { + @GetMapping(path = "/unite-logement") + public ResponseEntity getUniteLogement(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { try { return new ResponseEntity<>( - new ApiResponse<>(true, restaurationService.getCaracateristiqueUniteLogement(terminalId), "liste des caractéristiques des unités de logement avec succès."), + new ApiResponse<>(true, restaurationService.getUniteLogement(terminalId, limit, offset), "liste des unités de logement avec succès."), + HttpStatus.OK + ); + } catch (HttpClientErrorException.MethodNotAllowed e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), HttpStatus.OK); + } catch (NotFoundException | BadRequestException | MyFileNotFoundException | ResourceNotFoundException | + FileStorageException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, e.getMessage()), HttpStatus.OK); + } catch (NullPointerException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Null value has been detected {" + e.getMessage() + "}."), HttpStatus.OK); + } catch (Exception e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK); + } + } + + @GetMapping(path = "/enquete-unite-logement") + public ResponseEntity getEnqueteEnqueteUniteLogement(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { + try { + return new ResponseEntity<>( + new ApiResponse<>(true, restaurationService.getEnqueteUniteLogement(terminalId,limit,offset), "liste des enquetes d'unité de logement chargée avec succès."), + HttpStatus.OK + ); + } catch (HttpClientErrorException.MethodNotAllowed e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), HttpStatus.OK); + } catch (NotFoundException | BadRequestException | MyFileNotFoundException | ResourceNotFoundException | + FileStorageException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, e.getMessage()), HttpStatus.OK); + } catch (NullPointerException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Null value has been detected {" + e.getMessage() + "}."), HttpStatus.OK); + } catch (Exception e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK); + } + } + + @GetMapping(path = "/caracteristique-unite-logement") + public ResponseEntity getCaracteristiqueUniteLogement(@RequestParam Long terminalId,@RequestParam Long limit, @RequestParam Long offset) { + try { + return new ResponseEntity<>( + new ApiResponse<>(true, restaurationService.getCaracateristiqueUniteLogement(terminalId,limit,offset), "liste des caractéristiques des unités de logement avec succès."), + HttpStatus.OK + ); + } catch (HttpClientErrorException.MethodNotAllowed e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), HttpStatus.OK); + } catch (NotFoundException | BadRequestException | MyFileNotFoundException | ResourceNotFoundException | + FileStorageException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, e.getMessage()), HttpStatus.OK); + } catch (NullPointerException e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "Null value has been detected {" + e.getMessage() + "}."), HttpStatus.OK); + } catch (Exception e) { + logger.error(e.getLocalizedMessage()); + return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK); + } + } + + + + @GetMapping(path = "/taille-objet") + public ResponseEntity getTailleObjet(@RequestParam Long terminalId) { + try { + return new ResponseEntity<>( + new ApiResponse<>(true, restaurationService.getTailleObjetByTerminalId(terminalId), "liste des tailles des objets chargée avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { diff --git a/src/main/java/io/gmss/fiscad/controllers/synchronisation/SynchronisationController.java b/src/main/java/io/gmss/fiscad/controllers/synchronisation/SynchronisationController.java index ac90492..3b183b8 100644 --- a/src/main/java/io/gmss/fiscad/controllers/synchronisation/SynchronisationController.java +++ b/src/main/java/io/gmss/fiscad/controllers/synchronisation/SynchronisationController.java @@ -18,7 +18,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import org.springframework.web.client.HttpClientErrorException; -import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -443,11 +442,11 @@ public class SynchronisationController { @PostMapping(path = "/unite-logement") @PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')") - public ResponseEntity syncUniteLogement(@RequestBody List uniteLogementPaylaods) { + public ResponseEntity syncUniteLogement(@RequestBody List uniteLogementPayloads) { try { return new ResponseEntity<>( //new ApiResponse<>(true,null, "Liste des unités de logement synchronisées avec succès."), - new ApiResponse<>(true, synchronisationService.syncUniteLogement(uniteLogementPaylaods), "Liste des unités de logement synchronisées avec succès."), + new ApiResponse<>(true, synchronisationService.syncUniteLogement(uniteLogementPayloads), "Liste des unités de logement synchronisées avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -468,11 +467,11 @@ public class SynchronisationController { @PostMapping(path = "/caracteristique-batiment") @PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')") - public ResponseEntity syncCaracteristiqueBatiment(@RequestBody List caracteristiqueBatimentPaylods) { + public ResponseEntity syncCaracteristiqueBatiment(@RequestBody List caracteristiqueBatimentPayloads) { try { return new ResponseEntity<>( //new ApiResponse<>(true, null, "Liste des caractéristiques des bâtiments synchronisée avec succès."), - new ApiResponse<>(true, synchronisationService.syncCaracteristiqueBatiment(caracteristiqueBatimentPaylods), "Liste des caractéristiques des bâtiments synchronisée avec succès."), + new ApiResponse<>(true, synchronisationService.syncCaracteristiqueBatiment(caracteristiqueBatimentPayloads), "Liste des caractéristiques des bâtiments synchronisée avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -493,11 +492,11 @@ public class SynchronisationController { @PostMapping(path = "/caracteristique-parcelle") @PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')") - public ResponseEntity syncCaracteristiqueParcelle(@RequestBody List caracteristiqueParcellePaylods) { + public ResponseEntity syncCaracteristiqueParcelle(@RequestBody List caracteristiqueParcellePayloads) { try { return new ResponseEntity<>( //new ApiResponse<>(true, null, "Liste des caractéristiques des parcelles synchronisée avec succès."), - new ApiResponse<>(true, synchronisationService.syncCaracteristiqueParcelle(caracteristiqueParcellePaylods), "Liste des caractéristiques des parcelles synchronisée avec succès."), + new ApiResponse<>(true, synchronisationService.syncCaracteristiqueParcelle(caracteristiqueParcellePayloads), "Liste des caractéristiques des parcelles synchronisée avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { @@ -518,11 +517,11 @@ public class SynchronisationController { @PostMapping(path = "/caracteristique-unite-logement") @PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')") - public ResponseEntity syncCaracteristiqueUniteLogement(@RequestBody List caracteristiqueUniteLogementPaylods) { + public ResponseEntity syncCaracteristiqueUniteLogement(@RequestBody List caracteristiqueUniteLogementPayloads) { try { return new ResponseEntity<>( //new ApiResponse<>(true, null, "Liste des caractéristiques des unités de logement synchronisée avec succès."), - new ApiResponse<>(true, synchronisationService.syncCaracteristiqueUniteLogement(caracteristiqueUniteLogementPaylods), "Liste des caractéristiques des unités de logement synchronisée avec succès."), + new ApiResponse<>(true, synchronisationService.syncCaracteristiqueUniteLogement(caracteristiqueUniteLogementPayloads), "Liste des caractéristiques des unités de logement synchronisée avec succès."), HttpStatus.OK ); } catch (HttpClientErrorException.MethodNotAllowed e) { diff --git a/src/main/java/io/gmss/fiscad/entities/infocad/metier/Enquete.java b/src/main/java/io/gmss/fiscad/entities/infocad/metier/Enquete.java index b60ccdd..0185ea0 100644 --- a/src/main/java/io/gmss/fiscad/entities/infocad/metier/Enquete.java +++ b/src/main/java/io/gmss/fiscad/entities/infocad/metier/Enquete.java @@ -86,7 +86,9 @@ public class Enquete extends BaseEntity implements Serializable { @ManyToOne private ZoneRfu zoneRfu; private String autreNumeroTitreFoncier; - private Long personneId; + + // private Long personneId; + @Enumerated(EnumType.STRING) private StatusEnquete statusEnquete; @JsonFormat(pattern = "dd-MM-yyyy") @@ -150,14 +152,14 @@ public class Enquete extends BaseEntity implements Serializable { private String numRue; private String nomRue; private String emplacement; - private float altitude; - private float precision; - private int nbreCoProprietaire; - private int nbreIndivisiaire; + private Float altitude; + private Float precision; + private Integer nbreCoProprietaire; + private Integer nbreIndivisiaire; private String autreAdresse; private String surface; - private int nbreBatiment; - private int nbrePiscine; + private Integer nbreBatiment; + private Integer nbrePiscine; @JsonFormat(pattern = "dd-MM-yyyy") @JsonDeserialize(using = LocalDateDeserializer.class) private LocalDate dateDebutExcemption; diff --git a/src/main/java/io/gmss/fiscad/entities/infocad/metier/Parcelle.java b/src/main/java/io/gmss/fiscad/entities/infocad/metier/Parcelle.java index f14d19d..1293204 100644 --- a/src/main/java/io/gmss/fiscad/entities/infocad/metier/Parcelle.java +++ b/src/main/java/io/gmss/fiscad/entities/infocad/metier/Parcelle.java @@ -54,7 +54,7 @@ public class Parcelle extends BaseEntity implements Serializable { private String autreNumeroTitreFoncier; private Long typeDomaineId; - private Long numeroProvisoire; + private String numeroProvisoire; private Long blocId; @ColumnDefault("false") private boolean synchronise; diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueBatiment.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueBatiment.java index a36507c..2bc4bfc 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueBatiment.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueBatiment.java @@ -2,7 +2,7 @@ package io.gmss.fiscad.entities.metadata; import com.vladmihalcea.hibernate.type.json.JsonBinaryType; import io.gmss.fiscad.entities.BaseEntity; -import io.gmss.fiscad.paylaods.request.CaracteristiqueBatimentPaylod; +import io.gmss.fiscad.paylaods.request.CaracteristiqueBatimentPayload; import jakarta.persistence.*; import lombok.Getter; import lombok.Setter; @@ -26,7 +26,7 @@ public class MobileDataCaracteristiqueBatiment extends BaseEntity implements Ser private Long externalKey; @Type(JsonBinaryType.class) @Column(columnDefinition = "jsonb") - private CaracteristiqueBatimentPaylod caracteristiqueBatimentPaylod ; + private CaracteristiqueBatimentPayload caracteristiqueBatimentPayload ; @Column(columnDefinition = "boolean default false") private boolean traiter; } \ No newline at end of file diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueParcelle.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueParcelle.java index 936dc42..80959ee 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueParcelle.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueParcelle.java @@ -2,7 +2,7 @@ package io.gmss.fiscad.entities.metadata; import com.vladmihalcea.hibernate.type.json.JsonBinaryType; import io.gmss.fiscad.entities.BaseEntity; -import io.gmss.fiscad.paylaods.request.CaracteristiqueParcellePaylod; +import io.gmss.fiscad.paylaods.request.CaracteristiqueParcellePayload; import jakarta.persistence.*; import lombok.Getter; import lombok.Setter; @@ -26,7 +26,7 @@ public class MobileDataCaracteristiqueParcelle extends BaseEntity implements Ser private Long externalKey; @Type(JsonBinaryType.class) @Column(columnDefinition = "jsonb") - private CaracteristiqueParcellePaylod caracteristiqueParcellePaylod ; + private CaracteristiqueParcellePayload caracteristiqueParcellePayload; @Column(columnDefinition = "boolean default false") private boolean traiter; } \ No newline at end of file diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueUniteLogement.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueUniteLogement.java index 9792367..c8f33df 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueUniteLogement.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataCaracteristiqueUniteLogement.java @@ -2,7 +2,7 @@ package io.gmss.fiscad.entities.metadata; import com.vladmihalcea.hibernate.type.json.JsonBinaryType; import io.gmss.fiscad.entities.BaseEntity; -import io.gmss.fiscad.paylaods.request.CaracteristiqueUniteLogementPaylod; +import io.gmss.fiscad.paylaods.request.CaracteristiqueUniteLogementPayload; import jakarta.persistence.*; import lombok.Getter; import lombok.Setter; @@ -26,7 +26,7 @@ public class MobileDataCaracteristiqueUniteLogement extends BaseEntity implement private Long externalKey; @Type(JsonBinaryType.class) @Column(columnDefinition = "jsonb") - private CaracteristiqueUniteLogementPaylod caracteristiqueUniteLogementPaylod ; + private CaracteristiqueUniteLogementPayload caracteristiqueUniteLogementPayload; @Column(columnDefinition = "boolean default false") private boolean traiter; } \ No newline at end of file diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataDeclarationNc.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataDeclarationNc.java index ec6106c..1a0b3f1 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataDeclarationNc.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataDeclarationNc.java @@ -15,7 +15,7 @@ import java.io.Serializable; @Setter @Table( indexes = { - @Index(name = "idx_terminal_external_bat", columnList = "terminalId, externalKey") + @Index(name = "idx_terminal_external_declarationNc", columnList = "terminalId, externalKey") } ) public class MobileDataDeclarationNc extends BaseEntity implements Serializable { diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataEnqueteActivite.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataEnqueteActivite.java index 2237a8a..1c3db87 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataEnqueteActivite.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataEnqueteActivite.java @@ -16,7 +16,7 @@ import java.io.Serializable; @Setter @Table( indexes = { - @Index(name = "idx_terminal_external_bat", columnList = "terminalId, externalKey") + @Index(name = "idx_terminal_external_EnqActivite", columnList = "terminalId, externalKey") } ) public class MobileDataEnqueteActivite extends BaseEntity implements Serializable { diff --git a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataUniteLogement.java b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataUniteLogement.java index b20eba0..00a0a28 100644 --- a/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataUniteLogement.java +++ b/src/main/java/io/gmss/fiscad/entities/metadata/MobileDataUniteLogement.java @@ -2,8 +2,7 @@ package io.gmss.fiscad.entities.metadata; import com.vladmihalcea.hibernate.type.json.JsonBinaryType; import io.gmss.fiscad.entities.BaseEntity; -import io.gmss.fiscad.paylaods.request.ParcellePayLoad; -import io.gmss.fiscad.paylaods.request.UniteLogementPaylaod; +import io.gmss.fiscad.paylaods.request.UniteLogementPayload; import jakarta.persistence.*; import lombok.Getter; import lombok.Setter; @@ -27,7 +26,7 @@ public class MobileDataUniteLogement extends BaseEntity implements Serializable private Long externalKey; @Type(JsonBinaryType.class) @Column(columnDefinition = "jsonb") - private UniteLogementPaylaod uniteLogementPaylaod ; + private UniteLogementPayload uniteLogementPayload ; @Column(columnDefinition = "boolean default false") private boolean traiter; } \ No newline at end of file diff --git a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteActivite.java b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteActivite.java index 89a1f11..62a9715 100644 --- a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteActivite.java +++ b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteActivite.java @@ -49,8 +49,8 @@ public class EnqueteActivite extends BaseEntity implements Serializable { @JsonDeserialize(using = LocalDateDeserializer.class) private LocalDate dateEnquete; - @Column(columnDefinition = "false") - private boolean estDeclarer; + //@Column(columnDefinition = "false") + private Boolean estDeclarer; private String nc; private Long ChiffreAffaire; private String NumeroRccm; diff --git a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteBatiment.java b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteBatiment.java index 9e5a340..6b9ccf2 100644 --- a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteBatiment.java +++ b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteBatiment.java @@ -41,20 +41,20 @@ public class EnqueteBatiment extends BaseEntity implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; - private float surfaceAuSol; + private Float surfaceAuSol; private String autreMenuisierie; private String autreMur; - private boolean sbee; + private Boolean sbee; private String numCompteurSbee; - private boolean soneb; + private Boolean soneb; private String numCompteurSoneb; - private int nbreLotUnite; - private int nbreUniteLocation; - private float surfaceLouee; - private int nbreMenage; - private int nbreHabitant; - private float valeurMensuelleLocation; - private int nbreMoisLocation; + private Integer nbreLotUnite; + private Integer nbreUniteLocation; + private Float surfaceLouee; + private Integer nbreMenage; + private Integer nbreHabitant; + private Float valeurMensuelleLocation; + private Integer nbreMoisLocation; private String autreCaracteristiquePhysique; @JsonFormat(pattern = "dd-MM-yyyy") @JsonDeserialize(using = LocalDateDeserializer.class) diff --git a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteUniteLogement.java b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteUniteLogement.java index 6596d78..65ee46d 100644 --- a/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteUniteLogement.java +++ b/src/main/java/io/gmss/fiscad/entities/rfu/metier/EnqueteUniteLogement.java @@ -40,17 +40,17 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; - private float surface; - private int nbrePiece; - private int nbreHabitant; - private int nbreMenage; + private Float surface; + private Integer nbrePiece; + private Integer nbreHabitant; + private Integer nbreMenage; private boolean enLocation; - private float montantMensuelLoyer; - private int nbreMoisEnLocation; - private float montantLocatifAnnuelDeclare; - private float surfaceLouee; - private boolean sbee; - private boolean soneb; + private Float montantMensuelLoyer; + private Integer nbreMoisEnLocation; + private Float montantLocatifAnnuelDeclare; + private Float surfaceLouee; + private Boolean sbee; + private Boolean soneb; private String numCompteurSbee; private String numCompteurSoneb; @JsonFormat(pattern = "dd-MM-yyyy") diff --git a/src/main/java/io/gmss/fiscad/implementations/synchronisation/RestaurationServiceImpl.java b/src/main/java/io/gmss/fiscad/implementations/synchronisation/RestaurationServiceImpl.java index a61ec94..c2a2033 100644 --- a/src/main/java/io/gmss/fiscad/implementations/synchronisation/RestaurationServiceImpl.java +++ b/src/main/java/io/gmss/fiscad/implementations/synchronisation/RestaurationServiceImpl.java @@ -4,7 +4,6 @@ import io.gmss.fiscad.entities.infocad.metier.Tpe; import io.gmss.fiscad.entities.metadata.*; import io.gmss.fiscad.entities.user.User; import io.gmss.fiscad.paylaods.request.*; -import io.gmss.fiscad.paylaods.request.BatimentPaylaod; //import io.gmss.fiscad.paylaods.response.restoration.BatimentPayload; import io.gmss.fiscad.paylaods.response.restoration.TailleObjet; import io.gmss.fiscad.repositories.metadata.*; @@ -21,10 +20,7 @@ import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Base64; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; @Service @@ -193,11 +189,11 @@ public List getParcelle(Long terminaleId, Long limit, Long offs // } @Override - public List getCaracateristiqueParcelle(Long terminaleId, Long limit, Long offset) { + public List getCaracateristiqueParcelle(Long terminaleId, Long limit, Long offset) { return mobileDataCaracteristiqueParcelleRepository.findAllByTerminalIdIgnoreIfTreatedPaged(terminaleId, limit, offset) .stream() - .map(MobileDataCaracteristiqueParcelle::getCaracteristiqueParcellePaylod) + .map(MobileDataCaracteristiqueParcelle::getCaracteristiqueParcellePayload) .filter(Objects::nonNull) .collect(Collectors.toList()); } @@ -209,11 +205,11 @@ public List getParcelle(Long terminaleId, Long limit, Long offs // } @Override - public List getCaracateristiqueBatiment(Long terminaleId, Long limit, Long offset) { + public List getCaracateristiqueBatiment(Long terminaleId, Long limit, Long offset) { return mobileDataCaracteristiqueBatimentRepository.findAllByTerminalIdIgnoreIfTreatedPaged(terminaleId, limit, offset) .stream() - .map(MobileDataCaracteristiqueBatiment::getCaracteristiqueBatimentPaylod) + .map(MobileDataCaracteristiqueBatiment::getCaracteristiqueBatimentPayload) .filter(Objects::nonNull) .collect(Collectors.toList()); } @@ -224,11 +220,11 @@ public List getParcelle(Long terminaleId, Long limit, Long offs // } @Override - public List getCaracateristiqueUniteLogement(Long terminaleId, Long limit, Long offset) { + public List getCaracateristiqueUniteLogement(Long terminaleId, Long limit, Long offset) { return mobileDataCaracteristiqueUniteLogementRepository.findAllByTerminalIdIgnoreIfTreatedPaged(terminaleId, limit, offset) .stream() - .map(MobileDataCaracteristiqueUniteLogement::getCaracteristiqueUniteLogementPaylod) + .map(MobileDataCaracteristiqueUniteLogement::getCaracteristiqueUniteLogementPayload) .filter(Objects::nonNull) .collect(Collectors.toList()); } @@ -254,18 +250,18 @@ public List getParcelle(Long terminaleId, Long limit, Long offs // } @Override - public List getUniteLogement(Long terminaleId, Long limit, Long offset) { + public List getUniteLogement(Long terminaleId, Long limit, Long offset) { return mobileDataUniteLogementRepository.findAllByTerminalIdIgnoreIfTreatedPaged(terminaleId, limit, offset) .stream() - .map(MobileDataUniteLogement::getUniteLogementPaylaod) + .map(MobileDataUniteLogement::getUniteLogementPayload) .filter(Objects::nonNull) .collect(Collectors.toList()); } private String getUploadFile(UploadPayLoad uploadPayLoad) { try { - Resource resource = fileStorageService.loadFileAsResource(uploadPayLoad.getName()); + Resource resource = fileStorageService.loadFileAsResource("",uploadPayLoad.getName()); final var bytes = resource.getInputStream().readAllBytes(); return Base64.getEncoder().encodeToString(bytes); } catch (Exception e) { @@ -276,6 +272,7 @@ public List getParcelle(Long terminaleId, Long limit, Long offs } + public List getTpeListByCurrentUser() { try { authentication = SecurityContextHolder.getContext().getAuthentication(); @@ -306,4 +303,30 @@ public List getParcelle(Long terminaleId, Long limit, Long offs .filter(Objects::nonNull) .collect(Collectors.toList()); } + + + @Override + public List getFiles(Long terminaleId, List ids) { + List uploadPayLoads = new ArrayList<>(); + if(ids == null || ids.isEmpty()){ + for(Long id : ids){ + uploadPayLoads.add(getUpload(terminaleId, id)); + } + } + return uploadPayLoads; + } + + @Override + public UploadPayLoad getUpload(Long terminaleId, Long externalKey) { + Optional optionalMobileDataUpload = mobileDataUploadRepository.findOneByTerminalIdAndExternalKey(terminaleId, externalKey); + if(optionalMobileDataUpload.isPresent()){ + MobileDataUpload mobileDataUpload = optionalMobileDataUpload.get(); + UploadPayLoad uploadPayLoad = mobileDataUpload.getUploadPayLoad(); + String fileData = getUploadFile(uploadPayLoad); + uploadPayLoad.setFileBase64(fileData); + return uploadPayLoad; + }else{ + return null; + } + } } diff --git a/src/main/java/io/gmss/fiscad/implementations/synchronisation/SynchronisationServiceImpl.java b/src/main/java/io/gmss/fiscad/implementations/synchronisation/SynchronisationServiceImpl.java index e64d173..0e7689a 100644 --- a/src/main/java/io/gmss/fiscad/implementations/synchronisation/SynchronisationServiceImpl.java +++ b/src/main/java/io/gmss/fiscad/implementations/synchronisation/SynchronisationServiceImpl.java @@ -1,18 +1,13 @@ package io.gmss.fiscad.implementations.synchronisation; -import io.gmss.fiscad.entities.decoupage.Commune; import io.gmss.fiscad.entities.decoupage.Nationalite; -import io.gmss.fiscad.entities.decoupage.Quartier; import io.gmss.fiscad.entities.infocad.metier.*; import io.gmss.fiscad.entities.infocad.parametre.*; import io.gmss.fiscad.entities.metadata.*; -import io.gmss.fiscad.entities.rfu.metier.*; import io.gmss.fiscad.entities.rfu.parametre.Caracteristique; import io.gmss.fiscad.entities.rfu.parametre.TypeCaracteristique; -import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu; import io.gmss.fiscad.entities.user.User; import io.gmss.fiscad.enums.*; -import io.gmss.fiscad.interfaces.infocad.metier.ParcelleGeomService; import io.gmss.fiscad.interfaces.synchronisation.SynchronisationService; import io.gmss.fiscad.interfaces.user.UserService; import io.gmss.fiscad.paylaods.request.*; @@ -21,30 +16,24 @@ import io.gmss.fiscad.repositories.decoupage.*; import io.gmss.fiscad.repositories.infocad.metier.*; import io.gmss.fiscad.repositories.infocad.parametre.*; import io.gmss.fiscad.repositories.metadata.*; -import io.gmss.fiscad.repositories.rfu.metier.*; import io.gmss.fiscad.repositories.rfu.parametre.CaracteristiqueRepository; import io.gmss.fiscad.repositories.rfu.parametre.TypeCaracteristiqueRepository; import io.gmss.fiscad.repositories.rfu.parametre.ZoneRfuRepository; -import io.gmss.fiscad.repositories.user.UserRepository; import io.gmss.fiscad.service.FileStorageService; import io.gmss.fiscad.service.worker.*; import jakarta.transaction.Transactional; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; -import org.springframework.data.jpa.repository.Modifying; import org.springframework.scheduling.annotation.Async; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; -import java.io.File; -import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Optional; -import java.util.function.ToDoubleBiFunction; @Service @RequiredArgsConstructor @@ -415,53 +404,53 @@ public class SynchronisationServiceImpl implements SynchronisationService { return syncResponses; } @Override - public List syncUniteLogement(List uniteLogementPaylaods) { + public List syncUniteLogement(List uniteLogementPayloads) { List syncResponses = new ArrayList<>(); - if (uniteLogementPaylaods == null) { + if (uniteLogementPayloads == null) { SyncResponse syncResponse = new SyncResponse(null, null, false, "Aucune unité de logement à synchroniser"); syncResponses.add(syncResponse); return syncResponses; } - syncResponses = saveMobileData(uniteLogementPaylaods, TypeObjet.UNITELOGEMENT); + syncResponses = saveMobileData(uniteLogementPayloads, TypeObjet.UNITELOGEMENT); return syncResponses; } @Override - public List syncCaracteristiqueBatiment(List caracteristiqueBatimentPaylods) { + public List syncCaracteristiqueBatiment(List caracteristiqueBatimentPayloads) { List syncResponses = new ArrayList<>(); - if (caracteristiqueBatimentPaylods == null) { + if (caracteristiqueBatimentPayloads == null) { SyncResponse syncResponse = new SyncResponse(null, null, false, "Aucune caracteristique de bâtiment à synchroniser"); syncResponses.add(syncResponse); return syncResponses; } - syncResponses = saveMobileData(caracteristiqueBatimentPaylods, TypeObjet.CARACTERISTIQUEBATIMENT); + syncResponses = saveMobileData(caracteristiqueBatimentPayloads, TypeObjet.CARACTERISTIQUEBATIMENT); return syncResponses; } @Override - public List syncCaracteristiqueUniteLogement(List caracteristiqueUniteLogementPaylods) { + public List syncCaracteristiqueUniteLogement(List caracteristiqueUniteLogementPayloads) { List syncResponses = new ArrayList<>(); - if (caracteristiqueUniteLogementPaylods == null) { + if (caracteristiqueUniteLogementPayloads == null) { SyncResponse syncResponse = new SyncResponse(null, null, false, "Aucune caracteristique d'unité de logement à synchroniser"); syncResponses.add(syncResponse); return syncResponses; } - syncResponses = saveMobileData(caracteristiqueUniteLogementPaylods, TypeObjet.CARACTERISTIQUEUNITELOGEMENT); + syncResponses = saveMobileData(caracteristiqueUniteLogementPayloads, TypeObjet.CARACTERISTIQUEUNITELOGEMENT); return syncResponses; } @Override - public List syncCaracteristiqueParcelle(List caracteristiqueParcellePaylods) { + public List syncCaracteristiqueParcelle(List caracteristiqueParcellePayloads) { List syncResponses = new ArrayList<>(); - if (caracteristiqueParcellePaylods == null) { + if (caracteristiqueParcellePayloads == null) { SyncResponse syncResponse = new SyncResponse(null, null, false, "Aucune caracteristique de parcelle à synchroniser"); syncResponses.add(syncResponse); return syncResponses; } - syncResponses = saveMobileData(caracteristiqueParcellePaylods, TypeObjet.CARACTERISTIQUEPARCELLE); + syncResponses = saveMobileData(caracteristiqueParcellePayloads, TypeObjet.CARACTERISTIQUEPARCELLE); return syncResponses; } @Override @@ -759,32 +748,32 @@ public class SynchronisationServiceImpl implements SynchronisationService { } case UNITELOGEMENT -> { payloads.forEach(payLoad -> { - UniteLogementPaylaod uniteLogementPaylaod = (UniteLogementPaylaod) payLoad; - //uniteLogementPaylaod.setIdBackend(null); + UniteLogementPayload uniteLogementPayload = (UniteLogementPayload) payLoad; + //uniteLogementPayload.setIdBackend(null); try { MobileDataUniteLogement mobileDataUniteLogement = new MobileDataUniteLogement(); Optional optionalMobileDataUniteLogement = Optional.empty(); - if (uniteLogementPaylaod.getIdBackend() != null) { - optionalMobileDataUniteLogement = mobileDataUniteLogementRepository.findById(uniteLogementPaylaod.getIdBackend()); + if (uniteLogementPayload.getIdBackend() != null) { + optionalMobileDataUniteLogement = mobileDataUniteLogementRepository.findById(uniteLogementPayload.getIdBackend()); if (optionalMobileDataUniteLogement.isPresent()) { mobileDataUniteLogement = optionalMobileDataUniteLogement.get(); } } else { - optionalMobileDataUniteLogement = mobileDataUniteLogementRepository.findFirstByTerminalIdAndExternalKey(uniteLogementPaylaod.getTerminalId(), uniteLogementPaylaod.getExternalKey()); + optionalMobileDataUniteLogement = mobileDataUniteLogementRepository.findFirstByTerminalIdAndExternalKey(uniteLogementPayload.getTerminalId(), uniteLogementPayload.getExternalKey()); if (optionalMobileDataUniteLogement.isPresent()) { mobileDataUniteLogement = optionalMobileDataUniteLogement.get(); } } - mobileDataUniteLogement.setTerminalId(uniteLogementPaylaod.getTerminalId()); - mobileDataUniteLogement.setExternalKey(uniteLogementPaylaod.getExternalKey()); + mobileDataUniteLogement.setTerminalId(uniteLogementPayload.getTerminalId()); + mobileDataUniteLogement.setExternalKey(uniteLogementPayload.getExternalKey()); mobileDataUniteLogement.setTraiter(false); - mobileDataUniteLogement.setUniteLogementPaylaod(uniteLogementPaylaod); + mobileDataUniteLogement.setUniteLogementPayload(uniteLogementPayload); mobileDataUniteLogement = mobileDataUniteLogementRepository.save(mobileDataUniteLogement); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation effectuée avec succès pour " + TypeObjet.UNITELOGEMENT.toString()); - syncResponse.setExternalKey(uniteLogementPaylaod.getExternalKey()); + syncResponse.setExternalKey(uniteLogementPayload.getExternalKey()); syncResponse.setSynchronise(true); syncResponse.setIdBackend(mobileDataUniteLogement.getId()); syncResponses.add(syncResponse); @@ -792,9 +781,9 @@ public class SynchronisationServiceImpl implements SynchronisationService { e.printStackTrace(); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation échouée pour " + TypeObjet.PIECE.toString()); - syncResponse.setExternalKey(uniteLogementPaylaod.getExternalKey()); + syncResponse.setExternalKey(uniteLogementPayload.getExternalKey()); syncResponse.setSynchronise(false); - syncResponse.setIdBackend(uniteLogementPaylaod.getIdBackend()); + syncResponse.setIdBackend(uniteLogementPayload.getIdBackend()); syncResponses.add(syncResponse); } }); @@ -885,32 +874,32 @@ public class SynchronisationServiceImpl implements SynchronisationService { } case CARACTERISTIQUEPARCELLE -> { payloads.forEach(payLoad -> { - CaracteristiqueParcellePaylod caracteristiqueParcellePaylod = (CaracteristiqueParcellePaylod) payLoad; - //caracteristiqueParcellePaylod.setIdBackend(null); + CaracteristiqueParcellePayload caracteristiqueParcellePayload = (CaracteristiqueParcellePayload) payLoad; + //caracteristiqueParcellePayload.setIdBackend(null); try { MobileDataCaracteristiqueParcelle mobileDataCaracteristiqueParcelle = new MobileDataCaracteristiqueParcelle(); Optional optionalMobileDataCaracteristiqueParcelle = Optional.empty(); - if (caracteristiqueParcellePaylod.getIdBackend() != null) { - optionalMobileDataCaracteristiqueParcelle = mobileDataCaracteristiqueParcelleRepository.findById(caracteristiqueParcellePaylod.getIdBackend()); + if (caracteristiqueParcellePayload.getIdBackend() != null) { + optionalMobileDataCaracteristiqueParcelle = mobileDataCaracteristiqueParcelleRepository.findById(caracteristiqueParcellePayload.getIdBackend()); if (optionalMobileDataCaracteristiqueParcelle.isPresent()) { mobileDataCaracteristiqueParcelle = optionalMobileDataCaracteristiqueParcelle.get(); } } else { - optionalMobileDataCaracteristiqueParcelle = mobileDataCaracteristiqueParcelleRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueParcellePaylod.getTerminalId(), caracteristiqueParcellePaylod.getExternalKey()); + optionalMobileDataCaracteristiqueParcelle = mobileDataCaracteristiqueParcelleRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueParcellePayload.getTerminalId(), caracteristiqueParcellePayload.getExternalKey()); if (optionalMobileDataCaracteristiqueParcelle.isPresent()) { mobileDataCaracteristiqueParcelle = optionalMobileDataCaracteristiqueParcelle.get(); } } - mobileDataCaracteristiqueParcelle.setTerminalId(caracteristiqueParcellePaylod.getTerminalId()); - mobileDataCaracteristiqueParcelle.setExternalKey(caracteristiqueParcellePaylod.getExternalKey()); + mobileDataCaracteristiqueParcelle.setTerminalId(caracteristiqueParcellePayload.getTerminalId()); + mobileDataCaracteristiqueParcelle.setExternalKey(caracteristiqueParcellePayload.getExternalKey()); mobileDataCaracteristiqueParcelle.setTraiter(false); - mobileDataCaracteristiqueParcelle.setCaracteristiqueParcellePaylod(caracteristiqueParcellePaylod); + mobileDataCaracteristiqueParcelle.setCaracteristiqueParcellePayload(caracteristiqueParcellePayload); mobileDataCaracteristiqueParcelle = mobileDataCaracteristiqueParcelleRepository.save(mobileDataCaracteristiqueParcelle); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation effectuée avec succès pour " + TypeObjet.CARACTERISTIQUEPARCELLE.toString()); - syncResponse.setExternalKey(caracteristiqueParcellePaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueParcellePayload.getExternalKey()); syncResponse.setSynchronise(true); syncResponse.setIdBackend(mobileDataCaracteristiqueParcelle.getId()); syncResponses.add(syncResponse); @@ -918,9 +907,9 @@ public class SynchronisationServiceImpl implements SynchronisationService { e.printStackTrace(); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation échouée pour " + TypeObjet.CARACTERISTIQUEPARCELLE.toString()); - syncResponse.setExternalKey(caracteristiqueParcellePaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueParcellePayload.getExternalKey()); syncResponse.setSynchronise(false); - syncResponse.setIdBackend(caracteristiqueParcellePaylod.getIdBackend()); + syncResponse.setIdBackend(caracteristiqueParcellePayload.getIdBackend()); syncResponses.add(syncResponse); } }); @@ -928,33 +917,33 @@ public class SynchronisationServiceImpl implements SynchronisationService { case CARACTERISTIQUEBATIMENT -> { payloads.forEach(payLoad -> { - CaracteristiqueBatimentPaylod caracteristiqueBatimentPaylod = (CaracteristiqueBatimentPaylod) payLoad; - //caracteristiqueBatimentPaylod.setIdBackend(null); + CaracteristiqueBatimentPayload caracteristiqueBatimentPayload = (CaracteristiqueBatimentPayload) payLoad; + //caracteristiqueBatimentPayload.setIdBackend(null); try { MobileDataCaracteristiqueBatiment mobileDataCaracteristiqueBatiment = new MobileDataCaracteristiqueBatiment(); Optional optionalMobileDataCaracteristiqueBatiment = Optional.empty(); - if (caracteristiqueBatimentPaylod.getIdBackend() != null) { - optionalMobileDataCaracteristiqueBatiment = mobileDataCaracteristiqueBatimentRepository.findById(caracteristiqueBatimentPaylod.getIdBackend()); + if (caracteristiqueBatimentPayload.getIdBackend() != null) { + optionalMobileDataCaracteristiqueBatiment = mobileDataCaracteristiqueBatimentRepository.findById(caracteristiqueBatimentPayload.getIdBackend()); if (optionalMobileDataCaracteristiqueBatiment.isPresent()) { mobileDataCaracteristiqueBatiment = optionalMobileDataCaracteristiqueBatiment.get(); } } else { - optionalMobileDataCaracteristiqueBatiment = mobileDataCaracteristiqueBatimentRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueBatimentPaylod.getTerminalId(), caracteristiqueBatimentPaylod.getExternalKey()); + optionalMobileDataCaracteristiqueBatiment = mobileDataCaracteristiqueBatimentRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueBatimentPayload.getTerminalId(), caracteristiqueBatimentPayload.getExternalKey()); if (optionalMobileDataCaracteristiqueBatiment.isPresent()) { mobileDataCaracteristiqueBatiment = optionalMobileDataCaracteristiqueBatiment.get(); } } - mobileDataCaracteristiqueBatiment.setTerminalId(caracteristiqueBatimentPaylod.getTerminalId()); - mobileDataCaracteristiqueBatiment.setExternalKey(caracteristiqueBatimentPaylod.getExternalKey()); + mobileDataCaracteristiqueBatiment.setTerminalId(caracteristiqueBatimentPayload.getTerminalId()); + mobileDataCaracteristiqueBatiment.setExternalKey(caracteristiqueBatimentPayload.getExternalKey()); mobileDataCaracteristiqueBatiment.setTraiter(false); - mobileDataCaracteristiqueBatiment.setCaracteristiqueBatimentPaylod(caracteristiqueBatimentPaylod); + mobileDataCaracteristiqueBatiment.setCaracteristiqueBatimentPayload(caracteristiqueBatimentPayload); mobileDataCaracteristiqueBatiment = mobileDataCaracteristiqueBatimentRepository.save(mobileDataCaracteristiqueBatiment); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation effectuée avec succès pour " + TypeObjet.CARACTERISTIQUEBATIMENT.toString()); - syncResponse.setExternalKey(caracteristiqueBatimentPaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueBatimentPayload.getExternalKey()); syncResponse.setSynchronise(true); syncResponse.setIdBackend(mobileDataCaracteristiqueBatiment.getId()); syncResponses.add(syncResponse); @@ -962,41 +951,41 @@ public class SynchronisationServiceImpl implements SynchronisationService { e.printStackTrace(); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation échouée pour " + TypeObjet.CARACTERISTIQUEBATIMENT.toString()); - syncResponse.setExternalKey(caracteristiqueBatimentPaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueBatimentPayload.getExternalKey()); syncResponse.setSynchronise(false); - syncResponse.setIdBackend(caracteristiqueBatimentPaylod.getIdBackend()); + syncResponse.setIdBackend(caracteristiqueBatimentPayload.getIdBackend()); syncResponses.add(syncResponse); } }); } case CARACTERISTIQUEUNITELOGEMENT -> { payloads.forEach(payLoad -> { - CaracteristiqueUniteLogementPaylod caracteristiqueUniteLogementPaylod = (CaracteristiqueUniteLogementPaylod) payLoad; - //caracteristiqueUniteLogementPaylod.setIdBackend(null); + CaracteristiqueUniteLogementPayload caracteristiqueUniteLogementPayload = (CaracteristiqueUniteLogementPayload) payLoad; + //caracteristiqueUniteLogementPayload.setIdBackend(null); try { MobileDataCaracteristiqueUniteLogement mobileDataCaracteristiqueUniteLogement = new MobileDataCaracteristiqueUniteLogement(); Optional optionalMobileDataCaracteristiqueUniteLogement = Optional.empty(); - if (caracteristiqueUniteLogementPaylod.getIdBackend() != null) { - optionalMobileDataCaracteristiqueUniteLogement = mobileDataCaracteristiqueUniteLogementRepository.findById(caracteristiqueUniteLogementPaylod.getIdBackend()); + if (caracteristiqueUniteLogementPayload.getIdBackend() != null) { + optionalMobileDataCaracteristiqueUniteLogement = mobileDataCaracteristiqueUniteLogementRepository.findById(caracteristiqueUniteLogementPayload.getIdBackend()); if (optionalMobileDataCaracteristiqueUniteLogement.isPresent()) { mobileDataCaracteristiqueUniteLogement = optionalMobileDataCaracteristiqueUniteLogement.get(); } } else { - optionalMobileDataCaracteristiqueUniteLogement = mobileDataCaracteristiqueUniteLogementRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueUniteLogementPaylod.getTerminalId(), caracteristiqueUniteLogementPaylod.getExternalKey()); + optionalMobileDataCaracteristiqueUniteLogement = mobileDataCaracteristiqueUniteLogementRepository.findFirstByTerminalIdAndExternalKey(caracteristiqueUniteLogementPayload.getTerminalId(), caracteristiqueUniteLogementPayload.getExternalKey()); if (optionalMobileDataCaracteristiqueUniteLogement.isPresent()) { mobileDataCaracteristiqueUniteLogement = optionalMobileDataCaracteristiqueUniteLogement.get(); } } - mobileDataCaracteristiqueUniteLogement.setTerminalId(caracteristiqueUniteLogementPaylod.getTerminalId()); - mobileDataCaracteristiqueUniteLogement.setExternalKey(caracteristiqueUniteLogementPaylod.getExternalKey()); + mobileDataCaracteristiqueUniteLogement.setTerminalId(caracteristiqueUniteLogementPayload.getTerminalId()); + mobileDataCaracteristiqueUniteLogement.setExternalKey(caracteristiqueUniteLogementPayload.getExternalKey()); mobileDataCaracteristiqueUniteLogement.setTraiter(false); - mobileDataCaracteristiqueUniteLogement.setCaracteristiqueUniteLogementPaylod(caracteristiqueUniteLogementPaylod); + mobileDataCaracteristiqueUniteLogement.setCaracteristiqueUniteLogementPayload(caracteristiqueUniteLogementPayload); mobileDataCaracteristiqueUniteLogement = mobileDataCaracteristiqueUniteLogementRepository.save(mobileDataCaracteristiqueUniteLogement); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation effectuée avec succès pour " + TypeObjet.CARACTERISTIQUEUNITELOGEMENT.toString()); - syncResponse.setExternalKey(caracteristiqueUniteLogementPaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueUniteLogementPayload.getExternalKey()); syncResponse.setSynchronise(true); syncResponse.setIdBackend(mobileDataCaracteristiqueUniteLogement.getId()); syncResponses.add(syncResponse); @@ -1004,9 +993,9 @@ public class SynchronisationServiceImpl implements SynchronisationService { e.printStackTrace(); SyncResponse syncResponse = new SyncResponse(); syncResponse.setObservation("Synchronisation échouée pour " + TypeObjet.CARACTERISTIQUEUNITELOGEMENT.toString()); - syncResponse.setExternalKey(caracteristiqueUniteLogementPaylod.getExternalKey()); + syncResponse.setExternalKey(caracteristiqueUniteLogementPayload.getExternalKey()); syncResponse.setSynchronise(false); - syncResponse.setIdBackend(caracteristiqueUniteLogementPaylod.getIdBackend()); + syncResponse.setIdBackend(caracteristiqueUniteLogementPayload.getIdBackend()); syncResponses.add(syncResponse); } }); diff --git a/src/main/java/io/gmss/fiscad/interfaces/synchronisation/RestaurationService.java b/src/main/java/io/gmss/fiscad/interfaces/synchronisation/RestaurationService.java index 41055f8..4951380 100644 --- a/src/main/java/io/gmss/fiscad/interfaces/synchronisation/RestaurationService.java +++ b/src/main/java/io/gmss/fiscad/interfaces/synchronisation/RestaurationService.java @@ -1,7 +1,6 @@ package io.gmss.fiscad.interfaces.synchronisation; import io.gmss.fiscad.entities.infocad.metier.Tpe; -import io.gmss.fiscad.entities.metadata.MobileDataEnquete; import io.gmss.fiscad.paylaods.request.*; import io.gmss.fiscad.paylaods.response.restoration.TailleObjet; //import io.gmss.fiscad.paylaods.response.restoration.*; @@ -38,22 +37,22 @@ public interface RestaurationService { List getUploads(Long terminaleId, Long limit, Long offset) ; //List getBatiment(Long terminalId); - public List getBatiment(Long terminaleId, Long limit, Long offset) + public List getBatiment(Long terminaleId, Long limit, Long offset); //List getEnqueteBatiment(Long terminalId); - public List getEnqueteBatiment(Long terminaleId, Long limit, Long offset) + public List getEnqueteBatiment(Long terminaleId, Long limit, Long offset); //List getCaracateristiqueParcelle(Long terminalId); - public List getCaracateristiqueParcelle(Long terminaleId, Long limit, Long offset) + public List getCaracateristiqueParcelle(Long terminaleId, Long limit, Long offset); //List getCaracateristiqueBatiment(Long terminalId); - public List getCaracateristiqueBatiment(Long terminaleId, Long limit, Long offset) + public List getCaracateristiqueBatiment(Long terminaleId, Long limit, Long offset); //List getCaracateristiqueUniteLogement(Long terminalId); - public List getCaracateristiqueUniteLogement(Long terminaleId, Long limit, Long offset); + public List getCaracateristiqueUniteLogement(Long terminaleId, Long limit, Long offset); //List getEnqueteUniteLogement(Long terminalId); public List getEnqueteUniteLogement(Long terminaleId, Long limit, Long offset); @@ -61,11 +60,15 @@ public interface RestaurationService { //List getUniteLogement(Long terminalId); - public List getUniteLogement(Long terminaleId, Long limit, Long offset) + public List getUniteLogement(Long terminaleId, Long limit, Long offset); public List getTpeListByCurrentUser(); TailleObjet getTailleObjetByTerminalId(Long terminalId); + + List getFiles(Long terminaleId, List ids); + UploadPayLoad getUpload(Long terminaleId, Long externalKey); + } \ No newline at end of file diff --git a/src/main/java/io/gmss/fiscad/interfaces/synchronisation/SynchronisationService.java b/src/main/java/io/gmss/fiscad/interfaces/synchronisation/SynchronisationService.java index 0db4db6..9abcd82 100755 --- a/src/main/java/io/gmss/fiscad/interfaces/synchronisation/SynchronisationService.java +++ b/src/main/java/io/gmss/fiscad/interfaces/synchronisation/SynchronisationService.java @@ -1,7 +1,5 @@ package io.gmss.fiscad.interfaces.synchronisation; -import io.gmss.fiscad.entities.infocad.metier.Upload; -import io.gmss.fiscad.entities.metadata.MobileDataUpload; import io.gmss.fiscad.paylaods.request.*; import io.gmss.fiscad.paylaods.response.ReferencesSyncResponses; import io.gmss.fiscad.paylaods.response.SyncEnqueteAllDataResponse; @@ -23,13 +21,13 @@ public interface SynchronisationService { public List syncBatiment(List batimentPaylaods); - public List syncUniteLogement(List uniteLogementPaylaods); + public List syncUniteLogement(List uniteLogementPayloads); - public List syncCaracteristiqueBatiment(List caracteristiqueBatimentPaylods); + public List syncCaracteristiqueBatiment(List caracteristiqueBatimentPayloads); - public List syncCaracteristiqueParcelle(List caracteristiqueParcellePaylods); + public List syncCaracteristiqueParcelle(List caracteristiqueParcellePayloads); - public List syncCaracteristiqueUniteLogement(List caracteristiqueUniteLogementPaylods); + public List syncCaracteristiqueUniteLogement(List caracteristiqueUniteLogementPayloads); public List syncMembreGroupe(List membreGroupePayLoads); diff --git a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPaylod.java b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPayload.java similarity index 89% rename from src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPaylod.java rename to src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPayload.java index 04d20ba..49b4ce8 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPaylod.java +++ b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueBatimentPayload.java @@ -3,7 +3,7 @@ package io.gmss.fiscad.paylaods.request; import lombok.Data; @Data -public class CaracteristiqueBatimentPaylod { +public class CaracteristiqueBatimentPayload { private Long idBackend; private Long externalKey; private boolean synchronise; @@ -18,7 +18,7 @@ public class CaracteristiqueBatimentPaylod { @Override public String toString() { - return "CaracteristiqueBatimentPaylod{" + + return "CaracteristiqueBatimentPayload{" + "idBackend=" + idBackend + ", externalKey=" + externalKey + ", synchronise=" + synchronise + diff --git a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePaylod.java b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePayload.java similarity index 88% rename from src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePaylod.java rename to src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePayload.java index bb116bb..aec9498 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePaylod.java +++ b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueParcellePayload.java @@ -3,7 +3,7 @@ package io.gmss.fiscad.paylaods.request; import lombok.Data; @Data -public class CaracteristiqueParcellePaylod { +public class CaracteristiqueParcellePayload { private Long idBackend; private Long externalKey; private Long terminalId; diff --git a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPaylod.java b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPayload.java similarity index 88% rename from src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPaylod.java rename to src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPayload.java index f67cd8a..7557afe 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPaylod.java +++ b/src/main/java/io/gmss/fiscad/paylaods/request/CaracteristiqueUniteLogementPayload.java @@ -3,7 +3,7 @@ package io.gmss.fiscad.paylaods.request; import lombok.Data; @Data -public class CaracteristiqueUniteLogementPaylod { +public class CaracteristiqueUniteLogementPayload { private Long idBackend; private Long externalKey; private Long terminalId; diff --git a/src/main/java/io/gmss/fiscad/paylaods/request/ParcellePayLoad.java b/src/main/java/io/gmss/fiscad/paylaods/request/ParcellePayLoad.java index 3c11bdd..af3d074 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/request/ParcellePayLoad.java +++ b/src/main/java/io/gmss/fiscad/paylaods/request/ParcellePayLoad.java @@ -25,7 +25,7 @@ public class ParcellePayLoad { ///////////////////////////////// private Long typeDomaineId; - private Long numeroProvisoire; + private String numeroProvisoire; private Long blocId; private String situationGeographique; private String autreNumeroTitreFoncier; diff --git a/src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPaylaod.java b/src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPayload.java similarity index 91% rename from src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPaylaod.java rename to src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPayload.java index f89325d..42bade0 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPaylaod.java +++ b/src/main/java/io/gmss/fiscad/paylaods/request/UniteLogementPayload.java @@ -3,7 +3,7 @@ package io.gmss.fiscad.paylaods.request; import lombok.Data; @Data -public class UniteLogementPaylaod { +public class UniteLogementPayload { private Long idBackend; private Long externalKey; private Long terminalId; diff --git a/src/main/java/io/gmss/fiscad/paylaods/response/restoration/TailleObjet.java b/src/main/java/io/gmss/fiscad/paylaods/response/restoration/TailleObjet.java index a8802cf..30aa2d6 100644 --- a/src/main/java/io/gmss/fiscad/paylaods/response/restoration/TailleObjet.java +++ b/src/main/java/io/gmss/fiscad/paylaods/response/restoration/TailleObjet.java @@ -7,6 +7,13 @@ public interface TailleObjet { public int getPersonne(); public int getMembregroupe(); public int getActeurconcerne(); + public int getEnquetebatiment(); + public int getBatiment(); + public int getUnitelogement(); + public int getEnqueteunitelogement(); + public int getCaracteristiqueparcelle(); + public int getCaracteristiquebatiment(); + public int getCaracteristiqueunitelogement(); public int getUpload(); } diff --git a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataBatimentRepository.java b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataBatimentRepository.java index f9fb453..689048e 100755 --- a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataBatimentRepository.java +++ b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataBatimentRepository.java @@ -15,7 +15,7 @@ public interface MobileDataBatimentRepository extends JpaRepository findFirstByTerminalIdAndExternalKey(Long terminalId,Long ExternalKey); List findAllByTraiterIsFalseAndTerminalId(Long TerminalId); - @Query(value = "SELECT * FROM mobile_data_batiment WHERE CAST(batiment_paylaod ->>'terminalId' AS BIGINT) = :terminalId limit :limit offset :offset", nativeQuery = true) + @Query(value = "SELECT * FROM mobile_data_batiment WHERE CAST(batiment_payload ->>'terminalId' AS BIGINT) = :terminalId limit :limit offset :offset", nativeQuery = true) List findAllByTerminalIdIgnoreIfTreatedPaged(@Param("terminalId") Long terminalId, @Param("limit") Long limit, @Param("offset") Long offset); } diff --git a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataEnqueteRepository.java b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataEnqueteRepository.java index 26c9d52..d6e7964 100755 --- a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataEnqueteRepository.java +++ b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataEnqueteRepository.java @@ -29,6 +29,15 @@ public interface MobileDataEnqueteRepository extends JpaRepository>'terminalId' AS BIGINT) = :terminalId) as acteurconcerne," + " (SELECT count(*) FROM mobile_data_membre_groupe WHERE CAST(membre_groupe_pay_load->>'terminalId' AS BIGINT) = :terminalId) as membregroupe," + " (SELECT count(*) FROM mobile_data_piece WHERE CAST(piece_pay_load->>'terminalId' AS BIGINT) = :terminalId) as piece," + + + " (SELECT count(*) FROM mobile_data_batiment WHERE CAST(batiment_payload->>'terminalId' AS BIGINT) = :terminalId) as batiment," + + " (SELECT count(*) FROM mobile_data_enquete_batiment WHERE CAST(enquete_batiment_payload->>'terminalId' AS BIGINT) = :terminalId) as enquetebatiment," + + " (SELECT count(*) FROM mobile_data_enquete_unite_logement WHERE CAST(enquete_unite_logement_payload->>'terminalId' AS BIGINT) = :terminalId) as enqueteunitelogement," + + " (SELECT count(*) FROM mobile_data_unite_logement WHERE CAST(unite_logement_payload->>'terminalId' AS BIGINT) = :terminalId) as unitelogement," + + " (SELECT count(*) FROM mobile_data_caracteristique_unite_logement WHERE CAST(caracteristique_unite_logement_payload->>'terminalId' AS BIGINT) = :terminalId) as caracteristiqueunitelogement," + + " (SELECT count(*) FROM mobile_data_caracteristique_batiment WHERE CAST(caracteristique_batiment_payload->>'terminalId' AS BIGINT) = :terminalId) as caracteristiquebatiment," + + " (SELECT count(*) FROM mobile_data_caracteristique_parcelle WHERE CAST(caracteristique_parcelle_payload->>'terminalId' AS BIGINT) = :terminalId) as caracteristiqueparcelle," + + " (SELECT count(*) FROM mobile_data_upload WHERE CAST(upload_pay_load->>'terminalId' AS BIGINT) = :terminalId) as upload", nativeQuery = true) TailleObjet calculateTailleEnqueteData(@Param("terminalId") Long terminalId); } diff --git a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUniteLogementRepository.java b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUniteLogementRepository.java index 6ebdb6d..24af0fa 100755 --- a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUniteLogementRepository.java +++ b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUniteLogementRepository.java @@ -15,7 +15,7 @@ public interface MobileDataUniteLogementRepository extends JpaRepository findByUniteLogementPaylaod_TerminalIdAndUniteLogementPaylaod_ExternalKey(Long terminalId,Long externalKey); List findAllByTraiterIsFalseAndTerminalId(Long TerminalId); Optional findFirstByTerminalIdAndExternalKey(Long terminalId, Long ExternalKey); - @Query(value = "SELECT * FROM mobile_data_unite_logement WHERE CAST(unite_logement_paylaod ->>'terminalId' AS BIGINT) = :terminalId limit :limit offset :offset", nativeQuery = true) + @Query(value = "SELECT * FROM mobile_data_unite_logement WHERE CAST(unite_logement_payload ->>'terminalId' AS BIGINT) = :terminalId limit :limit offset :offset", nativeQuery = true) List findAllByTerminalIdIgnoreIfTreatedPaged(@Param("terminalId") Long terminalId, @Param("limit") Long limit, @Param("offset") Long offset); } diff --git a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUploadRepository.java b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUploadRepository.java index 6815a22..0f61114 100755 --- a/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUploadRepository.java +++ b/src/main/java/io/gmss/fiscad/repositories/metadata/MobileDataUploadRepository.java @@ -16,4 +16,6 @@ public interface MobileDataUploadRepository extends JpaRepository findAllByTerminalIdIgnoreIfTreatedPaged(@Param("terminalId") Long terminalId, @Param("limit") Long limit, @Param("offset") Long offset); + + Optional findOneByTerminalIdAndExternalKey(Long terminaleId, Long externalKey); } diff --git a/src/main/java/io/gmss/fiscad/service/FileStorageService.java b/src/main/java/io/gmss/fiscad/service/FileStorageService.java index b97fdf2..16e5c5b 100644 --- a/src/main/java/io/gmss/fiscad/service/FileStorageService.java +++ b/src/main/java/io/gmss/fiscad/service/FileStorageService.java @@ -100,4 +100,26 @@ public class FileStorageService { } } + + public Resource loadFileAsResource(String subDir, String fileName) { + try { + Path targetDir = this.fileStorageLocation.resolve(subDir).normalize(); + Path filePath = targetDir.resolve(fileName).normalize(); + + // 🔐 Sécurité : interdit les accès en dehors du dossier cible + if (!filePath.startsWith(targetDir)) { + throw new SecurityException("Tentative d'accès non autorisée : " + fileName); + } + + Resource resource = new UrlResource(filePath.toUri()); + if (resource.exists() && resource.isReadable()) { + return resource; + } else { + throw new MyFileNotFoundException("Fichier introuvable : " + fileName); + } + } catch (MalformedURLException e) { + throw new MyFileNotFoundException("Fichier introuvable : " + fileName, e); + } + } + } diff --git a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueBatimentAsyncWorker.java b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueBatimentAsyncWorker.java index 08dc1d9..d447ae2 100644 --- a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueBatimentAsyncWorker.java +++ b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueBatimentAsyncWorker.java @@ -1,30 +1,19 @@ package io.gmss.fiscad.service.worker; import io.gmss.fiscad.entities.infocad.metier.Enquete; -import io.gmss.fiscad.entities.infocad.metier.Parcelle; import io.gmss.fiscad.entities.infocad.metier.Tpe; -import io.gmss.fiscad.entities.infocad.parametre.Bloc; import io.gmss.fiscad.entities.metadata.MobileDataCaracteristiqueBatiment; -import io.gmss.fiscad.entities.metadata.MobileDataEnquete; import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueBatiment; import io.gmss.fiscad.entities.rfu.metier.EnqueteBatiment; import io.gmss.fiscad.entities.rfu.parametre.Caracteristique; -import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu; -import io.gmss.fiscad.entities.user.User; import io.gmss.fiscad.enums.TypeObjet; -import io.gmss.fiscad.paylaods.request.CaracteristiqueBatimentPaylod; -import io.gmss.fiscad.paylaods.request.EnquetePayLoad; +import io.gmss.fiscad.paylaods.request.CaracteristiqueBatimentPayload; import io.gmss.fiscad.repositories.infocad.metier.*; -import io.gmss.fiscad.repositories.infocad.parametre.BlocRepository; import io.gmss.fiscad.repositories.metadata.MobileDataCaracteristiqueBatimentRepository; -import io.gmss.fiscad.repositories.metadata.MobileDataEnqueteRepository; import io.gmss.fiscad.repositories.rfu.metier.*; import io.gmss.fiscad.repositories.rfu.parametre.CaracteristiqueRepository; -import io.gmss.fiscad.repositories.rfu.parametre.ZoneRfuRepository; -import io.gmss.fiscad.repositories.user.UserRepository; import io.gmss.fiscad.service.LogService; import lombok.RequiredArgsConstructor; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Optional; @@ -41,24 +30,24 @@ public class CaracteristiqueBatimentAsyncWorker { private final LogService logService; // @Async("caracteristiqueBatimentExecutor") public void traitementAsyncCaracteristiqueBatiment(MobileDataCaracteristiqueBatiment mobileDataCaracteristiqueBatiment) { - CaracteristiqueBatimentPaylod caracteristiqueBatimentPaylod = mobileDataCaracteristiqueBatiment.getCaracteristiqueBatimentPaylod(); + CaracteristiqueBatimentPayload caracteristiqueBatimentPayload = mobileDataCaracteristiqueBatiment.getCaracteristiqueBatimentPayload(); try { - if (caracteristiqueBatimentPaylod.getTerminalId() == null) { + if (caracteristiqueBatimentPayload.getTerminalId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEBATIMENT, "Problème de terminal", "terminal non fourni : ", mobileDataCaracteristiqueBatiment.getId()); return; } else { - Optional optionalTpe = tpeRepository.findById(caracteristiqueBatimentPaylod.getTerminalId()); + Optional optionalTpe = tpeRepository.findById(caracteristiqueBatimentPayload.getTerminalId()); if (optionalTpe.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEBATIMENT, "Problème de terminal", "terminal inexistant : ", mobileDataCaracteristiqueBatiment.getId()); return; } } - if (caracteristiqueBatimentPaylod.getEnqueteBatimentId() == null) { + if (caracteristiqueBatimentPayload.getEnqueteBatimentId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEBATIMENT, "Problème de enquete batiment", "enquete non fourni : ", mobileDataCaracteristiqueBatiment.getId()); return; } else { - Optional optionalEnqueteBatiment = enqueteBatimentRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPaylod.getEnqueteBatimentId(), caracteristiqueBatimentPaylod.getTerminalId()); + Optional optionalEnqueteBatiment = enqueteBatimentRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPayload.getEnqueteBatimentId(), caracteristiqueBatimentPayload.getTerminalId()); if (optionalEnqueteBatiment.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEBATIMENT, "Problème de enquete batiment", "L'enquete précisée n'existe pas : ", mobileDataCaracteristiqueBatiment.getId()); return; @@ -66,7 +55,7 @@ public class CaracteristiqueBatimentAsyncWorker { } CaracteristiqueBatiment caracteristiqueBatiment = new CaracteristiqueBatiment(); caracteristiqueBatiment.setMobileDataId(mobileDataCaracteristiqueBatiment.getId()); - caracteristiqueBatiment = getCaracteristiqueBatimentFromCaracteristiqueBatimentPayLoad(caracteristiqueBatiment, caracteristiqueBatimentPaylod); + caracteristiqueBatiment = getCaracteristiqueBatimentFromCaracteristiqueBatimentPayLoad(caracteristiqueBatiment, caracteristiqueBatimentPayload); caracteristiqueBatimentRepository.save(caracteristiqueBatiment); mobileDataCaracteristiqueBatiment.setTraiter(true); mobileDataCaracteristiqueBatimentRepository.save(mobileDataCaracteristiqueBatiment); @@ -75,35 +64,35 @@ public class CaracteristiqueBatimentAsyncWorker { } } - private CaracteristiqueBatiment getCaracteristiqueBatimentFromCaracteristiqueBatimentPayLoad(CaracteristiqueBatiment caracteristiqueBatiment, CaracteristiqueBatimentPaylod caracteristiqueBatimentPaylod) { + private CaracteristiqueBatiment getCaracteristiqueBatimentFromCaracteristiqueBatimentPayLoad(CaracteristiqueBatiment caracteristiqueBatiment, CaracteristiqueBatimentPayload caracteristiqueBatimentPayload) { - if (caracteristiqueBatimentPaylod.getEnqueteBatimentId() != null) { - Optional optionalEnqueteBatiment = enqueteBatimentRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPaylod.getEnqueteBatimentId(), caracteristiqueBatimentPaylod.getTerminalId()); + if (caracteristiqueBatimentPayload.getEnqueteBatimentId() != null) { + Optional optionalEnqueteBatiment = enqueteBatimentRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPayload.getEnqueteBatimentId(), caracteristiqueBatimentPayload.getTerminalId()); caracteristiqueBatiment.setEnqueteBatiment(optionalEnqueteBatiment.orElse(null)); } - if (caracteristiqueBatimentPaylod.getCaracteristiqueId() != null) { - Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueBatimentPaylod.getCaracteristiqueId()); + if (caracteristiqueBatimentPayload.getCaracteristiqueId() != null) { + Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueBatimentPayload.getCaracteristiqueId()); caracteristiqueBatiment.setCaracteristique(optionalCaracteristique.orElse(null)); } - if (caracteristiqueBatimentPaylod.getTerminalId() != null) { - Optional optionalTpe = tpeRepository.findById(caracteristiqueBatimentPaylod.getTerminalId()); + if (caracteristiqueBatimentPayload.getTerminalId() != null) { + Optional optionalTpe = tpeRepository.findById(caracteristiqueBatimentPayload.getTerminalId()); caracteristiqueBatiment.setTerminal(optionalTpe.orElse(null)); } - if (caracteristiqueBatimentPaylod.getTerminalId() != null && caracteristiqueBatimentPaylod.getEnqueteId() != null) { - Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPaylod.getEnqueteId(), caracteristiqueBatimentPaylod.getTerminalId()); + if (caracteristiqueBatimentPayload.getTerminalId() != null && caracteristiqueBatimentPayload.getEnqueteId() != null) { + Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueBatimentPayload.getEnqueteId(), caracteristiqueBatimentPayload.getTerminalId()); if (optionalEnquete.isPresent()) { caracteristiqueBatiment.setEnqueteId(optionalEnquete.get().getId()); } } - caracteristiqueBatiment.setEnqueteBatimentExternalKey(caracteristiqueBatimentPaylod.getEnqueteBatimentId()); - caracteristiqueBatiment.setEnqueteExternalKey(caracteristiqueBatimentPaylod.getEnqueteId()); - caracteristiqueBatiment.setValeur(caracteristiqueBatimentPaylod.getValeur()); - caracteristiqueBatiment.setExternalKey(caracteristiqueBatimentPaylod.getExternalKey()); + caracteristiqueBatiment.setEnqueteBatimentExternalKey(caracteristiqueBatimentPayload.getEnqueteBatimentId()); + caracteristiqueBatiment.setEnqueteExternalKey(caracteristiqueBatimentPayload.getEnqueteId()); + caracteristiqueBatiment.setValeur(caracteristiqueBatimentPayload.getValeur()); + caracteristiqueBatiment.setExternalKey(caracteristiqueBatimentPayload.getExternalKey()); return caracteristiqueBatiment; } diff --git a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueParcelleAsyncWorker.java b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueParcelleAsyncWorker.java index f556186..c976db4 100644 --- a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueParcelleAsyncWorker.java +++ b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueParcelleAsyncWorker.java @@ -1,29 +1,18 @@ package io.gmss.fiscad.service.worker; import io.gmss.fiscad.entities.infocad.metier.Enquete; -import io.gmss.fiscad.entities.infocad.metier.Parcelle; import io.gmss.fiscad.entities.infocad.metier.Tpe; -import io.gmss.fiscad.entities.infocad.parametre.Bloc; import io.gmss.fiscad.entities.metadata.MobileDataCaracteristiqueParcelle; -import io.gmss.fiscad.entities.metadata.MobileDataEnquete; import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueParcelle; import io.gmss.fiscad.entities.rfu.parametre.Caracteristique; -import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu; -import io.gmss.fiscad.entities.user.User; import io.gmss.fiscad.enums.TypeObjet; -import io.gmss.fiscad.paylaods.request.CaracteristiqueParcellePaylod; -import io.gmss.fiscad.paylaods.request.EnquetePayLoad; +import io.gmss.fiscad.paylaods.request.CaracteristiqueParcellePayload; import io.gmss.fiscad.repositories.infocad.metier.*; -import io.gmss.fiscad.repositories.infocad.parametre.BlocRepository; import io.gmss.fiscad.repositories.metadata.MobileDataCaracteristiqueParcelleRepository; -import io.gmss.fiscad.repositories.metadata.MobileDataEnqueteRepository; import io.gmss.fiscad.repositories.rfu.metier.*; import io.gmss.fiscad.repositories.rfu.parametre.CaracteristiqueRepository; -import io.gmss.fiscad.repositories.rfu.parametre.ZoneRfuRepository; -import io.gmss.fiscad.repositories.user.UserRepository; import io.gmss.fiscad.service.LogService; import lombok.RequiredArgsConstructor; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Optional; @@ -39,25 +28,25 @@ public class CaracteristiqueParcelleAsyncWorker { private final LogService logService; //@Async("caracteristiqueParcelleExecutor") public void traitementAsyncCaracteristiqueParcelle(MobileDataCaracteristiqueParcelle mobileDataCaracteristiqueParcelle) { - CaracteristiqueParcellePaylod caracteristiqueParcellePaylod = mobileDataCaracteristiqueParcelle.getCaracteristiqueParcellePaylod(); + CaracteristiqueParcellePayload caracteristiqueParcellePayload = mobileDataCaracteristiqueParcelle.getCaracteristiqueParcellePayload(); try { - if (caracteristiqueParcellePaylod.getTerminalId() == null) { + if (caracteristiqueParcellePayload.getTerminalId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEPARCELLE, "Problème de terminal", "terminal non fourni : ", mobileDataCaracteristiqueParcelle.getId()); return; } else { - Optional optionalTpe = tpeRepository.findById(caracteristiqueParcellePaylod.getTerminalId()); + Optional optionalTpe = tpeRepository.findById(caracteristiqueParcellePayload.getTerminalId()); if (optionalTpe.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEPARCELLE, "Problème de terminal", "terminal inexistant : ", mobileDataCaracteristiqueParcelle.getId()); return; } } - if (caracteristiqueParcellePaylod.getEnqueteId() == null) { + if (caracteristiqueParcellePayload.getEnqueteId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEPARCELLE, "Problème de enquete", "enquete non fourni : ", mobileDataCaracteristiqueParcelle.getId()); return; } else { - Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueParcellePaylod.getEnqueteId(), caracteristiqueParcellePaylod.getTerminalId()); + Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueParcellePayload.getEnqueteId(), caracteristiqueParcellePayload.getTerminalId()); if (optionalEnquete.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEPARCELLE, "Problème de enquete", "L'enquete précisée n'existe pas : ", mobileDataCaracteristiqueParcelle.getId()); return; @@ -65,7 +54,7 @@ public class CaracteristiqueParcelleAsyncWorker { } CaracteristiqueParcelle caracteristiqueParcelle = new CaracteristiqueParcelle(); caracteristiqueParcelle.setMobileDataId(mobileDataCaracteristiqueParcelle.getId()); - caracteristiqueParcelle = getCaracteristiqueParcelleFromCaracteristiqueParcellePayLoad(caracteristiqueParcelle, caracteristiqueParcellePaylod); + caracteristiqueParcelle = getCaracteristiqueParcelleFromCaracteristiqueParcellePayLoad(caracteristiqueParcelle, caracteristiqueParcellePayload); caracteristiqueParcelleRepository.save(caracteristiqueParcelle); mobileDataCaracteristiqueParcelle.setTraiter(true); mobileDataCaracteristiqueParcelleRepository.save(mobileDataCaracteristiqueParcelle); @@ -74,27 +63,27 @@ public class CaracteristiqueParcelleAsyncWorker { } } - private CaracteristiqueParcelle getCaracteristiqueParcelleFromCaracteristiqueParcellePayLoad(CaracteristiqueParcelle caracteristiqueParcelle, CaracteristiqueParcellePaylod caracteristiqueParcellePaylod) { + private CaracteristiqueParcelle getCaracteristiqueParcelleFromCaracteristiqueParcellePayLoad(CaracteristiqueParcelle caracteristiqueParcelle, CaracteristiqueParcellePayload caracteristiqueParcellePayload) { - if (caracteristiqueParcellePaylod.getEnqueteId() != null) { - Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueParcellePaylod.getEnqueteId(), caracteristiqueParcellePaylod.getTerminalId()); + if (caracteristiqueParcellePayload.getEnqueteId() != null) { + Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueParcellePayload.getEnqueteId(), caracteristiqueParcellePayload.getTerminalId()); caracteristiqueParcelle.setEnquete(optionalEnquete.orElse(null)); } - if (caracteristiqueParcellePaylod.getCaracteristiqueId() != null) { - Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueParcellePaylod.getCaracteristiqueId()); + if (caracteristiqueParcellePayload.getCaracteristiqueId() != null) { + Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueParcellePayload.getCaracteristiqueId()); caracteristiqueParcelle.setCaracteristique(optionalCaracteristique.orElse(null)); } - if (caracteristiqueParcellePaylod.getTerminalId() != null) { - Optional optionalTpe = tpeRepository.findById(caracteristiqueParcellePaylod.getTerminalId()); + if (caracteristiqueParcellePayload.getTerminalId() != null) { + Optional optionalTpe = tpeRepository.findById(caracteristiqueParcellePayload.getTerminalId()); caracteristiqueParcelle.setTerminal(optionalTpe.orElse(null)); } - caracteristiqueParcelle.setEnqueteExternalKey(caracteristiqueParcellePaylod.getEnqueteId()); - caracteristiqueParcelle.setValeur(caracteristiqueParcellePaylod.getValeur()); - caracteristiqueParcelle.setExternalKey(caracteristiqueParcellePaylod.getExternalKey()); + caracteristiqueParcelle.setEnqueteExternalKey(caracteristiqueParcellePayload.getEnqueteId()); + caracteristiqueParcelle.setValeur(caracteristiqueParcellePayload.getValeur()); + caracteristiqueParcelle.setExternalKey(caracteristiqueParcellePayload.getExternalKey()); return caracteristiqueParcelle; } diff --git a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueUniteLogementAsyncWorker.java b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueUniteLogementAsyncWorker.java index 90fe988..33a7518 100644 --- a/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueUniteLogementAsyncWorker.java +++ b/src/main/java/io/gmss/fiscad/service/worker/CaracteristiqueUniteLogementAsyncWorker.java @@ -2,28 +2,21 @@ package io.gmss.fiscad.service.worker; import io.gmss.fiscad.entities.infocad.metier.Enquete; import io.gmss.fiscad.entities.infocad.metier.Tpe; -import io.gmss.fiscad.entities.metadata.MobileDataCaracteristiqueBatiment; import io.gmss.fiscad.entities.metadata.MobileDataCaracteristiqueUniteLogement; -import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueBatiment; import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueUniteLogement; -import io.gmss.fiscad.entities.rfu.metier.EnqueteBatiment; import io.gmss.fiscad.entities.rfu.metier.EnqueteUniteLogement; import io.gmss.fiscad.entities.rfu.parametre.Caracteristique; import io.gmss.fiscad.enums.TypeObjet; -import io.gmss.fiscad.paylaods.request.CaracteristiqueBatimentPaylod; -import io.gmss.fiscad.paylaods.request.CaracteristiqueUniteLogementPaylod; +import io.gmss.fiscad.paylaods.request.CaracteristiqueUniteLogementPayload; import io.gmss.fiscad.repositories.infocad.metier.EnqueteRepository; import io.gmss.fiscad.repositories.infocad.metier.TpeRepository; import io.gmss.fiscad.repositories.metadata.MobileDataCaracteristiqueBatimentRepository; import io.gmss.fiscad.repositories.metadata.MobileDataCaracteristiqueUniteLogementRepository; -import io.gmss.fiscad.repositories.rfu.metier.CaracteristiqueBatimentRepository; import io.gmss.fiscad.repositories.rfu.metier.CaracteristiqueUniteLogementRepository; -import io.gmss.fiscad.repositories.rfu.metier.EnqueteBatimentRepository; import io.gmss.fiscad.repositories.rfu.metier.EnqueteUniteLogementRepository; import io.gmss.fiscad.repositories.rfu.parametre.CaracteristiqueRepository; import io.gmss.fiscad.service.LogService; import lombok.RequiredArgsConstructor; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Optional; @@ -41,24 +34,24 @@ public class CaracteristiqueUniteLogementAsyncWorker { private final LogService logService; //@Async("caracteristiqueUniteLogementExecutor") public void traitementAsyncCaracteristiqueUniteLogement(MobileDataCaracteristiqueUniteLogement mobileDataCaracteristiqueUniteLogement) { - CaracteristiqueUniteLogementPaylod caracteristiqueUniteLogementPaylod = mobileDataCaracteristiqueUniteLogement.getCaracteristiqueUniteLogementPaylod(); + CaracteristiqueUniteLogementPayload caracteristiqueUniteLogementPayload = mobileDataCaracteristiqueUniteLogement.getCaracteristiqueUniteLogementPayload(); try { - if (caracteristiqueUniteLogementPaylod.getTerminalId() == null) { + if (caracteristiqueUniteLogementPayload.getTerminalId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEUNITELOGEMENT, "Problème de terminal", "terminal non fourni : ", mobileDataCaracteristiqueUniteLogement.getId()); return; } else { - Optional optionalTpe = tpeRepository.findById(caracteristiqueUniteLogementPaylod.getTerminalId()); + Optional optionalTpe = tpeRepository.findById(caracteristiqueUniteLogementPayload.getTerminalId()); if (optionalTpe.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEUNITELOGEMENT, "Problème de terminal", "terminal inexistant : ", mobileDataCaracteristiqueUniteLogement.getId()); return; } } - if (caracteristiqueUniteLogementPaylod.getEnqueteUniteLogementId() == null) { + if (caracteristiqueUniteLogementPayload.getEnqueteUniteLogementId() == null) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEUNITELOGEMENT, "Problème de enquete unite logement", "enquete non fourni : ", mobileDataCaracteristiqueUniteLogement.getId()); return; } else { - Optional optionalEnqueteUniteLogement = enqueteUniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPaylod.getEnqueteUniteLogementId(), caracteristiqueUniteLogementPaylod.getTerminalId()); + Optional optionalEnqueteUniteLogement = enqueteUniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPayload.getEnqueteUniteLogementId(), caracteristiqueUniteLogementPayload.getTerminalId()); if (optionalEnqueteUniteLogement.isEmpty()) { logService.logTraiementAsync(TypeObjet.CARACTERISTIQUEUNITELOGEMENT, "Problème de enquete unite logement", "L'enquete précisée n'existe pas : ", mobileDataCaracteristiqueUniteLogement.getId()); return; @@ -66,7 +59,7 @@ public class CaracteristiqueUniteLogementAsyncWorker { } CaracteristiqueUniteLogement caracteristiqueUniteLogement = new CaracteristiqueUniteLogement(); caracteristiqueUniteLogement.setMobileDataId(mobileDataCaracteristiqueUniteLogement.getId()); - caracteristiqueUniteLogement = getCaracteristiqueUniteLogementFromCaracteristiqueUniteLogementPayLoad(caracteristiqueUniteLogement, caracteristiqueUniteLogementPaylod); + caracteristiqueUniteLogement = getCaracteristiqueUniteLogementFromCaracteristiqueUniteLogementPayLoad(caracteristiqueUniteLogement, caracteristiqueUniteLogementPayload); caracteristiqueUniteLogementRepository.save(caracteristiqueUniteLogement); mobileDataCaracteristiqueUniteLogement.setTraiter(true); mobileDataCaracteristiqueUniteLogementRepository.save(mobileDataCaracteristiqueUniteLogement); @@ -75,32 +68,32 @@ public class CaracteristiqueUniteLogementAsyncWorker { } } - private CaracteristiqueUniteLogement getCaracteristiqueUniteLogementFromCaracteristiqueUniteLogementPayLoad(CaracteristiqueUniteLogement caracteristiqueUniteLogement, CaracteristiqueUniteLogementPaylod caracteristiqueUniteLogementPaylod) { + private CaracteristiqueUniteLogement getCaracteristiqueUniteLogementFromCaracteristiqueUniteLogementPayLoad(CaracteristiqueUniteLogement caracteristiqueUniteLogement, CaracteristiqueUniteLogementPayload caracteristiqueUniteLogementPayload) { - if (caracteristiqueUniteLogementPaylod.getEnqueteUniteLogementId() != null) { - Optional optionalEnqueteUniteLogement = enqueteUniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPaylod.getEnqueteUniteLogementId(), caracteristiqueUniteLogementPaylod.getTerminalId()); + if (caracteristiqueUniteLogementPayload.getEnqueteUniteLogementId() != null) { + Optional optionalEnqueteUniteLogement = enqueteUniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPayload.getEnqueteUniteLogementId(), caracteristiqueUniteLogementPayload.getTerminalId()); caracteristiqueUniteLogement.setEnqueteUniteLogement(optionalEnqueteUniteLogement.orElse(null)); } - if (caracteristiqueUniteLogementPaylod.getCaracteristiqueId() != null) { - Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueUniteLogementPaylod.getCaracteristiqueId()); + if (caracteristiqueUniteLogementPayload.getCaracteristiqueId() != null) { + Optional optionalCaracteristique = caracteristiqueRepository.findById(caracteristiqueUniteLogementPayload.getCaracteristiqueId()); caracteristiqueUniteLogement.setCaracteristique(optionalCaracteristique.orElse(null)); } - if (caracteristiqueUniteLogementPaylod.getTerminalId() != null) { - Optional optionalTpe = tpeRepository.findById(caracteristiqueUniteLogementPaylod.getTerminalId()); + if (caracteristiqueUniteLogementPayload.getTerminalId() != null) { + Optional optionalTpe = tpeRepository.findById(caracteristiqueUniteLogementPayload.getTerminalId()); caracteristiqueUniteLogement.setTerminal(optionalTpe.orElse(null)); } - if (caracteristiqueUniteLogementPaylod.getTerminalId() != null && caracteristiqueUniteLogementPaylod.getEnqueteId() != null) { - Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPaylod.getEnqueteId(), caracteristiqueUniteLogementPaylod.getTerminalId()); + if (caracteristiqueUniteLogementPayload.getTerminalId() != null && caracteristiqueUniteLogementPayload.getEnqueteId() != null) { + Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(caracteristiqueUniteLogementPayload.getEnqueteId(), caracteristiqueUniteLogementPayload.getTerminalId()); if (optionalEnquete.isPresent()) { caracteristiqueUniteLogement.setEnqueteId(optionalEnquete.get().getId()); } } - caracteristiqueUniteLogement.setEnqueteExternalKey(caracteristiqueUniteLogementPaylod.getEnqueteId()); - caracteristiqueUniteLogement.setEnqueteUniteLogementExternalKey(caracteristiqueUniteLogementPaylod.getEnqueteUniteLogementId()); - caracteristiqueUniteLogement.setValeur(caracteristiqueUniteLogementPaylod.getValeur()); - caracteristiqueUniteLogement.setExternalKey(caracteristiqueUniteLogementPaylod.getExternalKey()); + caracteristiqueUniteLogement.setEnqueteExternalKey(caracteristiqueUniteLogementPayload.getEnqueteId()); + caracteristiqueUniteLogement.setEnqueteUniteLogementExternalKey(caracteristiqueUniteLogementPayload.getEnqueteUniteLogementId()); + caracteristiqueUniteLogement.setValeur(caracteristiqueUniteLogementPayload.getValeur()); + caracteristiqueUniteLogement.setExternalKey(caracteristiqueUniteLogementPayload.getExternalKey()); return caracteristiqueUniteLogement; } } diff --git a/src/main/java/io/gmss/fiscad/service/worker/EnqueteAsyncWorker.java b/src/main/java/io/gmss/fiscad/service/worker/EnqueteAsyncWorker.java index 1a1d572..cb60032 100644 --- a/src/main/java/io/gmss/fiscad/service/worker/EnqueteAsyncWorker.java +++ b/src/main/java/io/gmss/fiscad/service/worker/EnqueteAsyncWorker.java @@ -200,7 +200,7 @@ public class EnqueteAsyncWorker { enquete.setNbrePiscine(enquetePayLoad.getNbrePiscine()); enquete.setDateDebutExcemption(enquetePayLoad.getDateDebutExcemption()); enquete.setDateFinExcemption(enquetePayLoad.getDateFinExcemption()); - enquete.setPersonneId(enquetePayLoad.getPersonneId()); + //enquete.setPersonneId(enquetePayLoad.getPersonneId()); enquete.setAutreNumeroTitreFoncier(enquete.getAutreNumeroTitreFoncier()); return enquete; } diff --git a/src/main/java/io/gmss/fiscad/service/worker/UniteLogementAsyncWorker.java b/src/main/java/io/gmss/fiscad/service/worker/UniteLogementAsyncWorker.java index a3990cc..ac3af1a 100644 --- a/src/main/java/io/gmss/fiscad/service/worker/UniteLogementAsyncWorker.java +++ b/src/main/java/io/gmss/fiscad/service/worker/UniteLogementAsyncWorker.java @@ -1,18 +1,12 @@ package io.gmss.fiscad.service.worker; import io.gmss.fiscad.entities.infocad.metier.Enquete; -import io.gmss.fiscad.entities.infocad.metier.Parcelle; import io.gmss.fiscad.entities.infocad.metier.Tpe; -import io.gmss.fiscad.entities.infocad.parametre.Bloc; -import io.gmss.fiscad.entities.metadata.MobileDataEnquete; import io.gmss.fiscad.entities.metadata.MobileDataUniteLogement; import io.gmss.fiscad.entities.rfu.metier.Batiment; import io.gmss.fiscad.entities.rfu.metier.UniteLogement; -import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu; -import io.gmss.fiscad.entities.user.User; import io.gmss.fiscad.enums.TypeObjet; -import io.gmss.fiscad.paylaods.request.EnquetePayLoad; -import io.gmss.fiscad.paylaods.request.UniteLogementPaylaod; +import io.gmss.fiscad.paylaods.request.UniteLogementPayload; import io.gmss.fiscad.repositories.infocad.metier.*; import io.gmss.fiscad.repositories.infocad.parametre.BlocRepository; import io.gmss.fiscad.repositories.metadata.MobileDataEnqueteRepository; @@ -22,7 +16,6 @@ import io.gmss.fiscad.repositories.rfu.parametre.ZoneRfuRepository; import io.gmss.fiscad.repositories.user.UserRepository; import io.gmss.fiscad.service.LogService; import lombok.RequiredArgsConstructor; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Optional; @@ -50,25 +43,25 @@ public class UniteLogementAsyncWorker { private final LogService logService; //@Async("uniteLogementExecutor") public void traitementAsyncUniteLogement(MobileDataUniteLogement mobileDataUniteLogement) { - UniteLogementPaylaod uniteLogementPaylaod = mobileDataUniteLogement.getUniteLogementPaylaod(); + UniteLogementPayload uniteLogementPayload = mobileDataUniteLogement.getUniteLogementPayload(); try { - if (uniteLogementPaylaod.getTerminalId() == null) { + if (uniteLogementPayload.getTerminalId() == null) { logService.logTraiementAsync(TypeObjet.UNITELOGEMENT, "Problème de terminal", "terminal non fourni : ", mobileDataUniteLogement.getId()); return; } else { - Optional optionalTpe = tpeRepository.findById(uniteLogementPaylaod.getTerminalId()); + Optional optionalTpe = tpeRepository.findById(uniteLogementPayload.getTerminalId()); if (optionalTpe.isEmpty()) { logService.logTraiementAsync(TypeObjet.UNITELOGEMENT, "Problème de terminal", "terminal inexistant : ", mobileDataUniteLogement.getId()); return; } } - if (uniteLogementPaylaod.getBatimentId() == null) { + if (uniteLogementPayload.getBatimentId() == null) { logService.logTraiementAsync(TypeObjet.UNITELOGEMENT, "Problème de batiment", "batiment non fourni : ", mobileDataUniteLogement.getId()); return; } else { - Optional optionalBatiment = batimentRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPaylaod.getBatimentId(), uniteLogementPaylaod.getTerminalId()); + Optional optionalBatiment = batimentRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPayload.getBatimentId(), uniteLogementPayload.getTerminalId()); if (optionalBatiment.isEmpty()) { logService.logTraiementAsync(TypeObjet.UNITELOGEMENT, "Problème de batiment", "Le batiment précisée n'existe pas : ", mobileDataUniteLogement.getId()); return; @@ -81,13 +74,13 @@ public class UniteLogementAsyncWorker { if (optionalUniteLogement.isPresent()) { uniteLogement = optionalUniteLogement.get(); }else { - optionalUniteLogement = uniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPaylaod.getExternalKey(),uniteLogementPaylaod.getTerminalId()); + optionalUniteLogement = uniteLogementRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPayload.getExternalKey(), uniteLogementPayload.getTerminalId()); if (optionalUniteLogement.isPresent()) { uniteLogement = optionalUniteLogement.get(); } } uniteLogement.setMobileDataId(mobileDataUniteLogement.getId()); - uniteLogement = getUniteLogementFromUniteLogementPayLoad(uniteLogement, uniteLogementPaylaod); + uniteLogement = getUniteLogementFromUniteLogementPayLoad(uniteLogement, uniteLogementPayload); uniteLogementRepository.save(uniteLogement); mobileDataUniteLogement.setTraiter(true); mobileDataUniteLogementRepository.save(mobileDataUniteLogement); @@ -97,29 +90,29 @@ public class UniteLogementAsyncWorker { } - private UniteLogement getUniteLogementFromUniteLogementPayLoad(UniteLogement uniteLogement, UniteLogementPaylaod uniteLogementPaylaod) { + private UniteLogement getUniteLogementFromUniteLogementPayLoad(UniteLogement uniteLogement, UniteLogementPayload uniteLogementPayload) { - if (uniteLogementPaylaod.getBatimentId() != null) { - Optional optionalBatiment = batimentRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPaylaod.getBatimentId(), uniteLogementPaylaod.getTerminalId()); + if (uniteLogementPayload.getBatimentId() != null) { + Optional optionalBatiment = batimentRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPayload.getBatimentId(), uniteLogementPayload.getTerminalId()); uniteLogement.setBatiment(optionalBatiment.orElse(null)); } - if (uniteLogementPaylaod.getTerminalId() != null) { - Optional optionalTpe = tpeRepository.findById(uniteLogementPaylaod.getTerminalId()); + if (uniteLogementPayload.getTerminalId() != null) { + Optional optionalTpe = tpeRepository.findById(uniteLogementPayload.getTerminalId()); uniteLogement.setTerminal(optionalTpe.orElse(null)); } - if (uniteLogementPaylaod.getTerminalId() != null && uniteLogementPaylaod.getEnqueteId() != null) { - Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPaylaod.getEnqueteId(), uniteLogementPaylaod.getTerminalId()); + if (uniteLogementPayload.getTerminalId() != null && uniteLogementPayload.getEnqueteId() != null) { + Optional optionalEnquete = enqueteRepository.findFirstByExternalKeyAndTerminal_Id(uniteLogementPayload.getEnqueteId(), uniteLogementPayload.getTerminalId()); if (optionalEnquete.isPresent()) { uniteLogement.setEnqueteId(optionalEnquete.get().getId()); } } - uniteLogement.setEnqueteExternalKey(uniteLogementPaylaod.getEnqueteId()); - uniteLogement.setNul(uniteLogementPaylaod.getNul()); - uniteLogement.setNumeroEtage(uniteLogementPaylaod.getNumeroEtage()); - uniteLogement.setCode(uniteLogementPaylaod.getCode()); - uniteLogement.setExternalKey(uniteLogementPaylaod.getExternalKey()); - uniteLogement.setBatimentExternalKey(uniteLogementPaylaod.getBatimentId()); + uniteLogement.setEnqueteExternalKey(uniteLogementPayload.getEnqueteId()); + uniteLogement.setNul(uniteLogementPayload.getNul()); + uniteLogement.setNumeroEtage(uniteLogementPayload.getNumeroEtage()); + uniteLogement.setCode(uniteLogementPayload.getCode()); + uniteLogement.setExternalKey(uniteLogementPayload.getExternalKey()); + uniteLogement.setBatimentExternalKey(uniteLogementPayload.getBatimentId()); return uniteLogement; } } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 4c86658..56725ff 100755 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,6 +1,6 @@ -#spring.profiles.active=${SPRING_PROFILES_ACTIVE} +spring.profiles.active=${SPRING_PROFILES_ACTIVE} #spring.profiles.active=abomey -spring.profiles.active=dgi +#spring.profiles.active=dgi spring.jpa.properties.hibernate.id.new_generator_mappings=false spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true spring.jpa.open-in-view=false