Compare commits
55 Commits
1e0cfead5b
...
features/c
| Author | SHA1 | Date | |
|---|---|---|---|
| 81bd7d9034 | |||
| cec02e24ae | |||
| dae64dc079 | |||
| 9de2564108 | |||
| b3e3e7109f | |||
| b22b6c8288 | |||
| d326e227c4 | |||
| 85be8a2e24 | |||
| fcc81e0607 | |||
| 862b917689 | |||
| 9b4edcdcea | |||
| db1fd2c821 | |||
| ee07fec0ac | |||
| a5cabc8102 | |||
| 443b563d69 | |||
| a799764d16 | |||
| eba53a42aa | |||
| bd8bd64a2d | |||
| 5dcb2adf30 | |||
| d1c3cb190d | |||
| 4897712e08 | |||
| dc28d88763 | |||
| 35393954c3 | |||
| 51845b085a | |||
| 4567074f08 | |||
| 933c209f67 | |||
| dc59006e99 | |||
| b0abdee729 | |||
| 2a53e653c3 | |||
| 1ce98edc32 | |||
| 144a6af6f8 | |||
| e0a211d8bd | |||
| d1813d7460 | |||
| 95bf4779f7 | |||
| 5e9aae2bc2 | |||
| 06fa55fe2a | |||
| c272257930 | |||
| 2c38fa1926 | |||
| 74a00a3856 | |||
| 558f95869c | |||
| 554277f312 | |||
| e6e9407940 | |||
| 0617d2f383 | |||
| 962af9b48c | |||
| 14816d9bd0 | |||
| 8efe46fea8 | |||
| 8031289509 | |||
| f49e8157e2 | |||
| 88f7a7d7af | |||
| ed73eb3f2e | |||
| c4389abaf2 | |||
| ccfe1bfb4a | |||
| f85191b47c | |||
| c600d50ce4 | |||
| 95eb4ad0b9 |
@@ -52,8 +52,10 @@ jobs:
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> "$GITHUB_ENV"
|
||||
|
||||
# 4) Checkout du dépôt
|
||||
#- name: Checkout repository
|
||||
# uses: https://gitea.com/actions/checkout@v4 #actions/checkout@v4
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }} .
|
||||
|
||||
# 5) Informations de contexte (sans secrets)
|
||||
- name: Show context information
|
||||
|
||||
@@ -52,8 +52,10 @@ jobs:
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> "$GITHUB_ENV"
|
||||
|
||||
# 4) Checkout du dépôt
|
||||
#- name: Checkout repository
|
||||
# uses: https://gitea.com/actions/checkout@v4 #actions/checkout@v4
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }} .
|
||||
|
||||
# 5) Création des secrets runtime (CI uniquement)
|
||||
- name: Create runtime secrets
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -4,4 +4,5 @@ fiscad.log*
|
||||
target/*
|
||||
ansible
|
||||
secrets/
|
||||
.env
|
||||
.env
|
||||
/uploads/
|
||||
|
||||
18
pom.xml
18
pom.xml
@@ -73,6 +73,7 @@
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>net.sf.jasperreports</groupId>
|
||||
<artifactId>jasperreports</artifactId>
|
||||
@@ -149,7 +150,24 @@
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.wildbit.java</groupId>
|
||||
<artifactId>postmark</artifactId>
|
||||
<version>1.7.6</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents.client5</groupId>
|
||||
<artifactId>httpclient5</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||
<artifactId>jackson-datatype-jsr310</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||
<artifactId>jackson-datatype-jdk8</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<dependencyManagement>
|
||||
<dependencies>
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
package io.gmss.fiscad.configuration;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import io.gmss.fiscad.security.CustomUserDetailsService;
|
||||
import io.gmss.fiscad.security.JwtAuthenticationFilter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.modelmapper.ModelMapper;
|
||||
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.security.authentication.AuthenticationManager;
|
||||
@@ -63,4 +67,7 @@ public class ApplicationConfig {
|
||||
|
||||
return authenticationManagerBuilder.build();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
package io.gmss.fiscad.configuration;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
@Configuration
|
||||
public class RestTemplateConfig {
|
||||
|
||||
@Bean
|
||||
public ObjectMapper objectMapper() {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
mapper.registerModule(new JavaTimeModule());
|
||||
mapper.registerModule(new Jdk8Module());
|
||||
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
||||
return mapper;
|
||||
}
|
||||
|
||||
@Bean
|
||||
public Jackson2ObjectMapperBuilderCustomizer jsonCustomizer() {
|
||||
return builder -> {
|
||||
builder.modules(new JavaTimeModule(), new Jdk8Module());
|
||||
builder.featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
||||
};
|
||||
}
|
||||
|
||||
@Bean
|
||||
public RestTemplate restTemplate(ObjectMapper mapper) {
|
||||
|
||||
mapper.registerModule(new JavaTimeModule());
|
||||
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
|
||||
|
||||
MappingJackson2HttpMessageConverter converter =
|
||||
new MappingJackson2HttpMessageConverter(mapper);
|
||||
|
||||
RestTemplate restTemplate = new RestTemplate();
|
||||
restTemplate.getMessageConverters().removeIf(
|
||||
c -> c instanceof MappingJackson2HttpMessageConverter
|
||||
);
|
||||
restTemplate.getMessageConverters().add(converter);
|
||||
|
||||
return restTemplate;
|
||||
}
|
||||
}
|
||||
120
src/main/java/io/gmss/fiscad/configuration/SecurityConfig.java
Executable file
120
src/main/java/io/gmss/fiscad/configuration/SecurityConfig.java
Executable file
@@ -0,0 +1,120 @@
|
||||
//package io.gmss.fiscad.configuration;
|
||||
//
|
||||
//import com.backend.api.security.CustomUserDetailsService;
|
||||
//import com.backend.api.security.JwtAuthenticationEntryPoint;
|
||||
//import com.backend.api.security.JwtAuthenticationFilter;
|
||||
//import org.springframework.beans.factory.annotation.Autowired;
|
||||
//import org.springframework.context.annotation.Bean;
|
||||
//import org.springframework.context.annotation.Configuration;
|
||||
//import org.springframework.http.HttpMethod;
|
||||
//import org.springframework.security.authentication.AuthenticationManager;
|
||||
//import org.springframework.security.config.BeanIds;
|
||||
//import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
|
||||
//import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
|
||||
//import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
//import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
||||
//import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
|
||||
//import org.springframework.security.config.http.SessionCreationPolicy;
|
||||
//import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||
//import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
//import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
|
||||
//
|
||||
//@Configuration
|
||||
//@EnableWebSecurity // active la sécurité web sur le projet
|
||||
//@EnableGlobalMethodSecurity( // est utilisé pour définir la sécurité sur les méthodes
|
||||
// securedEnabled = true, // est activé pour protéger un controlleur ou un service
|
||||
// jsr250Enabled = true, // active le role qui doit être utilisé
|
||||
// prePostEnabled = true // active le controle avant et après l'execution de la requête
|
||||
//)
|
||||
//public class SecurityConfig extends WebSecurityConfigurerAdapter {
|
||||
//
|
||||
// /**
|
||||
// * Est utilisé pour authentifier un utlisateur ou pour définir un role
|
||||
// */
|
||||
// @Autowired
|
||||
// CustomUserDetailsService customUserDetailsService;
|
||||
//
|
||||
// @Autowired
|
||||
// private JwtAuthenticationEntryPoint unauthorizedHandler;
|
||||
//
|
||||
// @Bean
|
||||
// public JwtAuthenticationFilter jwtAuthenticationFilter() {
|
||||
// return new JwtAuthenticationFilter();
|
||||
// }
|
||||
//
|
||||
//
|
||||
//
|
||||
// private static final String[] AUTH_WHITELIST = {
|
||||
//
|
||||
// // -- swagger ui
|
||||
// "/swagger-resources/**",
|
||||
// "/swagger-ui.html",
|
||||
// "/v3/api-docs",
|
||||
// "/swagger-ui/**",
|
||||
// "/webjars/**",
|
||||
// "/api/**",
|
||||
//// "/api/synonym/**",
|
||||
// "/api/auth/**"
|
||||
// };
|
||||
// @Override
|
||||
// public void configure(AuthenticationManagerBuilder authenticationManagerBuilder) throws Exception {
|
||||
// authenticationManagerBuilder
|
||||
// .userDetailsService(customUserDetailsService)
|
||||
// .passwordEncoder(passwordEncoder());
|
||||
// }
|
||||
//
|
||||
// @Bean(BeanIds.AUTHENTICATION_MANAGER)
|
||||
// @Override
|
||||
// public AuthenticationManager authenticationManagerBean() throws Exception {
|
||||
// return super.authenticationManagerBean();
|
||||
// }
|
||||
//
|
||||
// @Bean
|
||||
// public PasswordEncoder passwordEncoder() {
|
||||
// return new BCryptPasswordEncoder();
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// *
|
||||
// * @param http
|
||||
// * @throws Exception
|
||||
// */
|
||||
// @Override
|
||||
// protected void configure(HttpSecurity http) throws Exception {
|
||||
// http
|
||||
// .cors()
|
||||
// .and()
|
||||
// .csrf()
|
||||
// .disable()
|
||||
// .exceptionHandling()
|
||||
// .authenticationEntryPoint(unauthorizedHandler)
|
||||
// .and()
|
||||
// .sessionManagement()
|
||||
// .sessionCreationPolicy(SessionCreationPolicy.STATELESS)
|
||||
// .and()
|
||||
// .authorizeRequests()
|
||||
// .antMatchers("/",
|
||||
// "/favicon.ico",
|
||||
// "/**/*.png",
|
||||
// "/**/*.gif",
|
||||
// "/**/*.svg",
|
||||
// "/**/*.jpg",
|
||||
// "/**/*.html",
|
||||
// "/**/*.css",
|
||||
// "/**/*.js")
|
||||
// .permitAll()
|
||||
// .antMatchers(AUTH_WHITELIST).permitAll()
|
||||
// .antMatchers("/api/auth/**")
|
||||
// .permitAll()
|
||||
// .antMatchers("/api/user/checkUsernameAvailability", "/api/user/checkEmailAvailability")
|
||||
// .permitAll()
|
||||
// .antMatchers(HttpMethod.GET, "/api/polls/**", "/api/users/**")
|
||||
// .permitAll()
|
||||
// .anyRequest()
|
||||
// .authenticated();
|
||||
//
|
||||
// // Add our custom JWT security filter
|
||||
// http.addFilterBefore(jwtAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);
|
||||
//
|
||||
// }
|
||||
//}
|
||||
@@ -1,11 +1,113 @@
|
||||
package io.gmss.fiscad.configuration;
|
||||
|
||||
|
||||
import io.gmss.fiscad.security.JwtAuthenticationEntryPoint;
|
||||
import io.gmss.fiscad.security.JwtAuthenticationFilter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.http.HttpMethod;
|
||||
import org.springframework.security.authentication.AuthenticationProvider;
|
||||
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
|
||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
||||
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
|
||||
import org.springframework.security.config.http.SessionCreationPolicy;
|
||||
import org.springframework.security.web.SecurityFilterChain;
|
||||
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
|
||||
import org.springframework.web.cors.CorsConfiguration;
|
||||
import org.springframework.web.cors.CorsConfigurationSource;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@EnableWebSecurity
|
||||
@Configuration
|
||||
@EnableMethodSecurity(securedEnabled = true, jsr250Enabled = true, prePostEnabled = true)
|
||||
@RequiredArgsConstructor
|
||||
public class SpringSecurityConfig {
|
||||
|
||||
private final JwtAuthenticationEntryPoint jwtAuthenticationEntryPoint;
|
||||
private final AuthenticationProvider authenticationProvider;
|
||||
private final JwtAuthenticationFilter jwtAuthenticationFilter;
|
||||
|
||||
private static final String[] PUBLIC_ENDPOINTS = {
|
||||
"/api/auth/login",
|
||||
"/api/open/**",
|
||||
"/api/synchronisation/references",
|
||||
"/v3/api-docs/**",
|
||||
"/swagger-ui/**",
|
||||
"/swagger-ui.html",
|
||||
"/error",
|
||||
"/api/**" // A ENLEVER AVANT LA MISE EN PRODUCTION
|
||||
};
|
||||
|
||||
@Bean
|
||||
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
|
||||
|
||||
http
|
||||
// Désactivation CSRF car JWT stateless
|
||||
.csrf(AbstractHttpConfigurer::disable)
|
||||
|
||||
// CORS configuration propre
|
||||
.cors(cors -> cors.configurationSource(corsConfigurationSource()))
|
||||
|
||||
// Gestion des exceptions d’authentification
|
||||
.exceptionHandling(exception ->
|
||||
exception.authenticationEntryPoint(jwtAuthenticationEntryPoint)
|
||||
)
|
||||
|
||||
// Stateless session
|
||||
.sessionManagement(session ->
|
||||
session.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
|
||||
)
|
||||
|
||||
// Configuration des autorisations
|
||||
.authorizeHttpRequests(auth -> auth
|
||||
// Autoriser les requêtes OPTIONS (CORS preflight)
|
||||
.requestMatchers(HttpMethod.OPTIONS, "/**").permitAll()
|
||||
|
||||
// Endpoints publics
|
||||
.requestMatchers(PUBLIC_ENDPOINTS).permitAll()
|
||||
|
||||
// Tout le reste nécessite authentification
|
||||
.anyRequest().authenticated()
|
||||
)
|
||||
|
||||
// Provider d’authentification
|
||||
.authenticationProvider(authenticationProvider)
|
||||
|
||||
// Ajout du filtre JWT avant UsernamePasswordAuthenticationFilter
|
||||
.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
|
||||
|
||||
return http.build();
|
||||
}
|
||||
|
||||
/**
|
||||
* Configuration CORS centralisée.
|
||||
* ⚠️ En production, remplacer "*" par ton domaine frontend.
|
||||
*/
|
||||
@Bean
|
||||
public CorsConfigurationSource corsConfigurationSource() {
|
||||
return request -> {
|
||||
CorsConfiguration configuration = new CorsConfiguration();
|
||||
|
||||
configuration.setAllowedOrigins(List.of("*")); // ⚠️ restreindre en prod
|
||||
configuration.setAllowedMethods(List.of("GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"));
|
||||
configuration.setAllowedHeaders(List.of("*"));
|
||||
configuration.setAllowCredentials(false);
|
||||
|
||||
return configuration;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
import io.gmss.fiscad.security.JwtAuthenticationEntryPoint;
|
||||
import io.gmss.fiscad.security.JwtAuthenticationFilter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.http.HttpMethod;
|
||||
import org.springframework.security.authentication.AuthenticationProvider;
|
||||
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
|
||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
@@ -27,16 +129,15 @@ public class SpringSecurityConfig {
|
||||
private final JwtAuthenticationEntryPoint jwtAuthenticationEntryPoint;
|
||||
private final AuthenticationProvider authenticationProvider;
|
||||
private final JwtAuthenticationFilter jwtAuthenticationFilter;
|
||||
|
||||
|
||||
private static final String[] AUTH_WHITELIST = {
|
||||
"/api/**",
|
||||
// "/api/**",
|
||||
"/api/auth/login",
|
||||
"/api/open/**",
|
||||
"/api/synchronisation/references",
|
||||
"/v3/api-docs/**",
|
||||
"/swagger-ui/**",
|
||||
"/swagger-ui.html"
|
||||
"/swagger-ui.html",
|
||||
"/error"
|
||||
|
||||
};
|
||||
|
||||
@@ -58,7 +159,7 @@ public class SpringSecurityConfig {
|
||||
.exceptionHandling(ex -> ex.authenticationEntryPoint(jwtAuthenticationEntryPoint))
|
||||
.authorizeHttpRequests(req ->
|
||||
req
|
||||
//.requestMatchers(HttpMethod.OPTIONS, "/**").permitAll()
|
||||
.requestMatchers(HttpMethod.OPTIONS, "/**").permitAll()
|
||||
.requestMatchers(AUTH_WHITELIST).permitAll()
|
||||
.anyRequest()
|
||||
.authenticated()
|
||||
@@ -66,11 +167,8 @@ public class SpringSecurityConfig {
|
||||
.authenticationProvider(authenticationProvider)
|
||||
.sessionManagement(session -> session.sessionCreationPolicy(STATELESS))
|
||||
.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class)
|
||||
|
||||
;
|
||||
|
||||
return http.build();
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.SecteurPaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.request.synchronisation.SecteurPayload;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import org.slf4j.Logger;
|
||||
@@ -24,7 +25,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/secteur", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
//@SecurityRequirement(name = "bearer")
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Secteur")
|
||||
//@PreAuthorize("hasRole('ROLE_ADMIN') or hasRole('ROLE_SUPERVISEUR')")
|
||||
public class SecteurController {
|
||||
@@ -314,5 +315,31 @@ public class SecteurController {
|
||||
}
|
||||
|
||||
|
||||
@Operation(
|
||||
summary = "recuperer tous les secteurs d'un departement",
|
||||
description = "Permet de récuperer l'ensemble des secteurs du departement dont l'ID est fourni en path"
|
||||
)
|
||||
@GetMapping("/by-departement-id/{departementId}")
|
||||
public ResponseEntity<?> getSecteurByDepartementId(@PathVariable Long departementId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, secteurService.getListSecteurByDepartementId(departementId), "Secteur trouvé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);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import io.gmss.fiscad.interfaces.decoupage.SectionService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.SectionPaylaodWeb;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import org.slf4j.Logger;
|
||||
@@ -21,7 +22,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/section", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
//@SecurityRequirement(name = "bearer")
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Section")
|
||||
//@PreAuthorize("hasRole('ROLE_ADMIN') or hasRole('ROLE_SUPERVISEUR')")
|
||||
public class SectionController {
|
||||
|
||||
@@ -2,6 +2,7 @@ package io.gmss.fiscad.controllers.infocad.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.metier.Enquete;
|
||||
import io.gmss.fiscad.entities.rfu.metier.EnqueteBatiment;
|
||||
import io.gmss.fiscad.entities.user.User;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
@@ -10,6 +11,8 @@ import io.gmss.fiscad.paylaods.request.crudweb.EnquetePayLoadWeb;
|
||||
import io.gmss.fiscad.paylaods.request.synchronisation.EnquetePayLoad;
|
||||
import io.gmss.fiscad.paylaods.request.EnqueteTraitementPayLoad;
|
||||
import io.gmss.fiscad.paylaods.request.FiltreEnquetePayLoad;
|
||||
import io.gmss.fiscad.security.CurrentUser;
|
||||
import io.gmss.fiscad.security.UserPrincipal;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -48,9 +51,9 @@ public class EnqueteController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createEnquete(@RequestBody @Valid @Validated EnquetePayLoadWeb enquetePayLoadWeb) {
|
||||
try {
|
||||
Enquete enquete = enqueteService.createEnquete(enquetePayLoadWeb);
|
||||
enquetePayLoadWeb = enqueteService.createEnquete(enquetePayLoadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enquete, "Enquete batiment créé avec succès."),
|
||||
new ApiResponse<>(true, enquetePayLoadWeb, "Enquete batiment créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -212,8 +215,8 @@ public class EnqueteController {
|
||||
summary = "Récupérer les enquetes d'une parcelle",
|
||||
description = "Permet de récuperer les enquêtes déjà réalisées sur une parcelles"
|
||||
)
|
||||
@GetMapping("/all/by-parcelle-id/{parcelleId}")
|
||||
public ResponseEntity<?> getAllByEnqueteDecoupageAdmin(@PathVariable Long parcelleId) {
|
||||
@GetMapping("/by-parcelle-id/{parcelleId}")
|
||||
public ResponseEntity<?> getAllByParcelle(@PathVariable Long parcelleId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteService.getEnqueteListByParcelle(parcelleId), "Liste des enquetes chargée avec succès."),
|
||||
@@ -236,6 +239,36 @@ public class EnqueteController {
|
||||
}
|
||||
|
||||
|
||||
@Operation(
|
||||
summary = "Récupérer les enquetes d'une parcelle",
|
||||
description = "Permet de récuperer les enquêtes déjà réalisées sur une parcelles"
|
||||
)
|
||||
@GetMapping("/page/by-parcelle-id/{parcelleId}")
|
||||
public ResponseEntity<?> getAllByParcellePaged(@PathVariable Long parcelleId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteService.getEnqueteListByParcellePageable(parcelleId,pageable), "Liste des enquetes 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/dgi/decoupage-admin-for-enquete")
|
||||
@@ -450,5 +483,8 @@ public class EnqueteController {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -6,10 +6,13 @@ import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.ParcelleService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.FiltreParcelle;
|
||||
import io.gmss.fiscad.paylaods.request.EnqueteTraitementPayLoad;
|
||||
import io.gmss.fiscad.paylaods.request.FiltreEnquetePayLoad;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.EnquetePayLoadWeb;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ParcellePayLoadWeb;
|
||||
import io.gmss.fiscad.security.CurrentUser;
|
||||
import io.gmss.fiscad.security.UserPrincipal;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -28,7 +31,7 @@ import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/parcelle", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
//@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Parcelle")
|
||||
@CrossOrigin(origins = "*")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
@@ -48,9 +51,9 @@ public class ParcelleController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createParcelle(@RequestBody @Valid @Validated ParcellePayLoadWeb parcellePayLoadWeb) {
|
||||
try {
|
||||
Parcelle parcelle = parcelleService.createParcelle(parcellePayLoadWeb);
|
||||
parcellePayLoadWeb = parcelleService.createParcelle(parcellePayLoadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelle, "parcelle créée avec succès."),
|
||||
new ApiResponse<>(true, parcellePayLoadWeb, "parcelle créée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -88,6 +91,7 @@ public class ParcelleController {
|
||||
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);
|
||||
}
|
||||
@@ -118,12 +122,67 @@ public class ParcelleController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
// @GetMapping("/all/by-decoupage")
|
||||
// public ResponseEntity<?> getAllByDecoupage() {
|
||||
// try {
|
||||
// return new ResponseEntity<>(
|
||||
// new ApiResponse<>(true, enqueteService.getEnqueteCommuneArrondBloc(), "Liste des enquetes 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("/id/{id}")
|
||||
public ResponseEntity<?> getParcelleById(@CurrentUser UserPrincipal currentUser, @PathVariable Long id) {
|
||||
try {
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleByIdToDto(userId,id), "enquete trouvé 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")
|
||||
public ResponseEntity<?> getAllParcelle() {
|
||||
public ResponseEntity<?> getAllParcelle(@CurrentUser UserPrincipal currentUser) {
|
||||
try {
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleList(), "Liste des enquetes chargée avec succès."),
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListToDto(userId), "Liste des enquetes chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -142,37 +201,19 @@ public class ParcelleController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/all/by-decoupage")
|
||||
public ResponseEntity<?> getAllByDecoupage() {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteService.getEnqueteCommuneArrondBloc(), "Liste des enquetes 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<?> getAllEnquetePaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
public ResponseEntity<?> getAllParcellePaged(@CurrentUser UserPrincipal currentUser,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleList(pageable), "Liste des enquetes chargée avec succès."),
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListPageableToDto(userId,pageable), "Liste des enquetes chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -192,38 +233,49 @@ public class ParcelleController {
|
||||
}
|
||||
|
||||
|
||||
|
||||
@GetMapping("/id/{id}")
|
||||
public ResponseEntity<?> getStructureById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleById(id), "enquete trouvé 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("/user-id/{userId}")
|
||||
public ResponseEntity<?> getParcellesByUserId(@PathVariable Long userId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
@PostMapping("/all-paged/multi-criteres")
|
||||
public ResponseEntity<?> getAllParcelleFiltrePaged(@CurrentUser UserPrincipal currentUser, @RequestParam int pageNo, @RequestParam int pageSize, @RequestBody FiltreParcelle filtreParcelle) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleDataTableListByUserId(userId,pageable), "enquete trouvé avec succès."),
|
||||
new ApiResponse<>(true, parcelleService.getParcelleByMultiFiltre(userId,filtreParcelle,pageable), "Liste des enquetes 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) {
|
||||
e.printStackTrace();
|
||||
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/by-quartier-id/{quartierId}")
|
||||
public ResponseEntity<?> getAllParcelleByQuartier(@CurrentUser UserPrincipal currentUser,@PathVariable Long quartierId) {
|
||||
try {
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListByQuartierToDto(userId,quartierId), "Liste des enquetes chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -242,6 +294,154 @@ public class ParcelleController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/all-paged/by-quartier-id/{quartierId}")
|
||||
public ResponseEntity<?> getAllParcelleByQuartierPaged(@CurrentUser UserPrincipal currentUser,@PathVariable Long quartierId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListByQuartierPageableToDto(userId,quartierId,pageable), "Liste des enquetes 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/by-rue-id/{rueId}")
|
||||
public ResponseEntity<?> getAllParcelleByRue(@CurrentUser UserPrincipal currentUser,@PathVariable Long rueId) {
|
||||
try {
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListByRueToDto(userId,rueId), "Liste des enquetes 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/by-rue-id/{rueId}")
|
||||
public ResponseEntity<?> getAllParcelleByRuePaged(@CurrentUser UserPrincipal currentUser,@PathVariable Long rueId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
if(currentUser==null)
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous ne pouvez pas accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
Long userId = currentUser.getUser().getId();
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleService.getParcelleListByRuePageableToDto(userId,rueId,pageable), "Liste des enquetes 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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@PutMapping("/syncrhonise-etat-batie-parcelle")
|
||||
public ResponseEntity<?> putSynchroniseEtatBatieParcelle() {
|
||||
try {
|
||||
Integer nombreParcelleSync= parcelleService.majParcelleBatieNonbatie();
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,nombreParcelleSync , "Parcelle mise à jour avec succes."),
|
||||
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("/user-id/{userId}")
|
||||
// public ResponseEntity<?> getParcellesByUserId(@PathVariable Long userId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
// try {
|
||||
// Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
// return new ResponseEntity<>(
|
||||
// new ApiResponse<>(true, parcelleService.getParcelleDataTableListByUserId(userId,pageable), "enquete trouvé 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);
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "ParcelleGeometrie")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class ParcelleGeomController {
|
||||
|
||||
private final ParcelleGeomService parcelleGeomService;
|
||||
@@ -63,6 +63,24 @@ public class ParcelleGeomController {
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/by-quartier-id/{quartierId}")
|
||||
public ResponseEntity<?> getParcellesGeomsByQuartierId(@PathVariable Long quartierId) {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleGeomService.getParcelleGeomListByQuatierId(quartierId), "Liste des parcelle chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
@GetMapping("/page/by-quartier-id/{quartierId}")
|
||||
public ResponseEntity<?> getParcellesGeomsByQuartierIdPaged(@PathVariable Long quartierId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, parcelleGeomService.getParcelleGeomListByQuatierIdPaged(quartierId,pageable), "Liste des parcelle chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
@GetMapping("/by-arrondissement/{codeArrondissement}")
|
||||
public ResponseEntity<?> getParcellesGeomsByArrondissement(@PathVariable String codeArrondissement) {
|
||||
return new ResponseEntity<>(
|
||||
|
||||
@@ -7,12 +7,17 @@ import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.PersonneService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.dto.PersonneCompletDTO;
|
||||
import io.gmss.fiscad.paylaods.request.RecherchePersonneResquestBody;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.EnquetePayLoadWeb;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.PersonnePayLoadWeb;
|
||||
import io.gmss.fiscad.security.CurrentUser;
|
||||
import io.gmss.fiscad.security.UserPrincipal;
|
||||
import jakarta.validation.Valid;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -36,9 +41,9 @@ public class PersonneController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createPersonne(@RequestBody @Valid @Validated PersonnePayLoadWeb personnePayLoadWeb) {
|
||||
try {
|
||||
Personne personne = personneService.createPersonne(personnePayLoadWeb);
|
||||
personnePayLoadWeb = personneService.createPersonne(personnePayLoadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, personne, "Contribuable créé avec succès."),
|
||||
new ApiResponse<>(true, personnePayLoadWeb, "Contribuable créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -99,7 +104,7 @@ public class PersonneController {
|
||||
@GetMapping("/id/{id}")
|
||||
public ResponseEntity<?> getPersonneById(@PathVariable Long id) {
|
||||
try{
|
||||
Optional<Personne> optionalPersonne= personneService.getPersonneById(id);
|
||||
Optional<PersonnePayLoadWeb> optionalPersonne= personneService.getPersonneById(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, optionalPersonne.orElse(null), "Personne retrouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
@@ -111,4 +116,70 @@ public class PersonneController {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@PostMapping("/recherche")
|
||||
public ResponseEntity<?> rechercherPersonne(@RequestBody RecherchePersonneResquestBody recherchePersonneResquestBody ) {
|
||||
try{
|
||||
// personneService.recherchePersonne(recherchePersonneResquestBody);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, personneService.recherchePersonne(recherchePersonneResquestBody), "Personne retrouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}catch (Exception e){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, e.getMessage()),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/all")
|
||||
public ResponseEntity<?> getAllPersonne() {
|
||||
try {
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, personneService.getPersonneList(), "Liste des personnes 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<?> getAllPersonnePaged(@CurrentUser UserPrincipal currentUser,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, personneService.getPersonneList(pageable), "Liste des personnes 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,272 @@
|
||||
package io.gmss.fiscad.controllers.infocad.metier;
|
||||
|
||||
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.PieceService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.PiecePayLoadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping(value = "api/piece", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Piece")
|
||||
@CrossOrigin(origins = "*")
|
||||
public class PieceController {
|
||||
|
||||
private final PieceService pieceService;
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(PieceController.class);
|
||||
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createPiece(@RequestBody @Valid @Validated PiecePayLoadWeb piecePayLoadWeb) {
|
||||
try {
|
||||
piecePayLoadWeb = pieceService.createPiece(piecePayLoadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, piecePayLoadWeb, "Piece créé 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);
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updatePiece(@PathVariable Long id, @RequestBody PiecePayLoadWeb piecePayLoadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.updatePiece(id,piecePayLoadWeb), "Piece 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);
|
||||
}
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete/{id}")
|
||||
public ResponseEntity<?> deletePiece(@PathVariable Long id) {
|
||||
try {
|
||||
pieceService.deletePiece(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, "Piece supprimé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")
|
||||
public ResponseEntity<?> getAllPieceList() {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getPieceListToDto(), "Liste des caractéristiques 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<?> getAllPiecePaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getPieceListToDtoPageable(pageable), "Liste des caractéristiques 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/by-enquete-id/{enqueteId}")
|
||||
public ResponseEntity<?> getAllPieceByEnqueteList(@PathVariable Long enqueteId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getAllPieceByEnqueteToDto(enqueteId), "Liste des pieces 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/by-enquete-id/{enqueteId}")
|
||||
public ResponseEntity<?> getAllPieceByParcellePaged(@PathVariable Long enqueteId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getAllPieceByEnqueteToDtoPageable(enqueteId,pageable), "Liste des pieces 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("/by-enquete-batiment-id/{enqueteBatimentId}")
|
||||
public ResponseEntity<?> getAllPieceByEnqueteBatiment(@PathVariable Long enqueteBatimentId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getAllPieceByEnqueteBatimentToDto(enqueteBatimentId), "Liste des pieces 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("/by-enquete-unite-logement-id/{enqueteUniteLogementId}")
|
||||
public ResponseEntity<?> getAllPieceByEnqueteUniteLogement(@PathVariable Long enqueteUniteLogementId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getAllPieceByEnqueteUniteLogementToDto(enqueteUniteLogementId), "Liste des pieces 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("/id/{id}")
|
||||
public ResponseEntity<?> getPieceById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, pieceService.getPieceByToDto(id), "Piece trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package io.gmss.fiscad.controllers.infocad.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.UploadService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.JobModels;
|
||||
import io.gmss.fiscad.proprietes.ZipStorageProperties;
|
||||
@@ -8,6 +9,9 @@ import io.gmss.fiscad.persistence.repositories.infocad.metier.UploadRepository;
|
||||
import io.gmss.fiscad.service.FileStorageService;
|
||||
import io.gmss.fiscad.service.StringManager;
|
||||
import io.gmss.fiscad.service.ZipAsyncService;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
@@ -45,12 +49,13 @@ import java.util.UUID;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Upload")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class UploadController {
|
||||
|
||||
boolean headIsValid = false;
|
||||
private final ZipAsyncService service;
|
||||
private final ZipStorageProperties props;
|
||||
private final UploadService uploadService;
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(UploadController.class);
|
||||
@Autowired
|
||||
@@ -94,7 +99,7 @@ public class UploadController {
|
||||
|
||||
try {
|
||||
if (uploadRepository.findById(id).isPresent()) {
|
||||
return new ResponseEntity<>(new ApiResponse(true, uploadRepository.getOne(id), "File with id {" + id + "} is found."), HttpStatus.OK);
|
||||
return new ResponseEntity<>(new ApiResponse(true, uploadRepository.findById(id), "File with id {" + id + "} is found."), HttpStatus.OK);
|
||||
} else {
|
||||
return new ResponseEntity<>(new ApiResponse(true, null, "The upload with id {" + id + "} you request for is not found."), HttpStatus.OK);
|
||||
}
|
||||
@@ -139,30 +144,39 @@ public class UploadController {
|
||||
.body(resource);
|
||||
}
|
||||
|
||||
@PostMapping("/save")
|
||||
public ResponseEntity<?> save(@RequestPart(required = true) MultipartFile file, @RequestParam String reference, @RequestParam String description /*, @RequestParam Long idTypeUpload*/) {
|
||||
@PostMapping(
|
||||
value = "/save",
|
||||
consumes = MediaType.MULTIPART_FORM_DATA_VALUE
|
||||
)
|
||||
public ResponseEntity<?> saveFilePieceId(
|
||||
@Parameter(
|
||||
description = "Fichier à uploader",
|
||||
required = true,
|
||||
content = @Content(
|
||||
mediaType = MediaType.APPLICATION_OCTET_STREAM_VALUE,
|
||||
schema = @Schema(type = "string", format = "binary")
|
||||
)
|
||||
)
|
||||
@RequestPart("file") MultipartFile file,
|
||||
|
||||
@Parameter(description = "ID de la pièce", required = true)
|
||||
@RequestParam("pieceId") Long pieceId
|
||||
) {
|
||||
try {
|
||||
Upload upload = new Upload();
|
||||
String fileName = fileStorageService.storeFile(file);
|
||||
upload.setFileName(fileName);
|
||||
upload.setMimeType(file.getContentType());
|
||||
upload.setSize(file.getSize());
|
||||
upload.setOriginalFileName(file.getOriginalFilename());
|
||||
return new ResponseEntity<>(new ApiResponse(true, uploadRepository.save(upload), "File has been created successfully."), HttpStatus.OK);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), HttpStatus.OK);
|
||||
} catch (NullPointerException e) {
|
||||
e.printStackTrace();
|
||||
logger.error(e.getLocalizedMessage());
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "Null value has been detected {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
return ResponseEntity.ok(
|
||||
new ApiResponse(true,
|
||||
uploadService.createUpload(file, pieceId),
|
||||
"File has been created successfully.")
|
||||
);
|
||||
} 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);
|
||||
logger.error(e.getMessage(), e);
|
||||
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
|
||||
.body(new ApiResponse(false, null, e.getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@DeleteMapping("/delete/id/{id}")
|
||||
public ResponseEntity<?> delete(@PathVariable Long id) {
|
||||
try {
|
||||
@@ -229,4 +243,20 @@ public class UploadController {
|
||||
.orElse(ResponseEntity.notFound().build());
|
||||
}
|
||||
|
||||
@GetMapping(path = "/by-piece/{pieceId}")
|
||||
public ResponseEntity<?> getByPiece(@PathVariable("pieceId") Long pieceId) {
|
||||
try{
|
||||
return new ResponseEntity<>(new ApiResponse(true, uploadService.getAllUploadByPiece(pieceId), "Liste des fichier de la piece"), HttpStatus.OK);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "Method POST/GET is required."), 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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Bloc")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class BlocController {
|
||||
|
||||
private final BlocService blocService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Mode d'acquisition")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class ModeAcquisitionController {
|
||||
|
||||
private final ModeAcquisitionService modeAcquisitionService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Nature domaine")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class NatureDomaineController {
|
||||
|
||||
private final NatureDomaineService natureDomaineService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Position représentation")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class PositionRepresentationController {
|
||||
|
||||
private final PositionRepresentationService positionRepresentationService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Profession")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class ProfessionController {
|
||||
|
||||
private final ProfessionService professionService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Situation géographique")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class SituationGeographiqueController {
|
||||
|
||||
private final SituationGeographiqueService situationGeographiqueService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Situation matrimoniale")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class SituationMatrimonialeController {
|
||||
|
||||
private final SituationMatrimonialeService situationMatrimonialeService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Source de droit")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class SourceDroitController {
|
||||
|
||||
private final SourceDroitService sourceDroitService;
|
||||
|
||||
@@ -41,7 +41,7 @@ public class StructureController {
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createStructure(@RequestBody @Valid @Validated StructurePaylaodWeb structurePaylaodWeb) {
|
||||
public ResponseEntity<?> createStructure(@RequestBody StructurePaylaodWeb structurePaylaodWeb) {
|
||||
try {
|
||||
structurePaylaodWeb = structureService.createStructure(structurePaylaodWeb);
|
||||
return new ResponseEntity<>(
|
||||
@@ -211,7 +211,7 @@ public class StructureController {
|
||||
public ResponseEntity<?> getStructureById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, structureService.getStructureByIdToDto(id), "Structure trouvé avec succès."),
|
||||
new ApiResponse<>(true, structureService.getStructureById(id), "Structure trouvé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Type de contestation")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class TypeContestationController {
|
||||
|
||||
private final TypeContestationService typeContestationService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Type de domaine")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class TypeDomaineController {
|
||||
|
||||
private final TypeDomaineService typeDomaineService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Type de personne")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class TypePersonneController {
|
||||
|
||||
private final TypePersonneService typePersonneService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Type de pièce")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class TypePieceController {
|
||||
|
||||
private final TypePieceService typePieceService;
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Type de représentation")
|
||||
@CrossOrigin(origins = "*")
|
||||
@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
//@PreAuthorize("hasRole('ADMIN') or hasRole('SUPERVISEUR') or hasRole('ENQUETEUR')")
|
||||
public class TypeRepresentationController {
|
||||
|
||||
private final TypeRepresentationService typeRepresentationService;
|
||||
|
||||
@@ -39,9 +39,9 @@ public class BatimentController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createBatiment(@RequestBody @Valid @Validated BatimentPaylaodWeb batimentPaylaodWeb) {
|
||||
try {
|
||||
Batiment batiment = batimentService.createBatiment(batimentPaylaodWeb);
|
||||
batimentPaylaodWeb = batimentService.createBatiment(batimentPaylaodWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, batiment, "Batiment créé avec succès."),
|
||||
new ApiResponse<>(true, batimentPaylaodWeb, "Batiment créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -154,6 +154,53 @@ public class BatimentController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/all/by-parcelle-id/{parcelleId}")
|
||||
public ResponseEntity<?> getAllBatimentByParcelleList(@PathVariable Long parcelleId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, batimentService.getBatimentListByParcelle(parcelleId), "Liste des caractéristiques 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/by-parcelle-id/{parcelleId}")
|
||||
public ResponseEntity<?> getAllBatimentByParcellePaged(@PathVariable Long parcelleId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, batimentService.getBatimentListByParcellePageable(parcelleId,pageable), "Liste des caractéristiques 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("/id/{id}")
|
||||
public ResponseEntity<?> getBatimentById(@PathVariable Long id) {
|
||||
try {
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueBatiment;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueBatimentService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueBatimentPayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -21,7 +22,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/caracteristique-caracteristiqueBatiment", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@RequestMapping(value = "api/caracteristique-batiment", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Caractéristique batiment")
|
||||
@CrossOrigin(origins = "*")
|
||||
@@ -35,34 +36,25 @@ public class CaracteristiqueBatimentController {
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createCaracteristiqueBatiment(@RequestBody @Valid @Validated CaracteristiqueBatiment caracteristiqueBatiment) {
|
||||
public ResponseEntity<?> createCaracteristiqueBatiment(@RequestBody @Valid @Validated CaracteristiqueBatimentPayloadWeb caracteristiqueBatimentPayloadWeb) {
|
||||
try {
|
||||
caracteristiqueBatiment = caracteristiqueBatimentService.createCaracteristiqueBatiment(caracteristiqueBatiment);
|
||||
caracteristiqueBatimentPayloadWeb = caracteristiqueBatimentService.createCaracteristiqueBatiment(caracteristiqueBatimentPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatiment, "Caracteristique du batiment créé avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueBatimentPayloadWeb, "Caracteristique du batiment créé 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) {
|
||||
e.printStackTrace();
|
||||
logger.error(e.getLocalizedMessage());
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateCaracteristiqueBatiment(@PathVariable Long id, @RequestBody CaracteristiqueBatiment caracteristiqueBatiment) {
|
||||
public ResponseEntity<?> updateCaracteristiqueBatiment(@PathVariable Long id, @RequestBody CaracteristiqueBatimentPayloadWeb caracteristiqueBatimentPayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.updateCaracteristiqueBatiment(id, caracteristiqueBatiment), "Caracteristique du batiment mise à jour avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.updateCaracteristiqueBatiment(id, caracteristiqueBatimentPayloadWeb), "Caracteristique du batiment mise à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -156,7 +148,7 @@ public class CaracteristiqueBatimentController {
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentById(id), "Caracteristique du batiment trouvée avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentToDto(id), "Caracteristique du batiment trouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -174,4 +166,51 @@ public class CaracteristiqueBatimentController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-enquete-batiment-id/{enqueteBatimentId}")
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentByBatimentId(@PathVariable Long enqueteBatimentId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentListByEnqueteBatiment(enqueteBatimentId), "Caracteristique du batiment trouvé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("/page/by-enquete-batiment-id/{enqueteBatimentId}")
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentByEnqueteBatimentIdPaged(@PathVariable Long enqueteBatimentId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentListByEnqueteBatimentPageable(enqueteBatimentId,pageable), "Caracteristique du batiment trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueParcelle;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueParcelleService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueParcellePayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -35,11 +36,11 @@ public class CaracteristiqueParcelleController {
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createCaracteristiqueParcelle(@RequestBody @Valid @Validated CaracteristiqueParcelle caracteristiqueParcelle) {
|
||||
public ResponseEntity<?> createCaracteristiqueParcelle(@RequestBody @Valid @Validated CaracteristiqueParcellePayloadWeb caracteristiqueParcellePayloadWeb) {
|
||||
try {
|
||||
caracteristiqueParcelle = caracteristiqueParcelleService.createCaracteristiqueParcelle(caracteristiqueParcelle);
|
||||
caracteristiqueParcellePayloadWeb = caracteristiqueParcelleService.createCaracteristiqueParcelle(caracteristiqueParcellePayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueParcelle, "Caracteristique parcelle créé avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueParcellePayloadWeb, "Caracteristique parcelle créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -59,10 +60,10 @@ public class CaracteristiqueParcelleController {
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateCaracteristiqueParcelle(@PathVariable Long id, @RequestBody CaracteristiqueParcelle caracteristiqueParcelle) {
|
||||
public ResponseEntity<?> updateCaracteristiqueParcelle(@PathVariable Long id, @RequestBody CaracteristiqueParcellePayloadWeb caracteristiqueParcellePayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueParcelleService.updateCaracteristiqueParcelle(id, caracteristiqueParcelle), "Caracteristique parcelle mise à jour avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueParcelleService.updateCaracteristiqueParcelle(id, caracteristiqueParcellePayloadWeb), "Caracteristique parcelle mise à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -174,4 +175,52 @@ public class CaracteristiqueParcelleController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/by-enquete-id/{enqueteId}")
|
||||
public ResponseEntity<?> getAllCaracteristiqueParcelleList(@PathVariable Long enqueteId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueParcelleService.getCaracteristiqueParcelleByEnqueteList(enqueteId), "Liste des Caracteristiques parcelles 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("/page/by-enquete-id/{enqueteId}")
|
||||
public ResponseEntity<?> getAllCaracteristiqueParcellePaged(@PathVariable Long enqueteId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueParcelleService.getCaracteristiqueParcelleByEnqueteListPageable(enqueteId,pageable), "Liste des Caracteristiques parcelles 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueUniteLogement;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueUniteLogementService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueUniteLogementPayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -35,11 +36,11 @@ public class CaracteristiqueUniteLogementController {
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createCaracteristiqueUniteLogement(@RequestBody @Valid @Validated CaracteristiqueUniteLogement caracteristiqueUniteLogement) {
|
||||
public ResponseEntity<?> createCaracteristiqueUniteLogement(@RequestBody @Valid @Validated CaracteristiqueUniteLogementPayloadWeb caracteristiqueUniteLogementPayloadWeb) {
|
||||
try {
|
||||
caracteristiqueUniteLogement = caracteristiqueUniteLogementService.createCaracteristiqueUniteLogement(caracteristiqueUniteLogement);
|
||||
caracteristiqueUniteLogementPayloadWeb = caracteristiqueUniteLogementService.createCaracteristiqueUniteLogement(caracteristiqueUniteLogementPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogement, "Caracteristique Unite Logement créé avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogementPayloadWeb, "Caracteristique Unite Logement créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -59,10 +60,10 @@ public class CaracteristiqueUniteLogementController {
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateCaracteristiqueUniteLogement(@PathVariable Long id, @RequestBody CaracteristiqueUniteLogement caracteristiqueUniteLogement) {
|
||||
public ResponseEntity<?> updateCaracteristiqueUniteLogement(@PathVariable Long id, @RequestBody CaracteristiqueUniteLogementPayloadWeb caracteristiqueUniteLogementPayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogementService.updateCaracteristiqueUniteLogement(id, caracteristiqueUniteLogement), "Caracteristique Unite Logement mise à jour avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogementService.updateCaracteristiqueUniteLogement(id, caracteristiqueUniteLogementPayloadWeb), "Caracteristique Unite Logement mise à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -174,4 +175,51 @@ public class CaracteristiqueUniteLogementController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-enquete-ulo-id/{enqueteUloId}")
|
||||
public ResponseEntity<?> getAllCaracteristiqueUniteLogementListByEul(@PathVariable Long enqueteUloId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogementService.getCaracteristiqueUniteLogementListbyEul(enqueteUloId), "Liste des Caracteristiques Unite 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("/page/by-enquete-ulo-id/{enqueteUloId}")
|
||||
public ResponseEntity<?> getAllCaracteristiqueUniteLogementByEulPaged(@PathVariable Long enqueteUloId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueUniteLogementService.getCaracteristiqueUniteLogementListByEul(enqueteUloId,pageable), "Liste des Caracteristiques Unite 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,226 @@
|
||||
package io.gmss.fiscad.controllers.rfu.metier;
|
||||
|
||||
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.DeclarationNcService;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.EnqueteBatimentService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.DeclarationNcPayloadWeb;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.EnqueteBatimentPayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping(value = "api/declaration-nc", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Déclaration NC")
|
||||
@CrossOrigin(origins = "*")
|
||||
public class DeclarationNcController {
|
||||
|
||||
private final DeclarationNcService declarationNcService;
|
||||
private static final Logger logger = LoggerFactory.getLogger(DeclarationNcController.class);
|
||||
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createDeclarationNc(@RequestBody @Valid @Validated DeclarationNcPayloadWeb declarationNcPayloadWeb) {
|
||||
try {
|
||||
declarationNcPayloadWeb = declarationNcService.createDeclarationNc(declarationNcPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcPayloadWeb, "Déclaration NC créé 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);
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateEnqueteBatiment(@PathVariable Long id, @RequestBody DeclarationNcPayloadWeb declarationNcPayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.updateDeclarationNc(id, declarationNcPayloadWeb), "Enquete batiment 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);
|
||||
}
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete/{id}")
|
||||
public ResponseEntity<?> deleteEnqueteBatiment(@PathVariable Long id) {
|
||||
try {
|
||||
declarationNcService.deleteDeclarationNc(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, "Déclaration Nc supprimé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")
|
||||
public ResponseEntity<?> getAllEnqueteBatimentList() {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.getDeclarationNcList(), "Liste des Enquetes batiments 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<?> getAllEnqueteBatimentPaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.getDeclarationNcList(pageable), "Liste des Enquetes batiments 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("/id/{id}")
|
||||
public ResponseEntity<?> getEnqueteBatimentById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.getDeclarationNcById(id), "Enquete batiment trouvé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("/by-personne-id/{personneId}")
|
||||
public ResponseEntity<?> getDeclarationNcByPersonne(@PathVariable Long personneId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.getDeclarationNcByPersonneList(personneId), "Déclarations NC trouvé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("/page/by-personne-id/{personneId}")
|
||||
public ResponseEntity<?> getDeclarationNcByPersonnePaged(@PathVariable Long personneId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, declarationNcService.getDeclarationNcByPersonneList(personneId,pageable), "Déclaration NC trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7,7 +7,10 @@ import io.gmss.fiscad.enums.StatusAvis;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.DonneesImpositionTfuService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
||||
import io.gmss.fiscad.security.CurrentUser;
|
||||
import io.gmss.fiscad.security.UserPrincipal;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -160,6 +163,104 @@ public class DonneesImpositionTfuController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/all-page/by-imposition-id/{impositionId}")
|
||||
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdPaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, donneesImpositionTfuService.getDonneesFiscalesByImpositionTfuIdPageable(impositionId, pageable), "Liste des caractéristiques 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/non-batie/{impositionId}")
|
||||
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdNonBatiePaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, donneesImpositionTfuService.getDonneesFiscalesByImpositionTfuIdNonBatiePageable(impositionId, pageable), "Liste des caractéristiques 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/batie-batiment/{impositionId}")
|
||||
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdBatieBatimentPaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, donneesImpositionTfuService.getDonneesFiscalesByImpositionTfuIdBatieBatimentPageable(impositionId, pageable), "Liste des caractéristiques 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/batie-unite-logement/{impositionId}")
|
||||
public ResponseEntity<?> getAllDonneesImpositionTfuByImpositionIdBatieUniteLogPaged(@PathVariable Long impositionId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, donneesImpositionTfuService.getDonneesFiscalesByImpositionTfuIdBatieUniteLogPageable(impositionId, pageable), "Liste des caractéristiques 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("/id/{id}")
|
||||
public ResponseEntity<?> getDonneesImpositionTfuById(@PathVariable Long id) {
|
||||
try {
|
||||
@@ -182,31 +283,91 @@ public class DonneesImpositionTfuController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
@Operation(summary = "Générer les données fiscales TFU")
|
||||
@PostMapping("/generer")
|
||||
public ResponseEntity<?> genererDonneesFiscale(@RequestBody ImpositionsTfu impositionsTfu) {
|
||||
@Operation(summary = "Générer les données fiscales TFU des parcelle baties")
|
||||
@PostMapping("/generer-batie")
|
||||
public ResponseEntity<?> genererDonneesFiscaleBatie(@CurrentUser UserPrincipal userPrincipal, @RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
try {
|
||||
Optional<ImpositionsTfu> optionalImpositionsTfu =impositionsTfuRepository.findById(impositionsTfu.getId());
|
||||
Optional<ImpositionsTfu> optionalImpositionsTfu =impositionsTfuRepository.findById(impositionsTfuPaylaodWeb.getId());
|
||||
|
||||
if(optionalImpositionsTfu.isEmpty()){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "L'imposition tfu n'est pas trouvée."),
|
||||
new ApiResponse<>(false, null, "L'instance d'imposition n'est pas trouvée."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
if(!optionalImpositionsTfu.get().getStatusAvis().equals(StatusAvis.CREE)){
|
||||
if(!optionalImpositionsTfu.get().getStatusAvis().equals(StatusAvis.TFU_FNB_GENERE)){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "le statut actuel ne permet pas cette opération."),
|
||||
new ApiResponse<>(false, null, "l'état actuel : "+optionalImpositionsTfu.get().getStatusAvis()+" ne permet pas cette opération."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
optionalImpositionsTfu.get().setStatusAvis(StatusAvis.GENERE);
|
||||
if(userPrincipal==null){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "Vous n'êtes pas autorisé à accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
impositionsTfuPaylaodWeb=donneesImpositionTfuService.genererDonneesFiscalesParcelleBatie(impositionsTfuPaylaodWeb,userPrincipal.getUser().getId());
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, donneesImpositionTfuService.genererDonneesFiscales(optionalImpositionsTfu.get()), "DonneesImpositionTfu trouvée avec succès."),
|
||||
new ApiResponse<>(true,impositionsTfuPaylaodWeb, "Données d'imposition des fonciers batis Géné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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Operation(summary = "Générer les données fiscales TFU des parcelle baties")
|
||||
@PostMapping("/generer-non-batie")
|
||||
public ResponseEntity<?> genererDonneesImpositionNonBaties(@CurrentUser UserPrincipal userPrincipal, @RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
try {
|
||||
Optional<ImpositionsTfu> optionalImpositionsTfu =impositionsTfuRepository.findById(impositionsTfuPaylaodWeb.getId());
|
||||
|
||||
if(optionalImpositionsTfu.isEmpty()){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "L'instance d'imposition n'est pas trouvée."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
if(!optionalImpositionsTfu.get().getStatusAvis().equals(StatusAvis.GENERATION_AUTORISE)){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "l'état actuel : "+optionalImpositionsTfu.get().getStatusAvis()+" ne permet pas cette opération."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
if(userPrincipal==null){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "Vous n'êtes pas autorisé à accéder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
impositionsTfuPaylaodWeb=donneesImpositionTfuService.genererDonneesFiscalesParcelleNonBatie(impositionsTfuPaylaodWeb,userPrincipal.getUser().getId());
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,impositionsTfuPaylaodWeb, "Données d'imposition pour les fonciers non batis Géné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);
|
||||
|
||||
@@ -38,9 +38,9 @@ public class EnqueteBatimentController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createEnqueteBatiment(@RequestBody @Valid @Validated EnqueteBatimentPayloadWeb enqueteBatimentPayloadWeb) {
|
||||
try {
|
||||
EnqueteBatiment enqueteBatiment = enqueteBatimentService.createEnqueteBatiment(enqueteBatimentPayloadWeb);
|
||||
enqueteBatimentPayloadWeb = enqueteBatimentService.createEnqueteBatiment(enqueteBatimentPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteBatiment, "Enquete batiment créé avec succès."),
|
||||
new ApiResponse<>(true, enqueteBatimentPayloadWeb, "Enquete batiment créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -176,4 +176,51 @@ public class EnqueteBatimentController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getEnqueteBatimentByBatimentId(@PathVariable Long batimentId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteBatimentService.getEnqueteBatimentByBatimentList(batimentId), "Enquete batiment trouvé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("/page/by-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getEnqueteBatimentByBatimentIdPaged(@PathVariable Long batimentId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteBatimentService.getEnqueteBatimentByBatimentListPageable(batimentId,pageable), "Enquete batiment trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,9 +38,9 @@ public class EnqueteUniteLogementController {
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createEnqueteUniteLogement(@RequestBody @Valid @Validated EnqueteUniteLogementPayloadWeb enqueteUniteLogementPayloadWeb) {
|
||||
try {
|
||||
EnqueteUniteLogement enqueteUniteLogement = enqueteUniteLogementService.createEnqueteUniteLogement(enqueteUniteLogementPayloadWeb);
|
||||
enqueteUniteLogementPayloadWeb = enqueteUniteLogementService.createEnqueteUniteLogement(enqueteUniteLogementPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogement, "Enquete unite logement créé avec succès."),
|
||||
new ApiResponse<>(true, enqueteUniteLogementPayloadWeb, "Enquete unite logement créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -176,4 +176,51 @@ public class EnqueteUniteLogementController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-unite-logement-id/{uniteLogementId}")
|
||||
public ResponseEntity<?> getEnqueteUniteLogementByUniteLogement(@PathVariable Long uniteLogementId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.getEnqueteUniteLogementUniteLogementList(uniteLogementId), "Enquete unite de logement trouvé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("/page/by-unite-logement-id/{uniteLogementId}")
|
||||
public ResponseEntity<?> getEnqueteUniteLogementByUniteLogementPaged(@PathVariable Long uniteLogementId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.getEnqueteUniteLogementByUniteLogementListPageable(uniteLogementId,pageable), "Enquete unite de logement trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,12 +2,21 @@ package io.gmss.fiscad.controllers.rfu.metier;
|
||||
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.metier.ImpositionsTfu;
|
||||
import io.gmss.fiscad.entities.user.User;
|
||||
import io.gmss.fiscad.enums.StatusAvis;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.ImpositionsTfuService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import io.gmss.fiscad.security.CurrentUser;
|
||||
import io.gmss.fiscad.security.UserPrincipal;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import jakarta.ws.rs.NotAcceptableException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
@@ -21,6 +30,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping(value = "api/impositions-tfu", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Impositions TFU")
|
||||
@@ -28,41 +38,32 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
public class ImpositionsTfuController {
|
||||
|
||||
private final ImpositionsTfuService impositionsTfuService;
|
||||
private final EnqueteService enqueteService;
|
||||
private static final Logger logger = LoggerFactory.getLogger(ImpositionsTfuController.class);
|
||||
|
||||
public ImpositionsTfuController(ImpositionsTfuService impositionsTfuService) {
|
||||
this.impositionsTfuService = impositionsTfuService;
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createImpositionsTfu(@RequestBody @Valid @Validated ImpositionsTfu impositionsTfu) {
|
||||
public ResponseEntity<?> createImpositionsTfu(@CurrentUser UserPrincipal currentUser,@RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
try {
|
||||
impositionsTfu = impositionsTfuService.createImpositionsTfu(impositionsTfu);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfu, "Unite de logement créé 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);
|
||||
}
|
||||
}
|
||||
if(currentUser==null){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "Vous n'etes pas autorisé à accéder à cette ressource."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
User user=currentUser.getUser();
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateImpositionsTfu(@PathVariable Long id, @RequestBody ImpositionsTfu impositionsTfu) {
|
||||
try {
|
||||
if(user.getStructure().getId()!=impositionsTfuPaylaodWeb.getStructureId()){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, null, "Vous n'etes pas autorisé à accéder à cette ressource."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
|
||||
impositionsTfuPaylaodWeb = impositionsTfuService.createImpositionsTfu(impositionsTfuPaylaodWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfuService.updateImpositionsTfu(id, impositionsTfu), "Unite de logement mise à jour avec succès."),
|
||||
new ApiResponse<>(true, impositionsTfuPaylaodWeb, "Unite de logement créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -82,11 +83,27 @@ public class ImpositionsTfuController {
|
||||
}
|
||||
|
||||
|
||||
@PutMapping("/valider/{id}")
|
||||
public ResponseEntity<?> validerImpositionsTfu(@RequestBody ImpositionsTfu impositionsTfu) {
|
||||
@PutMapping("/cloturer-enquete")
|
||||
public ResponseEntity<?> cloturer(@CurrentUser UserPrincipal userPrincipal, @RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb ) {
|
||||
try {
|
||||
|
||||
if(userPrincipal==null){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, null, "Accès non autorisé"),
|
||||
HttpStatus.NOT_ACCEPTABLE
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
User user= userPrincipal.getUser();
|
||||
if(user.getStructure().getId()!=impositionsTfuPaylaodWeb.getStructureId()){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true,null, "Vous n'êtes pas autorisé à cloturer les enquetes du : "+user.getStructure().getNom()),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfuService.validerImpositionsTfu(impositionsTfu), "Unite de logement mise à jour avec succès."),
|
||||
new ApiResponse<>(true, impositionsTfuService.cloturerImpositionsTfu(impositionsTfuPaylaodWeb), "enquete cloturées avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -105,11 +122,62 @@ public class ImpositionsTfuController {
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/annuler/{id}")
|
||||
public ResponseEntity<?> annulerImpositionsTfu(@PathVariable Long id, @RequestBody ImpositionsTfu impositionsTfu) {
|
||||
// @PutMapping("/update/{id}")
|
||||
// public ResponseEntity<?> updateImpositionsTfu(@PathVariable Long id, @RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
// try {
|
||||
// return new ResponseEntity<>(
|
||||
// new ApiResponse<>(true, impositionsTfuService.updateImpositionsTfu(id, impositionsTfuPaylaodWeb), "Unite de logement 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);
|
||||
// }
|
||||
// }
|
||||
|
||||
@Operation(
|
||||
summary = "Autoriser la génération des avis d'un centre",
|
||||
description = "Permet d'autoriser la génération des avis d'un centre pour un exervice données"
|
||||
)
|
||||
|
||||
@PutMapping("/autoriser-generation-avis")
|
||||
public ResponseEntity<?> autoriserImpositionsTfu(@RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfuService.annulerImpositionsTfu(impositionsTfu), "Unite de logement mise à jour avec succès."),
|
||||
new ApiResponse<>(true, impositionsTfuService.autoriserGenerationImpositionsTfu(impositionsTfuPaylaodWeb), "Unite de logement 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);
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/rejeter")
|
||||
public ResponseEntity<?> annulerImpositionsTfu(@RequestBody ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfuService.rejeterImpositionsTfu(impositionsTfuPaylaodWeb), "Unite de logement mise à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -152,11 +220,19 @@ public class ImpositionsTfuController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public ResponseEntity<?> getAllImpositionsTfuList() {
|
||||
@GetMapping("/all/by-user")
|
||||
public ResponseEntity<?> getAllImpositionsTfuList(@CurrentUser UserPrincipal userPrincipal) {
|
||||
try {
|
||||
|
||||
if(userPrincipal==null){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, null, "Vous n'êtes pas autorisé à acceder à cette ressource"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
User user= userPrincipal.getUser();
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, impositionsTfuService.getImpositionsTfuList(), "Liste des Enquetes des unites Logements chargée avec succès."),
|
||||
new ApiResponse<>(true, impositionsTfuService.getImpositionsTfuByUserIdIds(user.getId()), "Liste des Enquetes des unites Logements chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.gmss.fiscad.entities.rfu.metier.UniteLogement;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.UniteLogementService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.UniteLogementPaylaodWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -35,11 +36,11 @@ public class UniteLogementController {
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createUniteLogement(@RequestBody @Valid @Validated UniteLogement enqueteUniteLogement) {
|
||||
public ResponseEntity<?> createUniteLogement(@RequestBody @Valid @Validated UniteLogementPaylaodWeb enqueteUniteLogementPaylaodWeb) {
|
||||
try {
|
||||
enqueteUniteLogement = enqueteUniteLogementService.createUniteLogement(enqueteUniteLogement);
|
||||
enqueteUniteLogementPaylaodWeb = enqueteUniteLogementService.createUniteLogement(enqueteUniteLogementPaylaodWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogement, "Unite de logement créé avec succès."),
|
||||
new ApiResponse<>(true, enqueteUniteLogementPaylaodWeb, "Unite de logement créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -59,10 +60,10 @@ public class UniteLogementController {
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateUniteLogement(@PathVariable Long id, @RequestBody UniteLogement enqueteUniteLogement) {
|
||||
public ResponseEntity<?> updateUniteLogement(@PathVariable Long id, @RequestBody UniteLogementPaylaodWeb enqueteUniteLogementPaylaodWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.updateUniteLogement(id, enqueteUniteLogement), "Unite de logement mise à jour avec succès."),
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.updateUniteLogement(id, enqueteUniteLogementPaylaodWeb), "Unite de logement mise à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -153,6 +154,54 @@ public class UniteLogementController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/all/by-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getAllUniteLogementListByBatiment(@PathVariable Long batimentId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.getUniteLogementListByBatiment(batimentId), "Liste des Enquetes des unites Logements 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/by-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getAllUniteLogementByBatimentPaged(@PathVariable Long batimentId, @RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.getUniteLogementListByBatimentPageable(batimentId,pageable), "Liste des enquetes des unites de logements 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("/id/{id}")
|
||||
public ResponseEntity<?> getUniteLogementById(@PathVariable Long id) {
|
||||
try {
|
||||
@@ -175,4 +224,27 @@ public class UniteLogementController {
|
||||
return new ResponseEntity<>(new ApiResponse(false, null, "An error has been occur and the content is {" + e.getMessage() + "}."), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-parcelle-id/{id}")
|
||||
public ResponseEntity<?> getUniteLogementByParcelleId(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, enqueteUniteLogementService.getUniteLogementListByParcelle(id), "Unite de de logement trouvé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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,8 +2,9 @@ package io.gmss.fiscad.controllers.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuBati;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuService;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuBatiService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuBatiPayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -24,20 +25,20 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Barem Rfu")
|
||||
public class BaremRfuController {
|
||||
private final BaremRfuService baremRfuService;
|
||||
private final BaremRfuBatiService baremRfuBatiService;
|
||||
private static final Logger logger = LoggerFactory.getLogger(BaremRfuController.class);
|
||||
|
||||
public BaremRfuController(BaremRfuService baremRfuService) {
|
||||
this.baremRfuService = baremRfuService;
|
||||
public BaremRfuController(BaremRfuBatiService baremRfuBatiService) {
|
||||
this.baremRfuBatiService = baremRfuBatiService;
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createBaremRfu(@RequestBody @Valid @Validated BaremRfuBati baremRfuBati) {
|
||||
public ResponseEntity<?> createBaremRfu(@RequestBody @Valid @Validated BaremRfuBatiPayloadWeb baremRfuBatiPayloadWeb) {
|
||||
try {
|
||||
baremRfuBati = baremRfuService.createBaremRfu(baremRfuBati);
|
||||
baremRfuBatiPayloadWeb = baremRfuBatiService.createBaremRfu(baremRfuBatiPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuBati, "BaremRfuBati créé avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiPayloadWeb, "BaremRfuBati créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -57,10 +58,10 @@ public class BaremRfuController {
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateBaremRfu(@PathVariable Long id, @RequestBody BaremRfuBati baremRfuBati) {
|
||||
public ResponseEntity<?> updateBaremRfu(@PathVariable Long id, @RequestBody BaremRfuBatiPayloadWeb baremRfuBatiPayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuService.updateBaremRfu(id, baremRfuBati), "BaremRfuBati mis à jour avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiService.updateBaremRfu(id, baremRfuBatiPayloadWeb), "BaremRfuBati mis à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -82,7 +83,7 @@ public class BaremRfuController {
|
||||
@DeleteMapping("/delete/{id}")
|
||||
public ResponseEntity<?> deleteBaremRfur(@PathVariable Long id) {
|
||||
try {
|
||||
baremRfuService.deleteBaremRfu(id);
|
||||
baremRfuBatiService.deleteBaremRfu(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, "BaremRfuBati supprimée avec succès."),
|
||||
HttpStatus.OK
|
||||
@@ -107,7 +108,7 @@ public class BaremRfuController {
|
||||
public ResponseEntity<?> getAllBaremRfuList() {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuService.getBaremRfuList(), "Liste des baremRfus chargée avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuList(), "Liste des baremRfus chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -132,7 +133,7 @@ public class BaremRfuController {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuService.getBaremRfuList(pageable), "Liste des baremRfus chargée avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuList(pageable), "Liste des baremRfus chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -155,7 +156,7 @@ public class BaremRfuController {
|
||||
public ResponseEntity<?> getBaremRfuById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuService.getBaremRfuById(id), "BaremRfuBati trouvée avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuById(id), "BaremRfuBati trouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -174,13 +175,68 @@ public class BaremRfuController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/categorie-batiment/{idCategorieBatiment}")
|
||||
@GetMapping("/by-categorie-batiment-id/{idCategorieBatiment}")
|
||||
public ResponseEntity<?> getBaremRfuByType( //@Parameter(description = "ID de la catégorie de bâtiment", required = true)
|
||||
@PathVariable Long idCategorieBatiment) {
|
||||
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuService.getBaremRfuByType(idCategorieBatiment), "Liste des baremRfu par categorie de batiments chargée avec succès."),
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuByCategorieBatiment(idCategorieBatiment), "Liste des baremRfu par categorie de batiments 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("/by-arrondissement-id/by-categorie-batiment-id/{idArrondissement}/{idCategorieBatiment}")
|
||||
public ResponseEntity<?> getBaremRfuByArrondisementAndCategorie( //@Parameter(description = "ID de la catégorie de bâtiment", required = true)
|
||||
@PathVariable Long idArrondissement,
|
||||
@PathVariable Long idCategorieBatiment
|
||||
) {
|
||||
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuByArrondissementAndCategorieBatiment(idArrondissement,idCategorieBatiment), "Liste des baremRfu par categorie de batiments 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("/by-quartier-id/by-categorie-batiment-id/{idQuartier}/{idCategorieBatiment}")
|
||||
public ResponseEntity<?> getBaremRfuByQuartierAndCategorie( //@Parameter(description = "ID de la catégorie de bâtiment", required = true)
|
||||
@PathVariable Long idQuartier,
|
||||
@PathVariable Long idCategorieBatiment
|
||||
) {
|
||||
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuBatiService.getBaremRfuByQuartierAndCategorieBatiment(idQuartier,idCategorieBatiment), "Liste des baremRfu par categorie de batiments chargée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
|
||||
@@ -4,6 +4,7 @@ import io.gmss.fiscad.entities.rfu.parametre.BaremRfuNonBati;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuNonBatiService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuNonBatiPayloadWeb;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -34,11 +35,11 @@ public class BaremRfuNonBatiController {
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createBaremRfuNonBati(@RequestBody @Valid @Validated BaremRfuNonBati baremRfuNonBati) {
|
||||
public ResponseEntity<?> createBaremRfuNonBati(@RequestBody BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) {
|
||||
try {
|
||||
baremRfuNonBati = baremRfuNonBatiService.createBaremRfuNonBati(baremRfuNonBati);
|
||||
baremRfuNonBatiPayloadWeb = baremRfuNonBatiService.createBaremRfuNonBati(baremRfuNonBatiPayloadWeb);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuNonBati, "BaremRfuNonBati créé avec succès."),
|
||||
new ApiResponse<>(true, baremRfuNonBatiPayloadWeb, "BaremRfuNonBati créé avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -58,10 +59,10 @@ public class BaremRfuNonBatiController {
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateBaremRfuNonBati(@PathVariable Long id, @RequestBody BaremRfuNonBati baremRfuNonBati) {
|
||||
public ResponseEntity<?> updateBaremRfuNonBati(@PathVariable Long id, @RequestBody BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuNonBatiService.updateBaremRfuNonBati(id, baremRfuNonBati), "BaremRfuNonBati mis à jour avec succès."),
|
||||
new ApiResponse<>(true, baremRfuNonBatiService.updateBaremRfuNonBati(id, baremRfuNonBatiPayloadWeb), "BaremRfuNonBati mis à jour avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -156,7 +157,31 @@ public class BaremRfuNonBatiController {
|
||||
public ResponseEntity<?> getBaremRfuNonBatiById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuNonBatiService.getBaremRfuNonBatiById(id), "BaremRfuNonBati trouvée avec succès."),
|
||||
new ApiResponse<>(true, baremRfuNonBatiService.getBaremRfuNonBatiById(id).orElse(null), "BaremRfuNonBati trouvé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("/by-commune-id/by-zone-id/{communeId}/{zoneId}")
|
||||
public ResponseEntity<?> getBaremRfuNonBatiByCommineAndZoneId(@PathVariable Long communeId, Long zoneId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, baremRfuNonBatiService.getBaremRfuNonBatiByCommuneAndZoneId(communeId,zoneId).orElse(null), "BaremRfuNonBati trouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
package io.gmss.fiscad.controllers.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import io.gmss.fiscad.exceptions.*;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.UsageService;
|
||||
import io.gmss.fiscad.paylaods.ApiResponse;
|
||||
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Valid;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/usage", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Usage")
|
||||
public class UsageController {
|
||||
|
||||
private final UsageService usageService;
|
||||
private static final Logger logger = LoggerFactory.getLogger(UsageController.class);
|
||||
|
||||
public UsageController(UsageService usageService) {
|
||||
this.usageService = usageService;
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public ResponseEntity<?> createUsage(@RequestBody @Valid @Validated Usage usage) {
|
||||
try {
|
||||
usage = usageService.createUsage(usage);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, usage, "Usage créé 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);
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping("/update/{id}")
|
||||
public ResponseEntity<?> updateUsage(@PathVariable Long id, @RequestBody Usage usage) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, usageService.updateUsage(id, usage), "Usage mis à 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);
|
||||
}
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete/{id}")
|
||||
public ResponseEntity<?> deleteUsager(@PathVariable Long id) {
|
||||
try {
|
||||
usageService.deleteUsage(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, "Usage supprimé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")
|
||||
public ResponseEntity<?> getAllUsageList() {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, usageService.getUsageList(), "Liste des usages 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<?> getAllUsagePaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
try {
|
||||
Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, usageService.getUsageList(pageable), "Liste des usages 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("/id/{id}")
|
||||
public ResponseEntity<?> getUsageById(@PathVariable Long id) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, usageService.getUsageById(id), "Usage trouvé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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -116,18 +116,5 @@ public class AuthController {
|
||||
}
|
||||
}
|
||||
|
||||
private User getUser(UserRequest userRequest) {
|
||||
User user = new User();
|
||||
user.setNom(userRequest.getNom());
|
||||
user.setPrenom(userRequest.getPrenom());
|
||||
user.setTel(userRequest.getTelephone());
|
||||
user.setEmail(userRequest.getEmail());
|
||||
user.setUsername(userRequest.getEmail());
|
||||
user.setPassword(userRequest.getPassword());
|
||||
user.setActive(false);
|
||||
//Set<Role> roleSet = new HashSet<>();
|
||||
//user.setAvoirFonctions(roleSet);
|
||||
user.setStructure(structureService.getStructureById(userRequest.getStructureId()).get());
|
||||
return user;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ import org.springframework.web.client.HttpClientErrorException;
|
||||
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "api/profile", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@RequestMapping(value = "api/profil", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
@SecurityRequirement(name = "bearer")
|
||||
@Tag(name = "Profile")
|
||||
@CrossOrigin(origins = "*")
|
||||
|
||||
@@ -94,7 +94,7 @@ public class UserController {
|
||||
@PostMapping("/reset-password")
|
||||
public ResponseEntity<?> resetUserPassword(@RequestBody @Valid @Validated Login login) {
|
||||
try {
|
||||
UserPaylaodWeb userPaylaodWeb= userService.resetPassword(login.getUsername(), login.getPassword());
|
||||
UserPaylaodWeb userPaylaodWeb= userService.resetPassword(login.getUsername());
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, userPaylaodWeb, "Votre mot de passe à été réinitialisée avec succès."),
|
||||
HttpStatus.OK
|
||||
@@ -163,31 +163,37 @@ public class UserController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/activate-or-not/{id}")
|
||||
public ResponseEntity<?> acitvateOrNotUser(@PathVariable Long id) {
|
||||
@GetMapping("/activate/{id}")
|
||||
public ResponseEntity<?> acitvateUser(@PathVariable Long id) {
|
||||
try {
|
||||
|
||||
User user = userService.getUserById(id);
|
||||
// if(user.getAvoirFonctions().isEmpty()){
|
||||
// return new ResponseEntity<>(
|
||||
// new ApiResponse<>(false, user , "Ce compte n'est pas encore validé."),
|
||||
// HttpStatus.OK
|
||||
// );
|
||||
// }
|
||||
|
||||
if(user.isResetPassword()){
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(false, user , "Ce compte n'est pas encore validé."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}
|
||||
user = userService.activateOrNotUser(id);
|
||||
String message = "Utilisateur activé avec succès";
|
||||
if (!user.isActive()) {
|
||||
message = "Utilisateur désactivé avec succès";
|
||||
}
|
||||
User user = userService.activateUser(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, user, message),
|
||||
new ApiResponse<>(true, user, "Utilisateur activé 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("/desactivate/{id}")
|
||||
public ResponseEntity<?> disacitvateUser(@PathVariable Long id) {
|
||||
try {
|
||||
User user = userService.disactivateUser(id);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, user, "Utilisateur désactivé avec succès"),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -330,14 +336,6 @@ public class UserController {
|
||||
|
||||
}
|
||||
|
||||
// @GetMapping("/all-paged")
|
||||
// public ResponseEntity<?> getAllpaged(@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
// Pageable pageable = PageRequest.of(pageNo, pageSize);
|
||||
// return new ResponseEntity<>(
|
||||
// new ApiResponse<>(true, userService.getUserList(pageable), "Liste des utilisateurs chargée avec succès."),
|
||||
// HttpStatus.OK
|
||||
// );
|
||||
// }
|
||||
|
||||
@GetMapping("/id/{id}")
|
||||
public ResponseEntity<?> getUserById(@PathVariable Long id) {
|
||||
|
||||
28
src/main/java/io/gmss/fiscad/entities/Parameters.java
Executable file
28
src/main/java/io/gmss/fiscad/entities/Parameters.java
Executable file
@@ -0,0 +1,28 @@
|
||||
package io.gmss.fiscad.entities;
|
||||
|
||||
import io.gmss.fiscad.entities.audit.UserDateAudit;
|
||||
import io.gmss.fiscad.enums.ParametersType;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Entity
|
||||
@Getter
|
||||
@Setter
|
||||
public class Parameters extends UserDateAudit implements Serializable {
|
||||
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
@Enumerated(EnumType.STRING)
|
||||
private ParametersType name;
|
||||
private String value;
|
||||
|
||||
public Parameters() {
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
43
src/main/java/io/gmss/fiscad/entities/audit/DateAudit.java
Executable file
43
src/main/java/io/gmss/fiscad/entities/audit/DateAudit.java
Executable file
@@ -0,0 +1,43 @@
|
||||
package io.gmss.fiscad.entities.audit;
|
||||
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import jakarta.persistence.EntityListeners;
|
||||
import jakarta.persistence.MappedSuperclass;
|
||||
import org.springframework.data.annotation.CreatedDate;
|
||||
import org.springframework.data.annotation.LastModifiedDate;
|
||||
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.Instant;
|
||||
|
||||
@MappedSuperclass
|
||||
@EntityListeners(AuditingEntityListener.class)
|
||||
public abstract class DateAudit implements Serializable {
|
||||
|
||||
@JsonIgnore
|
||||
@CreatedDate
|
||||
// @Column(updatable = false)
|
||||
private Instant createdAt= Instant.now() ;
|
||||
|
||||
@JsonIgnore
|
||||
@LastModifiedDate
|
||||
// @Column(nullable = false)
|
||||
private Instant updatedAt=Instant.now();
|
||||
|
||||
public Instant getCreatedAt() {
|
||||
return createdAt;
|
||||
}
|
||||
|
||||
public void setCreatedAt(Instant createdAt) {
|
||||
this.createdAt = createdAt;
|
||||
}
|
||||
|
||||
public Instant getUpdatedAt() {
|
||||
return updatedAt;
|
||||
}
|
||||
|
||||
public void setUpdatedAt(Instant updatedAt) {
|
||||
this.updatedAt = updatedAt;
|
||||
}
|
||||
}
|
||||
37
src/main/java/io/gmss/fiscad/entities/audit/UserDateAudit.java
Executable file
37
src/main/java/io/gmss/fiscad/entities/audit/UserDateAudit.java
Executable file
@@ -0,0 +1,37 @@
|
||||
package io.gmss.fiscad.entities.audit;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import jakarta.persistence.Column;
|
||||
import jakarta.persistence.MappedSuperclass;
|
||||
import org.springframework.data.annotation.CreatedBy;
|
||||
import org.springframework.data.annotation.LastModifiedBy;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@MappedSuperclass
|
||||
public abstract class UserDateAudit extends DateAudit implements Serializable {
|
||||
@JsonIgnore
|
||||
@CreatedBy
|
||||
@Column(updatable = false)
|
||||
private Long createdBy;
|
||||
|
||||
@JsonIgnore
|
||||
@LastModifiedBy
|
||||
private Long updatedBy;
|
||||
|
||||
public Long getCreatedBy() {
|
||||
return createdBy;
|
||||
}
|
||||
|
||||
public void setCreatedBy(Long createdBy) {
|
||||
this.createdBy = createdBy;
|
||||
}
|
||||
|
||||
public Long getUpdatedBy() {
|
||||
return updatedBy;
|
||||
}
|
||||
|
||||
public void setUpdatedBy(Long updatedBy) {
|
||||
this.updatedBy = updatedBy;
|
||||
}
|
||||
}
|
||||
@@ -29,6 +29,8 @@ public class Quartier extends BaseEntity implements Serializable {
|
||||
@ManyToOne
|
||||
private Arrondissement arrondissement;
|
||||
|
||||
private String longitude;
|
||||
private String latitude;
|
||||
// @JsonIgnore
|
||||
// @OneToOne(mappedBy = "quartier")
|
||||
// private Bloc bloc;
|
||||
|
||||
@@ -8,6 +8,7 @@ import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.decoupage.Arrondissement;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Bloc;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.ModeAcquisition;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.NatureDomaine;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Personne;
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueParcelle;
|
||||
@@ -54,16 +55,30 @@ public class Enquete extends BaseEntity implements Serializable {
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateEnquete;
|
||||
|
||||
private boolean litige;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExemption;
|
||||
|
||||
|
||||
private Boolean litige;
|
||||
|
||||
|
||||
@ManyToOne
|
||||
private User user;
|
||||
|
||||
@JsonIgnore
|
||||
//@JsonIgnore
|
||||
@ManyToOne
|
||||
private Exercice exercice;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private ModeAcquisition modeAcquisition;
|
||||
|
||||
private Long mobileDataId;
|
||||
|
||||
@JsonIgnore
|
||||
@@ -116,7 +131,7 @@ public class Enquete extends BaseEntity implements Serializable {
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateSynchronisation;
|
||||
private boolean synchronise;
|
||||
private Boolean synchronise;
|
||||
private String observationParticuliere;
|
||||
@Transient
|
||||
private String nomPrenomEnqueteur;
|
||||
@@ -173,6 +188,8 @@ public class Enquete extends BaseEntity implements Serializable {
|
||||
private Long montantAnnuelleLocation;
|
||||
private Long valeurParcelleEstime;
|
||||
private Long valeurParcelleReel;
|
||||
private Long valeurParcelleCalcule;
|
||||
private String ncProprietaire;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
@@ -182,15 +199,20 @@ public class Enquete extends BaseEntity implements Serializable {
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExcemption;
|
||||
|
||||
@JsonIgnore
|
||||
@OneToMany(mappedBy = "enquete")
|
||||
@JsonManagedReference
|
||||
private List<EnqueteUniteLogement> enqueteUniteLogements;
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
//
|
||||
// @JsonIgnore
|
||||
// @OneToMany(mappedBy = "enquete")
|
||||
// @JsonManagedReference
|
||||
// private List<EnqueteUniteLogement> enqueteUniteLogements;
|
||||
|
||||
@JsonIgnore
|
||||
@JsonManagedReference
|
||||
@OneToMany(mappedBy = "enquete")
|
||||
private List<EnqueteBatiment> enqueteBatiments;
|
||||
// @JsonIgnore
|
||||
// @JsonManagedReference
|
||||
// @OneToMany(mappedBy = "enquete")
|
||||
// private List<EnqueteBatiment> enqueteBatiments;
|
||||
|
||||
@JsonIgnore
|
||||
@OneToMany(mappedBy = "enquete")
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
package io.gmss.fiscad.entities.infocad.metier;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.decoupage.Quartier;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.NatureDomaine;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.TypeDomaine;
|
||||
import io.gmss.fiscad.entities.rfu.metier.Batiment;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.*;
|
||||
import org.hibernate.annotations.ColumnDefault;
|
||||
@@ -12,6 +17,7 @@ import org.hibernate.annotations.SQLDelete;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -38,21 +44,23 @@ public class Parcelle extends BaseEntity implements Serializable {
|
||||
private String altitude;
|
||||
private String situationGeographique;
|
||||
@ColumnDefault("0.0")
|
||||
private float superficie;
|
||||
private Float superficie;
|
||||
@ManyToOne
|
||||
private NatureDomaine natureDomaine;
|
||||
@ManyToOne
|
||||
private TypeDomaine typeDomaine;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Quartier quartier;
|
||||
private String i;
|
||||
private String p;
|
||||
private String observation;
|
||||
private String numTitreFoncier;
|
||||
private String numeroTitreFoncier;
|
||||
private LocalDate dateTitreFoncier ;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
private String autreNumeroTitreFoncier;
|
||||
private Long typeDomaineId;
|
||||
private Long numeroProvisoire;
|
||||
private Long blocId;
|
||||
@ColumnDefault("false")
|
||||
@@ -64,6 +72,18 @@ public class Parcelle extends BaseEntity implements Serializable {
|
||||
@ManyToOne
|
||||
private Rue rue ;
|
||||
private String numeroRue ;
|
||||
private Boolean batie;
|
||||
private Integer nombrePiscine;
|
||||
@ManyToOne
|
||||
private Usage usage;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExemption;
|
||||
// private String ncProprietaire ;
|
||||
// @JsonIgnore
|
||||
// @OneToMany(mappedBy = "parcelle")
|
||||
// private List<Batiment> batiments;
|
||||
|
||||
@@ -10,6 +10,7 @@ import io.gmss.fiscad.entities.decoupage.Arrondissement;
|
||||
import io.gmss.fiscad.entities.decoupage.Commune;
|
||||
import io.gmss.fiscad.entities.decoupage.Departement;
|
||||
import io.gmss.fiscad.entities.decoupage.Quartier;
|
||||
import io.gmss.fiscad.enums.SourceDonnee;
|
||||
import io.gmss.fiscad.enums.StatutParcelle;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
@@ -24,6 +25,7 @@ import org.n52.jackson.datatype.jts.GeometryDeserializer;
|
||||
import org.n52.jackson.datatype.jts.GeometrySerializer;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Entity
|
||||
@@ -39,27 +41,63 @@ public class ParcelleGeom extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
private String NomDepartement;
|
||||
private String NomCommune;
|
||||
private String NomArrondissement;
|
||||
private String NomVillageQuartier;
|
||||
private String codeBloc;
|
||||
private String q;
|
||||
private String ilot;
|
||||
private String zone;
|
||||
private String p;
|
||||
@Column(unique = true,nullable = true)
|
||||
private String nup;
|
||||
@Column(unique = true,nullable = true)
|
||||
private String nupProvisoire;
|
||||
private String longitude;
|
||||
private String latitude;
|
||||
private String codeDepartement;
|
||||
private String nomDepartement;
|
||||
private String codeCommune;
|
||||
private String nomCommune;
|
||||
private String codeArrondissement;
|
||||
private String nomArrondissement;
|
||||
private String codeQuartierVillage;
|
||||
private String nomVillageQuartier;
|
||||
private String codeBloc;
|
||||
private String numeroRue;
|
||||
private String numeroEntreePorte;
|
||||
|
||||
private String codeInstad;
|
||||
private String numeroEtatLieux;
|
||||
private String numeroTitreFoncier;
|
||||
private LocalDate dateTitreFoncier;
|
||||
private Boolean batie ;
|
||||
|
||||
private String npi;
|
||||
private String ifu;
|
||||
private String nom;
|
||||
private String prenom;
|
||||
private String raisonSociale;
|
||||
private String nomEtPrenoms;
|
||||
private String telephone;
|
||||
private String adresse;
|
||||
|
||||
private String nomRepresentant;
|
||||
private String prenomRepresentant;
|
||||
private String raisonSocialeRepresentant;
|
||||
private String nomEtPrenomsRepresentant;
|
||||
private String telephoneRepresentant;
|
||||
private String adresseRepresentant;
|
||||
|
||||
private String q;
|
||||
private String zone;
|
||||
private String ilot;
|
||||
private String p;
|
||||
|
||||
private String qLotissement;
|
||||
private String ilotLotissement;
|
||||
private String pLotissement;
|
||||
|
||||
private String pointsPolygone;
|
||||
private Integer superficie;
|
||||
private String nomEtPrenoms;
|
||||
|
||||
private String dateCollecte;
|
||||
private String sourceDonnees;
|
||||
@Enumerated(EnumType.STRING)
|
||||
private SourceDonnee sourceDonnees;
|
||||
private String observations;
|
||||
|
||||
@Enumerated(EnumType.STRING)
|
||||
private StatutParcelle statutParcelle;
|
||||
private Long uploadId;
|
||||
@@ -77,35 +115,22 @@ public class ParcelleGeom extends BaseEntity implements Serializable {
|
||||
private Arrondissement arrondissement;
|
||||
|
||||
@ManyToOne //(fetch = FetchType.LAZY)
|
||||
//@JsonBackReference
|
||||
@JsonBackReference
|
||||
private Quartier quartier ;
|
||||
|
||||
@ColumnDefault("0")
|
||||
private int geomSrid;
|
||||
private Integer geomSrid;
|
||||
@JsonSerialize(using = GeometrySerializer.class)
|
||||
@JsonDeserialize(contentUsing = GeometryDeserializer.class)
|
||||
@Column(name = "geometry",columnDefinition = "geometry(Polygon,32631)")
|
||||
private Polygon geometry;
|
||||
@Column(columnDefinition = "TEXT")
|
||||
private String geometryString;
|
||||
private String codeInsae;
|
||||
private String numeroEtatLieux;
|
||||
private String numeroTitreFoncier;
|
||||
private String telephone;
|
||||
//private String codeParcelle;
|
||||
//private String codeEquipe;
|
||||
|
||||
//private String elLot;
|
||||
//private String elLettreParcelle;
|
||||
//private String rfuQuartierOuZone;
|
||||
//private String rfuIlot;
|
||||
//private String rfuLettreParcelle;
|
||||
|
||||
//private String nomLotissement;
|
||||
////////////
|
||||
// @JsonIgnore
|
||||
// @OneToOne
|
||||
// private Parcelle parcelle;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
@JsonBackReference
|
||||
private Parcelle parcelle;
|
||||
// @JsonSerialize(using = GeometrySerializer.class)
|
||||
// @JsonDeserialize(contentUsing = GeometryDeserializer.class)
|
||||
// @Column(name = "geom",columnDefinition = "geometry(Polygon,4326)")
|
||||
|
||||
@@ -11,6 +11,8 @@ import io.gmss.fiscad.entities.infocad.parametre.Personne;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.SourceDroit;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.TypePiece;
|
||||
import io.gmss.fiscad.entities.rfu.metier.DeclarationNc;
|
||||
import io.gmss.fiscad.entities.rfu.metier.EnqueteBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.metier.EnqueteUniteLogement;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@@ -71,6 +73,16 @@ public class Piece extends BaseEntity implements Serializable {
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
private Enquete enquete ;
|
||||
|
||||
@JsonIgnore
|
||||
@JsonBackReference
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
private EnqueteBatiment enqueteBatiment ;
|
||||
|
||||
@JsonIgnore
|
||||
@JsonBackReference
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
private EnqueteUniteLogement enqueteUniteLogement ;
|
||||
|
||||
@ManyToOne
|
||||
private ModeAcquisition modeAcquisition;
|
||||
|
||||
|
||||
@@ -97,17 +97,17 @@ public class Upload extends BaseEntity implements Serializable {
|
||||
System.out.println("url = " + url);
|
||||
// return url != null ? url.toLowerCase().startsWith("https") ? url : url.toLowerCase().replaceFirst("http", "https") : null;
|
||||
return url != null ? url.toLowerCase().startsWith("https") ? url : url.toLowerCase().replaceFirst("http", "https") : null;
|
||||
|
||||
}
|
||||
|
||||
private String serverContext() {
|
||||
String url= ServletUriComponentsBuilder.fromCurrentContextPath()
|
||||
.path("/api/upload/downloadFile/")
|
||||
.toUriString();
|
||||
if(!url.contains("8282/api")){
|
||||
url.replace("/api",":8282/api");
|
||||
}
|
||||
|
||||
//System.out.println(url);
|
||||
// if(!url.contains("8282/api")){
|
||||
// url.replace("/api",":8282/api");
|
||||
// }
|
||||
//System.out.println(url);
|
||||
return url;
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.entities.metadata.MobileDataPersonne;
|
||||
import io.gmss.fiscad.enums.Categorie;
|
||||
import io.gmss.fiscad.enums.EtatIdentificationPersonne;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@@ -79,7 +80,12 @@ public class Personne extends BaseEntity implements Serializable {
|
||||
private int mustHaveRepresentant;
|
||||
private String filePath;
|
||||
|
||||
@Enumerated(EnumType.STRING)
|
||||
private EtatIdentificationPersonne etatIdentificationPersonne;
|
||||
private String observation;
|
||||
private String numeroRccm ;
|
||||
private LocalDate dateRccm ;
|
||||
private String email ;
|
||||
@ColumnDefault("false")
|
||||
private boolean synchronise;
|
||||
|
||||
|
||||
@@ -30,11 +30,11 @@ import java.util.Set;
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@SQLDelete(sql =
|
||||
"UPDATE structure " +
|
||||
"SET deleted = true " +
|
||||
"WHERE id = ?")
|
||||
@Where(clause = " deleted = false")
|
||||
//@SQLDelete(sql =
|
||||
// "UPDATE structure " +
|
||||
// "SET deleted = true " +
|
||||
// "WHERE id = ?")
|
||||
//@Where(clause = " deleted = false")
|
||||
//@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
|
||||
public class Structure extends BaseEntity implements Serializable {
|
||||
|
||||
@@ -49,7 +49,7 @@ public class Structure extends BaseEntity implements Serializable {
|
||||
private String tel;
|
||||
private String email;
|
||||
private String adresse;
|
||||
@NotNull(message = "Veuillez préciser la commune du centre d'impôts")
|
||||
//@NotNull(message = "Veuillez préciser la commune du centre d'impôts")
|
||||
@ManyToOne
|
||||
private Commune commune;
|
||||
|
||||
@@ -61,4 +61,17 @@ public class Structure extends BaseEntity implements Serializable {
|
||||
)
|
||||
private Set<Arrondissement> arrondissements;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Structure{" +
|
||||
"id=" + id +
|
||||
", code='" + code + '\'' +
|
||||
", nom='" + nom + '\'' +
|
||||
", ifu='" + ifu + '\'' +
|
||||
", rccm='" + rccm + '\'' +
|
||||
", tel='" + tel + '\'' +
|
||||
", email='" + email + '\'' +
|
||||
", adresse='" + adresse + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,11 +7,14 @@ import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Parcelle;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.CategorieBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.Internal;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import java.io.Serializable;
|
||||
@@ -34,16 +37,42 @@ public class Batiment extends BaseEntity implements Serializable {
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateConstruction;
|
||||
private Long idDerniereEnquete;
|
||||
private Float superficieLouee;
|
||||
private Float superficieAuSol;
|
||||
private Integer nombreEtage;
|
||||
private Integer nombrePiscine;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long montantLocatifAnnuelEstime;
|
||||
private Long valeurBatimentEstime;
|
||||
private Long valeurBatimentReel;
|
||||
private Long valeurBatimentCalcule;
|
||||
private Long montantMensuelLocation;
|
||||
private Integer nbreUniteLogement;
|
||||
private Integer idToitRfu;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Parcelle parcelle;
|
||||
|
||||
private Long parcelleExternalKey;
|
||||
@ManyToOne
|
||||
private Usage usage;
|
||||
|
||||
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
private Long enqueteId;
|
||||
// private Long enqueteId;
|
||||
private Long mobileDataId;
|
||||
private Long parcelleExternalKey;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExemption;
|
||||
}
|
||||
|
||||
@@ -37,6 +37,7 @@ public class CaracteristiqueParcelle extends BaseEntity implements Serializable
|
||||
@ManyToOne
|
||||
private Caracteristique caracteristique;
|
||||
private String valeur;
|
||||
private String observation;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
|
||||
@@ -47,3 +47,5 @@ public class CaracteristiqueUniteLogement extends BaseEntity implements Serializ
|
||||
private Long enqueteId;
|
||||
private Long mobileDataId;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -32,18 +32,23 @@ public class DeclarationNc extends BaseEntity implements Serializable {
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDerniereDeclaration;
|
||||
|
||||
private String nc;
|
||||
|
||||
@OneToOne
|
||||
private Structure structure;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDeclarationNc;
|
||||
|
||||
private String nc;
|
||||
private String observation;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Enquete enquete;
|
||||
private Structure structure;
|
||||
|
||||
|
||||
private Long enqueteExternalKey;
|
||||
|
||||
@JsonIgnore
|
||||
|
||||
@@ -8,6 +8,9 @@ import io.gmss.fiscad.entities.BaseEntity;
|
||||
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.Structure;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu;
|
||||
import io.gmss.fiscad.enums.NatureImpot;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@@ -71,11 +74,17 @@ public class DonneesImpositionTfu extends BaseEntity implements Serializable {
|
||||
private int superficieParc;
|
||||
private Long superficieAuSolBat;
|
||||
private Long superficieAuSolUlog;
|
||||
private String batieOuiNon;
|
||||
private String exhonereOuiNon;
|
||||
private String batimentExhonereOuiNon;
|
||||
private String uniteLogementExhonereOuiNon;
|
||||
//private String batieOuiNon;
|
||||
//private String exhonereOuiNon;
|
||||
//private String batimentExhonereOuiNon;
|
||||
//private String uniteLogementExhonereOuiNon;
|
||||
private Boolean batie;
|
||||
private Boolean exonere;
|
||||
private Boolean batimentExonere;
|
||||
private Boolean uniteLogementExonere;
|
||||
private Long valeurLocativeAdm;
|
||||
private Long valeurLocativeAdm70Pour100;
|
||||
private Long valeurLocativeAdmMetreCarre;
|
||||
private Long montantLoyerAnnuel;
|
||||
private Long tfuMetreCarre;
|
||||
private Long tfuMinimum;
|
||||
@@ -88,14 +97,30 @@ public class DonneesImpositionTfu extends BaseEntity implements Serializable {
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateEnquete;
|
||||
private Long enqueteId;
|
||||
private Long structureId;
|
||||
//private Long structureId;
|
||||
@JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "structure_id")
|
||||
private Structure structure ;
|
||||
|
||||
private Long secteurId;
|
||||
private Long zoneRfuId;
|
||||
|
||||
//private Long zoneRfuId;
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "zone_rfu_id")
|
||||
private ZoneRfu zoneRfu ;
|
||||
|
||||
@ColumnDefault("0")
|
||||
private float tauxParcelleNonBati;
|
||||
private Long valeurAdministrativeParcelleNonBati;
|
||||
private Long valeurAdminParcelleNb;
|
||||
private Float tauxTfu;
|
||||
private Float montantTaxe;
|
||||
private Long valeurAdminParcelleNbMetreCarre;
|
||||
@JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "impositions_tfu_id", nullable = false)
|
||||
private ImpositionsTfu impositionsTfu;
|
||||
private ImpositionsTfu impositionsTfu ;
|
||||
@Enumerated(EnumType.STRING)
|
||||
private NatureImpot natureImpot;
|
||||
private Long valeurBatiment;
|
||||
private Long valeurParcelle;
|
||||
}
|
||||
|
||||
@@ -62,10 +62,10 @@ public class EnqueteActivite extends BaseEntity implements Serializable {
|
||||
|
||||
@ManyToOne
|
||||
private Batiment batiment;
|
||||
private Long batimentExternalKey;
|
||||
|
||||
@OneToOne
|
||||
private Parcelle parcelle;
|
||||
|
||||
private Long parcelleExternalKey;
|
||||
|
||||
|
||||
@@ -74,11 +74,12 @@ public class EnqueteActivite extends BaseEntity implements Serializable {
|
||||
|
||||
@OneToOne
|
||||
private UniteLogement uniteLogement ;
|
||||
private Long uniteLogementExternalKey;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Enquete enquete;
|
||||
|
||||
|
||||
// @JsonIgnore
|
||||
// @ManyToOne
|
||||
// private Enquete enquete;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
@@ -90,6 +91,12 @@ public class EnqueteActivite extends BaseEntity implements Serializable {
|
||||
|
||||
private Long mobileDataId;
|
||||
|
||||
|
||||
private Long batimentExternalKey;
|
||||
|
||||
private Long uniteLogementExternalKey;
|
||||
|
||||
|
||||
@Enumerated(EnumType.STRING)
|
||||
@JsonIgnore
|
||||
private StatutEnregistrement statutEnregistrement;
|
||||
|
||||
@@ -12,7 +12,11 @@ import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Personne;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Caracteristique;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.CategorieBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Exercice;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import io.gmss.fiscad.entities.user.User;
|
||||
import io.gmss.fiscad.enums.StatutEnquete;
|
||||
import io.gmss.fiscad.enums.StatutEnregistrement;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
@@ -42,24 +46,32 @@ 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 Integer nbreLotUnite;
|
||||
private Integer nbreUniteLogement;
|
||||
private Integer nbrePiece;
|
||||
private Integer nbreUniteLocation;
|
||||
private Float superficieLouee;
|
||||
private Float superficieAuSol;
|
||||
private Integer nbreMenage;
|
||||
private Integer nbreHabitant;
|
||||
private Long montantMensuelLocation;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelEstime;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long valeurBatimentEstime;
|
||||
private Long valeurBatimentReel;
|
||||
private int nbreMoisLocation;
|
||||
private Long valeurBatimentCalcule;
|
||||
private Integer nombrePiscine;
|
||||
private Integer nbreMoisLocation;
|
||||
private String autreCaracteristiquePhysique;
|
||||
private String observation;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExcemption;
|
||||
@@ -67,6 +79,13 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExcemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateEnquete;
|
||||
|
||||
@ManyToOne
|
||||
private Exercice exercice;
|
||||
|
||||
//@JsonIgnore
|
||||
@ManyToOne
|
||||
private Personne personne;
|
||||
@@ -85,10 +104,15 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
private Long batimentExternalKey;
|
||||
private Long nbreEtage;
|
||||
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
|
||||
// @JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JsonBackReference
|
||||
private Enquete enquete;
|
||||
// @ManyToOne(fetch = FetchType.LAZY)
|
||||
// @JsonBackReference
|
||||
// private Enquete enquete;
|
||||
|
||||
|
||||
|
||||
@@ -107,7 +131,12 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
@OneToMany(mappedBy = "enqueteBatiment")
|
||||
private List<Upload> uploads;
|
||||
|
||||
//@Enumerated(EnumType.STRING)
|
||||
//@JsonIgnore
|
||||
//private StatutEnregistrement statutEnregistrement;
|
||||
@Enumerated(EnumType.STRING)
|
||||
@JsonIgnore
|
||||
private StatutEnquete statutEnquete;
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
@ManyToOne
|
||||
private Usage usage ;
|
||||
|
||||
}
|
||||
|
||||
@@ -11,7 +11,11 @@ import io.gmss.fiscad.entities.infocad.metier.Enquete;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Personne;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.CategorieBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Exercice;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import io.gmss.fiscad.entities.user.User;
|
||||
import io.gmss.fiscad.enums.StatutEnquete;
|
||||
import io.gmss.fiscad.enums.StatutEnregistrement;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
@@ -41,42 +45,65 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
private int nbrePiece;
|
||||
private int nbreHabitant;
|
||||
private int nbreMenage;
|
||||
private boolean enLocation;
|
||||
private float montantMensuelLoyer;
|
||||
private int nbreMoisLocation;
|
||||
private float montantLocatifAnnuelDeclare;
|
||||
private Integer nbrePiece;
|
||||
private Integer nbreHabitant;
|
||||
private Integer nbreMenage;
|
||||
private Boolean enLocation;
|
||||
private Long montantMensuelLocation;
|
||||
private Integer nbreMoisLocation;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long montantLocatifAnnuelEstime;
|
||||
private Long valeurUniteLogementEstime;
|
||||
private Long valeurUniteLogementReel;
|
||||
private float surfaceLouee;
|
||||
private float SurfaceAuSol;
|
||||
private boolean sbee;
|
||||
private boolean soneb;
|
||||
private Long valeurUniteLogementCalcule;
|
||||
private Integer nombrePiscine;
|
||||
private Float superficieLouee;
|
||||
private Float superficieAuSol;
|
||||
private Boolean sbee;
|
||||
private Boolean soneb;
|
||||
private String numCompteurSbee;
|
||||
private String numCompteurSoneb;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExcemption;
|
||||
private LocalDate dateDebutExemption;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExcemption;
|
||||
private LocalDate dateFinExemption;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateEnquete;
|
||||
private String observation;
|
||||
private Long uniteLogementExternalKey;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JsonBackReference
|
||||
private Enquete enquete;
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
|
||||
@ManyToOne
|
||||
private Exercice exercice;
|
||||
|
||||
|
||||
|
||||
// @JsonIgnore
|
||||
// @ManyToOne(fetch = FetchType.LAZY)
|
||||
// @JsonBackReference
|
||||
// private Enquete enquete;
|
||||
|
||||
|
||||
@ManyToOne
|
||||
private UniteLogement uniteLogement;
|
||||
|
||||
|
||||
private Long uniteLogementExternalKey;
|
||||
|
||||
@OneToOne
|
||||
private Personne personne;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private User user;
|
||||
|
||||
|
||||
private Long personneExternalKey;
|
||||
private Long mobileDataId;
|
||||
@@ -85,16 +112,16 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable {
|
||||
@JsonManagedReference
|
||||
private List<CaracteristiqueUniteLogement> caracteristiqueUniteLogements;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private User user;
|
||||
|
||||
|
||||
//@JsonIgnore
|
||||
@OneToMany(mappedBy = "enqueteUniteLogement")
|
||||
private List<Upload> uploads;
|
||||
@JsonIgnore
|
||||
@Enumerated(EnumType.STRING)
|
||||
private StatutEnregistrement statutEnregistrement;
|
||||
private StatutEnquete statutEnquete;
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
@ManyToOne
|
||||
private Usage usage ;
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.decoupage.Commune;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Structure;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Exercice;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Participer;
|
||||
import io.gmss.fiscad.enums.StatusAvis;
|
||||
@@ -33,24 +34,39 @@ public class ImpositionsTfu extends BaseEntity implements Serializable {
|
||||
private Long id;
|
||||
@ManyToOne
|
||||
private Exercice exercice;
|
||||
|
||||
@ManyToOne
|
||||
private Commune commune;
|
||||
|
||||
@ManyToOne
|
||||
private Structure structure ;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateGeneration;
|
||||
private String ReferencePieceAdmin;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateCloture;
|
||||
|
||||
private String referencePieceAdmin;
|
||||
private String datePieceAdmin;
|
||||
|
||||
@Enumerated(EnumType.STRING)
|
||||
private StatusAvis statusAvis;
|
||||
private Long nombreAvis;
|
||||
|
||||
private Integer nombreAvis;
|
||||
private Integer nombreAvisFnb;
|
||||
private Integer nombreAvisBatiment;
|
||||
private Integer nombreAvisUniteLog;
|
||||
|
||||
@Column(columnDefinition = "TEXT")
|
||||
private String motif;
|
||||
|
||||
@JsonIgnore
|
||||
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
|
||||
@JoinColumn(name = "impositions_tfu_id")
|
||||
private List<DonneesImpositionTfu> donneesImpositionTfus;
|
||||
|
||||
public Long getNombreAvis(){
|
||||
return donneesImpositionTfus==null?0l:donneesImpositionTfus.size();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
package io.gmss.fiscad.entities.rfu.metier;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Parcelle;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Exercice;
|
||||
import io.gmss.fiscad.enums.StatutParcelle;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Entity
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Where(clause = " deleted = false")
|
||||
public class SituationFiscaleParcelle extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
@ManyToOne
|
||||
private Parcelle parcelle ;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDernierPaiement;
|
||||
@ManyToOne
|
||||
private Exercice exercice ;
|
||||
private Long montantDu ;
|
||||
private Long montantPaye ;
|
||||
private Long resteAPayer ;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateSync;
|
||||
}
|
||||
@@ -6,6 +6,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Tpe;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.CategorieBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@@ -39,11 +41,33 @@ public class UniteLogement extends BaseEntity implements Serializable {
|
||||
private List<EnqueteUniteLogement> enqueteUniteLogements;
|
||||
@ManyToOne
|
||||
private Batiment batiment;
|
||||
@ManyToOne
|
||||
private Usage usage;
|
||||
private Long batimentExternalKey;
|
||||
private Long idDerniereEnquete;
|
||||
private Float SuperficieLouee;
|
||||
private Float SuperficieAuSol;
|
||||
private Long montantMensuelLocation;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long valeurUniteLogementEstime;
|
||||
private Long valeurUniteLogementReel;
|
||||
private Long valeurUniteLogementCalcule;
|
||||
private Integer nombrePiscine;
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
private Long enqueteId;
|
||||
private Long mobileDataId;
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateDebutExemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExemption;
|
||||
private Integer idToitRfu;
|
||||
private Integer nombreEtage;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package io.gmss.fiscad.entities.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.entities.decoupage.Arrondissement;
|
||||
import io.gmss.fiscad.entities.decoupage.Quartier;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@@ -28,4 +29,6 @@ public class BaremRfuBati extends BaseEntity implements Serializable {
|
||||
private CategorieBatiment categorieBatiment;
|
||||
@ManyToOne
|
||||
private Arrondissement arrondissement;
|
||||
@ManyToOne
|
||||
private Quartier quartier ;
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@ public class BaremRfuNonBati extends BaseEntity implements Serializable {
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
private Long valeurAdministrative;
|
||||
private float taux;
|
||||
private Long valeurAdministrativeMetreCarre;
|
||||
private Boolean auMetreCarre;
|
||||
private Float taux;
|
||||
@ManyToOne
|
||||
private Commune commune;
|
||||
@ManyToOne
|
||||
|
||||
@@ -23,4 +23,5 @@ public class CategorieBatiment extends BaseEntity implements Serializable {
|
||||
@Column(unique = true)
|
||||
private String code;
|
||||
private String nom;
|
||||
private String standing;
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ public class Exercice extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
private int annee;
|
||||
private Integer annee;
|
||||
private boolean estGenerer;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package io.gmss.fiscad.entities.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.BaseEntity;
|
||||
import io.gmss.fiscad.enums.CategorieUsage;
|
||||
import jakarta.persistence.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.hibernate.annotations.Where;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Entity
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Where(clause = " deleted = false")
|
||||
public class Usage extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
private String code;
|
||||
private String nom;
|
||||
@Enumerated(EnumType.STRING)
|
||||
private CategorieUsage categorieUsage;
|
||||
}
|
||||
|
||||
@@ -32,10 +32,17 @@ import java.time.LocalDate;
|
||||
// "SET deleted = true " +
|
||||
// "WHERE id = ?")
|
||||
//@Where(clause = " deleted = false")
|
||||
@Table(
|
||||
name = "fonction",
|
||||
uniqueConstraints = {
|
||||
@UniqueConstraint(columnNames = {"code"})
|
||||
}
|
||||
)
|
||||
public class Fonction extends BaseEntity implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
@Column(nullable = false, unique = true)
|
||||
private String code ;
|
||||
private String nom ;
|
||||
|
||||
|
||||
8
src/main/java/io/gmss/fiscad/enums/CategorieUsage.java
Normal file
8
src/main/java/io/gmss/fiscad/enums/CategorieUsage.java
Normal file
@@ -0,0 +1,8 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum CategorieUsage {
|
||||
|
||||
HABITATION,
|
||||
PROFESSIONNELLE,
|
||||
MIXTE
|
||||
}
|
||||
9
src/main/java/io/gmss/fiscad/enums/EtatIdentificationPersonne.java
Executable file
9
src/main/java/io/gmss/fiscad/enums/EtatIdentificationPersonne.java
Executable file
@@ -0,0 +1,9 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum EtatIdentificationPersonne {
|
||||
IFU,
|
||||
NPI,
|
||||
IFU_NPI,
|
||||
NEANT,
|
||||
RFU;
|
||||
}
|
||||
6
src/main/java/io/gmss/fiscad/enums/NatureImpot.java
Executable file
6
src/main/java/io/gmss/fiscad/enums/NatureImpot.java
Executable file
@@ -0,0 +1,6 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum NatureImpot {
|
||||
TFU,
|
||||
IRF
|
||||
}
|
||||
19
src/main/java/io/gmss/fiscad/enums/ParametersType.java
Executable file
19
src/main/java/io/gmss/fiscad/enums/ParametersType.java
Executable file
@@ -0,0 +1,19 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum ParametersType {
|
||||
EMAILS_TO,
|
||||
EMAIL_FROM,
|
||||
SMTP_PORT,
|
||||
SMTP_HOST,
|
||||
SMTP_USERNAME,
|
||||
SMTP_PASSWORD,
|
||||
MESSAGE_STATUT,
|
||||
OBJET_RESET_PASSWORD,
|
||||
CORPS_RESET_PASSWORD,
|
||||
OBJET_CREATE_ACCOUNT,
|
||||
CORPS_CREATE_ACCOUNT,
|
||||
TOKEN_IFU_EN_LIGNE,
|
||||
TAUX_TFU_HABITATION,
|
||||
TAUX_TFU_PROFESSIONNELLE,
|
||||
TAUX_DEFAUT_SUPERFICIE_AU_SOL;
|
||||
}
|
||||
7
src/main/java/io/gmss/fiscad/enums/SourceDonnee.java
Normal file
7
src/main/java/io/gmss/fiscad/enums/SourceDonnee.java
Normal file
@@ -0,0 +1,7 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum SourceDonnee {
|
||||
RFU,
|
||||
ANDF,
|
||||
SIGIBE
|
||||
}
|
||||
@@ -1,8 +1,11 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum StatusAvis {
|
||||
CREE,
|
||||
GENERE,
|
||||
ANNULE,
|
||||
VALIDE,
|
||||
EN_COURS,
|
||||
CLOTURE,
|
||||
GENERATION_AUTORISE,
|
||||
REJETE,
|
||||
TFU_FNB_GENERE,
|
||||
GENERE
|
||||
|
||||
}
|
||||
|
||||
@@ -2,8 +2,10 @@ package io.gmss.fiscad.enums;
|
||||
|
||||
public enum StatutEnquete {
|
||||
EN_COURS,
|
||||
// DECLARATION,
|
||||
FINALISE,
|
||||
REJETE,
|
||||
VALIDE,
|
||||
ECHEC
|
||||
ECHEC,
|
||||
CLOTURE
|
||||
}
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package io.gmss.fiscad.enums;
|
||||
|
||||
public enum StatutParcelle {
|
||||
|
||||
NON_ENQUETER,
|
||||
ENQUETER_NON_BATIE,
|
||||
ENQUETER_BATIE
|
||||
|
||||
AJOUR,
|
||||
NON_AJOUR;
|
||||
}
|
||||
|
||||
@@ -163,8 +163,15 @@ public class SecteurServiceImpl implements SecteurService {
|
||||
secteurs.addAll(secteurRepository.findDistinctBySection_Id(avoirFonction.getFonction().getSection().getId()));
|
||||
}else if(avoirFonction.getFonction().getStructure()!=null){
|
||||
secteurs.addAll(secteurRepository.findDistinctBySection_Structure_Id(avoirFonction.getFonction().getStructure().getId()));
|
||||
}else if(avoirFonction.getFonction().getDepartement()!=null){
|
||||
secteurs.addAll(secteurRepository.findSectionsByDepartement(avoirFonction.getFonction().getDepartement().getId()));
|
||||
}
|
||||
});
|
||||
return secteurs;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Secteur> getListSecteurByDepartementId(Long departementId) {
|
||||
return secteurRepository.findSectionsByDepartement(departementId);
|
||||
}
|
||||
}
|
||||
@@ -43,6 +43,7 @@ import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import jakarta.persistence.EntityManager;
|
||||
import jakarta.persistence.PersistenceContext;
|
||||
import jakarta.persistence.Query;
|
||||
import jakarta.transaction.Transactional;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.modelmapper.ModelMapper;
|
||||
import org.springframework.data.domain.Page;
|
||||
@@ -91,113 +92,71 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
|
||||
|
||||
@Override
|
||||
public Enquete createEnquete(EnquetePayLoadWeb enquetePayLoadWeb) throws BadRequestException {
|
||||
Parcelle parcelle=new Parcelle();
|
||||
Long rueId;
|
||||
public EnquetePayLoadWeb createEnquete(EnquetePayLoadWeb enquetePayLoadWeb) throws BadRequestException {
|
||||
Optional<User> optionalUser = userRepository.findById(enquetePayLoadWeb.getEnqueteurId());
|
||||
if (!optionalUser.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : Enquêteur inexistant");
|
||||
}
|
||||
Optional<Personne> optionalProprietaire = personneRepository.findById(enquetePayLoadWeb.getProprietaireId());
|
||||
if (!optionalProprietaire.isPresent()) {
|
||||
Optional<Personne> optionalPersonne = personneRepository.findById(enquetePayLoadWeb.getPersonneId());
|
||||
if (!optionalPersonne.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : Propriétaire inexistant");
|
||||
}
|
||||
|
||||
Optional<Parcelle> optionalParcelle = parcelleRepository.findById(enquetePayLoadWeb.getParcelleId());
|
||||
if (!optionalParcelle.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : Parcelle inexistante");
|
||||
}
|
||||
|
||||
Optional<ZoneRfu> optionalZoneRfu = zoneRfuRepository.findById(enquetePayLoadWeb.getZoneRfuId());
|
||||
if (!optionalZoneRfu.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : zone inexistante");
|
||||
}
|
||||
|
||||
if(enquetePayLoadWeb.getZoneRfuId()!=null) {
|
||||
Optional<Rue> optionalRue = rueRepository.findById(enquetePayLoadWeb.getZoneRfuId());
|
||||
|
||||
if (optionalRue.isPresent()) {
|
||||
rueId = optionalRue.get().getId();
|
||||
enquetePayLoadWeb.getParcellePayLoadWeb().setRueId(rueId);
|
||||
}
|
||||
}
|
||||
|
||||
Optional<Equipe> optionalEquipe = equipeRepository.findById(enquetePayLoadWeb.getEquipeId());
|
||||
|
||||
///enregistrement de la pacelle
|
||||
try {
|
||||
if (enquetePayLoadWeb.getParcellePayLoadWeb().getId() == null) {
|
||||
parcelle = parcelleService.createParcelle(enquetePayLoadWeb.getParcellePayLoadWeb());
|
||||
} else {
|
||||
parcelle = parcelleService.updateParcelle(enquetePayLoadWeb.getParcellePayLoadWeb().getId(),enquetePayLoadWeb.getParcellePayLoadWeb());
|
||||
}
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
throw new ApplicationException("Echec de l'enregistrement : La parcelle non enregistrée.");
|
||||
if (enquetePayLoadWeb.getParcelleId() == null) {
|
||||
throw new ApplicationException("Echec de l'enregistrement : La parcelle non renseignée.");
|
||||
}
|
||||
Enquete enquete = entityFromPayLoadService.getEnqueteFromPayLoadWeb(enquetePayLoadWeb);
|
||||
////enregistrement de l'enquete
|
||||
Enquete enquete = new Enquete();
|
||||
enquete.setDateEnquete(LocalDate.now());
|
||||
//enquete.setBloc(optionalBloc.get());
|
||||
enquete.setUser(optionalUser.get());
|
||||
enquete.setParcelle(parcelle);
|
||||
enquete.setLitige(enquetePayLoadWeb.isLitige());
|
||||
enquete.setStatutEnquete(StatutEnquete.EN_COURS);
|
||||
enquete.setObservationParticuliere(enquetePayLoadWeb.getObservation());
|
||||
enquete.setPersonne(optionalProprietaire.orElse(null));
|
||||
enquete.setZoneRfu(optionalZoneRfu.orElse(null));
|
||||
enquete.setAutreAdresse(enquetePayLoadWeb.getAutreAdresse());
|
||||
enquete.setAutreNumeroTitreFoncier(enquetePayLoadWeb.getAutreNumeroTitreFoncier());
|
||||
enquete.setNumeroTitreFoncier(enquetePayLoadWeb.getNumeroTitreFoncier());
|
||||
enquete.setEquipe(optionalEquipe.orElse(null));
|
||||
enquete.setDateDebutExcemption(enquetePayLoadWeb.getDateDebutExemption());
|
||||
enquete.setDateFinExcemption(enquetePayLoadWeb.getDateFinExemption());
|
||||
enquete.setNbreBatiment(enquetePayLoadWeb.getNbreBatiment());
|
||||
enquete.setNbrePiscine(enquetePayLoadWeb.getNbrePiscine());
|
||||
enquete.setNbreIndivisiaire(enquetePayLoadWeb.getNbreIndivisiaire());
|
||||
enquete.setNbreCoProprietaire(enquetePayLoadWeb.getNbreCoProprietaire());
|
||||
enquete.setNumEntreeParcelle(enquetePayLoadWeb.getNumEntreeParcelle());
|
||||
enquete.setNomRue(enquetePayLoadWeb.getNomRue());
|
||||
enquete.setNumRue(enquetePayLoadWeb.getNumRue());
|
||||
enquete.setSuperficie(enquetePayLoadWeb.getSuperficie());
|
||||
enquete.setMontantMensuelleLocation(enquetePayLoadWeb.getMontantMensuelleLocation());
|
||||
enquete.setMontantAnnuelleLocation(enquetePayLoadWeb.getMontantAnnuelleLocation());
|
||||
enquete.setValeurParcelleEstime(enquetePayLoadWeb.getValeurParcelleEstime());
|
||||
enquete.setValeurParcelleReel(enquetePayLoadWeb.getValeurParcelleReel());
|
||||
Enquete finalEnquete=enqueteRepository.save(enquete);
|
||||
|
||||
enquete=enqueteRepository.save(enquete);
|
||||
|
||||
//////Enregistrement des caractéristiques parcelle
|
||||
enquetePayLoadWeb.getCaracteristiqueParcellePayloadWebs().forEach(caracteristiqueParcellePayloadWeb -> {
|
||||
caracteristiqueParcellePayloadWeb.setEnqueteId(finalEnquete.getId());
|
||||
CaracteristiqueParcelle caracteristiqueParcelle=entityFromPayLoadService.getCaracteristiqueParcelleFromPayLoadWeb(caracteristiqueParcellePayloadWeb);
|
||||
caracteristiqueParcelleService.createCaracteristiqueParcelle(caracteristiqueParcelle);
|
||||
});
|
||||
// enquetePayLoadWeb.getCaracteristiqueParcellePayloadWebs().forEach(caracteristiqueParcellePayloadWeb -> {
|
||||
// caracteristiqueParcellePayloadWeb.setEnqueteId(finalEnquete.getId());
|
||||
// CaracteristiqueParcelle caracteristiqueParcelle=entityFromPayLoadService.getCaracteristiqueParcelleFromPayLoadWeb(caracteristiqueParcellePayloadWeb);
|
||||
// caracteristiqueParcelleService.createCaracteristiqueParcelle(caracteristiqueParcelle);
|
||||
// });
|
||||
|
||||
/////Enregistrement des pièce de parcelles
|
||||
enquetePayLoadWeb.getPiecePayLoadWebs().forEach(piecePayLoadWeb -> {
|
||||
piecePayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
//Piece piece=entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb);
|
||||
Piece piecefinal = pieceService.createPiece(entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb));
|
||||
piecePayLoadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
uploadPayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
upload.setPiece(piecefinal);
|
||||
uploadRepository.save(upload);
|
||||
});
|
||||
});
|
||||
// enquetePayLoadWeb.getPiecePayLoadWebs().forEach(piecePayLoadWeb -> {
|
||||
// piecePayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
// //Piece piece=entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb);
|
||||
// Piece piecefinal = pieceService.createPiece(entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb));
|
||||
// piecePayLoadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
// uploadPayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
// Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
// upload.setPiece(piecefinal);
|
||||
// uploadRepository.save(upload);
|
||||
// });
|
||||
// });
|
||||
|
||||
/////Enregistrement des pièce de parcelles
|
||||
enquetePayLoadWeb.getDeclarationNcPayloadWebs().forEach(declarationNcPayloadWeb -> {
|
||||
declarationNcPayloadWeb.setEnqueteId(finalEnquete.getId());
|
||||
DeclarationNc declarationNcfinal=declarationNcService.createDeclarationNc(entityFromPayLoadService.getDeclarationNcFromPayLoadWeb(declarationNcPayloadWeb));
|
||||
declarationNcPayloadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
uploadPayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
upload.setDeclarationNc(declarationNcfinal);
|
||||
uploadRepository.save(upload);
|
||||
});
|
||||
});
|
||||
// enquetePayLoadWeb.getDeclarationNcPayloadWebs().forEach(declarationNcPayloadWeb -> {
|
||||
// declarationNcPayloadWeb.setEnqueteId(finalEnquete.getId());
|
||||
// DeclarationNc declarationNcfinal=declarationNcService.createDeclarationNc(entityFromPayLoadService.getDeclarationNcFromPayLoadWeb(declarationNcPayloadWeb));
|
||||
// declarationNcPayloadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
// uploadPayLoadWeb.setEnqueteId(finalEnquete.getId());
|
||||
// Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
// upload.setDeclarationNc(declarationNcfinal);
|
||||
// uploadRepository.save(upload);
|
||||
// });
|
||||
// });
|
||||
|
||||
return enquete;
|
||||
return enqueteRepository.findEnqueteToDto(enquete.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Enquete updateEnquete(Long id,EnquetePayLoadWeb enquetePayLoadWeb) throws NotFoundException {
|
||||
public EnquetePayLoadWeb updateEnquete(Long id,EnquetePayLoadWeb enquetePayLoadWeb) throws NotFoundException {
|
||||
if (enquetePayLoadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une enquête ayant un id null.");
|
||||
}
|
||||
@@ -205,17 +164,17 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
throw new NotFoundException("Impossible de trouver l'enquête que vous désirez modifier.");
|
||||
}
|
||||
|
||||
if (enquetePayLoadWeb.getParcellePayLoadWeb()==null) {
|
||||
if (enquetePayLoadWeb.getParcelleId()==null) {
|
||||
throw new BadRequestException("Impossible d'enregistrer une enquête avec une parcelle inexistante");
|
||||
}
|
||||
|
||||
Parcelle parcelle=new Parcelle();
|
||||
Optional<Parcelle> optionalParcelle=Optional.empty();
|
||||
Long rueId;
|
||||
Optional<User> optionalUser = userRepository.findById(enquetePayLoadWeb.getEnqueteurId());
|
||||
if (!optionalUser.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : Enquêteur inexistant");
|
||||
}
|
||||
Optional<Personne> optionalProprietaire = personneRepository.findById(enquetePayLoadWeb.getProprietaireId());
|
||||
Optional<Personne> optionalProprietaire = personneRepository.findById(enquetePayLoadWeb.getPersonneId());
|
||||
if (!optionalProprietaire.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : Propriétaire inexistant");
|
||||
}
|
||||
@@ -224,56 +183,16 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
if (!optionalZoneRfu.isPresent()) {
|
||||
throw new BadRequestException("Echec de l'enregistrement : zone inexistante");
|
||||
}
|
||||
|
||||
Optional<Rue> optionalRue = rueRepository.findById(enquetePayLoadWeb.getZoneRfuId());
|
||||
|
||||
if (optionalRue.isPresent()) {
|
||||
rueId=optionalRue.get().getId();
|
||||
enquetePayLoadWeb.getParcellePayLoadWeb().setRueId(rueId);
|
||||
}
|
||||
|
||||
Optional<Equipe> optionalEquipe = equipeRepository.findById(enquetePayLoadWeb.getEquipeId());
|
||||
|
||||
///enregistrement de la pacelle
|
||||
try {
|
||||
if (enquetePayLoadWeb.getParcellePayLoadWeb().getId() == null) {
|
||||
parcelle = parcelleService.createParcelle(enquetePayLoadWeb.getParcellePayLoadWeb());
|
||||
} else {
|
||||
parcelle = parcelleService.updateParcelle(enquetePayLoadWeb.getParcellePayLoadWeb().getId(),enquetePayLoadWeb.getParcellePayLoadWeb());
|
||||
}
|
||||
}catch (Exception e){
|
||||
throw new ApplicationException("Echec de l'enregistrement : La parcelle non enregistrée.");
|
||||
if (enquetePayLoadWeb.getParcelleId() == null) {
|
||||
throw new ApplicationException("Echec de l'enregistrement : La parcelle non renseignée.");
|
||||
} else {
|
||||
optionalParcelle = parcelleService.getParcelleById(enquetePayLoadWeb.getParcelleId());
|
||||
}
|
||||
////enregistrement de l'enquete
|
||||
Enquete enquete = new Enquete();
|
||||
enquete.setDateEnquete(LocalDate.now());
|
||||
//enquete.setBloc(optionalBloc.get());
|
||||
enquete.setUser(optionalUser.get());
|
||||
enquete.setParcelle(parcelle);
|
||||
enquete.setLitige(enquetePayLoadWeb.isLitige());
|
||||
enquete.setStatutEnquete(StatutEnquete.EN_COURS);
|
||||
enquete.setObservationParticuliere(enquetePayLoadWeb.getObservation());
|
||||
enquete.setPersonne(optionalProprietaire.orElse(null));
|
||||
enquete.setZoneRfu(optionalZoneRfu.orElse(null));
|
||||
enquete.setAutreAdresse(enquetePayLoadWeb.getAutreAdresse());
|
||||
enquete.setAutreNumeroTitreFoncier(enquetePayLoadWeb.getAutreNumeroTitreFoncier());
|
||||
enquete.setNumeroTitreFoncier(enquetePayLoadWeb.getNumeroTitreFoncier());
|
||||
enquete.setEquipe(optionalEquipe.orElse(null));
|
||||
enquete.setDateDebutExcemption(enquetePayLoadWeb.getDateDebutExemption());
|
||||
enquete.setDateFinExcemption(enquetePayLoadWeb.getDateFinExemption());
|
||||
enquete.setNbreBatiment(enquetePayLoadWeb.getNbreBatiment());
|
||||
enquete.setNbrePiscine(enquetePayLoadWeb.getNbrePiscine());
|
||||
enquete.setNbreIndivisiaire(enquetePayLoadWeb.getNbreIndivisiaire());
|
||||
enquete.setNbreCoProprietaire(enquetePayLoadWeb.getNbreCoProprietaire());
|
||||
enquete.setNumEntreeParcelle(enquetePayLoadWeb.getNumEntreeParcelle());
|
||||
enquete.setNomRue(enquetePayLoadWeb.getNomRue());
|
||||
enquete.setNumRue(enquetePayLoadWeb.getNumRue());
|
||||
enquete.setSuperficie(enquetePayLoadWeb.getSuperficie());
|
||||
enquete.setMontantMensuelleLocation(enquetePayLoadWeb.getMontantMensuelleLocation());
|
||||
enquete.setMontantAnnuelleLocation(enquetePayLoadWeb.getMontantAnnuelleLocation());
|
||||
enquete.setValeurParcelleEstime(enquetePayLoadWeb.getValeurParcelleEstime());
|
||||
enquete.setValeurParcelleReel(enquetePayLoadWeb.getValeurParcelleReel());
|
||||
return enqueteRepository.save(enquete);
|
||||
|
||||
Enquete enquete = entityFromPayLoadService.getEnqueteFromPayLoadWeb(enquetePayLoadWeb);
|
||||
enquete=enqueteRepository.save(enquete);
|
||||
return enqueteRepository.findEnqueteToDto(enquete.getId()).orElse(null);
|
||||
}
|
||||
|
||||
|
||||
@@ -390,24 +309,29 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<Enquete> getEnqueteList(Pageable pageable) {
|
||||
return enqueteRepository.findAll(pageable);
|
||||
public Page<EnquetePayLoadWeb> getEnqueteList(Pageable pageable) {
|
||||
return enqueteRepository.findAllEnquetesToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Enquete> getEnqueteList() {
|
||||
return enqueteRepository.findAll();
|
||||
public List<EnquetePayLoadWeb> getEnqueteList() {
|
||||
return enqueteRepository.findAllEnquetesToDto();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Enquete> getEnqueteListByParcelle(Long parcelleId) {
|
||||
return enqueteRepository.findAllByParcelle_Id(parcelleId);
|
||||
public List<EnquetePayLoadWeb> getEnqueteListByParcelle(Long parcelleId) {
|
||||
return enqueteRepository.findAllEnquetesByParcelleToDto(parcelleId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<Enquete> getEnqueteById(Long id) {
|
||||
public Page<EnquetePayLoadWeb> getEnqueteListByParcellePageable(Long parcelleId, Pageable pageable) {
|
||||
return enqueteRepository.findAllEnquetesByParcelleToDtoPageable(parcelleId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<EnquetePayLoadWeb> getEnqueteById(Long id) {
|
||||
if (enqueteRepository.existsById(id)) {
|
||||
return enqueteRepository.findById(id);
|
||||
return enqueteRepository.findEnqueteToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver l'enquête.");
|
||||
}
|
||||
@@ -425,7 +349,7 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
Enquete enquete = optionalEnquete.get();
|
||||
enquete.setDateValidation(LocalDate.now());
|
||||
enquete.setStatutEnquete(StatutEnquete.VALIDE);
|
||||
enquete.setSynchronise(false);
|
||||
enquete.setSynchronise(true);
|
||||
return enqueteRepository.save(enquete);
|
||||
}
|
||||
|
||||
@@ -599,13 +523,13 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
|
||||
List<CaracteristiqueParcelle> caracteristiqueParcelles = caracteristiqueParcelleRepository.findAllByEnquete_Id(enqueteId);
|
||||
|
||||
List<EnqueteBatiment> enqueteBatiments = enqueteBatimentRepository.findAllByEnquete_Id(enqueteId);
|
||||
//List<EnqueteBatiment> enqueteBatiments = enqueteBatimentRepository.findAllByEnquete_Id(enqueteId);
|
||||
|
||||
List<EnqueteUniteLogement> enqueteUniteLogements = enqueteUniteLogementRepository.findAllByEnquete_Id(enqueteId);
|
||||
// List<EnqueteUniteLogement> enqueteUniteLogements = enqueteUniteLogementRepository.findAllByEnquete_Id(enqueteId);
|
||||
|
||||
ficheEnquetesResponse.setCaracteristiquesParcelles(caracteristiqueParcelles);
|
||||
ficheEnquetesResponse.setEnquetesBatiments(enqueteBatiments);
|
||||
ficheEnquetesResponse.setEnquetesUniteLogements(enqueteUniteLogements);
|
||||
// ficheEnquetesResponse.setEnquetesBatiments(enqueteBatiments);
|
||||
// ficheEnquetesResponse.setEnquetesUniteLogements(enqueteUniteLogements);
|
||||
ficheEnqueteResponse.setEnquete(ficheEnquetesResponse);
|
||||
ficheEnqueteResponse.setActeurConcernes(acteurConcernes);
|
||||
|
||||
@@ -618,4 +542,26 @@ public class EnqueteServiceImpl implements EnqueteService {
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public int cloturerEnqueteParcelleBatimentUniteLogementByUserIdAndExerciceId(Long userId,Long exerciceId) {
|
||||
Optional<User> optionalUser= userRepository.findById(userId);
|
||||
int nbreEnquete=0;
|
||||
if(optionalUser.isPresent() && optionalUser.get().getStructure()!=null){
|
||||
Long structureId=optionalUser.get().getStructure().getId();
|
||||
nbreEnquete=cloturerEnqueteParcelleBatimentUniteLogementByStructureIdAndExerciceId(structureId,exerciceId);
|
||||
}
|
||||
return nbreEnquete;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public int cloturerEnqueteParcelleBatimentUniteLogementByStructureIdAndExerciceId(Long structureId,Long exerciceId) {
|
||||
Integer nombreParcelleImpacte=enqueteRepository.clotureEnqueteParcelle(structureId,exerciceId);
|
||||
Integer nombreBatiment=enqueteBatimentRepository.clotureEnqueteBatiment(structureId,exerciceId);
|
||||
Integer nombreUniteLogement=enqueteUniteLogementRepository.clotureEnqueteUniteLogement(structureId,exerciceId);
|
||||
return nombreParcelleImpacte;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.ParcelleGeomService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ParcelleGeomPaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.response.EnqueteCheckResponse;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.EnqueteRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.ParcelleGeomRepository;
|
||||
@@ -79,6 +80,7 @@ public class ParcelleGeomServiceImpl implements ParcelleGeomService {
|
||||
return n;
|
||||
}
|
||||
|
||||
|
||||
private Upload saveGeoJsonUpload(MultipartFile file,String reference,String desc) {
|
||||
Upload upload = new Upload();
|
||||
String fileName = fileStorageService.storeFile(file);
|
||||
@@ -176,6 +178,16 @@ public class ParcelleGeomServiceImpl implements ParcelleGeomService {
|
||||
return parcelleGeomRepository.findAllByQuartier_Code(codeQuartier);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ParcelleGeomPaylaodWeb> getParcelleGeomListByQuatierId(Long quartierId) {
|
||||
return parcelleGeomRepository.findAllByQuartierId(quartierId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcelleGeomPaylaodWeb> getParcelleGeomListByQuatierIdPaged(Long quartierId, Pageable pageable) {
|
||||
return parcelleGeomRepository.findAllByQuartierIdPageable(quartierId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ParcelleGeom> getParcelleGeomListUnArrondissement(String codeArrondissement) {
|
||||
return parcelleGeomRepository.findAllByQuartier_Arrondissement_Code(codeArrondissement);
|
||||
@@ -262,4 +274,9 @@ public class ParcelleGeomServiceImpl implements ParcelleGeomService {
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int createParcelleGeomFromGeoJsonApi() throws BadRequestException {
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.decoupage.SecteurService;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.ParcelleService;
|
||||
import io.gmss.fiscad.paylaods.FiltreParcelle;
|
||||
import io.gmss.fiscad.paylaods.request.FiltreParcellePayLoad;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ParcellePayLoadWeb;
|
||||
import io.gmss.fiscad.paylaods.response.dataTableResponse.ParcelleDataTableResponse;
|
||||
@@ -21,6 +22,7 @@ import io.gmss.fiscad.persistence.repositories.infocad.parametre.SituationGeogra
|
||||
import io.gmss.fiscad.persistence.specification.ParcelleSpecification;
|
||||
import io.gmss.fiscad.service.GeometryService;
|
||||
import jakarta.persistence.Query;
|
||||
import jakarta.transaction.Transactional;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.*;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -47,7 +49,7 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
|
||||
|
||||
@Override
|
||||
public Parcelle createParcelle(ParcellePayLoadWeb parcellePayLoadWeb) throws BadRequestException {
|
||||
public ParcellePayLoadWeb createParcelle(ParcellePayLoadWeb parcellePayLoadWeb) throws BadRequestException {
|
||||
Optional<NatureDomaine> optionalNatureDomaine = natureDomaineRepository.findById(parcellePayLoadWeb.getNatureDomaineId());
|
||||
if (!optionalNatureDomaine.isPresent()) {
|
||||
throw new BadRequestException("Impossible d'enregistrer une parcelle avec une nature de domaine inexistant");
|
||||
@@ -60,11 +62,12 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
parcelle.setNatureDomaine(optionalNatureDomaine.orElse(null));
|
||||
parcelle.setQuartier(optionalQuartier.orElse(null));
|
||||
parcelle = getParcelleFromPayload(parcelle, parcellePayLoadWeb);
|
||||
return parcelleRepository.save(parcelle);
|
||||
parcelle= parcelleRepository.save(parcelle);
|
||||
return parcelleRepository.findParcelleToDtoById(parcelle.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Parcelle updateParcelle(Long id, ParcellePayLoadWeb parcellePayLoadWeb) throws NotFoundException {
|
||||
public ParcellePayLoadWeb updateParcelle(Long id, ParcellePayLoadWeb parcellePayLoadWeb) throws NotFoundException {
|
||||
Optional<Parcelle> optionalParcelle = parcelleRepository.findById(parcellePayLoadWeb.getId());
|
||||
if (!optionalParcelle.isPresent()) {
|
||||
throw new NotFoundException("Impossible de trouver la parcelle que vous désirer modifier");
|
||||
@@ -85,7 +88,8 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
parcelle.setNatureDomaine(optionalNatureDomaine.orElse(null));
|
||||
parcelle.setQuartier(optionalQuartier.orElse(null));
|
||||
parcelle = getParcelleFromPayload(optionalParcelle.get(), parcellePayLoadWeb);
|
||||
return parcelleRepository.save(parcelle);
|
||||
parcelle= parcelleRepository.save(parcelle);
|
||||
return parcelleRepository.findParcelleToDtoById(parcelle.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -117,6 +121,54 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
return parcelleRepository.findAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<ParcellePayLoadWeb> getParcelleByIdToDto(Long userId, Long parcelleId) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findParcelleToDtoById(secteurIds,parcelleId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ParcellePayLoadWeb> getParcelleListToDto(Long userId) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findAllParcelleToDto(secteurIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcellePayLoadWeb> getParcelleListPageableToDto(Long userId, Pageable pageable) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findAllParcelleToDtoPageable(secteurIds,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ParcellePayLoadWeb> getParcelleListByQuartierToDto(Long userId, Long quartierId) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findAllParcelleByQuartierToDto(quartierId,secteurIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcellePayLoadWeb> getParcelleListByQuartierPageableToDto(Long userId, Long quartierId, Pageable pageable) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findAllParcelleByQuartierToDtoPageable(quartierId,secteurIds,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ParcellePayLoadWeb> getParcelleListByRueToDto(Long userId, Long rueId) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
return parcelleRepository.findAllParcelleByRueToDto(rueId,secteurIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcellePayLoadWeb> getParcelleListByRuePageableToDto(Long userId, Long rueId, Pageable pageable) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
System.out.println(rueId);
|
||||
secteurIds.forEach(aLong -> {
|
||||
System.out.println(aLong);
|
||||
|
||||
});
|
||||
return parcelleRepository.findAllParcelleByRueToDtoPageable(rueId,secteurIds,pageable);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<Parcelle> getParcelleById(Long id) {
|
||||
if (parcelleRepository.existsById(id)) {
|
||||
@@ -126,37 +178,39 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcelleDataTableResponse> getParcelleDataTableListByUserId(Long userId, Pageable pageable) {
|
||||
|
||||
@Override
|
||||
public Page<ParcellePayLoadWeb> getParcelleByMultiFiltre(Long userId, FiltreParcelle filtreParcelle, Pageable pageable) {
|
||||
List<Long> secteurIds = getSecteurIdListForUser(userId);
|
||||
System.out.println(secteurIds.size());
|
||||
if (secteurIds == null || secteurIds.isEmpty()) {
|
||||
throw new IllegalArgumentException("Vous n'êtes pas autorisés à consulter ces parcelles");
|
||||
}
|
||||
return parcelleRepository.filtrerParcellesNative(
|
||||
filtreParcelle,
|
||||
secteurIds,
|
||||
pageable
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Integer majParcelleBatieNonbatie() {
|
||||
return parcelleRepository.updateParcelleBatieTrue()+parcelleRepository.updateParcelleBatieFalse();
|
||||
}
|
||||
|
||||
|
||||
private List<Long> getSecteurIdListForUser(Long userId) {
|
||||
List<Secteur> secteurs = secteurService.getListSecteurUserId(userId);
|
||||
List<Long> secteurIds = secteurs.stream()
|
||||
.map(Secteur::getId)
|
||||
.toList();
|
||||
Page<ParcelleDataTableResponse> parcelleDataTableResponses=parcelleRepository.getParcelleDataTableResponse(secteurIds,pageable);
|
||||
|
||||
return parcelleDataTableResponses ;
|
||||
return secteurIds;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<ParcelleDataTableResponse> getParcelleDataTableListByMultiFiltre(Long userId, FiltreParcellePayLoad filtreParcellePayLoad, Pageable pageable) {
|
||||
List<Secteur> secteurs = secteurService.getListSecteurUserId(userId);
|
||||
List<Long> secteurIds = secteurs.stream()
|
||||
.map(Secteur::getId)
|
||||
.toList();
|
||||
//
|
||||
// return parcelleRepository.findAll(
|
||||
// ParcelleSpecification.filtre(filtreParcellePayLoad, secteurIds),
|
||||
// pageable
|
||||
// );
|
||||
|
||||
|
||||
|
||||
Page<ParcelleDataTableResponse> parcelleDataTableResponses=parcelleRepository.getParcelleDataTableResponse(secteurIds,pageable);
|
||||
|
||||
return parcelleDataTableResponses ;
|
||||
}
|
||||
|
||||
private Parcelle getParcelleFromPayload(Parcelle parcelle, ParcellePayLoadWeb parcellePayLoadWeb) {
|
||||
if(parcellePayLoadWeb.getRueId()!=null) {
|
||||
Optional<Rue> optionalRue = rueRepository.findById(parcellePayLoadWeb.getRueId());
|
||||
|
||||
@@ -2,12 +2,17 @@ package io.gmss.fiscad.implementations.infocad.metier;
|
||||
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.parametre.*;
|
||||
import io.gmss.fiscad.enums.EtatIdentificationPersonne;
|
||||
import io.gmss.fiscad.enums.Origine;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.PersonneService;
|
||||
import io.gmss.fiscad.paylaods.dto.*;
|
||||
import io.gmss.fiscad.paylaods.request.IfuEnLigneRechercheBody;
|
||||
import io.gmss.fiscad.paylaods.request.RecherchePersonneResquestBody;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.PersonnePayLoadWeb;
|
||||
import io.gmss.fiscad.paylaods.response.ifuenligne.IfuEnLigneContribuableResponse;
|
||||
import io.gmss.fiscad.persistence.repositories.decoupage.CommuneRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.decoupage.NationaliteRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.MembreGroupeRepository;
|
||||
@@ -17,6 +22,7 @@ import io.gmss.fiscad.persistence.repositories.infocad.parametre.PersonneReposit
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.ProfessionRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.SituationMatrimonialeRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.TypePersonneRepository;
|
||||
import io.gmss.fiscad.service.CallAPIService;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import jakarta.persistence.EntityNotFoundException;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -24,9 +30,13 @@ import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import java.time.ZoneId;
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class PersonneServiceImpl implements PersonneService {
|
||||
@@ -41,26 +51,19 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
private final ProfessionRepository professionRepository;
|
||||
private final SituationMatrimonialeRepository situationMatrimonialeRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final CallAPIService callAPIService;
|
||||
|
||||
|
||||
@Override
|
||||
public Personne createPersonne(PersonnePayLoadWeb personnePayLoadWeb) throws BadRequestException {
|
||||
// Optional<TypePersonne> optionalTypePersonne = typePersonneRepository.findById(personnePayLoadWeb.getTypePersonneId());
|
||||
//
|
||||
// Optional<Commune> optionalCommune = communeRepository.findById(personnePayLoadWeb.getCommuneId());
|
||||
//
|
||||
//
|
||||
// Optional<Nationalite> optionalNationalite = nationaliteRepository.findById(personnePayLoadWeb.getNationaliteId());
|
||||
//
|
||||
// Optional<SituationMatrimoniale> optionalQuartier = situationMatrimonialeRepository.findById(personnePayLoadWeb.getSituationMatrimonialeId());
|
||||
//
|
||||
// Optional<Profession> optionalProfession = professionRepository.findById(personnePayLoadWeb.getProfessionId());
|
||||
//
|
||||
public PersonnePayLoadWeb createPersonne(PersonnePayLoadWeb personnePayLoadWeb) throws BadRequestException {
|
||||
|
||||
Personne personne = entityFromPayLoadService.getPersonneFromPayLoadWeb(personnePayLoadWeb);
|
||||
return personneRepository.save(personne);
|
||||
personne =personneRepository.save(personne);
|
||||
return personneRepository.findBypersonneId(personne.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Personne updatePersonne(Long id, PersonnePayLoadWeb personnePayLoadWeb) throws NotFoundException {
|
||||
public PersonnePayLoadWeb updatePersonne(Long id, PersonnePayLoadWeb personnePayLoadWeb) throws NotFoundException {
|
||||
if (personnePayLoadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une enquête ayant un id null.");
|
||||
}
|
||||
@@ -69,7 +72,8 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
}
|
||||
|
||||
Personne personne = entityFromPayLoadService.getPersonneFromPayLoadWeb(personnePayLoadWeb);
|
||||
return personneRepository.save(personne);
|
||||
personne =personneRepository.save(personne);
|
||||
return personneRepository.findBypersonneId(personne.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -78,18 +82,18 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<Personne> getPersonneList(Pageable pageable) {
|
||||
public Page<PersonnePayLoadWeb> getPersonneList(Pageable pageable) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Personne> getPersonneList() {
|
||||
public List<PersonnePayLoadWeb> getPersonneList() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<Personne> getPersonneById(Long id) {
|
||||
return personneRepository.findById(id);
|
||||
public Optional<PersonnePayLoadWeb> getPersonneById(Long id) {
|
||||
return personneRepository.findBypersonneId(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -189,5 +193,165 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
membres
|
||||
);
|
||||
}
|
||||
|
||||
// @Override
|
||||
// public List<PersonnePayLoadWeb> recherchePersonne(RecherchePersonneResquestBody recherchePersonneResquestBody) {
|
||||
//
|
||||
//
|
||||
//
|
||||
// List<PersonnePayLoadWeb> personnePayLoadWebsRfuLoggil = new ArrayList<>();
|
||||
// personnePayLoadWebsRfuLoggil = recherchePersonneLocal(recherchePersonneResquestBody);
|
||||
//
|
||||
// try{
|
||||
//
|
||||
// LocalDate date = recherchePersonneResquestBody.getDateNaissance();
|
||||
// String dateNaissance = date != null
|
||||
// ? date.format(DateTimeFormatter.ISO_LOCAL_DATE)
|
||||
// : null;
|
||||
//
|
||||
// IfuEnLigneRechercheBody ifuEnLigneRechercheBody =new IfuEnLigneRechercheBody();
|
||||
// // ifuEnLigneRechercheBody.setIfu(recherchePersonneResquestBody.getIfu());
|
||||
// ifuEnLigneRechercheBody.setNom(recherchePersonneResquestBody.getNom());
|
||||
// ifuEnLigneRechercheBody.setPrenom(recherchePersonneResquestBody.getPrenom());
|
||||
// ifuEnLigneRechercheBody.setDateNaissance(dateNaissance);
|
||||
//
|
||||
// List<IfuEnLigneContribuableResponse> ifuEnLigneContribuableResponses =callAPIService.callApiRechercheContribIfuEnLigne(ifuEnLigneRechercheBody);
|
||||
// System.out.println(ifuEnLigneContribuableResponses);
|
||||
// if(ifuEnLigneContribuableResponses!=null && !ifuEnLigneContribuableResponses.isEmpty()){
|
||||
// //List<PersonnePayLoadWeb> finalPersonnePayLoadWebsRfuLoggil = personnePayLoadWebsRfuLoggil;
|
||||
// ifuEnLigneContribuableResponses.forEach(ifuEnLigneContribuableResponse -> {
|
||||
// PersonnePayLoadWeb personnePayLoadWeb=new PersonnePayLoadWeb();
|
||||
// personnePayLoadWeb.setSource(Origine.SIGIBE);
|
||||
// personnePayLoadWeb.setNpi(ifuEnLigneContribuableResponse.getNpi());
|
||||
// personnePayLoadWeb.setIfu(ifuEnLigneContribuableResponse.getIfu());
|
||||
// personnePayLoadWeb.setNomMere(ifuEnLigneContribuableResponse.getMotherlastname());
|
||||
// personnePayLoadWeb.setNom(ifuEnLigneContribuableResponse.getLastname());
|
||||
// personnePayLoadWeb.setPrenom(ifuEnLigneContribuableResponse.getFirstname());
|
||||
// personnePayLoadWeb.setPrenomMere(ifuEnLigneContribuableResponse.getBjmotherfirstname());
|
||||
//
|
||||
// Date birthdate = ifuEnLigneContribuableResponse.getBirthdate();
|
||||
// LocalDate localDate = birthdate != null
|
||||
// ? birthdate.toInstant()
|
||||
// .atZone(ZoneId.systemDefault())
|
||||
// .toLocalDate()
|
||||
// : null;
|
||||
// personnePayLoadWeb.setDateNaissanceOuConsti(localDate);
|
||||
// personnePayLoadWeb.setTel1(ifuEnLigneContribuableResponse.getPhonenumber());
|
||||
// personnePayLoadWeb.setLieuNaissance(ifuEnLigneContribuableResponse.getBirthplace());
|
||||
// personnePayLoadWeb.setSexe(ifuEnLigneContribuableResponse.getSexe());
|
||||
//
|
||||
// personnePayLoadWebsRfuLoggil.add(personnePayLoadWeb);
|
||||
// });
|
||||
// }
|
||||
// }catch (Exception e){
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
//
|
||||
// return personnePayLoadWebsRfuLoggil;
|
||||
// }
|
||||
|
||||
|
||||
@Override
|
||||
public List<PersonnePayLoadWeb> recherchePersonne(RecherchePersonneResquestBody request) {
|
||||
|
||||
List<PersonnePayLoadWeb> result = new ArrayList<>(
|
||||
recherchePersonneLocal(request)
|
||||
);
|
||||
|
||||
try {
|
||||
// Conversion date en String format yyyy-MM-dd
|
||||
String dateNaissance = Optional.ofNullable(request.getDateNaissance())
|
||||
.map(d -> d.format(DateTimeFormatter.ISO_LOCAL_DATE))
|
||||
.orElse(null);
|
||||
// Construction du body IFU
|
||||
IfuEnLigneRechercheBody ifuRequest = new IfuEnLigneRechercheBody();
|
||||
ifuRequest.setNom(request.getNom());
|
||||
ifuRequest.setPrenom(request.getPrenom());
|
||||
ifuRequest.setDateNaissance(dateNaissance);
|
||||
|
||||
List<IfuEnLigneContribuableResponse> responses =
|
||||
callAPIService.callApiRechercheContribIfuEnLigne(ifuRequest);
|
||||
|
||||
if (responses == null || responses.isEmpty()) {
|
||||
return result;
|
||||
}
|
||||
|
||||
for (IfuEnLigneContribuableResponse r : responses) {
|
||||
|
||||
PersonnePayLoadWeb personne = new PersonnePayLoadWeb();
|
||||
personne.setEtatIdentificationPersonne(EtatIdentificationPersonne.IFU);
|
||||
personne.setNpi(r.getNpi());
|
||||
personne.setIfu(r.getIfu());
|
||||
personne.setNomMere(r.getMotherlastname());
|
||||
personne.setNom(r.getLastname());
|
||||
personne.setPrenom(r.getFirstname());
|
||||
personne.setPrenomMere(r.getBjmotherfirstname());
|
||||
personne.setTel1(r.getPhonenumber());
|
||||
personne.setLieuNaissance(r.getBirthplace());
|
||||
personne.setSexe(r.getSexe());
|
||||
|
||||
// Conversion Date → LocalDate
|
||||
Date birthdate = r.getBirthdate();
|
||||
LocalDate localDate = birthdate != null
|
||||
? birthdate.toInstant()
|
||||
.atZone(ZoneId.systemDefault())
|
||||
.toLocalDate()
|
||||
: null;
|
||||
personne.setDateNaissanceOuConsti(localDate);
|
||||
personne.setEtatIdentificationPersonne(EtatIdentificationPersonne.IFU);
|
||||
result.add(personne);
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
// logger.error("Erreur appel IFU EN LIGNE", e);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
private List<PersonnePayLoadWeb> recherchePersonneLocal(RecherchePersonneResquestBody recherchePersonneResquestBody) {
|
||||
|
||||
List<PersonnePayLoadWeb> personnePayLoadWebs=
|
||||
personneRepository.findByFiltersInBaseIfuNpiCorrecte(
|
||||
recherchePersonneResquestBody.getIfu()==null?null:recherchePersonneResquestBody.getIfu().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getNpi()==null?null:recherchePersonneResquestBody.getNpi().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getNom()==null?null:recherchePersonneResquestBody.getNom().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getPrenom()==null?null:recherchePersonneResquestBody.getPrenom().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getRaisonSociale()==null?null:recherchePersonneResquestBody.getRaisonSociale().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getNomMere()==null?null:recherchePersonneResquestBody.getNomMere().trim().toLowerCase(),
|
||||
recherchePersonneResquestBody.getDateNaissance()
|
||||
);
|
||||
return personnePayLoadWebs ;
|
||||
}
|
||||
|
||||
private List<PersonnePayLoadWeb> recherchePersonneSigibe(RecherchePersonneResquestBody recherchePersonneResquestBody) {
|
||||
// callAPIService.callGetIfuEnLigneToken();
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private List<PersonnePayLoadWeb> recherchePersonneAnip(RecherchePersonneResquestBody recherchePersonneResquestBody) {
|
||||
// callAPIService.callGetIfuEnLigneToken();
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
private String like(String value) {
|
||||
if (value == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
value = value.trim();
|
||||
|
||||
if (value.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return "%" + value + "%";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,44 +1,138 @@
|
||||
package io.gmss.fiscad.implementations.infocad.metier;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.metier.Piece;
|
||||
import io.gmss.fiscad.entities.rfu.metier.DeclarationNc;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.PieceService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.PiecePayLoadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.EnqueteRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.PieceRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.PersonneRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.repository.query.Param;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class PieceServiceImpl implements PieceService {
|
||||
private final PieceRepository pieceRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final EnqueteRepository enqueteRepository;
|
||||
private final PersonneRepository personneRepository;
|
||||
@Override
|
||||
public Piece createPiece(Piece piece) throws BadRequestException {
|
||||
return null;
|
||||
public PiecePayLoadWeb createPiece(PiecePayLoadWeb piecePayLoadWeb) throws BadRequestException {
|
||||
if (piecePayLoadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle déclaration NC ayant un id non null.");
|
||||
}
|
||||
|
||||
Piece piece= entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb);
|
||||
piece =pieceRepository.save(piece);
|
||||
return pieceRepository.findPieceToDto(piece.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Piece updatePiece(Long id, Piece piece) throws NotFoundException {
|
||||
return null;
|
||||
public PiecePayLoadWeb updatePiece(Long id, PiecePayLoadWeb piecePayLoadWeb) throws NotFoundException {
|
||||
if (piecePayLoadWeb.getId() == null) {
|
||||
throw new BadRequestException("La piece n'existe pas.");
|
||||
}
|
||||
|
||||
if (!pieceRepository.existsById(piecePayLoadWeb.getId())) {
|
||||
throw new NotFoundException("La piece n'existe pas");
|
||||
}
|
||||
|
||||
Piece piece= entityFromPayLoadService.getPieceFromPayLoadWeb(piecePayLoadWeb);
|
||||
piece =pieceRepository.save(piece);
|
||||
return pieceRepository.findPieceToDto(piece.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deletePiece(Long id) throws NotFoundException {
|
||||
|
||||
Optional<Piece> pieceOptional = pieceRepository.findById(id);
|
||||
if (pieceOptional.isPresent()) {
|
||||
pieceRepository.deleteById(pieceOptional.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la piece à supprimer .");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<Piece> getPieceList(Pageable pageable) {
|
||||
return null;
|
||||
public Page<PiecePayLoadWeb> getPieceListToDtoPageable(Pageable pageable) {
|
||||
return pieceRepository.findAllToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Piece> getPieceList() {
|
||||
return null;
|
||||
public List<PiecePayLoadWeb> getPieceListToDto() {
|
||||
return pieceRepository.findAllPieceToDto();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<Piece> getPieceById(Long id) {
|
||||
return Optional.empty();
|
||||
public Optional<PiecePayLoadWeb> getPieceByToDto(Long id) {
|
||||
return pieceRepository.findPieceToDto(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PiecePayLoadWeb> getAllPieceByEnqueteToDto(Long id) {
|
||||
return pieceRepository.findByFilters(
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
id,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<PiecePayLoadWeb> getAllPieceByEnqueteToDtoPageable(Long id,Pageable pageable) {
|
||||
return pieceRepository.findByFiltersPageable(
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
id,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PiecePayLoadWeb> getAllPieceByEnqueteBatimentToDto(Long id) {
|
||||
return pieceRepository.findByFilters(
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
id,
|
||||
null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PiecePayLoadWeb> getAllPieceByEnqueteUniteLogementToDto(Long id) {
|
||||
return pieceRepository.findByFilters(
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,103 @@
|
||||
package io.gmss.fiscad.implementations.infocad.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.metier.Piece;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.entities.rfu.metier.Batiment;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.UploadService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.UploadPayLoadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.PieceRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.UploadRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import io.gmss.fiscad.service.FileStorageService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class UploadServiceImpl implements UploadService {
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final UploadRepository uploadRepository;
|
||||
private final PieceRepository pieceRepository;
|
||||
private final FileStorageService fileStorageService;
|
||||
@Override
|
||||
public UploadPayLoadWeb createUpload(UploadPayLoadWeb uploadPayLoadWeb) throws BadRequestException {
|
||||
if (uploadPayLoadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer un nouveau upload ayant un id non null.");
|
||||
}
|
||||
Upload upload= entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
upload= uploadRepository.save(upload);
|
||||
return uploadRepository.findByIdToDto(upload.getId()).orElse(null);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Upload createUpload(MultipartFile file, @RequestParam Long pieceId) throws BadRequestException {
|
||||
Upload upload = new Upload();
|
||||
if(pieceId!=null && !pieceRepository.existsById(pieceId)) {
|
||||
throw new NotFoundException("La piece n'existe pas");
|
||||
}
|
||||
Optional<Piece> optionalPiece = pieceRepository.findById(pieceId);
|
||||
String fileName = fileStorageService.storeFile(file);
|
||||
upload.setPiece(optionalPiece.orElse(null));
|
||||
upload.setFileName(fileName);
|
||||
upload.setRename(fileName);
|
||||
upload.setMimeType(file.getContentType());
|
||||
upload.setSize(file.getSize());
|
||||
upload.setOriginalFileName(file.getOriginalFilename());
|
||||
upload = uploadRepository.save(upload) ;
|
||||
return upload;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UploadPayLoadWeb updateUpload(Long id, UploadPayLoadWeb uploadPayLoadWeb) throws NotFoundException {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteUpload(Long id) throws NotFoundException {
|
||||
Optional<Upload> optionalUpload = uploadRepository.findById(id);
|
||||
if (optionalUpload.isPresent()) {
|
||||
uploadRepository.deleteById(optionalUpload.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver le fichier spécifié dans notre base de données.");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<UploadPayLoadWeb> getUploadListToDtoPageable(Pageable pageable) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<UploadPayLoadWeb> getUploadListToDto() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<UploadPayLoadWeb> getUploadByToDto(Long id) {
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<UploadPayLoadWeb> getAllUploadByPieceToDto(Long id) {
|
||||
return uploadRepository.findByPieceId(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<UploadPayLoadWeb> getAllUploadByPieceDtoPageable(Long id, Pageable pageable) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Upload> getAllUploadByPiece(Long id) {
|
||||
return uploadRepository.findAllByPiece_Id(id);
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,7 @@ import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.decoupage.ArrondissementService;
|
||||
import io.gmss.fiscad.interfaces.infocad.parametre.BlocService;
|
||||
import io.gmss.fiscad.interfaces.infocad.parametre.StructureService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.StructurePaylaodWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.BlocRepository;
|
||||
import io.gmss.fiscad.service.StringService;
|
||||
import org.springframework.data.domain.Page;
|
||||
@@ -77,7 +78,7 @@ public class BlocServiceImpl implements BlocService {
|
||||
}
|
||||
}
|
||||
|
||||
Optional<Structure> structureOptional = structureService.getStructureById(structure_id);
|
||||
Optional<StructurePaylaodWeb> structureOptional = structureService.getStructureById(structure_id);
|
||||
if (structureOptional.isPresent()) {
|
||||
builder.append(structureOptional.get().getCode());
|
||||
builder.append(bloc.getArrondissement().getCode());
|
||||
|
||||
@@ -1,19 +1,25 @@
|
||||
package io.gmss.fiscad.implementations.infocad.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.decoupage.Commune;
|
||||
import io.gmss.fiscad.entities.decoupage.Secteur;
|
||||
import io.gmss.fiscad.entities.decoupage.Section;
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Structure;
|
||||
import io.gmss.fiscad.entities.user.AvoirFonction;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.infocad.parametre.StructureService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.StructurePaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.response.StructureResponse;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.StructureRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.user.AvoirFonctionRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
@AllArgsConstructor
|
||||
@@ -22,65 +28,36 @@ public class StructureServiceImpl implements StructureService {
|
||||
|
||||
private final StructureRepository structureRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final AvoirFonctionRepository avoirFonctionRepository;
|
||||
|
||||
// @Override
|
||||
// public StructurePaylaodWeb createStructure(StructurePaylaodWeb structurePaylaodWeb) throws BadRequestException {
|
||||
// if (structure.getId() != null) {
|
||||
// throw new BadRequestException("Impossible de créer une structure ayant un id non null.");
|
||||
// }
|
||||
// StringBuilder builder = new StringBuilder();
|
||||
// builder.append("C");
|
||||
// builder.append(structureRepository.getLastRecordId() + 1);
|
||||
// structure.setCode(builder.toString());
|
||||
// return structureRepository.save(structure);
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public Structure updateStructure(Long id, Structure structure) throws NotFoundException {
|
||||
//
|
||||
// System.out.println("structure = " + structure);
|
||||
//
|
||||
// if (structure.getId() == null) {
|
||||
// throw new BadRequestException("Impossible de mettre à jour une structure ayant un id null.");
|
||||
// }
|
||||
// if (!structureRepository.existsById(structure.getId())) {
|
||||
// throw new NotFoundException("Impossible de trouver la structure spécifiée dans notre base de données.");
|
||||
// }
|
||||
// try {
|
||||
// structureRepository.save(structure);
|
||||
//
|
||||
// }catch (Exception e){
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
//
|
||||
// Structure structure1 = structureRepository.getById(structure.getId());
|
||||
//
|
||||
// return structure1;
|
||||
// }
|
||||
//
|
||||
@Override
|
||||
public StructurePaylaodWeb createStructure(StructurePaylaodWeb structurePaylaodWeb) throws BadRequestException {
|
||||
if (structurePaylaodWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer un nouveau centre ayant un id non null.");
|
||||
}
|
||||
Structure structure= entityFromPayLoadService.getStructureFromPayLoadWeb(structurePaylaodWeb);
|
||||
structureRepository.save(structure);
|
||||
structure=structureRepository.save(structure);
|
||||
return structureRepository.findStructureToDtoById(structure.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public StructurePaylaodWeb updateStructure(Long id, StructurePaylaodWeb structurePaylaodWeb) throws NotFoundException {
|
||||
if (structurePaylaodWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour un nouveau centre ayant un id null.");
|
||||
throw new BadRequestException("ID obligatoire pour une mise à jour.");
|
||||
}
|
||||
|
||||
if (!structureRepository.existsById(structurePaylaodWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver le centre spécifiée.");
|
||||
System.out.println(structurePaylaodWeb.getId());
|
||||
Optional<Structure> optionalStructure = structureRepository.findById(structurePaylaodWeb.getId());
|
||||
if(optionalStructure.isEmpty()){
|
||||
throw new NotFoundException("Structure inexistante.");
|
||||
}
|
||||
Structure structure= entityFromPayLoadService.getStructureFromPayLoadWeb(structurePaylaodWeb);
|
||||
structure = structureRepository.save(structure);
|
||||
// structureRepository.findStructureToDtoById(structure.getId()).orElse(null);
|
||||
return structureRepository.findStructureToDtoById(structure.getId()).orElse(null);
|
||||
|
||||
Structure structure = entityFromPayLoadService.getStructureFromPayLoadWeb(structurePaylaodWeb);
|
||||
structureRepository.save(structure);
|
||||
|
||||
return structureRepository
|
||||
.findStructureToDtoById(structure.getId())
|
||||
.orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -114,16 +91,33 @@ public class StructureServiceImpl implements StructureService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<StructurePaylaodWeb> getStructureByIdToDto(Long id) {
|
||||
public Optional<StructurePaylaodWeb> getStructureById(Long id) {
|
||||
return structureRepository.findStructureToDtoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<Structure> getStructureById(Long id) {
|
||||
if (structureRepository.existsById(id)) {
|
||||
return structureRepository.findById(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la structure spécifiée dans la base de données.");
|
||||
}
|
||||
public List<Structure> getListStructureUserId(Long userId) {
|
||||
List<AvoirFonction> avoirFonctions= avoirFonctionRepository.findAvoirFonctionByUser_Id(userId);
|
||||
List<Structure> structures = new ArrayList<>();
|
||||
avoirFonctions.stream()
|
||||
.filter(af -> af.getDateFin() == null || af.getDateFin().isAfter(LocalDate.now()))
|
||||
.forEach(avoirFonction -> {
|
||||
if(avoirFonction.getFonction().getStructure()!=null){
|
||||
structures.addAll(List.of(avoirFonction.getFonction().getStructure()));
|
||||
}else if (avoirFonction.getFonction().getDepartement()!=null){
|
||||
structures.addAll(structureRepository.findDistinctByCommune_Departement_Id(avoirFonction.getFonction().getDepartement().getId()));
|
||||
}
|
||||
});
|
||||
return structures;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// public List<Long> getStructureIdListForUser(Long userId) {
|
||||
// List<Structure> structures = secteurService.getListSecteurUserId(userId);
|
||||
// List<Long> secteurIds = secteurs.stream()
|
||||
// .map(Secteur::getId)
|
||||
// .toList();
|
||||
// return secteurIds;
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -23,17 +23,17 @@ public class BatimentServiceImpl implements BatimentService {
|
||||
|
||||
|
||||
@Override
|
||||
public Batiment createBatiment(BatimentPaylaodWeb batimentPaylaodWeb) throws BadRequestException {
|
||||
public BatimentPaylaodWeb createBatiment(BatimentPaylaodWeb batimentPaylaodWeb) throws BadRequestException {
|
||||
if (batimentPaylaodWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer un nouveau batiment ayant un id non null.");
|
||||
}
|
||||
Batiment batiment= entityFromPayLoadService.getBatimentFromPayLoadWeb(batimentPaylaodWeb);
|
||||
|
||||
return batimentRepository.save(batiment);
|
||||
Batiment batiment= entityFromPayLoadService.getBatimentFromPayLoadWeb(batimentPaylaodWeb);
|
||||
batiment= batimentRepository.save(batiment);
|
||||
return batimentRepository.findBatimentAvecOccupantCourantToDto(batiment.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Batiment updateBatiment(Long id,BatimentPaylaodWeb batimentPaylaodWeb) throws NotFoundException {
|
||||
public BatimentPaylaodWeb updateBatiment(Long id,BatimentPaylaodWeb batimentPaylaodWeb) throws NotFoundException {
|
||||
if (batimentPaylaodWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour un nouveau batiment ayant un id null.");
|
||||
}
|
||||
@@ -41,8 +41,8 @@ public class BatimentServiceImpl implements BatimentService {
|
||||
throw new NotFoundException("Impossible de trouver le batiment spécifié dans notre base de données.");
|
||||
}
|
||||
Batiment batiment= entityFromPayLoadService.getBatimentFromPayLoadWeb(batimentPaylaodWeb);
|
||||
|
||||
return batimentRepository.save(batiment);
|
||||
batiment= batimentRepository.save(batiment);
|
||||
return batimentRepository.findBatimentAvecOccupantCourantToDto(batiment.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -56,20 +56,30 @@ public class BatimentServiceImpl implements BatimentService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<Batiment> getBatimentList(Pageable pageable) {
|
||||
return batimentRepository.findAll(pageable);
|
||||
public Page<BatimentPaylaodWeb> getBatimentList(Pageable pageable) {
|
||||
return batimentRepository.findAllBatimentsAvecOccupantCourantToDtoPageble(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Batiment> getBatimentList() {
|
||||
return batimentRepository.findAll();
|
||||
public List<BatimentPaylaodWeb> getBatimentList() {
|
||||
return batimentRepository.findAllBatimentsAvecOccupantCourantToDto();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<BatimentPaylaodWeb> getBatimentListByParcellePageable(Long parcelleId, Pageable pageable) {
|
||||
return batimentRepository.findAllBatimentsAvecOccupantCourantByParcelleToDtoPageble(parcelleId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BatimentPaylaodWeb> getBatimentListByParcelle(Long parcelleId) {
|
||||
return batimentRepository.findAllBatimentsAvecOccupantCourantByParcelleToDto(parcelleId);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<Batiment> getBatimentById(Long id) {
|
||||
public Optional<BatimentPaylaodWeb> getBatimentById(Long id) {
|
||||
if (batimentRepository.existsById(id)) {
|
||||
return batimentRepository.findById(id);
|
||||
return batimentRepository.findBatimentAvecOccupantCourantToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la caractéristique spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
@@ -1,43 +1,56 @@
|
||||
package io.gmss.fiscad.implementations.rfu.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueParcelle;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueBatimentService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueBatimentPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.CaracteristiqueBatimentRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.EnqueteBatimentRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class CaracteristiqueBatimentServiceImpl implements CaracteristiqueBatimentService {
|
||||
|
||||
private final CaracteristiqueBatimentRepository caracteristiqueBatimentRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final EnqueteBatimentRepository enqueteBatimentRepository;
|
||||
|
||||
public CaracteristiqueBatimentServiceImpl(CaracteristiqueBatimentRepository caracteristiqueBatimentRepository) {
|
||||
this.caracteristiqueBatimentRepository = caracteristiqueBatimentRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueBatiment createCaracteristiqueBatiment(CaracteristiqueBatiment caracteristiqueBatiment) throws BadRequestException {
|
||||
if (caracteristiqueBatiment.getId() != null) {
|
||||
public CaracteristiqueBatimentPayloadWeb createCaracteristiqueBatiment(CaracteristiqueBatimentPayloadWeb caracteristiqueBatimentPayloadWeb) throws BadRequestException {
|
||||
if (caracteristiqueBatimentPayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle caracteristique de batiment ayant un id non null.");
|
||||
}
|
||||
return caracteristiqueBatimentRepository.save(caracteristiqueBatiment);
|
||||
if (!enqueteBatimentRepository.existsById(caracteristiqueBatimentPayloadWeb.getEnqueteBatimentId())) {
|
||||
throw new BadRequestException("Veuillez préciser l'enquete");
|
||||
}
|
||||
|
||||
CaracteristiqueBatiment caracteristiqueBatiment= entityFromPayLoadService.getCaracteristiqueBatimentFromPayLoadWeb(caracteristiqueBatimentPayloadWeb);
|
||||
caracteristiqueBatiment =caracteristiqueBatimentRepository.save(caracteristiqueBatiment);
|
||||
return caracteristiqueBatimentRepository.findCaracteristiqueBatimentToDto(caracteristiqueBatiment.getId()).orElse(null);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueBatiment updateCaracteristiqueBatiment(Long id, CaracteristiqueBatiment caracteristiqueBatiment) throws NotFoundException {
|
||||
if (caracteristiqueBatiment.getId() == null) {
|
||||
public CaracteristiqueBatimentPayloadWeb updateCaracteristiqueBatiment(Long id, CaracteristiqueBatimentPayloadWeb caracteristiqueBatimentPayloadWeb) throws NotFoundException {
|
||||
if (caracteristiqueBatimentPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle caracteristique de batiment ayant un id null.");
|
||||
}
|
||||
if (!caracteristiqueBatimentRepository.existsById(caracteristiqueBatiment.getId())) {
|
||||
if (!caracteristiqueBatimentRepository.existsById(caracteristiqueBatimentPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle caracteristique de batiment spécifié dans notre base de données.");
|
||||
}
|
||||
return caracteristiqueBatimentRepository.save(caracteristiqueBatiment);
|
||||
CaracteristiqueBatiment caracteristiqueBatiment= entityFromPayLoadService.getCaracteristiqueBatimentFromPayLoadWeb(caracteristiqueBatimentPayloadWeb);
|
||||
caracteristiqueBatiment =caracteristiqueBatimentRepository.save(caracteristiqueBatiment);
|
||||
return caracteristiqueBatimentRepository.findCaracteristiqueBatimentToDto(caracteristiqueBatiment.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -51,23 +64,33 @@ public class CaracteristiqueBatimentServiceImpl implements CaracteristiqueBatime
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<CaracteristiqueBatiment> getCaracteristiqueBatimentList(Pageable pageable) {
|
||||
return caracteristiqueBatimentRepository.findAll(pageable);
|
||||
public Page<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentList(Pageable pageable) {
|
||||
return caracteristiqueBatimentRepository.findAllCaracteristiqueBatimentToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaracteristiqueBatiment> getCaracteristiqueBatimentList() {
|
||||
return caracteristiqueBatimentRepository.findAll();
|
||||
public List<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentList() {
|
||||
return caracteristiqueBatimentRepository.findAllCaracteristiqueBatimentToDto();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<CaracteristiqueBatiment> getCaracteristiqueBatimentById(Long id) {
|
||||
public Optional<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentToDto(Long id) {
|
||||
if (caracteristiqueBatimentRepository.existsById(id)) {
|
||||
return caracteristiqueBatimentRepository.findById(id);
|
||||
return caracteristiqueBatimentRepository.findCaracteristiqueBatimentToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la caractéristique spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentListByEnqueteBatimentPageable(Long enqueteBatimentId, Pageable pageable) {
|
||||
return caracteristiqueBatimentRepository.findAllCaracteristiqueBatimentByEnqueteBatimentToDtoPageable(enqueteBatimentId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentListByEnqueteBatiment(Long enqueteBatimentId) {
|
||||
return caracteristiqueBatimentRepository.findAllCaracteristiqueBatimentByEnqueteBatimentToDto(enqueteBatimentId);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -4,40 +4,46 @@ import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueParcelle;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueParcelleService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueParcellePayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.CaracteristiqueParcelleRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class CaracteristiqueParcelleServiceImpl implements CaracteristiqueParcelleService {
|
||||
|
||||
private final CaracteristiqueParcelleRepository caracteristiqueParcelleRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
|
||||
|
||||
public CaracteristiqueParcelleServiceImpl(CaracteristiqueParcelleRepository caracteristiqueParcelleRepository) {
|
||||
this.caracteristiqueParcelleRepository = caracteristiqueParcelleRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueParcelle createCaracteristiqueParcelle(CaracteristiqueParcelle caracteristiqueParcelle) throws BadRequestException {
|
||||
if (caracteristiqueParcelle.getId() != null) {
|
||||
public CaracteristiqueParcellePayloadWeb createCaracteristiqueParcelle(CaracteristiqueParcellePayloadWeb caracteristiqueParcellePayloadWeb) throws BadRequestException {
|
||||
if (caracteristiqueParcellePayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle caracteristique de parcelle ayant un id non null.");
|
||||
}
|
||||
return caracteristiqueParcelleRepository.save(caracteristiqueParcelle);
|
||||
CaracteristiqueParcelle caracteristiqueParcelle= entityFromPayLoadService.getCaracteristiqueParcelleFromPayLoadWeb(caracteristiqueParcellePayloadWeb);
|
||||
caracteristiqueParcelle =caracteristiqueParcelleRepository.save(caracteristiqueParcelle);
|
||||
return caracteristiqueParcelleRepository.findCaracteristiqueParcelleToDto(caracteristiqueParcelle.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueParcelle updateCaracteristiqueParcelle(Long id, CaracteristiqueParcelle caracteristiqueParcelle) throws NotFoundException {
|
||||
if (caracteristiqueParcelle.getId() == null) {
|
||||
public CaracteristiqueParcellePayloadWeb updateCaracteristiqueParcelle(Long id, CaracteristiqueParcellePayloadWeb caracteristiqueParcellePayloadWeb) throws NotFoundException {
|
||||
if (caracteristiqueParcellePayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle caracteristique de parcelle ayant un id null.");
|
||||
}
|
||||
if (!caracteristiqueParcelleRepository.existsById(caracteristiqueParcelle.getId())) {
|
||||
if (!caracteristiqueParcelleRepository.existsById(caracteristiqueParcellePayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle caracteristique de parcelle spécifié dans notre base de données.");
|
||||
}
|
||||
return caracteristiqueParcelleRepository.save(caracteristiqueParcelle);
|
||||
CaracteristiqueParcelle caracteristiqueParcelle= entityFromPayLoadService.getCaracteristiqueParcelleFromPayLoadWeb(caracteristiqueParcellePayloadWeb);
|
||||
caracteristiqueParcelle =caracteristiqueParcelleRepository.save(caracteristiqueParcelle);
|
||||
return caracteristiqueParcelleRepository.findCaracteristiqueParcelleToDto(caracteristiqueParcelle.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -62,12 +68,22 @@ public class CaracteristiqueParcelleServiceImpl implements CaracteristiqueParcel
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<CaracteristiqueParcelle> getCaracteristiqueParcelleById(Long id) {
|
||||
public Optional<CaracteristiqueParcellePayloadWeb> getCaracteristiqueParcelleById(Long id) {
|
||||
if (caracteristiqueParcelleRepository.existsById(id)) {
|
||||
return caracteristiqueParcelleRepository.findById(id);
|
||||
return caracteristiqueParcelleRepository.findCaracteristiqueParcelleToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la caractéristique spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<CaracteristiqueParcellePayloadWeb> getCaracteristiqueParcelleByEnqueteListPageable(Long id,Pageable pageable) {
|
||||
return caracteristiqueParcelleRepository.findAllCaracteristiqueParcelleByEnqueteToDtoPageable(id,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaracteristiqueParcellePayloadWeb> getCaracteristiqueParcelleByEnqueteList(Long enqueteId) {
|
||||
return caracteristiqueParcelleRepository.findAllCaracteristiqueParcelleByEnqueteToDto(enqueteId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,43 +1,56 @@
|
||||
package io.gmss.fiscad.implementations.rfu.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueBatiment;
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueUniteLogement;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.CaracteristiqueUniteLogementService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.CaracteristiqueUniteLogementPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.CaracteristiqueUniteLogementRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.EnqueteUniteLogementRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class CaracteristiqueUniteLogementServiceImpl implements CaracteristiqueUniteLogementService {
|
||||
|
||||
private final CaracteristiqueUniteLogementRepository caracteristiqueUniteLogementRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final EnqueteUniteLogementRepository enqueteUniteLogementRepository;
|
||||
|
||||
|
||||
public CaracteristiqueUniteLogementServiceImpl(CaracteristiqueUniteLogementRepository caracteristiqueUniteLogementRepository) {
|
||||
this.caracteristiqueUniteLogementRepository = caracteristiqueUniteLogementRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueUniteLogement createCaracteristiqueUniteLogement(CaracteristiqueUniteLogement caracteristiqueUniteLogement) throws BadRequestException {
|
||||
if (caracteristiqueUniteLogement.getId() != null) {
|
||||
public CaracteristiqueUniteLogementPayloadWeb createCaracteristiqueUniteLogement(CaracteristiqueUniteLogementPayloadWeb caracteristiqueUniteLogementPayloadWeb) throws BadRequestException {
|
||||
if (caracteristiqueUniteLogementPayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle caracteristique d'unité de logement ayant un id non null.");
|
||||
}
|
||||
return caracteristiqueUniteLogementRepository.save(caracteristiqueUniteLogement);
|
||||
if (!enqueteUniteLogementRepository.existsById(caracteristiqueUniteLogementPayloadWeb.getEnqueteUniteLogementId())) {
|
||||
throw new BadRequestException("Veuillez préciser l'enquete.");
|
||||
}
|
||||
|
||||
CaracteristiqueUniteLogement caracteristiqueUniteLogement= entityFromPayLoadService.getCaracteristiqueUniteLogementFromPayLoadWeb(caracteristiqueUniteLogementPayloadWeb);
|
||||
caracteristiqueUniteLogement =caracteristiqueUniteLogementRepository.save(caracteristiqueUniteLogement);
|
||||
return caracteristiqueUniteLogementRepository.findCaracteristiqueUniteLogementToDto(caracteristiqueUniteLogement.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CaracteristiqueUniteLogement updateCaracteristiqueUniteLogement(Long id, CaracteristiqueUniteLogement caracteristiqueUniteLogement) throws NotFoundException {
|
||||
if (caracteristiqueUniteLogement.getId() == null) {
|
||||
public CaracteristiqueUniteLogementPayloadWeb updateCaracteristiqueUniteLogement(Long id, CaracteristiqueUniteLogementPayloadWeb caracteristiqueUniteLogementPayloadWeb) throws NotFoundException {
|
||||
if (caracteristiqueUniteLogementPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle caracteristique d'unité de logement ayant un id null.");
|
||||
}
|
||||
if (!caracteristiqueUniteLogementRepository.existsById(caracteristiqueUniteLogement.getId())) {
|
||||
if (!caracteristiqueUniteLogementRepository.existsById(caracteristiqueUniteLogementPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle caracteristique d'unité de logement spécifiée dans notre base de données.");
|
||||
}
|
||||
return caracteristiqueUniteLogementRepository.save(caracteristiqueUniteLogement);
|
||||
CaracteristiqueUniteLogement caracteristiqueUniteLogement= entityFromPayLoadService.getCaracteristiqueUniteLogementFromPayLoadWeb(caracteristiqueUniteLogementPayloadWeb);
|
||||
caracteristiqueUniteLogement =caracteristiqueUniteLogementRepository.save(caracteristiqueUniteLogement);
|
||||
return caracteristiqueUniteLogementRepository.findCaracteristiqueUniteLogementToDto(caracteristiqueUniteLogement.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -51,23 +64,33 @@ public class CaracteristiqueUniteLogementServiceImpl implements CaracteristiqueU
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<CaracteristiqueUniteLogement> getCaracteristiqueUniteLogementList(Pageable pageable) {
|
||||
return caracteristiqueUniteLogementRepository.findAll(pageable);
|
||||
public Page<CaracteristiqueUniteLogementPayloadWeb> getCaracteristiqueUniteLogementList(Pageable pageable) {
|
||||
return caracteristiqueUniteLogementRepository.findAllCaracteristiqueUniteLogementToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaracteristiqueUniteLogement> getCaracteristiqueUniteLogementList() {
|
||||
return caracteristiqueUniteLogementRepository.findAll();
|
||||
public List<CaracteristiqueUniteLogementPayloadWeb> getCaracteristiqueUniteLogementList() {
|
||||
return caracteristiqueUniteLogementRepository.findAllCaracteristiqueUniteLogementToDto();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<CaracteristiqueUniteLogement> getCaracteristiqueUniteLogementById(Long id) {
|
||||
public Optional<CaracteristiqueUniteLogementPayloadWeb> getCaracteristiqueUniteLogementById(Long id) {
|
||||
if (caracteristiqueUniteLogementRepository.existsById(id)) {
|
||||
return caracteristiqueUniteLogementRepository.findById(id);
|
||||
return caracteristiqueUniteLogementRepository.findCaracteristiqueUniteLogementToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la caracteristique d'unité de logement spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<CaracteristiqueUniteLogementPayloadWeb> getCaracteristiqueUniteLogementListByEul(Long eul, Pageable pageable) {
|
||||
return caracteristiqueUniteLogementRepository.findAllCaracteristiqueUniteLogementByEnqueteUloToDtoPageable(eul,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaracteristiqueUniteLogementPayloadWeb> getCaracteristiqueUniteLogementListbyEul(Long eul) {
|
||||
return caracteristiqueUniteLogementRepository.findAllCaracteristiqueUniteLogementByEnqueteUloToDto(eul);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,43 +1,66 @@
|
||||
package io.gmss.fiscad.implementations.rfu.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.metier.CaracteristiqueUniteLogement;
|
||||
import io.gmss.fiscad.entities.rfu.metier.DeclarationNc;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.DeclarationNcService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.DeclarationNcPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.PersonneRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.StructureRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.DeclarationNcRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class DeclarationNcServiceImpl implements DeclarationNcService {
|
||||
|
||||
private final DeclarationNcRepository declarationNcRepository;
|
||||
private final StructureRepository structureRepository;
|
||||
private final PersonneRepository personneRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
|
||||
public DeclarationNcServiceImpl(DeclarationNcRepository declarationNcRepository) {
|
||||
this.declarationNcRepository = declarationNcRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DeclarationNc createDeclarationNc(DeclarationNc declarationNc) throws BadRequestException {
|
||||
if (declarationNc.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle enquete de batiment ayant un id non null.");
|
||||
public DeclarationNcPayloadWeb createDeclarationNc(DeclarationNcPayloadWeb declarationNcPayloadWeb) throws BadRequestException {
|
||||
if (declarationNcPayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle déclaration NC ayant un id non null.");
|
||||
}
|
||||
return declarationNcRepository.save(declarationNc);
|
||||
if (!personneRepository.existsById(declarationNcPayloadWeb.getPersonneId())) {
|
||||
throw new BadRequestException("Veuillez préciser le contribuable.");
|
||||
}
|
||||
if (!structureRepository.existsById(declarationNcPayloadWeb.getStructureId())) {
|
||||
throw new BadRequestException("Veuillez préciser le centre.");
|
||||
}
|
||||
|
||||
DeclarationNc declarationNc= entityFromPayLoadService.getDeclarationNcFromPayLoadWeb(declarationNcPayloadWeb);
|
||||
declarationNc =declarationNcRepository.save(declarationNc);
|
||||
return declarationNcRepository.findDeclarationNcToDto(declarationNc.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DeclarationNc updateDeclarationNc(Long id, DeclarationNc declarationNc) throws NotFoundException {
|
||||
if (declarationNc.getId() == null) {
|
||||
public DeclarationNcPayloadWeb updateDeclarationNc(Long id, DeclarationNcPayloadWeb declarationNcPayloadWeb) throws NotFoundException {
|
||||
if (declarationNcPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle enquete de batiment ayant un id null.");
|
||||
}
|
||||
if (!declarationNcRepository.existsById(declarationNc.getId())) {
|
||||
if (!declarationNcRepository.existsById(declarationNcPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete de batiment spécifiée dans notre base de données.");
|
||||
}
|
||||
return declarationNcRepository.save(declarationNc);
|
||||
if (!personneRepository.existsById(declarationNcPayloadWeb.getPersonneId())) {
|
||||
throw new BadRequestException("Veuillez préciser le contribuable.");
|
||||
}
|
||||
if (!structureRepository.existsById(declarationNcPayloadWeb.getStructureId())) {
|
||||
throw new BadRequestException("Veuillez préciser le centre.");
|
||||
}
|
||||
DeclarationNc declarationNc= entityFromPayLoadService.getDeclarationNcFromPayLoadWeb(declarationNcPayloadWeb);
|
||||
declarationNc =declarationNcRepository.save(declarationNc);
|
||||
return declarationNcRepository.findDeclarationNcToDto(declarationNc.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -51,23 +74,36 @@ public class DeclarationNcServiceImpl implements DeclarationNcService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DeclarationNc> getDeclarationNcList(Pageable pageable) {
|
||||
return declarationNcRepository.findAll(pageable);
|
||||
public Page<DeclarationNcPayloadWeb> getDeclarationNcList(Pageable pageable) {
|
||||
return declarationNcRepository.findAllDeclarationNcToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DeclarationNc> getDeclarationNcList() {
|
||||
return declarationNcRepository.findAll();
|
||||
public List<DeclarationNcPayloadWeb> getDeclarationNcList() {
|
||||
return declarationNcRepository.findAllDeclarationNcToDto();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<DeclarationNc> getDeclarationNcById(Long id) {
|
||||
public Optional<DeclarationNcPayloadWeb> getDeclarationNcById(Long id) {
|
||||
if (declarationNcRepository.existsById(id)) {
|
||||
return declarationNcRepository.findById(id);
|
||||
return declarationNcRepository.findDeclarationNcToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete de batiment spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DeclarationNcPayloadWeb> getDeclarationNcByPersonneList(Long personneId, Pageable pageable) {
|
||||
return declarationNcRepository.findAllDeclarationNcByPersonneToDtoPageable(personneId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DeclarationNcPayloadWeb> getDeclarationNcByPersonneList(Long personneId) {
|
||||
return declarationNcRepository.findAllDeclarationNcByPersonneToDto(personneId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,9 +4,12 @@ import io.gmss.fiscad.entities.decoupage.Arrondissement;
|
||||
import io.gmss.fiscad.entities.rfu.metier.DonneesImpositionTfu;
|
||||
import io.gmss.fiscad.entities.rfu.metier.ImpositionsTfu;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuNonBati;
|
||||
import io.gmss.fiscad.enums.StatusAvis;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.DonneesImpositionTfuService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.response.DonneesImpositionTfuResponse;
|
||||
import io.gmss.fiscad.persistence.repositories.decoupage.ArrondissementRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.EnqueteRepository;
|
||||
@@ -15,6 +18,7 @@ import io.gmss.fiscad.persistence.repositories.rfu.metier.DonneesImpositionTfuRe
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.BaremRfuNonBatiRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.ExerciceRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import jakarta.transaction.Transactional;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.dao.DataIntegrityViolationException;
|
||||
@@ -36,6 +40,7 @@ public class DonneesImpositionTfuServiceImpl implements DonneesImpositionTfuServ
|
||||
private final BaremRfuNonBatiRepository baremRfuNonBatiRepository;
|
||||
private final ExerciceRepository exerciceRepository;
|
||||
private final ArrondissementRepository arrondissementRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
|
||||
|
||||
|
||||
@@ -91,91 +96,43 @@ public class DonneesImpositionTfuServiceImpl implements DonneesImpositionTfuServ
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Long genererDonneesFiscales(ImpositionsTfu impositionsTfu) {
|
||||
List<DonneesImpositionTfuResponse> donneesImpositionTfuResponses= donneesImpositionTfuRepository.findAllDonneesImpositionTfu(impositionsTfu.getCommune().getId(),impositionsTfu.getExercice().getAnnee());
|
||||
Long n=0l;
|
||||
for (DonneesImpositionTfuResponse donneesImpositionTfuResponse: donneesImpositionTfuResponses){
|
||||
DonneesImpositionTfu donneesImpositionTfu=new DonneesImpositionTfu();
|
||||
donneesImpositionTfu.setImpositionsTfu(impositionsTfu);
|
||||
donneesImpositionTfu.setZoneRfuId(donneesImpositionTfuResponse.getZoneRfuId());
|
||||
donneesImpositionTfu.setCodeQuartierVillage(donneesImpositionTfuResponse.getCodeQuartierVillage());
|
||||
donneesImpositionTfu.setNomQuartierVillage(donneesImpositionTfuResponse.getNomQuartierVillage());
|
||||
donneesImpositionTfu.setCodeArrondissement(donneesImpositionTfuResponse.getCodeArrondissement());
|
||||
donneesImpositionTfu.setNomArrondissement(donneesImpositionTfuResponse.getNomArrondissement());
|
||||
donneesImpositionTfu.setCodeCommune(donneesImpositionTfuResponse.getCodeCommune());
|
||||
donneesImpositionTfu.setNomCommune(donneesImpositionTfuResponse.getNomCommune());
|
||||
donneesImpositionTfu.setCodeDepartement(donneesImpositionTfuResponse.getCodeDepartement());
|
||||
donneesImpositionTfu.setNomDepartement(donneesImpositionTfuResponse.getNomDepartement());
|
||||
donneesImpositionTfu.setQ(donneesImpositionTfuResponse.getQ());
|
||||
donneesImpositionTfu.setIlot(donneesImpositionTfuResponse.getIlot());
|
||||
donneesImpositionTfu.setParcelle(donneesImpositionTfuResponse.getParcelle());
|
||||
donneesImpositionTfu.setLatitude(donneesImpositionTfuResponse.getLatitude());
|
||||
donneesImpositionTfu.setLongitude(donneesImpositionTfuResponse.getLongitude());
|
||||
donneesImpositionTfu.setNup(donneesImpositionTfuResponse.getNup());
|
||||
donneesImpositionTfu.setNupProvisoire(donneesImpositionTfuResponse.getNupProvisoire());
|
||||
donneesImpositionTfu.setSuperficieParc(donneesImpositionTfuResponse.getSuperficieParc());
|
||||
donneesImpositionTfu.setAdresseProp(donneesImpositionTfuResponse.getAdresseProp());
|
||||
donneesImpositionTfu.setAnnee(donneesImpositionTfuResponse.getAnnee());
|
||||
donneesImpositionTfu.setAdresseSc(donneesImpositionTfuResponse.getAdresseSc());
|
||||
donneesImpositionTfu.setBatieOuiNon(donneesImpositionTfuResponse.getBatieOuiNon());
|
||||
donneesImpositionTfu.setTfuMinimum(donneesImpositionTfuResponse.getTfuMinimum());
|
||||
donneesImpositionTfu.setCategorieBat(donneesImpositionTfuResponse.getCategorieBat());
|
||||
donneesImpositionTfu.setDateEnquete(donneesImpositionTfuResponse.getDateEnquete());
|
||||
donneesImpositionTfu.setEmailProp(donneesImpositionTfuResponse.getEmailProp());
|
||||
donneesImpositionTfu.setEmailSc(donneesImpositionTfuResponse.getEmailSc());
|
||||
donneesImpositionTfu.setMontantLoyerAnnuel(donneesImpositionTfuResponse.getMontantLoyerAnnuel());
|
||||
donneesImpositionTfu.setEnqueteId(donneesImpositionTfuResponse.getEnqueteId());
|
||||
donneesImpositionTfu.setExhonereOuiNon(donneesImpositionTfuResponse.getExhonereOuiNon());
|
||||
donneesImpositionTfu.setIfu(donneesImpositionTfuResponse.getIfu());
|
||||
donneesImpositionTfu.setNombreBat(donneesImpositionTfuResponse.getNombreBat());
|
||||
donneesImpositionTfu.setNombrePiscine(donneesImpositionTfuResponse.getNombrePiscine());
|
||||
donneesImpositionTfu.setNombreUlog(donneesImpositionTfuResponse.getNombreUlog());
|
||||
donneesImpositionTfu.setNomProp(donneesImpositionTfuResponse.getNomProp());
|
||||
donneesImpositionTfu.setNomSc(donneesImpositionTfuResponse.getNomSc());
|
||||
donneesImpositionTfu.setNpi(donneesImpositionTfuResponse.getNpi());
|
||||
donneesImpositionTfu.setNumBatiment(donneesImpositionTfuResponse.getNumBatiment()==null?"":donneesImpositionTfuResponse.getNumBatiment());
|
||||
donneesImpositionTfu.setNumUniteLogement(donneesImpositionTfuResponse.getNumUniteLogement()==null?"":donneesImpositionTfuResponse.getNumUniteLogement());
|
||||
donneesImpositionTfu.setPrenomProp(donneesImpositionTfuResponse.getPrenomProp());
|
||||
donneesImpositionTfu.setPrenomSc(donneesImpositionTfuResponse.getPrenomSc());
|
||||
donneesImpositionTfu.setRaisonSociale(donneesImpositionTfuResponse.getRaisonSociale());
|
||||
donneesImpositionTfu.setSecteurId(donneesImpositionTfuResponse.getSecteurId());
|
||||
donneesImpositionTfu.setStandingBat(donneesImpositionTfuResponse.getStandingBat());
|
||||
donneesImpositionTfu.setStructureId(donneesImpositionTfuResponse.getStructureId());
|
||||
donneesImpositionTfu.setSuperficieAuSolBat(donneesImpositionTfuResponse.getSuperficieAuSolBat());
|
||||
donneesImpositionTfu.setSuperficieAuSolUlog(donneesImpositionTfuResponse.getSuperficieAuSolUlog());
|
||||
donneesImpositionTfu.setTelProp(donneesImpositionTfuResponse.getTelProp());
|
||||
donneesImpositionTfu.setTelSc(donneesImpositionTfuResponse.getTelSc());
|
||||
donneesImpositionTfu.setTfuMetreCarre(donneesImpositionTfuResponse.getTfuMetreCarre());
|
||||
donneesImpositionTfu.setTitreFoncier(donneesImpositionTfuResponse.getTitreFoncier());
|
||||
donneesImpositionTfu.setValeurLocativeAdm(donneesImpositionTfuResponse.getValeurLocativeAdm());
|
||||
donneesImpositionTfu.setBatimentExhonereOuiNon(donneesImpositionTfuResponse.getBatimentExhonereOuiNon());
|
||||
donneesImpositionTfu.setUniteLogementExhonereOuiNon(donneesImpositionTfuResponse.getUniteLogementExhonereOuiNon());
|
||||
try {
|
||||
Optional<BaremRfuNonBati> baremRfuNonBatiOptional=baremRfuNonBatiRepository.findAllByCommune_IdAndZoneRfu_Id(impositionsTfu.getCommune().getId(),donneesImpositionTfu.getZoneRfuId());
|
||||
if(baremRfuNonBatiOptional.isPresent()){
|
||||
donneesImpositionTfu.setValeurAdministrativeParcelleNonBati(baremRfuNonBatiOptional.get().getValeurAdministrative());
|
||||
donneesImpositionTfu.setTauxParcelleNonBati(baremRfuNonBatiOptional.get().getTaux());
|
||||
}
|
||||
public ImpositionsTfuPaylaodWeb genererDonneesFiscalesParcelleNonBatie(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb, Long userId) {
|
||||
Integer nb= donneesImpositionTfuRepository.genererDonneesTfuNonBatie(impositionsTfuPaylaodWeb.getId(),userId);
|
||||
|
||||
ImpositionsTfu impositionsTfu = entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
impositionsTfu.setStatusAvis(StatusAvis.TFU_FNB_GENERE);
|
||||
|
||||
impositionsTfu.setNombreAvisFnb(nb);
|
||||
|
||||
donneesImpositionTfuRepository.save(donneesImpositionTfu);
|
||||
n++;
|
||||
}catch (DataIntegrityViolationException e) {
|
||||
if (e.getCause() instanceof org.hibernate.exception.ConstraintViolationException constraintEx &&
|
||||
constraintEx.getSQLException().getSQLState().equals("23505")) {
|
||||
System.out.println("Doublon détecté (clé unique) !");
|
||||
} else {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
}
|
||||
impositionsTfuRepository.save(impositionsTfu);
|
||||
return n;
|
||||
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DonneesImpositionTfu> getDonneesFiscalesByImposition(Long impositionsId) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionsTfu_Id(impositionsId);
|
||||
@Transactional
|
||||
public ImpositionsTfuPaylaodWeb genererDonneesFiscalesParcelleBatie(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb, Long userId) {
|
||||
|
||||
Integer nbb= donneesImpositionTfuRepository.genererDonneesTfuBatie(impositionsTfuPaylaodWeb.getId(),userId);
|
||||
|
||||
Integer nbulo= donneesImpositionTfuRepository.genererDonneesTfuBatieUniteLogement(impositionsTfuPaylaodWeb.getId(),userId);
|
||||
|
||||
|
||||
ImpositionsTfu impositionsTfu = entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
impositionsTfu.setStatusAvis(StatusAvis.GENERE);
|
||||
|
||||
impositionsTfu.setNombreAvis(nbb+nbulo+ (impositionsTfu.getNombreAvisFnb()==null?0:impositionsTfu.getNombreAvisFnb()));
|
||||
impositionsTfu.setNombreAvisBatiment(nbb);
|
||||
impositionsTfu.setNombreAvisUniteLog(nbulo);
|
||||
|
||||
impositionsTfuRepository.save(impositionsTfu);
|
||||
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImposition(Long impositionsId) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionTfuId(impositionsId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -187,4 +144,24 @@ public class DonneesImpositionTfuServiceImpl implements DonneesImpositionTfuServ
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdPageable(Long impositionsTfuId, Pageable pageable) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionTfuIdPageable(impositionsTfuId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdNonBatiePageable(Long impositionsTfuId, Pageable pageable) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionTfuIdNonBatiePageable(impositionsTfuId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdBatieBatimentPageable(Long impositionsTfuId, Pageable pageable) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionTfuIdBatieBatimentPageable(impositionsTfuId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdBatieUniteLogPageable(Long impositionsTfuId, Pageable pageable) {
|
||||
return donneesImpositionTfuRepository.findAllByImpositionTfuIdBatieUniteLogPageable(impositionsTfuId,pageable);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ import io.gmss.fiscad.paylaods.request.crudweb.EnqueteBatimentPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.EnqueteRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.UploadRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.PersonneRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.BatimentRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.EnqueteBatimentRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
@@ -35,127 +36,38 @@ public class EnqueteBatimentServiceImpl implements EnqueteBatimentService {
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final CaracteristiqueBatimentService caracteristiqueBatimentService;
|
||||
private final UploadRepository uploadRepository;
|
||||
private final BatimentRepository batimentRepository;
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public EnqueteBatiment createEnqueteBatiment(EnqueteBatimentPayloadWeb enqueteBatimentPayloadWeb) throws BadRequestException {
|
||||
public EnqueteBatimentPayloadWeb createEnqueteBatiment(EnqueteBatimentPayloadWeb enqueteBatimentPayloadWeb) throws BadRequestException {
|
||||
EnqueteBatiment enqueteBatiment=new EnqueteBatiment();
|
||||
Batiment batiment=new Batiment();
|
||||
Enquete enquete=new Enquete();
|
||||
if(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb().getId()==null){
|
||||
batiment= batimentService.createBatiment(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb());//entityFromPayLoadService.getBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb()));
|
||||
}else{
|
||||
batiment= batimentService.updateBatiment(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb().getId(),enqueteBatimentPayloadWeb.getBatimentPaylaodWeb());//entityFromPayLoadService.getBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb()));
|
||||
if (!batimentRepository.existsById(enqueteBatimentPayloadWeb.getBatimentId())) {
|
||||
throw new NotFoundException("Impossible d'enregistrer sans le batiment.");
|
||||
}
|
||||
|
||||
if(enqueteBatimentPayloadWeb.getEnqueteId()==null){
|
||||
throw new BadRequestException("Impossible de poursuivre l'enregistrement sans la précision de l'enquête");
|
||||
}
|
||||
Optional<Personne> optionalPersonne=Optional.empty();
|
||||
if(enqueteBatimentPayloadWeb.getPersonneId()!=null){
|
||||
optionalPersonne=personneRepository.findById(enqueteBatimentPayloadWeb.getPersonneId());
|
||||
}
|
||||
|
||||
|
||||
Optional<Enquete> optionalEnquete = enqueteRepository.findById(enqueteBatimentPayloadWeb.getEnqueteId());
|
||||
enqueteBatiment.setEnquete(optionalEnquete.orElse(null));
|
||||
enqueteBatiment.setBatiment(batiment);
|
||||
enqueteBatiment.setPersonne(optionalPersonne.orElse(null));
|
||||
enqueteBatiment.setAutreCaracteristiquePhysique(enqueteBatimentPayloadWeb.getAutreCaracteristiquePhysique());
|
||||
enqueteBatiment.setAutreMur(enqueteBatimentPayloadWeb.getAutreMur());
|
||||
enqueteBatiment.setAutreMenuisierie(enqueteBatimentPayloadWeb.getAutreMenuisierie());
|
||||
enqueteBatiment.setDateDebutExcemption(enqueteBatimentPayloadWeb.getDateDebutExcemption());
|
||||
enqueteBatiment.setDateFinExcemption(enqueteBatimentPayloadWeb.getDateFinExcemption());
|
||||
enqueteBatiment.setNbreHabitant(enqueteBatimentPayloadWeb.getNbreHabitant());
|
||||
enqueteBatiment.setNbreLotUnite(enqueteBatimentPayloadWeb.getNbreLotUnite());
|
||||
enqueteBatiment.setNbreMenage(enqueteBatimentPayloadWeb.getNbreMenage());
|
||||
enqueteBatiment.setNbreMoisLocation(enqueteBatimentPayloadWeb.getNbreMoisLocation());
|
||||
enqueteBatiment.setNbreUniteLocation(enqueteBatimentPayloadWeb.getNbreUniteLocation());
|
||||
enqueteBatiment.setNumCompteurSbee(enqueteBatimentPayloadWeb.getNumCompteurSbee());
|
||||
enqueteBatiment.setNumCompteurSoneb(enqueteBatimentPayloadWeb.getNumCompteurSoneb());
|
||||
enqueteBatiment.setSbee(enqueteBatimentPayloadWeb.isSbee());
|
||||
enqueteBatiment.setSoneb(enqueteBatimentPayloadWeb.isSoneb());
|
||||
enqueteBatiment.setSurfaceAuSol(enqueteBatimentPayloadWeb.getSurfaceAuSol());
|
||||
enqueteBatiment.setSurfaceLouee(enqueteBatimentPayloadWeb.getSurfaceLouee());
|
||||
enqueteBatiment.setMontantMensuelLocation(enqueteBatimentPayloadWeb.getMontantMensuelLocation());
|
||||
enqueteBatiment.setValeurBatimentReel(enqueteBatimentPayloadWeb.getValeurBatimentReel());
|
||||
enqueteBatiment.setValeurBatimentEstime(enqueteBatimentPayloadWeb.getValeurBatimentEstime());
|
||||
enqueteBatiment.setMontantLocatifAnnuelDeclare(enqueteBatimentPayloadWeb.getMontantLocatifAnnuelDeclare());
|
||||
enqueteBatiment.setNbreEtage(enqueteBatimentPayloadWeb.getNbreEtage());
|
||||
enqueteBatiment = entityFromPayLoadService.getEnqueteBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb);
|
||||
enqueteBatiment= enqueteBatimentRepository.save(enqueteBatiment);
|
||||
|
||||
//////Enregistrement des caractéristiques batiment
|
||||
Long enqueteBatimentId = enqueteBatiment.getId();
|
||||
enqueteBatimentPayloadWeb.getCaracteristiqueBatimentPayloadWebs().forEach(caracteristiqueBatimentPayloadWeb -> {
|
||||
caracteristiqueBatimentPayloadWeb.setEnqueteBatimentId(enqueteBatimentId);
|
||||
CaracteristiqueBatiment caracteristiqueBatiment=entityFromPayLoadService.getCaracteristiqueBatimentFromPayLoadWeb(caracteristiqueBatimentPayloadWeb);
|
||||
caracteristiqueBatimentService.createCaracteristiqueBatiment(caracteristiqueBatiment);
|
||||
});
|
||||
|
||||
EnqueteBatiment finalEnqueteBatiment = enqueteBatiment;
|
||||
enqueteBatimentPayloadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
optionalEnquete.ifPresent(value -> uploadPayLoadWeb.setEnqueteId(value.getId()));
|
||||
Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
upload.setEnqueteBatiment(finalEnqueteBatiment);
|
||||
uploadRepository.save(upload);
|
||||
});
|
||||
|
||||
return enqueteBatiment ;
|
||||
enqueteBatimentPayloadWeb= enqueteBatimentRepository.findEnqueteBatimentByIdToDto(enqueteBatiment.getId()).orElse(null);
|
||||
return enqueteBatimentPayloadWeb ;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnqueteBatiment updateEnqueteBatiment(Long id, EnqueteBatimentPayloadWeb enqueteBatimentPayloadWeb) throws NotFoundException {
|
||||
public EnqueteBatimentPayloadWeb updateEnqueteBatiment(Long id, EnqueteBatimentPayloadWeb enqueteBatimentPayloadWeb) throws NotFoundException {
|
||||
if (enqueteBatimentPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle enquete de batiment ayant un id null.");
|
||||
}
|
||||
if (!enqueteBatimentRepository.existsById(enqueteBatimentPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete de batiment spécifiée dans notre base de données.");
|
||||
}
|
||||
if(enqueteBatimentPayloadWeb.getEnqueteId()==null){
|
||||
throw new BadRequestException("Impossible de poursuivre l'enregistrement sans la précision de l'enquête");
|
||||
if (!batimentRepository.existsById(enqueteBatimentPayloadWeb.getBatimentId())) {
|
||||
throw new NotFoundException("Impossible d'enregistrer sans le batiment.");
|
||||
}
|
||||
Optional<Enquete> optionalEnquete = enqueteRepository.findById(enqueteBatimentPayloadWeb.getEnqueteId());
|
||||
|
||||
EnqueteBatiment enqueteBatiment=new EnqueteBatiment();
|
||||
Batiment batiment=new Batiment();
|
||||
|
||||
if(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb().getId()==null){
|
||||
batiment= batimentService.createBatiment(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb());//entityFromPayLoadService.getBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb()));
|
||||
}else{
|
||||
batiment= batimentService.updateBatiment(id,enqueteBatimentPayloadWeb.getBatimentPaylaodWeb());//entityFromPayLoadService.getBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb.getBatimentPaylaodWeb()));
|
||||
}
|
||||
|
||||
|
||||
Optional<Personne> optionalPersonne=Optional.empty();
|
||||
if(enqueteBatimentPayloadWeb.getPersonneId()!=null){
|
||||
optionalPersonne=personneRepository.findById(enqueteBatimentPayloadWeb.getPersonneId());
|
||||
}
|
||||
enqueteBatiment.setEnquete(optionalEnquete.orElse(null));
|
||||
enqueteBatiment.setBatiment(batiment);
|
||||
enqueteBatiment.setPersonne(optionalPersonne.orElse(null));
|
||||
enqueteBatiment.setAutreCaracteristiquePhysique(enqueteBatimentPayloadWeb.getAutreCaracteristiquePhysique());
|
||||
enqueteBatiment.setAutreMur(enqueteBatimentPayloadWeb.getAutreMur());
|
||||
enqueteBatiment.setAutreMenuisierie(enqueteBatimentPayloadWeb.getAutreMenuisierie());
|
||||
enqueteBatiment.setDateDebutExcemption(enqueteBatimentPayloadWeb.getDateDebutExcemption());
|
||||
enqueteBatiment.setDateFinExcemption(enqueteBatimentPayloadWeb.getDateFinExcemption());
|
||||
enqueteBatiment.setNbreHabitant(enqueteBatimentPayloadWeb.getNbreHabitant());
|
||||
enqueteBatiment.setNbreLotUnite(enqueteBatimentPayloadWeb.getNbreLotUnite());
|
||||
enqueteBatiment.setNbreMenage(enqueteBatimentPayloadWeb.getNbreMenage());
|
||||
enqueteBatiment.setNbreMoisLocation(enqueteBatimentPayloadWeb.getNbreMoisLocation());
|
||||
enqueteBatiment.setNbreUniteLocation(enqueteBatimentPayloadWeb.getNbreUniteLocation());
|
||||
enqueteBatiment.setNumCompteurSbee(enqueteBatimentPayloadWeb.getNumCompteurSbee());
|
||||
enqueteBatiment.setNumCompteurSoneb(enqueteBatimentPayloadWeb.getNumCompteurSoneb());
|
||||
enqueteBatiment.setSbee(enqueteBatimentPayloadWeb.isSbee());
|
||||
enqueteBatiment.setSoneb(enqueteBatimentPayloadWeb.isSoneb());
|
||||
enqueteBatiment.setSurfaceAuSol(enqueteBatimentPayloadWeb.getSurfaceAuSol());
|
||||
enqueteBatiment.setSurfaceLouee(enqueteBatimentPayloadWeb.getSurfaceLouee());
|
||||
enqueteBatiment.setMontantMensuelLocation(enqueteBatimentPayloadWeb.getMontantMensuelLocation());
|
||||
enqueteBatiment.setValeurBatimentReel(enqueteBatimentPayloadWeb.getValeurBatimentReel());
|
||||
enqueteBatiment.setValeurBatimentEstime(enqueteBatimentPayloadWeb.getValeurBatimentEstime());
|
||||
enqueteBatiment.setMontantLocatifAnnuelDeclare(enqueteBatimentPayloadWeb.getMontantLocatifAnnuelDeclare());
|
||||
EnqueteBatiment enqueteBatiment = entityFromPayLoadService.getEnqueteBatimentFromPayLoadWeb(enqueteBatimentPayloadWeb);
|
||||
enqueteBatiment= enqueteBatimentRepository.save(enqueteBatiment);
|
||||
return enqueteBatimentRepository.save(enqueteBatiment);
|
||||
enqueteBatimentPayloadWeb= enqueteBatimentRepository.findEnqueteBatimentByIdToDto(enqueteBatiment.getId()).orElse(null);
|
||||
return enqueteBatimentPayloadWeb ;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -169,23 +81,33 @@ public class EnqueteBatimentServiceImpl implements EnqueteBatimentService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<EnqueteBatiment> getEnqueteBatimentList(Pageable pageable) {
|
||||
return enqueteBatimentRepository.findAll(pageable);
|
||||
public Page<EnqueteBatimentPayloadWeb> getEnqueteBatimentList(Pageable pageable) {
|
||||
return enqueteBatimentRepository.findAllEnqueteBatimentToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EnqueteBatiment> getEnqueteBatimentList() {
|
||||
return enqueteBatimentRepository.findAll();
|
||||
public List<EnqueteBatimentPayloadWeb> getEnqueteBatimentList() {
|
||||
return enqueteBatimentRepository.findAllEnqueteBatimentToDto();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<EnqueteBatiment> getEnqueteBatimentById(Long id) {
|
||||
public Optional<EnqueteBatimentPayloadWeb> getEnqueteBatimentById(Long id) {
|
||||
if (enqueteBatimentRepository.existsById(id)) {
|
||||
return enqueteBatimentRepository.findById(id);
|
||||
return enqueteBatimentRepository.findEnqueteBatimentByIdToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete de batiment spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<EnqueteBatimentPayloadWeb> getEnqueteBatimentByBatimentListPageable(Long batimentId, Pageable pageable) {
|
||||
return enqueteBatimentRepository.findAllByBatimentToDtoPageable(batimentId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EnqueteBatimentPayloadWeb> getEnqueteBatimentByBatimentList(Long batimentId) {
|
||||
return enqueteBatimentRepository.findAllByBatimentToDto(batimentId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import io.gmss.fiscad.persistence.repositories.infocad.metier.EnqueteRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.metier.UploadRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.infocad.parametre.PersonneRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.EnqueteUniteLogementRepository;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.UniteLogementRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
@@ -32,75 +33,27 @@ public class EnqueteUniteLogementServiceImpl implements EnqueteUniteLogementServ
|
||||
private final PersonneRepository personneRepository ;
|
||||
private final EnqueteRepository enqueteRepository ;
|
||||
private final UploadRepository uploadRepository ;
|
||||
private final UniteLogementRepository uniteLogementRepository ;
|
||||
private final CaracteristiqueUniteLogementService caracteristiqueUniteLogementService ;
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public EnqueteUniteLogement createEnqueteUniteLogement(EnqueteUniteLogementPayloadWeb enqueteUniteLogementPayloadWeb) throws BadRequestException {
|
||||
public EnqueteUniteLogementPayloadWeb createEnqueteUniteLogement(EnqueteUniteLogementPayloadWeb enqueteUniteLogementPayloadWeb) throws BadRequestException {
|
||||
EnqueteUniteLogement enqueteUniteLogement=new EnqueteUniteLogement();
|
||||
UniteLogement uniteLogement=new UniteLogement();
|
||||
Enquete enquete=new Enquete();
|
||||
if(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb().getId()==null){
|
||||
uniteLogement = uniteLogementService.createUniteLogement(entityFromPayLoadService.getUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb()));
|
||||
}else{
|
||||
uniteLogement = uniteLogementService.updateUniteLogement(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb().getId(),entityFromPayLoadService.getUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb()));
|
||||
Optional<UniteLogement> optionalUniteLogement= Optional.empty();
|
||||
|
||||
if (enqueteUniteLogementPayloadWeb.getUniteLogementId() == null) {
|
||||
throw new BadRequestException("Impossible d'enregistrer une nouvelle enquete d'unité de logement sans l'unité de logement.");
|
||||
}
|
||||
|
||||
if(enqueteUniteLogementPayloadWeb.getEnqueteId()==null){
|
||||
throw new BadRequestException("Impossible de poursuivre l'enregistrement sans la précision de l'enquête");
|
||||
}
|
||||
|
||||
Optional<Personne> optionalPersonne=Optional.empty();
|
||||
if(enqueteUniteLogementPayloadWeb.getPersonneId()!=null){
|
||||
optionalPersonne=personneRepository.findById(enqueteUniteLogementPayloadWeb.getPersonneId());
|
||||
}
|
||||
|
||||
|
||||
Optional<Enquete> optionalEnquete = enqueteRepository.findById(enqueteUniteLogementPayloadWeb.getEnqueteId());
|
||||
enqueteUniteLogement.setEnquete(optionalEnquete.orElse(null));
|
||||
enqueteUniteLogement.setUniteLogement(uniteLogement);
|
||||
enqueteUniteLogement.setPersonne(optionalPersonne.orElse(null));
|
||||
enqueteUniteLogement.setEnLocation(enqueteUniteLogementPayloadWeb.isEnLocation());
|
||||
enqueteUniteLogement.setDateDebutExcemption(enqueteUniteLogementPayloadWeb.getDateDebutExcemption());
|
||||
enqueteUniteLogement.setDateFinExcemption(enqueteUniteLogementPayloadWeb.getDateFinExcemption());
|
||||
enqueteUniteLogement.setNbreHabitant(enqueteUniteLogementPayloadWeb.getNbreHabitant());
|
||||
enqueteUniteLogement.setNbreMenage(enqueteUniteLogementPayloadWeb.getNbreMenage());
|
||||
enqueteUniteLogement.setNbreMoisLocation(enqueteUniteLogementPayloadWeb.getNbreMoisLocation());
|
||||
enqueteUniteLogement.setNumCompteurSbee(enqueteUniteLogementPayloadWeb.getNumCompteurSbee());
|
||||
enqueteUniteLogement.setNumCompteurSoneb(enqueteUniteLogementPayloadWeb.getNumCompteurSoneb());
|
||||
enqueteUniteLogement.setSbee(enqueteUniteLogementPayloadWeb.isSbee());
|
||||
enqueteUniteLogement.setSoneb(enqueteUniteLogementPayloadWeb.isSoneb());
|
||||
enqueteUniteLogement.setSurfaceAuSol(enqueteUniteLogementPayloadWeb.getSurfaceAuSol());
|
||||
enqueteUniteLogement.setSurfaceLouee(enqueteUniteLogementPayloadWeb.getSurfaceLouee());
|
||||
enqueteUniteLogement.setValeurUniteLogementEstime(enqueteUniteLogementPayloadWeb.getValeurUniteLogementEstime());
|
||||
enqueteUniteLogement.setValeurUniteLogementReel(enqueteUniteLogementPayloadWeb.getValeurUniteLogementReel());
|
||||
enqueteUniteLogement.setMontantLocatifAnnuelDeclare(enqueteUniteLogementPayloadWeb.getMontantLocatifAnnuelDeclare());
|
||||
enqueteUniteLogement.setMontantMensuelLoyer(enqueteUniteLogementPayloadWeb.getMontantMensuelLoyer());
|
||||
enqueteUniteLogement = entityFromPayLoadService.getEnqueteUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb);
|
||||
enqueteUniteLogement= enqueteUniteLogementRepository.save(enqueteUniteLogement);
|
||||
|
||||
//////Enregistrement des caractéristiques batiment
|
||||
Long enqueteUniteLogementId = enqueteUniteLogement.getId();
|
||||
enqueteUniteLogementPayloadWeb.getCaracteristiqueUniteLogementPayloadWebs().forEach(caracteristiqueUniteLogementPayloadWeb -> {
|
||||
caracteristiqueUniteLogementPayloadWeb.setEnqueteUniteLogementId(enqueteUniteLogementId);
|
||||
CaracteristiqueUniteLogement caracteristiqueUniteLogement=entityFromPayLoadService.getCaracteristiqueUniteLogementFromPayLoadWeb(caracteristiqueUniteLogementPayloadWeb);
|
||||
caracteristiqueUniteLogementService.createCaracteristiqueUniteLogement(caracteristiqueUniteLogement);
|
||||
});
|
||||
|
||||
///////Enregistrement des pieces
|
||||
EnqueteUniteLogement finalEnqueteUniteLogement = enqueteUniteLogement;
|
||||
enqueteUniteLogementPayloadWeb.getUploadPayLoadWebs().forEach(uploadPayLoadWeb -> {
|
||||
optionalEnquete.ifPresent(value -> uploadPayLoadWeb.setEnqueteId(value.getId()));
|
||||
Upload upload=entityFromPayLoadService.getUploadFromPayLoadWeb(uploadPayLoadWeb);
|
||||
upload.setEnqueteUniteLogement(finalEnqueteUniteLogement);
|
||||
uploadRepository.save(upload);
|
||||
});
|
||||
|
||||
return enqueteUniteLogement ;
|
||||
enqueteUniteLogementPayloadWeb = enqueteUniteLogementRepository.findEnqueteUniteLogementToDto(enqueteUniteLogement.getId()).orElse(null);
|
||||
return enqueteUniteLogementPayloadWeb ;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnqueteUniteLogement updateEnqueteUniteLogement(Long id, EnqueteUniteLogementPayloadWeb enqueteUniteLogementPayloadWeb) throws NotFoundException {
|
||||
public EnqueteUniteLogementPayloadWeb updateEnqueteUniteLogement(Long id, EnqueteUniteLogementPayloadWeb enqueteUniteLogementPayloadWeb) throws NotFoundException {
|
||||
if (enqueteUniteLogementPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle enquete d'unité de logement ayant un id null.");
|
||||
}
|
||||
@@ -108,46 +61,17 @@ public class EnqueteUniteLogementServiceImpl implements EnqueteUniteLogementServ
|
||||
if (!enqueteUniteLogementRepository.existsById(enqueteUniteLogementPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete d'unité de logement spécifiée dans notre base de données.");
|
||||
}
|
||||
|
||||
if (!uniteLogementRepository.existsById(enqueteUniteLogementPayloadWeb.getUniteLogementId())) {
|
||||
throw new NotFoundException("Impossible de poursuivre l'enregistement, unite de logement nom précisée");
|
||||
}
|
||||
|
||||
EnqueteUniteLogement enqueteUniteLogement= new EnqueteUniteLogement();
|
||||
UniteLogement uniteLogement= new UniteLogement();
|
||||
|
||||
if(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb().getId()==null){
|
||||
uniteLogement = uniteLogementService.createUniteLogement(entityFromPayLoadService.getUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb()));
|
||||
}else{
|
||||
uniteLogement = uniteLogementService.updateUniteLogement(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb().getId(),entityFromPayLoadService.getUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb.getUniteLogementPaylaodWeb()));
|
||||
}
|
||||
|
||||
if(enqueteUniteLogementPayloadWeb.getEnqueteId()==null){
|
||||
throw new BadRequestException("Impossible de poursuivre l'enregistrement sans la précision de l'enquête");
|
||||
}
|
||||
|
||||
Optional<Personne> optionalPersonne=Optional.empty();
|
||||
if(enqueteUniteLogementPayloadWeb.getPersonneId()!=null){
|
||||
optionalPersonne=personneRepository.findById(enqueteUniteLogementPayloadWeb.getPersonneId());
|
||||
}
|
||||
Optional<Enquete> optionalEnquete = enqueteRepository.findById(enqueteUniteLogementPayloadWeb.getEnqueteId());
|
||||
|
||||
enqueteUniteLogement.setEnquete(optionalEnquete.orElse(null));
|
||||
enqueteUniteLogement.setUniteLogement(uniteLogement);
|
||||
enqueteUniteLogement.setPersonne(optionalPersonne.orElse(null));
|
||||
enqueteUniteLogement.setEnLocation(enqueteUniteLogementPayloadWeb.isEnLocation());
|
||||
enqueteUniteLogement.setDateDebutExcemption(enqueteUniteLogementPayloadWeb.getDateDebutExcemption());
|
||||
enqueteUniteLogement.setDateFinExcemption(enqueteUniteLogementPayloadWeb.getDateFinExcemption());
|
||||
enqueteUniteLogement.setNbreHabitant(enqueteUniteLogementPayloadWeb.getNbreHabitant());
|
||||
enqueteUniteLogement.setNbreMenage(enqueteUniteLogementPayloadWeb.getNbreMenage());
|
||||
enqueteUniteLogement.setNbreMoisLocation(enqueteUniteLogementPayloadWeb.getNbreMoisLocation());
|
||||
enqueteUniteLogement.setNumCompteurSbee(enqueteUniteLogementPayloadWeb.getNumCompteurSbee());
|
||||
enqueteUniteLogement.setNumCompteurSoneb(enqueteUniteLogementPayloadWeb.getNumCompteurSoneb());
|
||||
enqueteUniteLogement.setSbee(enqueteUniteLogementPayloadWeb.isSbee());
|
||||
enqueteUniteLogement.setSoneb(enqueteUniteLogementPayloadWeb.isSoneb());
|
||||
enqueteUniteLogement.setSurfaceAuSol(enqueteUniteLogementPayloadWeb.getSurfaceAuSol());
|
||||
enqueteUniteLogement.setSurfaceLouee(enqueteUniteLogementPayloadWeb.getSurfaceLouee());
|
||||
enqueteUniteLogement.setValeurUniteLogementEstime(enqueteUniteLogementPayloadWeb.getValeurUniteLogementEstime());
|
||||
enqueteUniteLogement.setValeurUniteLogementReel(enqueteUniteLogementPayloadWeb.getValeurUniteLogementReel());
|
||||
enqueteUniteLogement.setMontantLocatifAnnuelDeclare(enqueteUniteLogementPayloadWeb.getMontantLocatifAnnuelDeclare());
|
||||
enqueteUniteLogement.setMontantMensuelLoyer(enqueteUniteLogementPayloadWeb.getMontantMensuelLoyer());
|
||||
enqueteUniteLogement = entityFromPayLoadService.getEnqueteUniteLogementFromPayLoadWeb(enqueteUniteLogementPayloadWeb);
|
||||
enqueteUniteLogement= enqueteUniteLogementRepository.save(enqueteUniteLogement);
|
||||
return enqueteUniteLogement;
|
||||
enqueteUniteLogementPayloadWeb = enqueteUniteLogementRepository.findEnqueteUniteLogementToDto(enqueteUniteLogement.getId()).orElse(null);
|
||||
return enqueteUniteLogementPayloadWeb ;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -161,20 +85,30 @@ public class EnqueteUniteLogementServiceImpl implements EnqueteUniteLogementServ
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<EnqueteUniteLogement> getEnqueteUniteLogementList(Pageable pageable) {
|
||||
return enqueteUniteLogementRepository.findAll(pageable);
|
||||
public Page<EnqueteUniteLogementPayloadWeb> getEnqueteUniteLogementList(Pageable pageable) {
|
||||
return enqueteUniteLogementRepository.findAllEnqueteUniteLogementToDtoPageable(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EnqueteUniteLogement> getEnqueteUniteLogementList() {
|
||||
return enqueteUniteLogementRepository.findAll();
|
||||
public List<EnqueteUniteLogementPayloadWeb> getEnqueteUniteLogementList() {
|
||||
return enqueteUniteLogementRepository.findAllEnqueteUniteLogementToDto();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<EnqueteUniteLogementPayloadWeb> getEnqueteUniteLogementByUniteLogementListPageable(Long uniteLogementId, Pageable pageable) {
|
||||
return enqueteUniteLogementRepository.findByAllByUniteLogementToDtoPageable(uniteLogementId,pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EnqueteUniteLogementPayloadWeb> getEnqueteUniteLogementUniteLogementList(Long uniteLogementId) {
|
||||
return enqueteUniteLogementRepository.findAllByUniteLogementToDto(uniteLogementId);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<EnqueteUniteLogement> getEnqueteUniteLogementById(Long id) {
|
||||
public Optional<EnqueteUniteLogementPayloadWeb> getEnqueteUniteLogementById(Long id) {
|
||||
if (enqueteUniteLogementRepository.existsById(id)) {
|
||||
return enqueteUniteLogementRepository.findById(id);
|
||||
return enqueteUniteLogementRepository.findEnqueteUniteLogementToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle enquete d'unité de logement spécifiée dans la base de données.");
|
||||
}
|
||||
|
||||
@@ -1,81 +1,154 @@
|
||||
package io.gmss.fiscad.implementations.rfu.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.parametre.Structure;
|
||||
import io.gmss.fiscad.entities.rfu.metier.ImpositionsTfu;
|
||||
import io.gmss.fiscad.enums.StatusAvis;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.infocad.metier.EnqueteService;
|
||||
import io.gmss.fiscad.interfaces.infocad.parametre.StructureService;
|
||||
import io.gmss.fiscad.interfaces.rfu.metier.ImpositionsTfuService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.metier.ImpositionsTfuRepository;
|
||||
import io.gmss.fiscad.service.EntityFromPayLoadService;
|
||||
import jakarta.transaction.Transactional;
|
||||
import jakarta.ws.rs.NotAcceptableException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class ImpositionsTfuServiceImpl implements ImpositionsTfuService {
|
||||
|
||||
private final ImpositionsTfuRepository impositionsTfuRepository;
|
||||
private final StructureService structureService;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
private final EnqueteService enqueteService;
|
||||
|
||||
public ImpositionsTfuServiceImpl(ImpositionsTfuRepository impositionsTfuRepository) {
|
||||
this.impositionsTfuRepository = impositionsTfuRepository;
|
||||
}
|
||||
|
||||
/**
|
||||
* Permet de créer pour un centre la synthèse de l'imposition de l'année en prélude de la
|
||||
* génération des avis d'imposition
|
||||
* @param impositionsTfuPaylaodWeb
|
||||
* @return
|
||||
* @throws BadRequestException
|
||||
*/
|
||||
@Override
|
||||
public ImpositionsTfu createImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException {
|
||||
if (impositionsTfu.getId() != null) {
|
||||
@Transactional
|
||||
public ImpositionsTfuPaylaodWeb createImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
||||
if (impositionsTfuPaylaodWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle unité de logement ayant un id non null.");
|
||||
}
|
||||
List<ImpositionsTfu> impositionsTfus=impositionsTfuRepository.getImpositionsTfuByCommuneAndExercice(impositionsTfu.getCommune().getCode(),impositionsTfu.getExercice().getAnnee());
|
||||
List<ImpositionsTfu> impositionsTfus=impositionsTfuRepository.getImpositionsTfuByStructureAndExercice(impositionsTfuPaylaodWeb.getStructureId(), impositionsTfuPaylaodWeb.getExerciceId());
|
||||
if (!impositionsTfus.isEmpty()) {
|
||||
throw new BadRequestException("Une Imposition non annulée existe déjà");
|
||||
}
|
||||
impositionsTfu.setStatusAvis(StatusAvis.CREE);
|
||||
impositionsTfu.setDateGeneration(LocalDate.now());
|
||||
return impositionsTfuRepository.save(impositionsTfu);
|
||||
List<StatusAvis> statusAvis= new ArrayList<>();
|
||||
statusAvis.add(StatusAvis.EN_COURS);
|
||||
statusAvis.add(StatusAvis.CLOTURE);
|
||||
statusAvis.add(StatusAvis.GENERATION_AUTORISE);
|
||||
|
||||
Optional<ImpositionsTfu> optionalImpositionsTfu= impositionsTfuRepository.findDistinctByStructure_IdAndExercice_IdAndStatusAvisIn(impositionsTfuPaylaodWeb.getStructureId(),impositionsTfuPaylaodWeb.getExerciceId(),statusAvis);
|
||||
|
||||
if(optionalImpositionsTfu.isPresent()){
|
||||
throw new BadRequestException("Une Imposition est déjà dans le workflow");
|
||||
}
|
||||
|
||||
ImpositionsTfu impositionsTfu=entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
|
||||
impositionsTfu.setStatusAvis(StatusAvis.EN_COURS);
|
||||
|
||||
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
||||
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImpositionsTfu annulerImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException {
|
||||
if (impositionsTfu.getId() == null) {
|
||||
public ImpositionsTfuPaylaodWeb rejeterImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
||||
if (impositionsTfuPaylaodWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible d'annuler une imposition ayant un id null.");
|
||||
}
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfu.getId())) {
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfuPaylaodWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans notre base de données.");
|
||||
}
|
||||
impositionsTfu.setStatusAvis(StatusAvis.ANNULE);
|
||||
return impositionsTfuRepository.save(impositionsTfu);
|
||||
ImpositionsTfu impositionsTfu= entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
if(!impositionsTfu.getStatusAvis().equals(StatusAvis.CLOTURE)){
|
||||
throw new NotAcceptableException("L'état actuel :"+impositionsTfu.getStatusAvis()+"Ne permet pas de passer au l'état rejete");
|
||||
}
|
||||
|
||||
impositionsTfu.setStatusAvis(StatusAvis.REJETE);
|
||||
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public ImpositionsTfuPaylaodWeb cloturerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
||||
if (impositionsTfuPaylaodWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de cloturer une imposition ayant un id null.");
|
||||
}
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfuPaylaodWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver l'imposition spécifiée dans notre base de données.");
|
||||
}
|
||||
|
||||
ImpositionsTfu impositionsTfu= entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
|
||||
if(!impositionsTfu.getStatusAvis().equals(StatusAvis.EN_COURS) && !impositionsTfu.getStatusAvis().equals(StatusAvis.REJETE)){
|
||||
throw new NotAcceptableException("L'état actuel :"+impositionsTfu.getStatusAvis()+"Ne permet pas de passer au l'état rejete");
|
||||
}
|
||||
|
||||
impositionsTfu.setDateCloture(LocalDate.now());
|
||||
enqueteService.cloturerEnqueteParcelleBatimentUniteLogementByStructureIdAndExerciceId(impositionsTfu.getStructure().getId(),impositionsTfu.getExercice().getId());
|
||||
impositionsTfu.setStatusAvis(StatusAvis.CLOTURE);
|
||||
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImpositionsTfu validerImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException {
|
||||
if (impositionsTfu.getId() == null) {
|
||||
public ImpositionsTfuPaylaodWeb autoriserGenerationImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException {
|
||||
if (impositionsTfuPaylaodWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de valider une imposition ayant un id null.");
|
||||
}
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfu.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans notre base de données.");
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfuPaylaodWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver l'imposition spécifiée dans notre base de données.");
|
||||
}
|
||||
impositionsTfu.setStatusAvis(StatusAvis.VALIDE);
|
||||
return impositionsTfuRepository.save(impositionsTfu);
|
||||
|
||||
ImpositionsTfu impositionsTfu= entityFromPayLoadService.getImpositionsTfuFromPayLoadWeb(impositionsTfuPaylaodWeb);
|
||||
|
||||
if(!impositionsTfu.getStatusAvis().equals(StatusAvis.CLOTURE)){
|
||||
throw new NotFoundException("L'état actuel : "+impositionsTfu.getStatusAvis()+ " ne permet pas de passer à l'état Autorisé");
|
||||
}
|
||||
impositionsTfu.setDateGeneration(LocalDate.now());
|
||||
impositionsTfu.setStatusAvis(StatusAvis.GENERATION_AUTORISE);
|
||||
impositionsTfu =impositionsTfuRepository.save(impositionsTfu);
|
||||
return impositionsTfuRepository.findByIdToDto(impositionsTfu.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImpositionsTfu updateImpositionsTfu(Long id, ImpositionsTfu impositionsTfu) throws NotFoundException {
|
||||
if (impositionsTfu.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle unité de logement ayant un id null.");
|
||||
}
|
||||
if (!impositionsTfuRepository.existsById(impositionsTfu.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans notre base de données.");
|
||||
}
|
||||
return impositionsTfuRepository.save(impositionsTfu);
|
||||
public ImpositionsTfuPaylaodWeb updateImpositionsTfu(Long id, ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws NotFoundException {
|
||||
// if (impositionsTfu.getId() == null) {
|
||||
// throw new BadRequestException("Impossible de mettre à jour une nouvelle unité de logement ayant un id null.");
|
||||
// }
|
||||
// if (!impositionsTfuRepository.existsById(impositionsTfu.getId())) {
|
||||
// throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans notre base de données.");
|
||||
// }
|
||||
return null; // impositionsTfuRepository.save(impositionsTfu);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteImpositionsTfu(Long id) throws NotFoundException {
|
||||
Optional<ImpositionsTfu> impositionsTfuOptional = impositionsTfuRepository.findById(id);
|
||||
if (impositionsTfuOptional.isPresent()) {
|
||||
if(!impositionsTfuOptional.get().getStatusAvis().equals(StatusAvis.EN_COURS)){
|
||||
throw new NotFoundException("L'état actuel : "+impositionsTfuOptional.get().getStatusAvis()+ " ne permet pas de supprimer");
|
||||
}
|
||||
impositionsTfuRepository.deleteById(impositionsTfuOptional.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans notre base de données.");
|
||||
@@ -94,11 +167,22 @@ public class ImpositionsTfuServiceImpl implements ImpositionsTfuService {
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<ImpositionsTfu> getImpositionsTfuById(Long id) {
|
||||
public Optional<ImpositionsTfuPaylaodWeb> getImpositionsTfuById(Long id) {
|
||||
if (impositionsTfuRepository.existsById(id)) {
|
||||
return impositionsTfuRepository.findById(id);
|
||||
return impositionsTfuRepository.findByIdToDto(id);
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la nouvelle unité de logement spécifiée dans la base de données.");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ImpositionsTfuPaylaodWeb> getImpositionsTfuByUserIdIds(Long userId) {
|
||||
System.out.println(userId);
|
||||
List<Structure> structures = structureService.getListStructureUserId(userId);
|
||||
List<Long> structureIds = structures.stream()
|
||||
.map(Structure::getId)
|
||||
.toList();
|
||||
System.out.println(structureIds.get(0));
|
||||
return impositionsTfuRepository.findByStructureIdsToDto(structureIds);
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user