develop #283
@@ -7,6 +7,7 @@ import io.gmss.fiscad.enums.StatusAvis;
|
|||||||
import io.gmss.fiscad.exceptions.*;
|
import io.gmss.fiscad.exceptions.*;
|
||||||
import io.gmss.fiscad.interfaces.rfu.metier.DonneesImpositionTfuService;
|
import io.gmss.fiscad.interfaces.rfu.metier.DonneesImpositionTfuService;
|
||||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||||
|
import io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb;
|
||||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
||||||
import io.gmss.fiscad.security.CurrentUser;
|
import io.gmss.fiscad.security.CurrentUser;
|
||||||
@@ -28,6 +29,7 @@ import org.springframework.validation.annotation.Validated;
|
|||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.client.HttpClientErrorException;
|
import org.springframework.web.client.HttpClientErrorException;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
|
|
||||||
@@ -95,6 +97,83 @@ public class DonneesImpositionTfuController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("/maj-non-homologable")
|
||||||
|
@PreAuthorize("hasAuthority('HOMOLOGUE_AVIS')")
|
||||||
|
public ResponseEntity<?> majNonHomologableDonneesImpositionTfu(@RequestBody List<DonneesImpositionPaylaodWeb> donneesImpositionTfuWebs) {
|
||||||
|
try {
|
||||||
|
return new ResponseEntity<>(
|
||||||
|
new ApiResponse<>(true, donneesImpositionTfuService.setDonneesFiscalesNonHomologable(donneesImpositionTfuWebs), "DonneesImpositionTfu mise à jour 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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("/maj-homologable")
|
||||||
|
@PreAuthorize("hasAuthority('HOMOLOGUE_AVIS')")
|
||||||
|
public ResponseEntity<?> majHomologableDonneesImpositionTfu(@RequestBody List<DonneesImpositionPaylaodWeb> donneesImpositionTfuWebs) {
|
||||||
|
try {
|
||||||
|
return new ResponseEntity<>(
|
||||||
|
new ApiResponse<>(true, donneesImpositionTfuService.setDonneesFiscalesHomologable(donneesImpositionTfuWebs), "DonneesImpositionTfu mise à jour 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("/donnees-non-homologable/{idImpositionTfu}")
|
||||||
|
@PreAuthorize("hasAuthority('HOMOLOGUE_AVIS') or hasAuthority('READ_DONNEESIMPOSITIONTFU')")
|
||||||
|
public ResponseEntity<?> getHomologableDonneesImpositionTfu(@PathVariable Long idImpositionTfu,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||||
|
try {
|
||||||
|
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||||
|
return new ResponseEntity<>(
|
||||||
|
new ApiResponse<>(true, donneesImpositionTfuService.getDonneesFiscalesNonHomologable(idImpositionTfu,pageable), "Donnees Imposition Tfu récupérées 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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@DeleteMapping("/delete/{id}")
|
@DeleteMapping("/delete/{id}")
|
||||||
@PreAuthorize("hasAuthority('DELETE_DONNEESIMPOSITIONTFU')")
|
@PreAuthorize("hasAuthority('DELETE_DONNEESIMPOSITIONTFU')")
|
||||||
public ResponseEntity<?> deleteDonneesImpositionTfu(@PathVariable Long id) {
|
public ResponseEntity<?> deleteDonneesImpositionTfu(@PathVariable Long id) {
|
||||||
@@ -120,54 +199,6 @@ public class DonneesImpositionTfuController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// @GetMapping("/all")
|
|
||||||
// public ResponseEntity<?> getAllDonneesImpositionTfuList() {
|
|
||||||
// try {
|
|
||||||
// return new ResponseEntity<>(
|
|
||||||
// new ApiResponse<>(true, donneesImpositionTfuService.getDonneesImpositionTfuList(), "Liste des impositions 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("/all-paged")
|
|
||||||
// public ResponseEntity<?> getAllDonneesImpositionTfuPaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
|
||||||
// try {
|
|
||||||
// Pageable pageable = PageRequest.of(pageNo, pageSize);
|
|
||||||
// return new ResponseEntity<>(
|
|
||||||
// new ApiResponse<>(true, donneesImpositionTfuService.getDonneesImpositionTfuList(pageable), "Liste des impositions 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("/all-page/by-imposition-id/{impositionId}")
|
@GetMapping("/all-page/by-imposition-id/{impositionId}")
|
||||||
@PreAuthorize("hasAuthority('READ_DONNEESIMPOSITIONTFU')")
|
@PreAuthorize("hasAuthority('READ_DONNEESIMPOSITIONTFU')")
|
||||||
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdPaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdPaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||||
@@ -359,14 +390,6 @@ public class DonneesImpositionTfuController {
|
|||||||
HttpStatus.OK
|
HttpStatus.OK
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// if(!optionalImpositionsTfu.get().getStatusAvis().equals(StatusAvis.TFU_FNB_GENERE)){
|
|
||||||
// return new ResponseEntity<>(
|
|
||||||
// new ApiResponse<>(false, null, "l'état actuel : "+optionalImpositionsTfu.get().getStatusAvis()+" ne permet pas cette opération."),
|
|
||||||
// HttpStatus.OK
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
|
|
||||||
if(userPrincipal==null){
|
if(userPrincipal==null){
|
||||||
return new ResponseEntity<>(
|
return new ResponseEntity<>(
|
||||||
new ApiResponse<>(false, null, "Vous n'êtes pas autorisé à accéder à cette ressource"),
|
new ApiResponse<>(false, null, "Vous n'êtes pas autorisé à accéder à cette ressource"),
|
||||||
|
|||||||
@@ -177,12 +177,12 @@ public class ImpositionsTfuController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/homologue")
|
@PutMapping("/homologuer")
|
||||||
@PreAuthorize("hasAuthority('HOMOLOGUE_AVIS')")
|
@PreAuthorize("hasAuthority('HOMOLOGUE_AVIS')")
|
||||||
public ResponseEntity<?> HomologueImpositionsTfu(@RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
public ResponseEntity<?> HomologueImpositionsTfu(@RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||||
try {
|
try {
|
||||||
return new ResponseEntity<>(
|
return new ResponseEntity<>(
|
||||||
new ApiResponse<>(true, impositionsTfuService.autoriserGenerationImpositionsTfu(impositionsTfuPaylaodWeb), "Unite de logement mise à jour avec succès."),
|
new ApiResponse<>(true, impositionsTfuService.homologuerImpositionsTfu(impositionsTfuPaylaodWeb), "Unite de logement mise à jour avec succès."),
|
||||||
HttpStatus.OK
|
HttpStatus.OK
|
||||||
);
|
);
|
||||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||||
|
|||||||
@@ -94,6 +94,8 @@ public class DonneesImpositionTfu extends BaseEntity implements Serializable {
|
|||||||
private Long nombrePiscine;
|
private Long nombrePiscine;
|
||||||
private Long nombreUlog;
|
private Long nombreUlog;
|
||||||
private Long nombreBat;
|
private Long nombreBat;
|
||||||
|
// @Column(nullable = true, columnDefinition = "boolean default true")
|
||||||
|
private Boolean homologable ;
|
||||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||||
private LocalDate dateEnquete;
|
private LocalDate dateEnquete;
|
||||||
|
|||||||
@@ -223,6 +223,8 @@ public class DonneesImpositionTfuServiceImpl implements DonneesImpositionTfuServ
|
|||||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImposition(Long impositionsId) {
|
public List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImposition(Long impositionsId) {
|
||||||
return donneesImpositionTfuRepository.findAllByImpositionTfuId(impositionsId);
|
return donneesImpositionTfuRepository.findAllByImpositionTfuId(impositionsId);
|
||||||
@@ -292,4 +294,52 @@ public class DonneesImpositionTfuServiceImpl implements DonneesImpositionTfuServ
|
|||||||
public List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByPersonneId(Long personneId) {
|
public List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByPersonneId(Long personneId) {
|
||||||
return donneesImpositionTfuRepository.findAllByPersonneId(personneId);
|
return donneesImpositionTfuRepository.findAllByPersonneId(personneId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Integer setDonneesFiscalesNonHomologable(List<DonneesImpositionPaylaodWeb> donneesImpositionPaylaodWebs) {
|
||||||
|
int nb=0;
|
||||||
|
if(donneesImpositionPaylaodWebs!=null){
|
||||||
|
for(DonneesImpositionPaylaodWeb donneesImpositionPaylaodWeb:donneesImpositionPaylaodWebs){
|
||||||
|
Optional<DonneesImpositionTfu> optionalDonneesImpositionTfu = donneesImpositionTfuRepository.findById(donneesImpositionPaylaodWeb.getId());
|
||||||
|
if(optionalDonneesImpositionTfu.isPresent()){
|
||||||
|
DonneesImpositionTfu donneesImpositionTfu=optionalDonneesImpositionTfu.get();
|
||||||
|
donneesImpositionTfu.setHomologable(false);
|
||||||
|
donneesImpositionTfuRepository.save(donneesImpositionTfu);
|
||||||
|
nb++ ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nb ;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Integer setDonneesFiscalesHomologable(List<DonneesImpositionPaylaodWeb> donneesImpositionPaylaodWebs) {
|
||||||
|
int nb=0;
|
||||||
|
if(donneesImpositionPaylaodWebs!=null){
|
||||||
|
for(DonneesImpositionPaylaodWeb donneesImpositionPaylaodWeb:donneesImpositionPaylaodWebs){
|
||||||
|
Optional<DonneesImpositionTfu> optionalDonneesImpositionTfu = donneesImpositionTfuRepository.findById(donneesImpositionPaylaodWeb.getId());
|
||||||
|
if(optionalDonneesImpositionTfu.isPresent()){
|
||||||
|
DonneesImpositionTfu donneesImpositionTfu=optionalDonneesImpositionTfu.get();
|
||||||
|
donneesImpositionTfu.setHomologable(null);
|
||||||
|
donneesImpositionTfuRepository.save(donneesImpositionTfu);
|
||||||
|
nb++ ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nb ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Integer homologuer(Long impositionTfuId) {
|
||||||
|
return donneesImpositionTfuRepository.homologuerDonneesImposition(impositionTfuId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesNonHomologable(Long impositionTfuId,Pageable pageable) {
|
||||||
|
return donneesImpositionTfuRepository.findAllByImpositionTfuIdNonHomologablePageable(impositionTfuId,pageable);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import io.gmss.fiscad.exceptions.BadRequestException;
|
|||||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||||
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
||||||
import io.gmss.fiscad.interfaces.infocad.parametre.StructureService;
|
import io.gmss.fiscad.interfaces.infocad.parametre.StructureService;
|
||||||
|
import io.gmss.fiscad.interfaces.rfu.metier.DonneesImpositionTfuService;
|
||||||
import io.gmss.fiscad.interfaces.rfu.metier.ImpositionsTfuService;
|
import io.gmss.fiscad.interfaces.rfu.metier.ImpositionsTfuService;
|
||||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
||||||
@@ -28,6 +29,7 @@ public class ImpositionsTfuServiceImpl implements ImpositionsTfuService {
|
|||||||
|
|
||||||
private final ImpositionsTfuRepository impositionsTfuRepository;
|
private final ImpositionsTfuRepository impositionsTfuRepository;
|
||||||
private final StructureService structureService;
|
private final StructureService structureService;
|
||||||
|
private final DonneesImpositionTfuService donneesImpositionTfuService;
|
||||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||||
private final EnqueteService enqueteService;
|
private final EnqueteService enqueteService;
|
||||||
|
|
||||||
@@ -133,8 +135,9 @@ public class ImpositionsTfuServiceImpl implements ImpositionsTfuService {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public ImpositionsTfuPaylaodWeb homologueImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
public ImpositionsTfuPaylaodWeb homologuerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
||||||
if (impositionsTfuPaylaodWeb.getId() == null) {
|
if (impositionsTfuPaylaodWeb.getId() == null) {
|
||||||
throw new BadRequestException("Impossible de valider une imposition ayant un id null.");
|
throw new BadRequestException("Impossible de valider une imposition ayant un id null.");
|
||||||
}
|
}
|
||||||
@@ -150,6 +153,7 @@ public class ImpositionsTfuServiceImpl implements ImpositionsTfuService {
|
|||||||
impositionsTfu.setDateGeneration(LocalDate.now());
|
impositionsTfu.setDateGeneration(LocalDate.now());
|
||||||
impositionsTfu.setStatusAvis(StatusAvis.HOMOLOGUE);
|
impositionsTfu.setStatusAvis(StatusAvis.HOMOLOGUE);
|
||||||
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
||||||
|
donneesImpositionTfuService.homologuer(impositionsTfu.getId());
|
||||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -52,5 +52,9 @@ public interface DonneesImpositionTfuService {
|
|||||||
|
|
||||||
|
|
||||||
//List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByParcelleIdAndExercice(Long parcelleId, Long exerciceId);
|
//List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByParcelleIdAndExercice(Long parcelleId, Long exerciceId);
|
||||||
|
Integer setDonneesFiscalesNonHomologable(List<DonneesImpositionPaylaodWeb> donneesImpositionPaylaodWebs);
|
||||||
|
Integer setDonneesFiscalesHomologable(List<DonneesImpositionPaylaodWeb> donneesImpositionPaylaodWebs);
|
||||||
|
Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesNonHomologable(Long impositionTfuId,Pageable pageable);
|
||||||
|
|
||||||
|
public Integer homologuer(Long impositionTfuId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ public interface ImpositionsTfuService {
|
|||||||
ImpositionsTfuPaylaodWeb rejeterImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
ImpositionsTfuPaylaodWeb rejeterImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||||
ImpositionsTfuPaylaodWeb cloturerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
ImpositionsTfuPaylaodWeb cloturerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||||
ImpositionsTfuPaylaodWeb autoriserGenerationImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
ImpositionsTfuPaylaodWeb autoriserGenerationImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||||
ImpositionsTfuPaylaodWeb homologueImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
ImpositionsTfuPaylaodWeb homologuerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||||
|
|
||||||
ImpositionsTfuPaylaodWeb updateImpositionsTfu(Long id, ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws NotFoundException;
|
ImpositionsTfuPaylaodWeb updateImpositionsTfu(Long id, ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws NotFoundException;
|
||||||
|
|
||||||
|
|||||||
@@ -4,9 +4,11 @@ import io.gmss.fiscad.entities.infocad.parametre.Personne;
|
|||||||
import io.gmss.fiscad.entities.rfu.metier.DonneesImpositionTfu;
|
import io.gmss.fiscad.entities.rfu.metier.DonneesImpositionTfu;
|
||||||
import io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb;
|
import io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb;
|
||||||
import io.gmss.fiscad.paylaods.response.DonneesImpositionTfuResponse;
|
import io.gmss.fiscad.paylaods.response.DonneesImpositionTfuResponse;
|
||||||
|
import jakarta.transaction.Transactional;
|
||||||
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.Page;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Modifying;
|
||||||
import org.springframework.data.jpa.repository.Query;
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.data.repository.query.Param;
|
import org.springframework.data.repository.query.Param;
|
||||||
|
|
||||||
@@ -77,7 +79,7 @@ public interface DonneesImpositionTfuRepository extends JpaRepository<DonneesImp
|
|||||||
e.nbre_batiment as nombreBat,
|
e.nbre_batiment as nombreBat,
|
||||||
e.nbre_piscine as nombrePiscine,
|
e.nbre_piscine as nombrePiscine,
|
||||||
e.id as enquete_id,
|
e.id as enquete_id,
|
||||||
e.zone_rfu_id as zoneRfuId,
|
-- e.zone_rfu_id as zoneRfuId,
|
||||||
ul.surface as superficieAuSolUlog,
|
ul.surface as superficieAuSolUlog,
|
||||||
ba.nom as categorieBat,
|
ba.nom as categorieBat,
|
||||||
ba.libelle as standingBat,
|
ba.libelle as standingBat,
|
||||||
@@ -511,6 +513,97 @@ SELECT new io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb(
|
|||||||
Pageable pageable
|
Pageable pageable
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Query("""
|
||||||
|
SELECT new io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb(
|
||||||
|
d.id,
|
||||||
|
d.annee,
|
||||||
|
d.codeDepartement,
|
||||||
|
d.nomDepartement,
|
||||||
|
d.codeCommune,
|
||||||
|
d.nomCommune,
|
||||||
|
d.codeArrondissement,
|
||||||
|
d.nomArrondissement,
|
||||||
|
d.codeQuartierVillage,
|
||||||
|
d.nomQuartierVillage,
|
||||||
|
d.q,
|
||||||
|
d.ilot,
|
||||||
|
d.parcelle,
|
||||||
|
d.nup,
|
||||||
|
d.titreFoncier,
|
||||||
|
d.numBatiment,
|
||||||
|
d.numUniteLogement,
|
||||||
|
d.ifu,
|
||||||
|
d.npi,
|
||||||
|
d.telProp,
|
||||||
|
d.emailProp,
|
||||||
|
d.nomProp,
|
||||||
|
d.prenomProp,
|
||||||
|
d.raisonSociale,
|
||||||
|
d.adresseProp,
|
||||||
|
d.telSc,
|
||||||
|
d.emailSc,
|
||||||
|
d.nomSc,
|
||||||
|
d.prenomSc,
|
||||||
|
d.adresseSc,
|
||||||
|
d.longitude,
|
||||||
|
d.latitude,
|
||||||
|
d.superficieParc,
|
||||||
|
d.superficieAuSolBat,
|
||||||
|
d.superficieAuSolUlog,
|
||||||
|
d.batie,
|
||||||
|
d.exonere,
|
||||||
|
d.batimentExonere,
|
||||||
|
d.uniteLogementExonere,
|
||||||
|
d.valeurLocativeAdm,
|
||||||
|
d.montantLoyerAnnuel,
|
||||||
|
d.tfuMetreCarre,
|
||||||
|
d.tfuMinimum,
|
||||||
|
d.standingBat,
|
||||||
|
d.categorieBat,
|
||||||
|
d.nombrePiscine,
|
||||||
|
d.nombreUlog,
|
||||||
|
d.nombreBat,
|
||||||
|
d.dateEnquete,
|
||||||
|
s.id,
|
||||||
|
z.id,
|
||||||
|
d.valeurAdminParcelleNb,
|
||||||
|
d.natureImpot,
|
||||||
|
s.code,
|
||||||
|
z.nom,
|
||||||
|
d.valeurBatiment,
|
||||||
|
d.valeurParcelle,
|
||||||
|
d.valeurLocativeAdmMetreCarre,
|
||||||
|
d.valeurAdminParcelleNbMetreCarre,
|
||||||
|
d.montantTaxe
|
||||||
|
)
|
||||||
|
FROM DonneesImpositionTfu d
|
||||||
|
JOIN d.impositionsTfu itfu
|
||||||
|
LEFT join d.structure s
|
||||||
|
LEFT join d.zoneRfu z
|
||||||
|
WHERE itfu.id = :impositionTfuId
|
||||||
|
and d.homologable is false
|
||||||
|
order by d.nomProp,d.nomProp asc
|
||||||
|
""")
|
||||||
|
Page<DonneesImpositionPaylaodWeb> findAllByImpositionTfuIdNonHomologablePageable(
|
||||||
|
Long impositionTfuId,
|
||||||
|
Pageable pageable
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
@Modifying
|
||||||
|
@Transactional
|
||||||
|
@Query("""
|
||||||
|
UPDATE DonneesImpositionTfu d
|
||||||
|
SET d.homologable = true
|
||||||
|
WHERE d.impositionsTfu.id = :impositionsTfuId
|
||||||
|
AND (d.homologable IS NULL OR d.homologable = true)
|
||||||
|
""")
|
||||||
|
int homologuerDonneesImposition(
|
||||||
|
@Param("impositionsTfuId") Long impositionsTfuId
|
||||||
|
);
|
||||||
|
|
||||||
@Query(value = "SELECT generer_donnees_imposition_tfu_batie(:impositionId, :userId)", nativeQuery = true)
|
@Query(value = "SELECT generer_donnees_imposition_tfu_batie(:impositionId, :userId)", nativeQuery = true)
|
||||||
Integer genererDonneesTfuBatie(
|
Integer genererDonneesTfuBatie(
|
||||||
@Param("impositionId") Long impositionId,
|
@Param("impositionId") Long impositionId,
|
||||||
|
|||||||
Reference in New Issue
Block a user