diff --git a/src/main/java/io/gmss/fiscad/implementations/decoupage/SecteurServiceImpl.java b/src/main/java/io/gmss/fiscad/implementations/decoupage/SecteurServiceImpl.java index a8e2958..6437d90 100644 --- a/src/main/java/io/gmss/fiscad/implementations/decoupage/SecteurServiceImpl.java +++ b/src/main/java/io/gmss/fiscad/implementations/decoupage/SecteurServiceImpl.java @@ -161,7 +161,7 @@ public class SecteurServiceImpl implements SecteurService { }else if (avoirFonction.getFonction().getSection()!=null){ secteurs.addAll(secteurRepository.findDistinctBySection_Id(avoirFonction.getFonction().getSection().getId())); - }else if(avoirFonction.getFonction().getStructure()!=null){ + }else if(avoirFonction.getFonction().getStructure()!=null && avoirFonction.getFonction().getDepartement()==null){ secteurs.addAll(secteurRepository.findDistinctBySection_Structure_Id(avoirFonction.getFonction().getStructure().getId())); }else if(avoirFonction.getFonction().getDepartement()!=null){ secteurs.addAll(secteurRepository.findSecteursByDepartement(avoirFonction.getFonction().getDepartement().getId())); diff --git a/src/main/java/io/gmss/fiscad/service/EntityFromPayLoadService.java b/src/main/java/io/gmss/fiscad/service/EntityFromPayLoadService.java index 178aeae..99891c3 100644 --- a/src/main/java/io/gmss/fiscad/service/EntityFromPayLoadService.java +++ b/src/main/java/io/gmss/fiscad/service/EntityFromPayLoadService.java @@ -45,6 +45,7 @@ public class EntityFromPayLoadService { private final PersonneRepository personneRepository; private final SourceDroitRepository sourceDroitRepository; private final StructureRepository structureRepository; + private final DepartementRepository departementRepository; private final EnqueteBatimentRepository enqueteBatimentRepository; private final EnqueteUniteLogementRepository enqueteUniteLogementRepository; private final DeclarationNcRepository declarationNcRepository; @@ -408,22 +409,29 @@ public class EntityFromPayLoadService { Optional optionalSecteur=Optional.empty(); Optional
optionalSection=Optional.empty(); Optional optionalProfile=Optional.empty(); + Optional optionalDepartement=Optional.empty(); Optional optionalUser=Optional.empty(); Optional optionalStructure=Optional.empty(); if(fonctionPaylaodWeb.getId()!=null) fonction = fonctionRepository.findById(fonctionPaylaodWeb.getId()).orElse(new Fonction()); - if(fonctionPaylaodWeb.getSecteurId()!=null) optionalSecteur=secteurRepository.findById(fonctionPaylaodWeb.getSecteurId()); + if(fonctionPaylaodWeb.getProfileId()!=null) optionalProfile=profileRepository.findById(fonctionPaylaodWeb.getProfileId()); + if(fonctionPaylaodWeb.getSectionId()!=null) - optionalSection=sectionRepository.findById(fonctionPaylaodWeb.getSecteurId()); + optionalSection=sectionRepository.findById(fonctionPaylaodWeb.getSectionId()); + if(fonctionPaylaodWeb.getStructureId()!=null) optionalStructure=structureRepository.findById(fonctionPaylaodWeb.getStructureId()); + if(fonctionPaylaodWeb.getDepartementId()!=null) + optionalDepartement=departementRepository.findById(fonctionPaylaodWeb.getDepartementId()); + + fonction.setDepartement(optionalDepartement.orElse(null)); fonction.setSecteur(optionalSecteur.orElse(null)); fonction.setProfile(optionalProfile.orElse(null)); fonction.setSection(optionalSection.orElse(null));