Compare commits
44 Commits
fffdef7103
...
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 |
@@ -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/
|
||||
|
||||
14
pom.xml
14
pom.xml
@@ -73,6 +73,7 @@
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>net.sf.jasperreports</groupId>
|
||||
<artifactId>jasperreports</artifactId>
|
||||
@@ -155,7 +156,18 @@
|
||||
<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();
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
}
|
||||
@@ -315,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);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -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;
|
||||
@@ -480,5 +483,8 @@ public class EnqueteController {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -51,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) {
|
||||
@@ -388,6 +388,33 @@ public class ParcelleController {
|
||||
|
||||
|
||||
|
||||
@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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -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<>(
|
||||
|
||||
@@ -10,10 +10,14 @@ 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;
|
||||
@@ -37,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) {
|
||||
@@ -100,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
|
||||
@@ -116,10 +120,9 @@ public class PersonneController {
|
||||
@PostMapping("/recherche")
|
||||
public ResponseEntity<?> rechercherPersonne(@RequestBody RecherchePersonneResquestBody recherchePersonneResquestBody ) {
|
||||
try{
|
||||
personneService.recherchePersonne(recherchePersonneResquestBody);
|
||||
|
||||
// personneService.recherchePersonne(recherchePersonneResquestBody);
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, null, "Personne retrouvée avec succès."),
|
||||
new ApiResponse<>(true, personneService.recherchePersonne(recherchePersonneResquestBody), "Personne retrouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
}catch (Exception e){
|
||||
@@ -129,4 +132,54 @@ public class PersonneController {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,6 +199,54 @@ public class PieceController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@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 {
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -167,11 +167,11 @@ public class CaracteristiqueBatimentController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/by-enquete-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentByBatimentId(@PathVariable Long enquteBatimentId) {
|
||||
@GetMapping("/by-enquete-batiment-id/{enqueteBatimentId}")
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentByBatimentId(@PathVariable Long enqueteBatimentId) {
|
||||
try {
|
||||
return new ResponseEntity<>(
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentListByEnqueteBatiment(enquteBatimentId), "Caracteristique du batiment trouvée avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentListByEnqueteBatiment(enqueteBatimentId), "Caracteristique du batiment trouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
@@ -190,12 +190,12 @@ public class CaracteristiqueBatimentController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/page/by-enquete-batiment-id/{batimentId}")
|
||||
public ResponseEntity<?> getCaracteristiqueBatimentByEnqueteBatimentIdPaged(@PathVariable Long enquteBatimentId,@RequestParam int pageNo, @RequestParam int pageSize) {
|
||||
@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(enquteBatimentId,pageable), "Caracteristique du batiment trouvée avec succès."),
|
||||
new ApiResponse<>(true, caracteristiqueBatimentService.getCaracteristiqueBatimentListByEnqueteBatimentPageable(enqueteBatimentId,pageable), "Caracteristique du batiment trouvée avec succès."),
|
||||
HttpStatus.OK
|
||||
);
|
||||
} catch (HttpClientErrorException.MethodNotAllowed e) {
|
||||
|
||||
@@ -199,7 +199,7 @@ public class CaracteristiqueUniteLogementController {
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/page//by-enquete-ulo-id/{enqueteUloId}")
|
||||
@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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -224,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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -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 = "*")
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -188,6 +188,7 @@ 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")
|
||||
@@ -197,6 +198,11 @@ public class Enquete extends BaseEntity implements Serializable {
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExcemption;
|
||||
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
//
|
||||
// @JsonIgnore
|
||||
// @OneToMany(mappedBy = "enquete")
|
||||
|
||||
@@ -1,11 +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;
|
||||
@@ -68,6 +72,17 @@ 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")
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
@@ -36,15 +39,40 @@ public class Batiment extends BaseEntity implements Serializable {
|
||||
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;
|
||||
|
||||
@ManyToOne
|
||||
private Usage usage;
|
||||
|
||||
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
|
||||
@JsonIgnore
|
||||
@ManyToOne
|
||||
private Tpe terminal;
|
||||
// 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;
|
||||
}
|
||||
|
||||
@@ -47,3 +47,5 @@ public class CaracteristiqueUniteLogement extends BaseEntity implements Serializ
|
||||
private Long enqueteId;
|
||||
private Long mobileDataId;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,9 @@ 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;
|
||||
@@ -52,6 +54,8 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
private Boolean soneb;
|
||||
private String numCompteurSoneb;
|
||||
private Integer nbreLotUnite;
|
||||
private Integer nbreUniteLogement;
|
||||
private Integer nbrePiece;
|
||||
private Integer nbreUniteLocation;
|
||||
private Float superficieLouee;
|
||||
private Float superficieAuSol;
|
||||
@@ -59,8 +63,12 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
private Integer nbreHabitant;
|
||||
private Long montantMensuelLocation;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelEstime;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long valeurBatimentEstime;
|
||||
private Long valeurBatimentReel;
|
||||
private Long valeurBatimentCalcule;
|
||||
private Integer nombrePiscine;
|
||||
private Integer nbreMoisLocation;
|
||||
private String autreCaracteristiquePhysique;
|
||||
private String observation;
|
||||
@@ -96,6 +104,11 @@ 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
|
||||
@@ -121,4 +134,9 @@ public class EnqueteBatiment extends BaseEntity implements Serializable {
|
||||
@Enumerated(EnumType.STRING)
|
||||
@JsonIgnore
|
||||
private StatutEnquete statutEnquete;
|
||||
@ManyToOne
|
||||
private CategorieBatiment categorieBatiment ;
|
||||
@ManyToOne
|
||||
private Usage usage ;
|
||||
|
||||
}
|
||||
|
||||
@@ -11,7 +11,9 @@ 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;
|
||||
@@ -47,11 +49,15 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable {
|
||||
private Integer nbreHabitant;
|
||||
private Integer nbreMenage;
|
||||
private Boolean enLocation;
|
||||
private Float montantMensuelLoyer;
|
||||
private Long montantMensuelLocation;
|
||||
private Integer nbreMoisLocation;
|
||||
private Float montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelDeclare;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long montantLocatifAnnuelEstime;
|
||||
private Long valeurUniteLogementEstime;
|
||||
private Long valeurUniteLogementReel;
|
||||
private Long valeurUniteLogementCalcule;
|
||||
private Integer nombrePiscine;
|
||||
private Float superficieLouee;
|
||||
private Float superficieAuSol;
|
||||
private Boolean sbee;
|
||||
@@ -64,16 +70,22 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable {
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateFinExemption;
|
||||
|
||||
@JsonFormat(pattern = "dd-MM-yyyy")
|
||||
@JsonDeserialize(using = LocalDateDeserializer.class)
|
||||
private LocalDate dateEnquete;
|
||||
private String observation;
|
||||
private Long uniteLogementExternalKey;
|
||||
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
|
||||
@ManyToOne
|
||||
private Exercice exercice;
|
||||
|
||||
|
||||
|
||||
// @JsonIgnore
|
||||
// @ManyToOne(fetch = FetchType.LAZY)
|
||||
// @JsonBackReference
|
||||
@@ -108,5 +120,8 @@ public class EnqueteUniteLogement extends BaseEntity implements Serializable {
|
||||
@JsonIgnore
|
||||
@Enumerated(EnumType.STRING)
|
||||
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();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -39,7 +39,6 @@ public class SituationFiscaleParcelle extends BaseEntity implements Serializable
|
||||
private Long montantDu ;
|
||||
private Long montantPaye ;
|
||||
private Long resteAPayer ;
|
||||
private StatutParcelle etatFiscalParcelle ;
|
||||
@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,13 +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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
@@ -11,5 +11,9 @@ public enum ParametersType {
|
||||
OBJET_RESET_PASSWORD,
|
||||
CORPS_RESET_PASSWORD,
|
||||
OBJET_CREATE_ACCOUNT,
|
||||
CORPS_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,6 +2,7 @@ package io.gmss.fiscad.enums;
|
||||
|
||||
public enum StatutEnquete {
|
||||
EN_COURS,
|
||||
// DECLARATION,
|
||||
FINALISE,
|
||||
REJETE,
|
||||
VALIDE,
|
||||
|
||||
@@ -2,9 +2,6 @@ package io.gmss.fiscad.enums;
|
||||
|
||||
public enum StatutParcelle {
|
||||
NON_ENQUETER,
|
||||
ENQUETER_NON_BATIE_AJOUR,
|
||||
ENQUETER_BATIE_AJOUR,
|
||||
ENQUETER_NON_BATIE_NON_AJOUR,
|
||||
ENQUETER_BATIE_NON_AJOUR
|
||||
|
||||
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;
|
||||
@@ -348,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);
|
||||
}
|
||||
|
||||
@@ -541,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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -22,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;
|
||||
@@ -48,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");
|
||||
@@ -61,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");
|
||||
@@ -86,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
|
||||
@@ -191,6 +194,13 @@ public class ParcelleServiceImpl implements ParcelleService {
|
||||
|
||||
}
|
||||
|
||||
@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()
|
||||
|
||||
@@ -2,13 +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;
|
||||
@@ -26,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 {
|
||||
@@ -45,25 +53,17 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
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.");
|
||||
}
|
||||
@@ -72,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
|
||||
@@ -81,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
|
||||
@@ -193,10 +194,164 @@ public class PersonneServiceImpl implements PersonneService {
|
||||
);
|
||||
}
|
||||
|
||||
// @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<Personne> recherchePersonne(RecherchePersonneResquestBody recherchePersonneResquestBody) {
|
||||
callAPIService.callGetIfuEnLigneToken();
|
||||
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 + "%";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -88,6 +88,8 @@ public class PieceServiceImpl implements PieceService {
|
||||
null,
|
||||
id,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null);
|
||||
}
|
||||
|
||||
@@ -101,6 +103,36 @@ public class PieceServiceImpl implements PieceService {
|
||||
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);
|
||||
}
|
||||
}
|
||||
@@ -1,20 +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
|
||||
@@ -23,6 +28,7 @@ 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 {
|
||||
@@ -89,5 +95,29 @@ public class StructureServiceImpl implements StructureService {
|
||||
return structureRepository.findStructureToDtoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
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;
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -73,7 +73,6 @@ public class CaracteristiqueBatimentServiceImpl implements CaracteristiqueBatime
|
||||
return caracteristiqueBatimentRepository.findAllCaracteristiqueBatimentToDto();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<CaracteristiqueBatimentPayloadWeb> getCaracteristiqueBatimentToDto(Long id) {
|
||||
if (caracteristiqueBatimentRepository.existsById(id)) {
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -86,4 +86,9 @@ public class UniteLogementServiceImpl implements UniteLogementService {
|
||||
public List<UniteLogementPaylaodWeb> getUniteLogementListByBatiment(Long batimentId) {
|
||||
return uniteLogementRepository.findUnitesLogementAvecOccupantCourantByBatimentToDto(batimentId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<UniteLogementPaylaodWeb> getUniteLogementListByParcelle(Long parcelleId) {
|
||||
return uniteLogementRepository.findAllUnitesLogementAvecOccupantCourantByParcelleToDto(parcelleId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
package io.gmss.fiscad.implementations.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuBatiService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuBatiPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.BaremRfuRepository;
|
||||
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 BaremRfuBatiServiceImpl implements BaremRfuBatiService {
|
||||
private final BaremRfuRepository baremRfuRepository;
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public BaremRfuBatiPayloadWeb createBaremRfu(BaremRfuBatiPayloadWeb baremRfuBatiPayloadWeb) throws BadRequestException {
|
||||
if (baremRfuBatiPayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer un nouvel bareme rfu ayant un id non null.");
|
||||
}
|
||||
BaremRfuBati baremRfuBati = entityFromPayLoadService.getBaremRfuBatiFromPayLoadWeb(baremRfuBatiPayloadWeb);
|
||||
baremRfuBati = baremRfuRepository.save(baremRfuBati);
|
||||
return baremRfuRepository.findByBaremRfuBatieId(baremRfuBati.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaremRfuBatiPayloadWeb updateBaremRfu(Long id, BaremRfuBatiPayloadWeb baremRfuBatiPayloadWeb) throws NotFoundException {
|
||||
if (baremRfuBatiPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvel bareme rfu ayant un id null.");
|
||||
}
|
||||
if (!baremRfuRepository.existsById(baremRfuBatiPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver le bareme spécifiée dans notre base de données.");
|
||||
}
|
||||
BaremRfuBati baremRfuBati = entityFromPayLoadService.getBaremRfuBatiFromPayLoadWeb(baremRfuBatiPayloadWeb);
|
||||
baremRfuBati = baremRfuRepository.save(baremRfuBati);
|
||||
return baremRfuRepository.findByBaremRfuBatieId(baremRfuBati.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteBaremRfu(Long id) throws NotFoundException {
|
||||
Optional<BaremRfuBati> baremRfuOptional = baremRfuRepository.findById(id);
|
||||
if (baremRfuOptional.isPresent()) {
|
||||
baremRfuRepository.deleteById(baremRfuOptional.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver le Bareme spécifié dans notre base de données.");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<BaremRfuBatiPayloadWeb> getBaremRfuList(Pageable pageable) {
|
||||
return baremRfuRepository.findAllPayloadPaged(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBatiPayloadWeb> getBaremRfuList() {
|
||||
return baremRfuRepository.findAllPayload();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBatiPayloadWeb> getBaremRfuByCategorieBatiment(Long idCategorieBatiment) {
|
||||
return baremRfuRepository.findByCategorieBatiment(idCategorieBatiment);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBatiPayloadWeb> getBaremRfuByArrondissement(Long idArrondissement) {
|
||||
return baremRfuRepository.findByArrondissementId(idArrondissement);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBatiPayloadWeb> getBaremRfuByArrondissementAndCategorieBatiment(Long IdArrondissement, Long IdCategorieBatiment) {
|
||||
return baremRfuRepository.findByArrondissementAndCategorieBatiment(IdArrondissement,IdCategorieBatiment);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBatiPayloadWeb> getBaremRfuByQuartierAndCategorieBatiment(Long idQuartier, Long IdCategorieBatiment) {
|
||||
return baremRfuRepository.findByQuartierAndCategorieBatiment(idQuartier,IdCategorieBatiment);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaremRfuBatiPayloadWeb getBaremRfuById(Long id) {
|
||||
return baremRfuRepository.findByBaremRfuBatieId(id).orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -4,38 +4,42 @@ import io.gmss.fiscad.entities.rfu.parametre.BaremRfuNonBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuNonBatiService;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuNonBatiPayloadWeb;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.BaremRfuNonBatiRepository;
|
||||
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 BaremRfuNonBatiServiceImpl implements BaremRfuNonBatiService {
|
||||
private final BaremRfuNonBatiRepository baremRfuNonBatiRepository;
|
||||
|
||||
public BaremRfuNonBatiServiceImpl(BaremRfuNonBatiRepository baremRfuNonBatiRepository) {
|
||||
this.baremRfuNonBatiRepository = baremRfuNonBatiRepository;
|
||||
}
|
||||
private final EntityFromPayLoadService entityFromPayLoadService;
|
||||
|
||||
@Override
|
||||
public BaremRfuNonBati createBaremRfuNonBati(BaremRfuNonBati baremRfuNonBati) throws BadRequestException {
|
||||
if (baremRfuNonBati.getId() != null) {
|
||||
public BaremRfuNonBatiPayloadWeb createBaremRfuNonBati(BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) throws BadRequestException {
|
||||
if (baremRfuNonBatiPayloadWeb.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle campgne ayant un id non null.");
|
||||
}
|
||||
return baremRfuNonBatiRepository.save(baremRfuNonBati);
|
||||
BaremRfuNonBati baremRfuNonBati= entityFromPayLoadService.getBaremRfuNonBatiFromPayLoadWeb(baremRfuNonBatiPayloadWeb);
|
||||
baremRfuNonBati=baremRfuNonBatiRepository.save(baremRfuNonBati);
|
||||
return baremRfuNonBatiRepository.findByIdToDto(baremRfuNonBati.getId()).orElse(null);
|
||||
}
|
||||
@Override
|
||||
public BaremRfuNonBati updateBaremRfuNonBati(Long id, BaremRfuNonBati baremRfuNonBati) throws NotFoundException {
|
||||
if (baremRfuNonBati.getId() == null) {
|
||||
public BaremRfuNonBatiPayloadWeb updateBaremRfuNonBati(Long id, BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) throws NotFoundException {
|
||||
if (baremRfuNonBatiPayloadWeb.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle baremRfuNonBati ayant un id null.");
|
||||
}
|
||||
if (!baremRfuNonBatiRepository.existsById(baremRfuNonBati.getId())) {
|
||||
if (!baremRfuNonBatiRepository.existsById(baremRfuNonBatiPayloadWeb.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la baremRfuNonBati spécifiée dans notre base de données.");
|
||||
}
|
||||
return baremRfuNonBatiRepository.save(baremRfuNonBati);
|
||||
BaremRfuNonBati baremRfuNonBati= entityFromPayLoadService.getBaremRfuNonBatiFromPayLoadWeb(baremRfuNonBatiPayloadWeb);
|
||||
baremRfuNonBati=baremRfuNonBatiRepository.save(baremRfuNonBati);
|
||||
return baremRfuNonBatiRepository.findByIdToDto(baremRfuNonBati.getId()).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -48,20 +52,27 @@ public class BaremRfuNonBatiServiceImpl implements BaremRfuNonBatiService {
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public Page<BaremRfuNonBati> getBaremRfuNonBatiList(Pageable pageable) {
|
||||
return baremRfuNonBatiRepository.findAll(pageable);
|
||||
public Page<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiList(Pageable pageable) {
|
||||
return baremRfuNonBatiRepository.findAllPayloadToDtoPaged(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuNonBati> getBaremRfuNonBatiList() {
|
||||
return baremRfuNonBatiRepository.findAll();
|
||||
public List<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiList() {
|
||||
return baremRfuNonBatiRepository.findAllPayloadToDto();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<BaremRfuNonBati> getBaremRfuNonBatiById(Long id) {
|
||||
return baremRfuNonBatiRepository.findById(id);
|
||||
public Optional<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiById(Long id) {
|
||||
return baremRfuNonBatiRepository.findByIdToDto(id);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiByCommuneAndZoneId(Long communeId,Long zoneId) {
|
||||
return baremRfuNonBatiRepository.findByCommuneAndZoneToDto(communeId,zoneId);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
package io.gmss.fiscad.implementations.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.BaremRfuService;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.BaremRfuRepository;
|
||||
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;
|
||||
@Service
|
||||
public class BaremRfuServiceImpl implements BaremRfuService {
|
||||
private final BaremRfuRepository baremRfuRepository;
|
||||
|
||||
public BaremRfuServiceImpl(BaremRfuRepository baremRfuRepository) {
|
||||
this.baremRfuRepository = baremRfuRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaremRfuBati createBaremRfu(BaremRfuBati baremRfuBati) throws BadRequestException {
|
||||
if (baremRfuBati.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer un nouvel bareme rfu ayant un id non null.");
|
||||
}
|
||||
return baremRfuRepository.save(baremRfuBati);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaremRfuBati updateBaremRfu(Long id, BaremRfuBati baremRfuBati) throws NotFoundException {
|
||||
if (baremRfuBati.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvel bareme rfu ayant un id null.");
|
||||
}
|
||||
if (!baremRfuRepository.existsById(baremRfuBati.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver le bareme spécifiée dans notre base de données.");
|
||||
}
|
||||
return baremRfuRepository.save(baremRfuBati);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteBaremRfu(Long id) throws NotFoundException {
|
||||
Optional<BaremRfuBati> baremRfuOptional = baremRfuRepository.findById(id);
|
||||
if (baremRfuOptional.isPresent()) {
|
||||
baremRfuRepository.deleteById(baremRfuOptional.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver le Bareme spécifié dans notre base de données.");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<BaremRfuBati> getBaremRfuList(Pageable pageable) {
|
||||
return baremRfuRepository.findAll(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBati> getBaremRfuList() {
|
||||
return baremRfuRepository.findAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BaremRfuBati> getBaremRfuByType(Long idCategorieBatiment) {
|
||||
return baremRfuRepository.findAllByCategorieBatiment_Id(idCategorieBatiment);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<BaremRfuBati> getBaremRfuById(Long id) {
|
||||
return baremRfuRepository.findById(id);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package io.gmss.fiscad.implementations.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.interfaces.rfu.parametre.UsageService;
|
||||
import io.gmss.fiscad.persistence.repositories.rfu.parametre.UsageRepository;
|
||||
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;
|
||||
|
||||
@Service
|
||||
public class UsageServiceImpl implements UsageService {
|
||||
private final UsageRepository usageRepository;
|
||||
|
||||
public UsageServiceImpl(UsageRepository usageRepository) {
|
||||
this.usageRepository = usageRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Usage createUsage(Usage usage) throws BadRequestException {
|
||||
if (usage.getId() != null) {
|
||||
throw new BadRequestException("Impossible de créer une nouvelle campgne ayant un id non null.");
|
||||
}
|
||||
return usageRepository.save(usage);
|
||||
}
|
||||
@Override
|
||||
public Usage updateUsage(Long id, Usage usage) throws NotFoundException {
|
||||
if (usage.getId() == null) {
|
||||
throw new BadRequestException("Impossible de mettre à jour une nouvelle usage ayant un id null.");
|
||||
}
|
||||
if (!usageRepository.existsById(usage.getId())) {
|
||||
throw new NotFoundException("Impossible de trouver la usage spécifiée dans notre base de données.");
|
||||
}
|
||||
return usageRepository.save(usage);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteUsage(Long id) throws NotFoundException {
|
||||
Optional<Usage> usageOptional = usageRepository.findById(id);
|
||||
if (usageOptional.isPresent()) {
|
||||
usageRepository.deleteById(usageOptional.get().getId());
|
||||
} else {
|
||||
throw new NotFoundException("Impossible de trouver la usage spécifiée dans notre base de données.");
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public Page<Usage> getUsageList(Pageable pageable) {
|
||||
return usageRepository.findAll(pageable);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Usage> getUsageList() {
|
||||
return usageRepository.findAll();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Optional<Usage> getUsageById(Long id) {
|
||||
return usageRepository.findById(id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,4 +32,5 @@ public interface SecteurService {
|
||||
Optional<SecteurPaylaodWeb> getSecteurById(Long id);
|
||||
|
||||
List<Secteur> getListSecteurUserId(Long userId) ;
|
||||
List<Secteur> getListSecteurByDepartementId(Long departementId) ;
|
||||
}
|
||||
@@ -58,5 +58,6 @@ public interface EnqueteService {
|
||||
|
||||
public List<EnqueteNonSyncResponse> getEnqueteValideNonSynch(Long terminalId);
|
||||
|
||||
|
||||
int cloturerEnqueteParcelleBatimentUniteLogementByStructureIdAndExerciceId(Long strucutreId,Long exerciceId);
|
||||
int cloturerEnqueteParcelleBatimentUniteLogementByUserIdAndExerciceId(Long userId,Long exerciceId);
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import io.gmss.fiscad.entities.infocad.metier.ParcelleGeom;
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ParcelleGeomPaylaodWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@@ -15,12 +16,15 @@ import java.util.Optional;
|
||||
|
||||
public interface ParcelleGeomService {
|
||||
int createParcelleFromGeoJsonFile(MultipartFile file,String reference,String description) throws BadRequestException;
|
||||
int createParcelleGeomFromGeoJsonApi() throws BadRequestException;
|
||||
ParcelleGeom createOnParcelleFromGeoJson(JsonNode jsonNode, Upload upload) throws BadRequestException;
|
||||
ParcelleGeom updateParcelleGeom(MultipartFile file) throws NotFoundException;
|
||||
void deleteParcelle(Long id) throws NotFoundException;
|
||||
Page<ParcelleGeom> getParcelleGeomList(Pageable pageable);
|
||||
List<ParcelleGeom> getParcelleGeomList();
|
||||
List<ParcelleGeom> getParcelleGeomListUnQuatier(String codeQuartier);
|
||||
List<ParcelleGeomPaylaodWeb> getParcelleGeomListByQuatierId(Long quartierId);
|
||||
Page<ParcelleGeomPaylaodWeb> getParcelleGeomListByQuatierIdPaged(Long quartierId,Pageable pageable);
|
||||
public List<ParcelleGeom> getParcelleGeomListUnArrondissement(String codeArrondissement);
|
||||
|
||||
Optional<ParcelleGeom> getParcelleGeomById(Long id);
|
||||
|
||||
@@ -17,9 +17,9 @@ import java.util.Optional;
|
||||
public interface ParcelleService {
|
||||
|
||||
|
||||
Parcelle createParcelle(ParcellePayLoadWeb parcellePayLoadWeb) throws BadRequestException;
|
||||
ParcellePayLoadWeb createParcelle(ParcellePayLoadWeb parcellePayLoadWeb) throws BadRequestException;
|
||||
|
||||
Parcelle updateParcelle(Long id,ParcellePayLoadWeb parcellePayLoadWeb) throws NotFoundException;
|
||||
ParcellePayLoadWeb updateParcelle(Long id,ParcellePayLoadWeb parcellePayLoadWeb) throws NotFoundException;
|
||||
|
||||
void deleteParcelle(Long id) throws NotFoundException;
|
||||
Optional<Parcelle> getParcelleById(Long id);
|
||||
@@ -35,4 +35,5 @@ public interface ParcelleService {
|
||||
Page<ParcellePayLoadWeb> getParcelleListByRuePageableToDto(Long userId,Long rueId,Pageable pageable);
|
||||
|
||||
Page<ParcellePayLoadWeb> getParcelleByMultiFiltre(Long userId, FiltreParcelle filtreParcelle, Pageable pageable);
|
||||
Integer majParcelleBatieNonbatie();
|
||||
}
|
||||
|
||||
@@ -14,17 +14,17 @@ import java.util.Optional;
|
||||
|
||||
public interface PersonneService {
|
||||
|
||||
Personne createPersonne(PersonnePayLoadWeb personnePayLoadWeb) throws BadRequestException;
|
||||
PersonnePayLoadWeb createPersonne(PersonnePayLoadWeb personnePayLoadWeb) throws BadRequestException;
|
||||
|
||||
Personne updatePersonne(Long id, PersonnePayLoadWeb personnePayLoadWeb) throws NotFoundException;
|
||||
PersonnePayLoadWeb updatePersonne(Long id, PersonnePayLoadWeb personnePayLoadWeb) throws NotFoundException;
|
||||
|
||||
void deletePersonne(Long id) throws NotFoundException;
|
||||
|
||||
Page<Personne> getPersonneList(Pageable pageable);
|
||||
Page<PersonnePayLoadWeb> getPersonneList(Pageable pageable);
|
||||
|
||||
List<Personne> getPersonneList();
|
||||
List<PersonnePayLoadWeb> getPersonneList();
|
||||
|
||||
Optional<Personne> getPersonneById(Long id);
|
||||
Optional<PersonnePayLoadWeb> getPersonneById(Long id);
|
||||
PersonneCompletDTO getPersonneComplete(Long id);
|
||||
List<Personne> recherchePersonne(RecherchePersonneResquestBody recherchePersonneResquestBody);
|
||||
List<PersonnePayLoadWeb> recherchePersonne(RecherchePersonneResquestBody recherchePersonneResquestBody);
|
||||
}
|
||||
|
||||
@@ -25,4 +25,8 @@ public interface PieceService {
|
||||
Optional<PiecePayLoadWeb> getPieceByToDto(Long id);
|
||||
List<PiecePayLoadWeb> getAllPieceByEnqueteToDto(Long id);
|
||||
Page<PiecePayLoadWeb> getAllPieceByEnqueteToDtoPageable(Long id,Pageable pageable);
|
||||
|
||||
List<PiecePayLoadWeb> getAllPieceByEnqueteBatimentToDto(Long id);
|
||||
|
||||
List<PiecePayLoadWeb> getAllPieceByEnqueteUniteLogementToDto(Long id);
|
||||
}
|
||||
|
||||
33
src/main/java/io/gmss/fiscad/interfaces/infocad/metier/UploadService.java
Executable file
33
src/main/java/io/gmss/fiscad/interfaces/infocad/metier/UploadService.java
Executable file
@@ -0,0 +1,33 @@
|
||||
package io.gmss.fiscad.interfaces.infocad.metier;
|
||||
|
||||
import io.gmss.fiscad.entities.infocad.metier.Upload;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.UploadPayLoadWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface UploadService {
|
||||
|
||||
UploadPayLoadWeb createUpload(UploadPayLoadWeb piecePayLoadWeb) throws BadRequestException;
|
||||
Upload createUpload(MultipartFile file, @RequestParam Long pieceId) throws BadRequestException;
|
||||
|
||||
UploadPayLoadWeb updateUpload(Long id, UploadPayLoadWeb piecePayLoadWeb) throws NotFoundException;
|
||||
|
||||
void deleteUpload(Long id) throws NotFoundException;
|
||||
|
||||
Page<UploadPayLoadWeb> getUploadListToDtoPageable(Pageable pageable);
|
||||
|
||||
List<UploadPayLoadWeb> getUploadListToDto();
|
||||
|
||||
Optional<UploadPayLoadWeb> getUploadByToDto(Long id);
|
||||
List<UploadPayLoadWeb> getAllUploadByPieceToDto(Long id);
|
||||
Page<UploadPayLoadWeb> getAllUploadByPieceDtoPageable(Long id,Pageable pageable);
|
||||
|
||||
List<Upload> getAllUploadByPiece(Long id);
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
package io.gmss.fiscad.interfaces.infocad.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.decoupage.Secteur;
|
||||
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.paylaods.request.crudweb.StructurePaylaodWeb;
|
||||
@@ -8,6 +10,8 @@ import io.gmss.fiscad.paylaods.response.StructureResponse;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@@ -31,4 +35,6 @@ public interface StructureService {
|
||||
//List<StructureResponse> getStructuresByArrondissement(Long arrondissementID);
|
||||
|
||||
|
||||
public List<Structure> getListStructureUserId(Long userId) ;
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,8 @@ import io.gmss.fiscad.entities.rfu.metier.DonneesImpositionTfu;
|
||||
import io.gmss.fiscad.entities.rfu.metier.ImpositionsTfu;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.DonneesImpositionPaylaodWeb;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
@@ -11,8 +13,6 @@ import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface DonneesImpositionTfuService {
|
||||
|
||||
|
||||
DonneesImpositionTfu createDonneesImpositionTfu(DonneesImpositionTfu donneesImpositionTfu) throws BadRequestException;
|
||||
|
||||
DonneesImpositionTfu updateDonneesImpositionTfu(Long id, DonneesImpositionTfu donneesImpositionTfu) throws NotFoundException;
|
||||
@@ -25,7 +25,17 @@ public interface DonneesImpositionTfuService {
|
||||
|
||||
Optional<DonneesImpositionTfu> getDonneesImpositionTfuById(Long id);
|
||||
|
||||
Long genererDonneesFiscales(ImpositionsTfu impositionsTfu);
|
||||
List<DonneesImpositionTfu> getDonneesFiscalesByImposition(Long impositionsId);
|
||||
ImpositionsTfuPaylaodWeb genererDonneesFiscalesParcelleBatie(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb,Long userId);
|
||||
ImpositionsTfuPaylaodWeb genererDonneesFiscalesParcelleNonBatie(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb,Long userId);
|
||||
List<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImposition(Long impositionsId);
|
||||
List<DonneesImpositionTfu> getDonneesFiscalesByImpositionArrondissement(Long impositionsId,Long arrondissementId);
|
||||
Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdPageable(Long impositionsTfuId, Pageable pageable);
|
||||
|
||||
|
||||
Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdNonBatiePageable(Long impositionsTfuId, Pageable pageable);
|
||||
Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdBatieBatimentPageable(Long impositionsTfuId, Pageable pageable);
|
||||
Page<DonneesImpositionPaylaodWeb> getDonneesFiscalesByImpositionTfuIdBatieUniteLogPageable(Long impositionsTfuId, Pageable pageable);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package io.gmss.fiscad.interfaces.rfu.metier;
|
||||
import io.gmss.fiscad.entities.rfu.metier.ImpositionsTfu;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.ImpositionsTfuPaylaodWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
@@ -11,11 +12,12 @@ import java.util.Optional;
|
||||
|
||||
public interface ImpositionsTfuService {
|
||||
|
||||
ImpositionsTfu createImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException;
|
||||
ImpositionsTfu annulerImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException;
|
||||
ImpositionsTfu validerImpositionsTfu(ImpositionsTfu impositionsTfu) throws BadRequestException;
|
||||
ImpositionsTfuPaylaodWeb createImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||
ImpositionsTfuPaylaodWeb rejeterImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||
ImpositionsTfuPaylaodWeb cloturerImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||
ImpositionsTfuPaylaodWeb autoriserGenerationImpositionsTfu(ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws BadRequestException;
|
||||
|
||||
ImpositionsTfu updateImpositionsTfu(Long id, ImpositionsTfu impositionsTfu) throws NotFoundException;
|
||||
ImpositionsTfuPaylaodWeb updateImpositionsTfu(Long id, ImpositionsTfuPaylaodWeb impositionsTfuPaylaodWeb) throws NotFoundException;
|
||||
|
||||
void deleteImpositionsTfu(Long id) throws NotFoundException;
|
||||
|
||||
@@ -23,5 +25,6 @@ public interface ImpositionsTfuService {
|
||||
|
||||
List<ImpositionsTfu> getImpositionsTfuList();
|
||||
|
||||
Optional<ImpositionsTfu> getImpositionsTfuById(Long id);
|
||||
Optional<ImpositionsTfuPaylaodWeb> getImpositionsTfuById(Long id);
|
||||
List<ImpositionsTfuPaylaodWeb> getImpositionsTfuByUserIdIds(Long userId);
|
||||
}
|
||||
|
||||
@@ -28,4 +28,6 @@ public interface UniteLogementService {
|
||||
Page<UniteLogementPaylaodWeb> getUniteLogementListByBatimentPageable(Long batimentId, Pageable pageable);
|
||||
|
||||
List<UniteLogementPaylaodWeb> getUniteLogementListByBatiment(Long batimentId);
|
||||
|
||||
List<UniteLogementPaylaodWeb> getUniteLogementListByParcelle(Long parcelleId);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
package io.gmss.fiscad.interfaces.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuBatiPayloadWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface BaremRfuBatiService {
|
||||
|
||||
BaremRfuBatiPayloadWeb createBaremRfu(BaremRfuBatiPayloadWeb baremRfuBati) throws BadRequestException;
|
||||
|
||||
BaremRfuBatiPayloadWeb updateBaremRfu(Long id, BaremRfuBatiPayloadWeb baremRfuBati) throws NotFoundException;
|
||||
|
||||
void deleteBaremRfu(Long id) throws NotFoundException;
|
||||
|
||||
Page<BaremRfuBatiPayloadWeb> getBaremRfuList(Pageable pageable);
|
||||
|
||||
List<BaremRfuBatiPayloadWeb> getBaremRfuList();
|
||||
|
||||
List<BaremRfuBatiPayloadWeb> getBaremRfuByCategorieBatiment(Long IdCategorieBatiment);
|
||||
List<BaremRfuBatiPayloadWeb> getBaremRfuByArrondissement(Long IdArrondissement);
|
||||
List<BaremRfuBatiPayloadWeb> getBaremRfuByArrondissementAndCategorieBatiment(Long IdArrondissement,Long IdCategorieBatiment);
|
||||
List<BaremRfuBatiPayloadWeb> getBaremRfuByQuartierAndCategorieBatiment(Long idQuartier,Long IdCategorieBatiment);
|
||||
|
||||
BaremRfuBatiPayloadWeb getBaremRfuById(Long id);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package io.gmss.fiscad.interfaces.rfu.parametre;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuNonBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import io.gmss.fiscad.paylaods.request.crudweb.BaremRfuNonBatiPayloadWeb;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
@@ -11,17 +12,18 @@ import java.util.Optional;
|
||||
|
||||
public interface BaremRfuNonBatiService {
|
||||
|
||||
BaremRfuNonBati createBaremRfuNonBati(BaremRfuNonBati baremRfuNonBati) throws BadRequestException;
|
||||
BaremRfuNonBatiPayloadWeb createBaremRfuNonBati(BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) throws BadRequestException;
|
||||
|
||||
BaremRfuNonBati updateBaremRfuNonBati(Long id, BaremRfuNonBati baremRfuNonBati) throws NotFoundException;
|
||||
BaremRfuNonBatiPayloadWeb updateBaremRfuNonBati(Long id, BaremRfuNonBatiPayloadWeb baremRfuNonBatiPayloadWeb) throws NotFoundException;
|
||||
|
||||
void deleteBaremRfuNonBati(Long id) throws NotFoundException;
|
||||
|
||||
Page<BaremRfuNonBati> getBaremRfuNonBatiList(Pageable pageable);
|
||||
Page<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiList(Pageable pageable);
|
||||
|
||||
List<BaremRfuNonBati> getBaremRfuNonBatiList();
|
||||
List<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiList();
|
||||
|
||||
|
||||
Optional<BaremRfuNonBati> getBaremRfuNonBatiById(Long id);
|
||||
Optional<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiById(Long id);
|
||||
Optional<BaremRfuNonBatiPayloadWeb> getBaremRfuNonBatiByCommuneAndZoneId(Long communeId,Long zoneId);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
package io.gmss.fiscad.interfaces.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.BaremRfuBati;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface BaremRfuService {
|
||||
|
||||
BaremRfuBati createBaremRfu(BaremRfuBati baremRfuBati) throws BadRequestException;
|
||||
|
||||
BaremRfuBati updateBaremRfu(Long id, BaremRfuBati baremRfuBati) throws NotFoundException;
|
||||
|
||||
void deleteBaremRfu(Long id) throws NotFoundException;
|
||||
|
||||
Page<BaremRfuBati> getBaremRfuList(Pageable pageable);
|
||||
|
||||
List<BaremRfuBati> getBaremRfuList();
|
||||
|
||||
List<BaremRfuBati> getBaremRfuByType(Long IdCategorieBatiment);
|
||||
|
||||
Optional<BaremRfuBati> getBaremRfuById(Long id);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package io.gmss.fiscad.interfaces.rfu.parametre;
|
||||
|
||||
import io.gmss.fiscad.entities.rfu.parametre.Usage;
|
||||
import io.gmss.fiscad.exceptions.BadRequestException;
|
||||
import io.gmss.fiscad.exceptions.NotFoundException;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface UsageService {
|
||||
|
||||
Usage createUsage(Usage usage) throws BadRequestException;
|
||||
|
||||
Usage updateUsage(Long id, Usage usage) throws NotFoundException;
|
||||
|
||||
void deleteUsage(Long id) throws NotFoundException;
|
||||
|
||||
Page<Usage> getUsageList(Pageable pageable);
|
||||
|
||||
List<Usage> getUsageList();
|
||||
|
||||
|
||||
Optional<Usage> getUsageById(Long id);
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ public class ApiResponse<T> {
|
||||
private boolean success;
|
||||
private T object;
|
||||
private String message;
|
||||
|
||||
private int statusCode;
|
||||
|
||||
public ApiResponse(boolean success, String message) {
|
||||
this.success = success;
|
||||
@@ -23,4 +23,9 @@ public class ApiResponse<T> {
|
||||
this.object = object;
|
||||
}
|
||||
|
||||
public ApiResponse(boolean success, T object, String message) {
|
||||
this.success = success;
|
||||
this.object = object;
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
package io.gmss.fiscad.paylaods.request;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@Data
|
||||
public class IfuEnLigneRechercheBody {
|
||||
private String ifu;
|
||||
// private String ifu;
|
||||
private String nom;
|
||||
private String prenom;
|
||||
private String dateNaissance;
|
||||
|
||||
@@ -2,11 +2,15 @@ package io.gmss.fiscad.paylaods.request;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@Data
|
||||
public class RecherchePersonneResquestBody {
|
||||
private String ifu;
|
||||
private String npi;
|
||||
private String nom;
|
||||
private String nomMere;
|
||||
private String prenom;
|
||||
private String dateNaissance;
|
||||
private String raisonSociale;
|
||||
private LocalDate dateNaissance;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class ArrondissementPaylaodWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -7,9 +7,10 @@ import io.gmss.fiscad.enums.Titre;
|
||||
import jakarta.persistence.EnumType;
|
||||
import jakarta.persistence.Enumerated;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class AvoirFonctionPaylaodWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import io.gmss.fiscad.entities.decoupage.Arrondissement;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.CategorieBatiment;
|
||||
import jakarta.persistence.ManyToOne;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class BaremRfuBatiPayloadWeb {
|
||||
private Long id;
|
||||
private Long valeurLocative;
|
||||
private Double tfuMetreCarre;
|
||||
private Long tfuMinimum;
|
||||
private Long categorieBatimentId;
|
||||
private String categorieBatimentNom;
|
||||
private String categorieBatimentStanding;
|
||||
private Long arrondissementId;
|
||||
private String arrondissementCode;
|
||||
private String arrondissementNom;
|
||||
|
||||
private Long quartierId;
|
||||
private String quartierCode;
|
||||
private String quartierNom;
|
||||
|
||||
private Long communeId;
|
||||
private String communeCode;
|
||||
private String communeNom;
|
||||
|
||||
public BaremRfuBatiPayloadWeb(Long id, Long valeurLocative, Double tfuMetreCarre, Long tfuMinimum, Long categorieBatimentId, String categorieBatimentNom, String categorieBatimentStanding, Long arrondissementId, String arrondissementCode, String arrondissementNom,
|
||||
Long quartierId,
|
||||
String quartierCode,
|
||||
String quartierNom,
|
||||
Long communeId,
|
||||
String communeCode,
|
||||
String communeNom
|
||||
) {
|
||||
this.id = id;
|
||||
this.valeurLocative = valeurLocative;
|
||||
this.tfuMetreCarre = tfuMetreCarre;
|
||||
this.tfuMinimum = tfuMinimum;
|
||||
this.categorieBatimentId = categorieBatimentId;
|
||||
this.categorieBatimentNom = categorieBatimentNom;
|
||||
this.categorieBatimentStanding = categorieBatimentStanding;
|
||||
this.arrondissementId = arrondissementId;
|
||||
this.arrondissementCode = arrondissementCode;
|
||||
this.arrondissementNom = arrondissementNom;
|
||||
this.quartierId = quartierId;
|
||||
this.quartierCode = quartierCode;
|
||||
this.quartierNom = quartierNom;
|
||||
this.communeId = communeId;
|
||||
this.communeCode = communeCode;
|
||||
this.communeNom = communeNom;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import io.gmss.fiscad.entities.decoupage.Commune;
|
||||
import io.gmss.fiscad.entities.rfu.parametre.ZoneRfu;
|
||||
import jakarta.persistence.ManyToOne;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class BaremRfuNonBatiPayloadWeb {
|
||||
private Long id;
|
||||
private Long valeurAdministrative;
|
||||
private float taux;
|
||||
private Long communeId;
|
||||
private String communeCode;
|
||||
private String communeNom;
|
||||
private Long zoneRfuId;
|
||||
private String zoneRfuCode;
|
||||
private String zoneRfuNom;
|
||||
private Long valeurAdministrativeMetreCarre;
|
||||
private Boolean auMetreCarre;
|
||||
|
||||
public BaremRfuNonBatiPayloadWeb(Long id,
|
||||
Long valeurAdministrative,
|
||||
Float taux,
|
||||
Long communeId,
|
||||
String communeCode,
|
||||
String communeNom,
|
||||
Long zoneRfuId,
|
||||
String zoneRfuCode,
|
||||
String zoneRfuNom,
|
||||
Long valeurAdministrativeMetreCarre,
|
||||
Boolean auMetreCarre) {
|
||||
this.id = id;
|
||||
this.valeurAdministrative = valeurAdministrative;
|
||||
this.taux = taux;
|
||||
this.communeId = communeId;
|
||||
this.communeCode = communeCode;
|
||||
this.communeNom = communeNom;
|
||||
this.zoneRfuId = zoneRfuId;
|
||||
this.zoneRfuCode = zoneRfuCode;
|
||||
this.zoneRfuNom = zoneRfuNom;
|
||||
this.valeurAdministrativeMetreCarre = valeurAdministrativeMetreCarre;
|
||||
this.auMetreCarre = auMetreCarre;
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,10 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class BatimentPaylaodWeb {
|
||||
private Long id;
|
||||
@@ -19,11 +20,55 @@ public class BatimentPaylaodWeb {
|
||||
private String personneNom;
|
||||
private String personnePrenom;
|
||||
private String personneRaisonSociale;
|
||||
private Float superficieSol;
|
||||
private Float superficieAuSol;
|
||||
private Float superficieLouee;
|
||||
private Long enqueteBatiementCourantId;
|
||||
private Long categorieBatimentId;
|
||||
private String categorieBatimentCode;
|
||||
private String categorieBatimentStanding;
|
||||
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 Long usageId;
|
||||
private String usageNom;
|
||||
private Integer nbreUniteLogement;
|
||||
|
||||
public BatimentPaylaodWeb(Long id, String nub, String code, LocalDate dateConstruction, Long parcelleId, String parcelleNup, String parcelleQ, String parcelleI, String parcelleP, Long personneId, String personneNom, String personnePrenom, String personneRaisonSociale, Float superficieSol, Float superficieLouee,Long enqueteBatiementCourantId) {
|
||||
public BatimentPaylaodWeb(Long id,
|
||||
String nub,
|
||||
String code,
|
||||
LocalDate dateConstruction,
|
||||
Long parcelleId,
|
||||
String parcelleNup,
|
||||
String parcelleQ,
|
||||
String parcelleI,
|
||||
String parcelleP,
|
||||
Long personneId,
|
||||
String personneNom,
|
||||
String personnePrenom,
|
||||
String personneRaisonSociale,
|
||||
Float superficieAuSol,
|
||||
Float superficieLouee,
|
||||
Long enqueteBatiementCourantId,
|
||||
Long categorieBatimentId,
|
||||
String categorieBatimentCode,
|
||||
String categorieBatimentStanding,
|
||||
Integer nombrePiscine,
|
||||
Long montantLocatifAnnuelDeclare,
|
||||
Long montantLocatifAnnuelCalcule,
|
||||
Long valeurBatimentEstime,
|
||||
Long valeurBatimentReel,
|
||||
Long montantMensuelLocation,
|
||||
Long usageId,
|
||||
String usageNom,
|
||||
Long montantLocatifAnnuelEstime,
|
||||
Long valeurBatimentCalcule,
|
||||
Integer nbreUniteLogement
|
||||
) {
|
||||
this.id = id;
|
||||
this.nub = nub;
|
||||
this.code = code;
|
||||
@@ -37,8 +82,23 @@ public class BatimentPaylaodWeb {
|
||||
this.personneNom = personneNom;
|
||||
this.personnePrenom = personnePrenom;
|
||||
this.personneRaisonSociale = personneRaisonSociale;
|
||||
this.superficieSol = superficieSol ;
|
||||
this.superficieAuSol = superficieAuSol ;
|
||||
this.superficieLouee = superficieLouee ;
|
||||
this.enqueteBatiementCourantId = enqueteBatiementCourantId ;
|
||||
this.categorieBatimentId = categorieBatimentId ;
|
||||
this.categorieBatimentCode = categorieBatimentCode ;
|
||||
this.categorieBatimentStanding = categorieBatimentStanding ;
|
||||
this.nombrePiscine = nombrePiscine ;
|
||||
this.montantLocatifAnnuelDeclare = montantLocatifAnnuelDeclare ;
|
||||
this.montantLocatifAnnuelCalcule = montantLocatifAnnuelCalcule ;
|
||||
this.valeurBatimentEstime = valeurBatimentEstime ;
|
||||
this.valeurBatimentReel = valeurBatimentReel ;
|
||||
this.montantMensuelLocation = montantMensuelLocation ;
|
||||
this.usageId = usageId ;
|
||||
this.usageNom = usageNom ;
|
||||
this.montantLocatifAnnuelEstime = montantLocatifAnnuelEstime ;
|
||||
this.valeurBatimentCalcule = valeurBatimentCalcule ;
|
||||
this.nbreUniteLogement = nbreUniteLogement ;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class CaracteristiqueBatimentPayloadWeb {
|
||||
private Long id;
|
||||
@@ -15,8 +16,12 @@ public class CaracteristiqueBatimentPayloadWeb {
|
||||
private String caracteristiqueLibelle;
|
||||
private String valeur;
|
||||
private String observation;
|
||||
private Long typeCaracteristiqueId;
|
||||
private String typeCaracteristiqueLibelle;
|
||||
|
||||
public CaracteristiqueBatimentPayloadWeb(Long id, Long enqueteBatimentId, LocalDate enqueteBatimentDateEnquete, Integer enqueteBatimentAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation) {
|
||||
public CaracteristiqueBatimentPayloadWeb(Long id, Long enqueteBatimentId, LocalDate enqueteBatimentDateEnquete, Integer enqueteBatimentAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation,
|
||||
Long typeCaracteristiqueId,
|
||||
String typeCaracteristiqueLibelle) {
|
||||
this.id = id;
|
||||
this.enqueteBatimentId = enqueteBatimentId;
|
||||
this.enqueteBatimentDateEnquete = enqueteBatimentDateEnquete;
|
||||
@@ -26,5 +31,8 @@ public class CaracteristiqueBatimentPayloadWeb {
|
||||
this.caracteristiqueLibelle = caracteristiqueLibelle;
|
||||
this.valeur = valeur;
|
||||
this.observation = observation;
|
||||
this.typeCaracteristiqueId = typeCaracteristiqueId;
|
||||
this.typeCaracteristiqueLibelle = typeCaracteristiqueLibelle;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class CaracteristiqueParcellePayloadWeb {
|
||||
private Long id;
|
||||
@@ -15,8 +16,12 @@ public class CaracteristiqueParcellePayloadWeb {
|
||||
private String caracteristiqueLibelle;
|
||||
private String valeur;
|
||||
private String observation;
|
||||
private Long typeCaracteristiqueId;
|
||||
private String typeCaracteristiqueLibelle;
|
||||
|
||||
public CaracteristiqueParcellePayloadWeb(Long id, Long enqueteId, LocalDate enqueteDateEnquete, Integer enqueteAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation) {
|
||||
public CaracteristiqueParcellePayloadWeb(Long id, Long enqueteId, LocalDate enqueteDateEnquete, Integer enqueteAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation,
|
||||
Long typeCaracteristiqueId,
|
||||
String typeCaracteristiqueLibelle) {
|
||||
this.id = id;
|
||||
this.enqueteId = enqueteId;
|
||||
this.enqueteDateEnquete = enqueteDateEnquete;
|
||||
@@ -26,5 +31,7 @@ public class CaracteristiqueParcellePayloadWeb {
|
||||
this.caracteristiqueLibelle = caracteristiqueLibelle;
|
||||
this.valeur = valeur;
|
||||
this.observation = observation;
|
||||
this.typeCaracteristiqueId = typeCaracteristiqueId;
|
||||
this.typeCaracteristiqueLibelle = typeCaracteristiqueLibelle;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class CaracteristiqueUniteLogementPayloadWeb {
|
||||
private Long id;
|
||||
@@ -15,8 +16,12 @@ public class CaracteristiqueUniteLogementPayloadWeb {
|
||||
private String caracteristiqueLibelle;
|
||||
private String valeur;
|
||||
private String observation;
|
||||
private Long typeCaracteristiqueId;
|
||||
private String typeCaracteristiqueLibelle;
|
||||
|
||||
public CaracteristiqueUniteLogementPayloadWeb(Long id, Long enqueteUniteLogementId, LocalDate enqueteUniteLogementDateEnquete, Integer enqueteUniteLogementAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation) {
|
||||
public CaracteristiqueUniteLogementPayloadWeb(Long id, Long enqueteUniteLogementId, LocalDate enqueteUniteLogementDateEnquete, Integer enqueteUniteLogementAnnee, Long caracteristiqueId, String caracteristiqueCode, String caracteristiqueLibelle, String valeur, String observation,
|
||||
Long typeCaracteristiqueId,
|
||||
String typeCaracteristiqueLibelle) {
|
||||
this.id = id;
|
||||
this.enqueteUniteLogementId = enqueteUniteLogementId;
|
||||
this.enqueteUniteLogementDateEnquete = enqueteUniteLogementDateEnquete;
|
||||
@@ -26,5 +31,7 @@ public class CaracteristiqueUniteLogementPayloadWeb {
|
||||
this.caracteristiqueLibelle = caracteristiqueLibelle;
|
||||
this.valeur = valeur;
|
||||
this.observation = observation;
|
||||
this.typeCaracteristiqueId = typeCaracteristiqueId;
|
||||
this.typeCaracteristiqueLibelle = typeCaracteristiqueLibelle;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class CommunePaylaodWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -4,10 +4,11 @@ import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import io.gmss.fiscad.deserializer.LocalDateDeserializer;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class DeclarationNcPayloadWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class DepartementPaylaodWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -0,0 +1,201 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.gmss.fiscad.enums.NatureImpot;
|
||||
import jakarta.persistence.EnumType;
|
||||
import jakarta.persistence.Enumerated;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.time.LocalDate;
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class DonneesImpositionPaylaodWeb {
|
||||
private Long id;
|
||||
private Long annee;
|
||||
private String codeDepartement;
|
||||
private String nomDepartement;
|
||||
private String codeCommune;
|
||||
private String nomCommune;
|
||||
private String codeArrondissement;
|
||||
private String nomArrondissement;
|
||||
private String codeQuartierVillage;
|
||||
private String nomQuartierVillage;
|
||||
private String q;
|
||||
private String ilot;
|
||||
private String parcelle;
|
||||
private String nup;
|
||||
private String titreFoncier;
|
||||
private String numBatiment;
|
||||
private String numUniteLogement;
|
||||
private String ifu;
|
||||
private String npi;
|
||||
private String telProp;
|
||||
private String emailProp;
|
||||
private String nomProp;
|
||||
private String prenomProp;
|
||||
private String raisonSociale;
|
||||
private String adresseProp;
|
||||
private String telRep;
|
||||
private String emailRep;
|
||||
private String nomRep;
|
||||
private String prenomRep;
|
||||
private String adresseRep;
|
||||
private String longitude;
|
||||
private String latitude;
|
||||
private Integer superficieParc;
|
||||
private Long superficieAuSolBat;
|
||||
private Long superficieAuSolUlog;
|
||||
private Boolean batie;
|
||||
private Boolean exonere;
|
||||
private Boolean batimentExonere;
|
||||
private Boolean uniteLogementExonere;
|
||||
private Long valeurLocativeAdm;
|
||||
private Long valeurBatiment;
|
||||
private Long valeurParcelle;
|
||||
private Long montantLoyerAnnuel;
|
||||
private Long tfuMetreCarre;
|
||||
private Long tfuMinimum;
|
||||
private String standingBat;
|
||||
private String categorieBat;
|
||||
private Long nombrePiscine;
|
||||
private Long nombreUlog;
|
||||
private Long nombreBat;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate dateEnquete;
|
||||
private Long serviceId;
|
||||
private String serviceCode;
|
||||
private Long zoneRfuId;
|
||||
private String zoneRfuNom;
|
||||
private Float tauxTfu;
|
||||
private Long valeurAdminParcelleNb;
|
||||
@Enumerated(EnumType.STRING)
|
||||
private NatureImpot natureImpot;
|
||||
private Long valeurLocativeAdmMetreCarre;
|
||||
private Long valeurAdminParcelleNbMetreCarre;
|
||||
private Float montantTaxe;
|
||||
|
||||
public DonneesImpositionPaylaodWeb(Long id,
|
||||
Long annee,
|
||||
String codeDepartement,
|
||||
String nomDepartement,
|
||||
String codeCommune,
|
||||
String nomCommune,
|
||||
String codeArrondissement,
|
||||
String nomArrondissement,
|
||||
String codeQuartierVillage,
|
||||
String nomQuartierVillage,
|
||||
String q, String ilot,
|
||||
String parcelle,
|
||||
String nup,
|
||||
String titreFoncier,
|
||||
String numBatiment,
|
||||
String numUniteLogement,
|
||||
String ifu,
|
||||
String npi,
|
||||
String telProp,
|
||||
String emailProp,
|
||||
String nomProp,
|
||||
String prenomProp,
|
||||
String raisonSociale,
|
||||
String adresseProp,
|
||||
String telRep,
|
||||
String emailRep,
|
||||
String nomRep,
|
||||
String prenomRep,
|
||||
String adresseRep,
|
||||
String longitude,
|
||||
String latitude,
|
||||
Integer superficieParc,
|
||||
Long superficieAuSolBat,
|
||||
Long superficieAuSolUlog,
|
||||
Boolean batie,
|
||||
Boolean exonere,
|
||||
Boolean batimentExonere,
|
||||
Boolean uniteLogementExonere,
|
||||
Long valeurLocativeAdm,
|
||||
Long montantLoyerAnnuel,
|
||||
Long tfuMetreCarre,
|
||||
Long tfuMinimum,
|
||||
String standingBat,
|
||||
String categorieBat,
|
||||
Long nombrePiscine,
|
||||
Long nombreUlog,
|
||||
Long nombreBat,
|
||||
LocalDate dateEnquete,
|
||||
Long serviceId,
|
||||
Long zoneRfuId,
|
||||
Long valeurAdministrativeParcelleNonBati,
|
||||
NatureImpot natureImpot,
|
||||
String serviceCode,
|
||||
String zoneRfuNom,
|
||||
Long valeurBatiment,
|
||||
Long valeurParcelle,
|
||||
Long valeurLocativeAdmMetreCarre,
|
||||
Long valeurAdministrativeParcelleNonBatiAuMetreCarre,
|
||||
Float montantTaxe
|
||||
) {
|
||||
this.id = id;
|
||||
this.annee = annee;
|
||||
this.codeDepartement = codeDepartement;
|
||||
this.nomDepartement = nomDepartement;
|
||||
this.codeCommune = codeCommune;
|
||||
this.nomCommune = nomCommune;
|
||||
this.codeArrondissement = codeArrondissement;
|
||||
this.nomArrondissement = nomArrondissement;
|
||||
this.codeQuartierVillage = codeQuartierVillage;
|
||||
this.nomQuartierVillage = nomQuartierVillage;
|
||||
this.q = q;
|
||||
this.ilot = ilot;
|
||||
this.parcelle = parcelle;
|
||||
this.nup = nup;
|
||||
this.titreFoncier = titreFoncier;
|
||||
this.numBatiment = numBatiment;
|
||||
this.numUniteLogement = numUniteLogement;
|
||||
this.ifu = ifu;
|
||||
this.npi = npi;
|
||||
this.telProp = telProp;
|
||||
this.emailProp = emailProp;
|
||||
this.nomProp = nomProp;
|
||||
this.prenomProp = prenomProp;
|
||||
this.raisonSociale = raisonSociale;
|
||||
this.adresseProp = adresseProp;
|
||||
this.telRep = telRep;
|
||||
this.emailRep = emailRep;
|
||||
this.nomRep = nomRep;
|
||||
this.prenomRep = prenomRep;
|
||||
this.adresseRep = adresseRep;
|
||||
this.longitude = longitude;
|
||||
this.latitude = latitude;
|
||||
this.superficieParc = superficieParc;
|
||||
this.superficieAuSolBat = superficieAuSolBat;
|
||||
this.superficieAuSolUlog = superficieAuSolUlog;
|
||||
this.batie = batie;
|
||||
this.exonere = exonere;
|
||||
this.batimentExonere = batimentExonere;
|
||||
this.uniteLogementExonere = uniteLogementExonere;
|
||||
this.valeurLocativeAdm = valeurLocativeAdm;
|
||||
this.montantLoyerAnnuel = montantLoyerAnnuel;
|
||||
this.tfuMetreCarre = tfuMetreCarre;
|
||||
this.tfuMinimum = tfuMinimum;
|
||||
this.standingBat = standingBat;
|
||||
this.categorieBat = categorieBat;
|
||||
this.nombrePiscine = nombrePiscine;
|
||||
this.nombreUlog = nombreUlog;
|
||||
this.nombreBat = nombreBat;
|
||||
this.dateEnquete = dateEnquete;
|
||||
this.serviceId = serviceId;
|
||||
this.zoneRfuId = zoneRfuId;
|
||||
this.valeurAdminParcelleNb = valeurAdministrativeParcelleNonBati;
|
||||
this.natureImpot = natureImpot;
|
||||
this.serviceCode = serviceCode;
|
||||
this.zoneRfuNom = zoneRfuNom;
|
||||
this.valeurBatiment = valeurBatiment;
|
||||
this.valeurParcelle = valeurParcelle;
|
||||
this.valeurLocativeAdmMetreCarre = valeurLocativeAdmMetreCarre;
|
||||
this.valeurAdminParcelleNbMetreCarre = valeurAdministrativeParcelleNonBatiAuMetreCarre;
|
||||
this.montantTaxe = montantTaxe;
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,11 @@
|
||||
package io.gmss.fiscad.paylaods.request.crudweb;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class EnqueteActivitePayLoadWeb {
|
||||
private Long id;
|
||||
|
||||
@@ -7,10 +7,11 @@ import io.gmss.fiscad.enums.StatutEnquete;
|
||||
import jakarta.persistence.EnumType;
|
||||
import jakarta.persistence.Enumerated;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class EnqueteBatimentPayloadWeb {
|
||||
private Long id;
|
||||
@@ -51,15 +52,38 @@ public class EnqueteBatimentPayloadWeb {
|
||||
private String enqueteurNom;
|
||||
private String enqueteurPrenom;
|
||||
@Enumerated(EnumType.STRING)
|
||||
@JsonIgnore
|
||||
// @JsonIgnore
|
||||
private StatutEnquete statutEnquete;
|
||||
private Long exerciceId;
|
||||
private Integer exerciceAnnee;
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
private Long categorieBatimentId;
|
||||
private String categorieBatimentCode;
|
||||
private String categorieBatimentStanding;
|
||||
private Integer nombrePiscine;
|
||||
private Long montantLocatifAnnuelCalcule;
|
||||
private Long usageId;
|
||||
private String usageNom;
|
||||
|
||||
public EnqueteBatimentPayloadWeb(Long id, String observation, String autreMenuisierie, String autreMur, boolean sbee, String numCompteurSbee, boolean soneb, String numCompteurSoneb, int nbreLotUnite, int nbreUniteLocation, Float superficieLouee, Float superficieAuSol, LocalDate dateEnquete, int nbreMenage, int nbreHabitant, Long montantMensuelLocation, Long montantLocatifAnnuelDeclare, Long nbreEtage, Long valeurBatimentEstime, Long valeurBatimentReel, int nbreMoisLocation, String autreCaracteristiquePhysique, LocalDate dateDebutExcemption, LocalDate dateFinExcemption, Long batimentId, String batimentNub, Long personneId, String personneNom, String personnePrenom, String personneRaisonSociale, Long enqueteurId, String enqueteurNom, String enqueteurPrenom,
|
||||
StatutEnquete statutEnquete,
|
||||
Long exerciceId,
|
||||
Integer exerciceAnnee) {
|
||||
Integer exerciceAnnee,
|
||||
String representantNom,
|
||||
String representantPrenom,
|
||||
String representantTel,
|
||||
String representantNpi,
|
||||
Long categorieBatimentId,
|
||||
String categorieBatimentCode,
|
||||
String categorieBatimentStanding,
|
||||
Integer nombrePiscine,
|
||||
Long montantLocatifAnnuelCalcule,
|
||||
Long usageId,
|
||||
String usageNom
|
||||
) {
|
||||
this.id = id;
|
||||
this.observation = observation;
|
||||
this.autreMenuisierie = autreMenuisierie;
|
||||
@@ -96,5 +120,16 @@ public class EnqueteBatimentPayloadWeb {
|
||||
this.statutEnquete = statutEnquete;
|
||||
this.exerciceId = exerciceId;
|
||||
this.exerciceAnnee = exerciceAnnee;
|
||||
this.representantNom = representantNom;
|
||||
this.representantPrenom = representantPrenom;
|
||||
this.representantTel = representantTel;
|
||||
this.representantNpi = representantNpi;
|
||||
this.categorieBatimentId = categorieBatimentId;
|
||||
this.categorieBatimentCode = categorieBatimentCode;
|
||||
this.categorieBatimentStanding = categorieBatimentStanding;
|
||||
this.nombrePiscine = nombrePiscine;
|
||||
this.montantLocatifAnnuelCalcule = montantLocatifAnnuelCalcule;
|
||||
this.usageId = usageId ;
|
||||
this.usageNom = usageNom ;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,10 +4,11 @@ import io.gmss.fiscad.enums.StatutEnquete;
|
||||
import jakarta.persistence.EnumType;
|
||||
import jakarta.persistence.Enumerated;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class EnquetePayLoadWeb {
|
||||
private Long id;
|
||||
@@ -55,13 +56,21 @@ public class EnquetePayLoadWeb {
|
||||
private String parcelleQ;
|
||||
private String parcelleI;
|
||||
private String parcelleP;
|
||||
private Long exerviceId;
|
||||
private Integer exerviceAnnee;
|
||||
private Long exerciceId;
|
||||
private Integer exerciceAnnee;
|
||||
private Long modeAcquisitionId;
|
||||
private String modeAcquisitionLibelle;
|
||||
private String representantNom;
|
||||
private String representantPrenom;
|
||||
private String representantTel;
|
||||
private String representantNpi;
|
||||
|
||||
public EnquetePayLoadWeb(Long id, LocalDate dateEnquete, LocalDate dateFinalisation, Boolean litige, StatutEnquete statutEnquete, String descriptionMotifRejet, String observation, String numeroTitreFoncier, LocalDate dateTitreFoncier, String numEntreeParcelle, String numRue, String nomRue, Float precision, Integer nbreCoProprietaire, Integer nbreIndivisiaire, String autreAdresse, Float superficie, Integer nbreBatiment, Integer nbrePiscine, LocalDate dateDebutExemption, LocalDate dateFinExemption, String autreNumeroTitreFoncier, Long montantMensuelleLocation, Long montantAnnuelleLocation, Long valeurParcelleEstime, Long valeurParcelleReel, Long zoneRfuId, String zoneRfuNom, Long personneId, String personneNom, String personnePrenom, String personneRaisonSociale, Long enqueteurId, String enqueteurNom, String enqueteurPrenom,Long parcelleId, String parcelleNup, String parcelleQ, String parcelleI, String parcelleP, Long exerviceId, Integer exerviceAnnee,
|
||||
Long modeAcquisitionId,String modeAcquisitionLibelle) {
|
||||
public EnquetePayLoadWeb(Long id, LocalDate dateEnquete, LocalDate dateFinalisation, Boolean litige, StatutEnquete statutEnquete, String descriptionMotifRejet, String observation, String numeroTitreFoncier, LocalDate dateTitreFoncier, String numEntreeParcelle, String numRue, String nomRue, Float precision, Integer nbreCoProprietaire, Integer nbreIndivisiaire, String autreAdresse, Float superficie, Integer nbreBatiment, Integer nbrePiscine, LocalDate dateDebutExemption, LocalDate dateFinExemption, String autreNumeroTitreFoncier, Long montantMensuelleLocation, Long montantAnnuelleLocation, Long valeurParcelleEstime, Long valeurParcelleReel, Long zoneRfuId, String zoneRfuNom, Long personneId, String personneNom, String personnePrenom, String personneRaisonSociale, Long enqueteurId, String enqueteurNom, String enqueteurPrenom,Long parcelleId, String parcelleNup, String parcelleQ, String parcelleI, String parcelleP, Long exerciceId, Integer exerciceAnnee,
|
||||
Long modeAcquisitionId,String modeAcquisitionLibelle,
|
||||
String representantNom,
|
||||
String representantPrenom,
|
||||
String representantTel,
|
||||
String representantNpi) {
|
||||
this.id = id;
|
||||
this.dateEnquete = dateEnquete;
|
||||
this.dateFinalisation = dateFinalisation;
|
||||
@@ -102,9 +111,13 @@ public class EnquetePayLoadWeb {
|
||||
this.parcelleQ = parcelleQ;
|
||||
this.parcelleI = parcelleI;
|
||||
this.parcelleP = parcelleP;
|
||||
this.exerviceId = exerviceId;
|
||||
this.exerviceAnnee = exerviceAnnee;
|
||||
this.exerciceId = exerciceId;
|
||||
this.exerciceAnnee = exerciceAnnee;
|
||||
this.modeAcquisitionId = modeAcquisitionId;
|
||||
this.modeAcquisitionLibelle = modeAcquisitionLibelle;
|
||||
this.representantNom = representantNom;
|
||||
this.representantTel = representantTel;
|
||||
this.representantPrenom = representantPrenom;
|
||||
this.representantNpi = representantNpi;
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user