Merge commit '312bd747ce' as 'backend'

This commit is contained in:
Vincent Ramiere 2026-10-03 21:29:58 +02:00
commit df7e0a46a5
35 changed files with 2409 additions and 0 deletions

View file

@ -0,0 +1,13 @@
package fr.vincent.ramiere.mangerautourdesimplonback;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MangerAutourDeSimplonBackApplication {
public static void main(String[] args) {
SpringApplication.run(MangerAutourDeSimplonBackApplication.class, args);
}
}

View file

@ -0,0 +1,42 @@
package fr.vincent.ramiere.mangerautourdesimplonback.config;
import fr.vincent.ramiere.mangerautourdesimplonback.service.JpaUserDetailsService;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.Customizer;
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.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;
@Configuration
@EnableWebSecurity
@EnableMethodSecurity
public class SecurityConfig {
private final JpaUserDetailsService jpaUserDetailsService;
public SecurityConfig(JpaUserDetailsService jpaUserDetailsService) {
this.jpaUserDetailsService = jpaUserDetailsService;
}
@Bean
SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http
.csrf(csrf -> csrf.disable())
.authorizeHttpRequests(auth -> auth
.requestMatchers("/api/v1/restaurants/**").permitAll()
.requestMatchers("/api/v1/personnes/**").permitAll()
.anyRequest().authenticated())
.userDetailsService(jpaUserDetailsService)
.httpBasic(Customizer.withDefaults())
.build();
}
@Bean
PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}

View file

@ -0,0 +1,64 @@
package fr.vincent.ramiere.mangerautourdesimplonback.controller;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Preference;
import fr.vincent.ramiere.mangerautourdesimplonback.service.PreferenceService;
import lombok.AllArgsConstructor;
import lombok.Data;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Controleur REST pour la gestion des préférences des utilisateurs.
*/
@RestController
@RequestMapping("/api/v1/preferences")
@AllArgsConstructor
public class PreferenceController {
private final PreferenceService preferenceService;
/**
* DTO pour recevoir les données de préférence.
*/
@Data
static class PreferenceRequest {
private Integer personneId;
private Integer restaurantId;
private Integer note;
private Boolean favori;
}
/**
* Endpoint pour récupérer toutes les préférences d'un utilisateur.
*
* @param personneId L'ID de l'utilisateur.
* @return une ResponseEntity contenant la liste des préférences et le statut
* HTTP OK.
*/
@GetMapping("/user/{personneId}")
public ResponseEntity<List<Preference>> getPreferencesByPersonneId(@PathVariable Integer personneId) {
List<Preference> preferences = preferenceService.getPreferencesByPersonneId(personneId);
return ResponseEntity.ok(preferences);
}
/**
* Endpoint pour créer ou mettre à jour une préférence (note et/ou favori).
*
* @param request Le corps de la requête contenant les détails de la préférence.
* @return une ResponseEntity contenant la préférence sauvegardée (OK) ou
* NOT_FOUND si l'utilisateur ou le restaurant n'existe pas.
*/
@PutMapping
public ResponseEntity<Preference> saveOrUpdatePreference(@RequestBody PreferenceRequest request) {
return preferenceService.saveOrUpdatePreference(
request.getPersonneId(),
request.getRestaurantId(),
request.getNote(),
request.getFavori())
.map(ResponseEntity::ok)
.orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}
}

View file

@ -0,0 +1,91 @@
package fr.vincent.ramiere.mangerautourdesimplonback.controller;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Restaurant;
import fr.vincent.ramiere.mangerautourdesimplonback.service.RestaurantService;
import java.util.List;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import lombok.AllArgsConstructor;
/**
* Controleur REST pour la gestion des restaurants.
* Expose les endpoints de l'API pour les opérations CRUD.
*/
@RestController
@RequestMapping("/api/v1/restaurants")
@AllArgsConstructor
public class RestaurantController {
private final RestaurantService restaurantService;
/**
* Endpoint pour récupérer la liste de tous les restaurants.
* @return une ResponseEntity contenant la liste des restaurants et le statut HTTP OK.
*/
@GetMapping
public ResponseEntity<List<Restaurant>> getAllRestaurants() {
List<Restaurant> restaurants = restaurantService.getAllRestaurants();
return new ResponseEntity<>(restaurants, HttpStatus.OK);
}
/**
* Endpoint pour récupérer un restaurant par son identifiant.
* @param id L'identifiant du restaurant.
* @return une ResponseEntity contenant le restaurant s'il est trouvé (OK), sinon NOT_FOUND.
*/
@GetMapping("/{id}")
public ResponseEntity<Restaurant> getRestaurantById(@PathVariable Integer id) {
return restaurantService.getRestaurantById(id)
.map(restaurant -> new ResponseEntity<>(restaurant, HttpStatus.OK))
.orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}
/**
* Endpoint pour créer un nouveau restaurant.
* @param restaurant Le restaurant à créer.
* @return une ResponseEntity contenant le restaurant créé et le statut CREATED.
*/
@PostMapping
public ResponseEntity<Restaurant> createRestaurant(@RequestBody Restaurant restaurant) {
Restaurant savedRestaurant = restaurantService.saveRestaurant(restaurant);
return new ResponseEntity<>(savedRestaurant, HttpStatus.CREATED);
}
/**
* Endpoint pour mettre à jour un restaurant existant.
* @param id L'identifiant du restaurant à mettre à jour.
* @param restaurantDetails Les nouvelles données du restaurant.
* @return une ResponseEntity contenant le restaurant mis à jour (OK), sinon NOT_FOUND.
*/
@PutMapping("/{id}")
public ResponseEntity<Restaurant> updateRestaurant(@PathVariable Integer id, @RequestBody Restaurant restaurantDetails) {
return restaurantService.updateRestaurant(id, restaurantDetails)
.map(updateRestaurant -> new ResponseEntity<>(updateRestaurant, HttpStatus.OK))
.orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}
/**
* Endpoint pour supprimer un restaurant.
* @param id L'identifiant du restaurant à supprimer.
* @return une ResponseEntity avec le statut NO_CONTENT si la suppression réussit,
* ou NOT_FOUND si le restaurant n'existe pas.
*/
@DeleteMapping("/{id}")
public ResponseEntity<Void> deleteRestaurant(@PathVariable Integer id) {
if (restaurantService.getRestaurantById(id).isPresent()) {
restaurantService.deleteRestaurant(id);
return ResponseEntity.noContent().build();
}
return ResponseEntity.notFound().build();
}
}

View file

@ -0,0 +1,24 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import org.springframework.security.core.GrantedAuthority;
/**
* Énumération des rôles possibles pour un utilisateur dans le système.
* Implémente GrantedAuthority pour l'intégration avec Spring Security.
*/
public enum EnumRole implements GrantedAuthority {
/**
* Rôle standard avec des droits de lecture et d'interaction de base.
*/
ROLE_READER,
/**
* Rôle administrateur avec des droits étendus sur l'application.
*/
ROLE_ADMIN;
@Override
public String getAuthority() {
return name();
}
}

View file

@ -0,0 +1,76 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* Entité représentant un utilisateur de l'application.
*/
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Personne implements Serializable {
private static final long serialVersionUID = 1L;
/**
* Identifiant unique de la personne, généré automatiquement.
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_personne")
private int id;
/**
* Nom de famille de l'utilisateur.
*/
@Column(nullable = false)
private String nom;
/**
* Prénom de l'utilisateur.
*/
@Column(nullable = false)
private String prenom;
/**
* Adresse e-mail de l'utilisateur, utilisée comme identifiant de connexion.
*/
@Column(nullable = false)
private String email;
/**
* Mot de passe de l'utilisateur, stocké sous forme de hachage sécurisé.
*/
@Column(nullable = false)
private String password;
/**
* Collection des préférences (notes, favoris) de cet utilisateur pour les restaurants.
* La suppression d'une personne entraîne la suppression de ses préférences.
*/
@OneToMany(mappedBy = "preferencePK.personne", cascade = CascadeType.REMOVE)
//@JsonIgnore
@Builder.Default
private Collection<Preference> preference = new ArrayList<>();
/**
* Liste des rôles attribués à l'utilisateur (ex: ROLE_ADMIN, ROLE_READER).
* Chargée immédiatement avec l'entité (EAGER).
*/
@ElementCollection(fetch = FetchType.EAGER)
@Enumerated(EnumType.STRING)
@Builder.Default
private List<EnumRole> roleList = new ArrayList<>();
}

View file

@ -0,0 +1,54 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import java.io.Serializable;
import jakarta.persistence.Column;
import jakarta.persistence.EmbeddedId;
import jakarta.persistence.Entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
/**
* Entité représentant les préférences d'un utilisateur (Personne) pour un restaurant (Restaurant).
* Utilise une clé primaire composite {@link PreferencePK}.
*/
@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class Preference implements Serializable {
private static final long serialVersionUID = 1L;
/**
* Clé primaire composite, contenant les références vers Personne et Restaurant.
*/
@EmbeddedId
private PreferencePK preferencePK;
/**
* Note (de 1 à 5) attribuée par l'utilisateur au restaurant. Peut être nulle si non noté.
*/
@Column // Par défaut, nullable = true pour Integer
private Integer note;
/**
* Indique si le restaurant est marqué comme favori par l'utilisateur.
*/
@Column(name = "favori")
private Boolean favori;
/**
* Constructeur partiel pour initialiser avec la clé primaire.
* Ce constructeur est conservé car @AllArgsConstructor ne couvre pas ce cas spécifique
* si vous souhaitez initialiser uniquement avec la clé.
* Si @AllArgsConstructor suffit, vous pouvez supprimer celui-ci.
*/
public Preference(PreferencePK preferencePK){
this.preferencePK = preferencePK;
}
}

View file

@ -0,0 +1,47 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import jakarta.persistence.Embeddable;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
/**
* Classe représentant la clé primaire composite pour l'entité {@link Preference}.
* Elle est composée d'une référence à une {@link Personne} et à un {@link Restaurant}.
* Cette classe doit implémenter {@link Serializable} et redéfinir {@code equals()} et {@code hashCode()}.
*/
@Embeddable
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
public class PreferencePK implements Serializable {
private static final long serialVersionUID = 1L;
/**
* La personne associée à cette préférence. Fait partie de la clé composite.
*/
@ManyToOne
@JoinColumn(name = "personne_id_personne")
@JsonBackReference("personne-preferencepk")
private Personne personne;
/**
* Le restaurant associé à cette préférence. Fait partie de la clé composite.
*/
@ManyToOne
@JoinColumn(name="restau_id_restau")
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
private Restaurant restau;
}

View file

@ -0,0 +1,115 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.persistence.*;
import lombok.*;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
/**
* Entité représentant un restaurant dans l'application.
*/
@Entity
@Table(name = "restaurant")
@Getter
@Setter
@ToString(exclude = {"typerestaus", "preference"})
@EqualsAndHashCode(exclude = {"typerestaus", "preference"})
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Restaurant implements Serializable {
private static final long serialVersionUID = 1L;
/**
* Identifiant unique du restaurant, généré automatiquement.
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_restau")
private int id;
/**
* Nom commercial du restaurant.
*/
@Column(nullable = false)
private String nom;
/**
* Adresse postale complète du restaurant.
*/
@Column(nullable = false)
private String adresse;
/**
* Numéro de téléphone du restaurant.
*/
@Column
private String telephone;
/**
* Indique si le restaurant propose la vente à emporter.
*/
@Column(name = "a_emporter")
private Boolean aEmporter;
/**
* Indique si le restaurant propose de consommer sur place.
*/
@Column(name = "sur_place")
private Boolean surPlace;
/**
* Indication du niveau de prix (ex: 1 pour €, 2 pour €€, 3 pour €€€).
*/
@Column
private Integer prix;
/**
* Indique si le restaurant est accessible aux Personnes à Mobilité Réduite.
*/
@Column(name = "accespmr")
private Boolean accesPMR;
/**
* Coordonnée de latitude pour la géolocalisation.
*/
@Column(nullable = false)
private String latitude;
/**
* Coordonnée de longitude pour la géolocalisation.
*/
@Column(nullable = false)
private String longitude;
/**
* URL du site web du restaurant.
*/
@Column
private String website;
/**
* Collection des types de cuisine proposés par le restaurant (ex: Italien, Français).
*/
@ManyToMany
@JoinTable(
name = "type_restau",
joinColumns = @JoinColumn(name = "id_restau", referencedColumnName = "id_restau"),
inverseJoinColumns = @JoinColumn(name = "id_type", referencedColumnName = "id_type")
)
@Builder.Default
private Collection<TypeRestau> typerestaus = new ArrayList<>();
/**
* Collection des préférences des utilisateurs associées à ce restaurant.
* La suppression d'un restaurant entraîne la suppression des préférences associées.
*/
@OneToMany(mappedBy = "preferencePK.restau", cascade = CascadeType.REMOVE)
@JsonIgnore
@Builder.Default
private Collection<Preference> preference = new ArrayList<>();
}

View file

@ -0,0 +1,45 @@
package fr.vincent.ramiere.mangerautourdesimplonback.models;
import com.fasterxml.jackson.annotation.JsonBackReference;
import jakarta.persistence.*;
import lombok.*;
import java.util.ArrayList;
import java.io.Serializable;
import java.util.List;
/**
* Entité représentant un type de cuisine (ex: "Italien", "Japonais").
*/
@Entity
@Table(name = "type")
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class TypeRestau implements Serializable {
private static final long serialVersionUID = 1L;
/**
* Identifiant unique du type de cuisine, généré automatiquement.
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_type")
private int id;
/**
* Nom du type de cuisine (ex: "Pizza", "Français").
*/
@Column(nullable = false)
private String libelle;
/**
* Liste des restaurants associés à ce type de cuisine.
*/
@ManyToMany(mappedBy = "typerestaus")
@JsonBackReference("restaurants")
@Builder.Default
private List<Restaurant> restaurants = new ArrayList<>();
}

View file

@ -0,0 +1,12 @@
package fr.vincent.ramiere.mangerautourdesimplonback.repository;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Personne;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.util.Optional;
@Repository
public interface PersonneRepository extends JpaRepository<Personne, Integer> {
Optional<Personne> findByEmail(String email);
}

View file

@ -0,0 +1,17 @@
package fr.vincent.ramiere.mangerautourdesimplonback.repository;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Preference;
import fr.vincent.ramiere.mangerautourdesimplonback.models.PreferencePK;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* Repository pour l'entité Preference.
* Fournit les méthodes pour les opérations CRUD sur les préférences.
*/
@Repository
public interface PreferenceRepository extends JpaRepository<Preference, PreferencePK> {
List<Preference> findByPreferencePK_Personne_Id(Integer personneId);
}

View file

@ -0,0 +1,16 @@
package fr.vincent.ramiere.mangerautourdesimplonback.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Restaurant;
/**
* Dépot pour l'entité Restaurant.
* Fournit les méthodes pour les opérations CRUD.
*/
@Repository
public interface RestaurantRepository extends JpaRepository<Restaurant, Integer>{
}

View file

@ -0,0 +1,29 @@
package fr.vincent.ramiere.mangerautourdesimplonback.service;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Personne;
import fr.vincent.ramiere.mangerautourdesimplonback.repository.PersonneRepository;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
@Service
public class JpaUserDetailsService implements UserDetailsService {
private final PersonneRepository personneRepository;
public JpaUserDetailsService(PersonneRepository personneRepository) {
this.personneRepository = personneRepository;
}
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
Personne personne = personneRepository.findByEmail(username)
.orElseThrow(() -> new UsernameNotFoundException("Aucun utilisateur trouvé avec l'email: " + username));
return new org.springframework.security.core.userdetails.User(
personne.getEmail(),
personne.getPassword(),
personne.getRoleList());
}
}

View file

@ -0,0 +1,71 @@
package fr.vincent.ramiere.mangerautourdesimplonback.service;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Personne;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Preference;
import fr.vincent.ramiere.mangerautourdesimplonback.models.PreferencePK;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Restaurant;
import fr.vincent.ramiere.mangerautourdesimplonback.repository.PersonneRepository;
import fr.vincent.ramiere.mangerautourdesimplonback.repository.PreferenceRepository;
import fr.vincent.ramiere.mangerautourdesimplonback.repository.RestaurantRepository;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Optional;
/**
* Service pour la gestion des préférences des utilisateurs.
*/
@Service
@AllArgsConstructor
public class PreferenceService {
private final PreferenceRepository preferenceRepository;
private final PersonneRepository personneRepository;
private final RestaurantRepository restaurantRepository;
/**
* Récupère toutes les préférences pour un utilisateur donné.
*
* @param personneId L'ID de l'utilisateur.
* @return Une liste de préférences.
*/
public List<Preference> getPreferencesByPersonneId(Integer personneId) {
return preferenceRepository.findByPreferencePK_Personne_Id(personneId);
}
/**
* Crée ou met à jour une préférence pour un utilisateur et un restaurant.
*
* @param personneId L'ID de l'utilisateur.
* @param restaurantId L'ID du restaurant.
* @param note La note attribuée (peut être null).
* @param favori Le statut de favori (peut être null).
* @return Un Optional contenant la préférence sauvegardée, ou un Optional vide
* si l'utilisateur ou le restaurant n'existe pas.
*/
@Transactional
public Optional<Preference> saveOrUpdatePreference(Integer personneId, Integer restaurantId, Integer note,
Boolean favori) {
Optional<Personne> personneOpt = personneRepository.findById(personneId);
Optional<Restaurant> restaurantOpt = restaurantRepository.findById(restaurantId);
if (personneOpt.isEmpty() || restaurantOpt.isEmpty()) {
return Optional.empty();
}
Personne personne = personneOpt.get();
Restaurant restaurant = restaurantOpt.get();
PreferencePK preferencePK = new PreferencePK(personne, restaurant);
Preference preference = preferenceRepository.findById(preferencePK)
.orElse(new Preference(preferencePK));
preference.setNote(note);
preference.setFavori(favori);
return Optional.of(preferenceRepository.save(preference));
}
}

View file

@ -0,0 +1,78 @@
package fr.vincent.ramiere.mangerautourdesimplonback.service;
import fr.vincent.ramiere.mangerautourdesimplonback.models.Restaurant;
import fr.vincent.ramiere.mangerautourdesimplonback.repository.RestaurantRepository;
import java.util.List;
import java.util.Optional;
import org.springframework.stereotype.Service;
import lombok.AllArgsConstructor;
/**
* Service pour la gestion des restaurants.
* Contient la logique métier liée aux opérations sur les restaurants.
*/
@Service
@AllArgsConstructor
public class RestaurantService {
private final RestaurantRepository restaurantRepository;
/**
* Récupère tous les restaurants.
* @return une liste de tous les restaurants.
*/
public List<Restaurant> getAllRestaurants() {
return restaurantRepository.findAll();
}
/**
* Récupère un restaurant par son identifiant.
* @param id L'identifiant du restaurant.
* @return un Optional contenant le restaurant s'il est trouvé, sinon un Optional vide.
*/
public Optional<Restaurant> getRestaurantById(Integer id) {
return restaurantRepository.findById(id);
}
/**
* Enregistre un nouveau restaurant.
* @param restaurant Le restaurant à enregistrer.
* @return le restaurant enregistré
*/
public Restaurant saveRestaurant(Restaurant restaurant) {
return restaurantRepository.save(restaurant);
}
/**
* Met à jour un restaurant existant.
* @param id L'identifiant du restaurant à mettre à jour.
* @param restaurantDetails Les nouvelles informations du restaurant.
* @return le restaurant mis à jour.
*/
public Optional<Restaurant> updateRestaurant(Integer id, Restaurant restaurantDetails) {
return restaurantRepository.findById(id)
.map(existingRestaurant -> {
existingRestaurant.setNom(restaurantDetails.getNom());
existingRestaurant.setAdresse(restaurantDetails.getAdresse());
existingRestaurant.setTelephone(restaurantDetails.getTelephone());
existingRestaurant.setAccesPMR(restaurantDetails.getAccesPMR());
existingRestaurant.setAEmporter(restaurantDetails.getAEmporter());
existingRestaurant.setSurPlace(restaurantDetails.getSurPlace());
existingRestaurant.setPrix(restaurantDetails.getPrix());
existingRestaurant.setLatitude(restaurantDetails.getLatitude());
existingRestaurant.setLongitude(restaurantDetails.getLongitude());
existingRestaurant.setWebsite(restaurantDetails.getWebsite());
return restaurantRepository.save(existingRestaurant);
});
}
/**
* Supprime un restaurant par son identifiant.
* @param id L'identifiant du restaurant à supprimer.
*/
public void deleteRestaurant(Integer id) {
restaurantRepository.deleteById(id);
}
}

View file

@ -0,0 +1,26 @@
spring.application.name=MangerAutourDeSimplonBack
# ===============================
# base de données MySQL
# ===============================
spring.datasource.url=jdbc:mysql://localhost:3306/simpleat?useSSL=false&zeroDateTimeBehavior=CONVERT_TO_NULL&serverTimezone=CET
spring.datasource.username=milane
spring.datasource.password=bbLouis1+Noe2
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# log
#logging.level.root=INFO
#logging.file=d:/data/log-hibernate-jpa.log
#logging.level.org.springframework.jdbc.core.JdbcTemplate=debug
# ===============================
# JPA / HIBERNATE
# ===============================
spring.jpa.show-sql=true
# spring.jpa.hibernate.ddl-auto=update
# spring.jpa.hibernate.ddl-auto=none
# spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
# ===============================
# Permet d'exécuter le data.sql
# ===============================
# spring.sql.init.mode=always
# spring.jpa.defer-datasource-initialization=true
# server.port=8081

View file

@ -0,0 +1,150 @@
insert into personne (nom, prenom, email, password) values ('Cardon', 'Thomas', 'thomas.cardon@gmail.com', '$2a$10$724bLjLyGOEKTBbHy.s3C.ETc.HuBnhEoCOuoO7.Ts7kyPbz6hkme');
insert into personne (nom, prenom, email, password) values ('Ramiere', 'Vincent', 'vincent.ramiere@gmail.com', '$2a$10$x6.VyO9PCMXSPsi5/m/Hze9xOP.IUdYbaye7cNFc.PfyuRuVLbG7e');
insert into personne (nom, prenom, email, password) values ('Verger', 'Romain', 'romain.verger@gmail.com', '$2a$10$oe/h0ZDpi6xFmTj8CvDMDe13hoEGv0DhHziY7GUatbb9ETcRw/8RG');
insert into personne (nom, prenom, email, password) values ('Ribardiere', 'Paul-Emmanuel', 'paul.ribardiere@gmail.com', '$2a$10$ArSe7TSUapTs9oGE8824fOv4PM6NJwu7mzcg72cSmHy0.ds585Oke');
insert into personne (nom, prenom, email, password) values ('Noris', 'William', 'william.noris@gmail.com', '$2a$10$6UbvPYBR2Ql09M1kgK0.HuoX3X1gxScmaOxI242EB2U7cXiylX3z.');
insert into personne (nom, prenom, email, password) values ('Harmand', 'Isabelle', 'isabelle.harmand@gmail.com', '$2a$10$at1EZABxNN32M5pCttV36OvzbUWx1myGisa36i3..vveO6j0Lk2Da');
insert into personne (nom, prenom, email, password) values ('Bajard', 'Blandine', 'blandine.bajard@gmail.com', '$2a$10$koeHn0Wg54MTc7iDb9hbsujy/Opfrhhu0uuhhBNA00rMXLeMpSl.m');
insert into personne (nom, prenom, email, password) values ('El Hiri', 'Sana', 'sana.el-hiri@gmail.com', '$2a$10$jBBk1RQrl5XOeSQYz3xdJ.Xl8hBIu/x3mqHpYyL10m6KjwfDsWGEW');
insert into personne (nom, prenom, email, password) values ('Lucas', 'Cecile', 'cecile.lucas@gmail.com', '$2a$10$HAUg8vlmtvS/YphJzWAPfuGJdLd/3SeSZ48JVvybK6Wh/AY3QirGG');
insert into personne (nom, prenom, email, password) values ('Kerkeb', 'Mohamed', 'mohamed.kerkeb@gmail.com', '$2a$10$BpWZMlDLKXA2qGMo9t6cxeS6G/6mvjdsdN4nIUOAjE2sr/0sJNiCW');
insert into personne (nom, prenom, email, password) values ('Rinquin', 'Aline', 'aline.rinquin@gmail.com', '$2a$10$FJKDTcipj/8PKos7AcCnZ.HHAmdDh6EjknpUWPLDcVfSXWPcHZI5O');
insert into personne (nom, prenom, email, password) values ('Keddar', 'Noreddine', 'noredinne.keddar@gmail.com', '$2a$10$5iowOIUv72hFVsT9B8K.nerA3YTPAyyUiqOAwKR55ZZcpiHT96LhG');
insert into personne (nom, prenom, email, password) values ('Tomczyk', 'Julian', 'julian.tomczyk@gmail.com', '$2a$10$vJ89S5CXjtO01NsYrwfLyudU/p2Cz1QNDm1dGUkfKD60Z23HLZM2.');
insert into personne (nom, prenom, email, password) values ('Mjid', 'Hedi', 'hedi.mjid@gmail.com', '$10$vJ89S5CXjtO01NsYrwfLyudU/p2Cz1QNDm1dGUkfKD60Z23HLZM2.');
insert into personne (nom, prenom, email, password) values ('BIDEN', 'Joe', 'joe@biden.fr', '$2a$10$NNfAnATNZf/MzIjrUFi5K.xqWizxv1Hil4/PyRAabKWK5DxsLPE6.');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (1,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (2,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (3,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (4,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (5,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (6,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (7,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (8,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (9,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (10,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (11,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (12,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (13,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (14,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (15,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (15,'ROLE_READER');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'Le Jardin de Montreuil','1 Rue du Sergent Godefroy, 93100 Montreuil','01 41 63 92 66','http://www.lejardindemontreuil.fr/','48.853391599999995','2.4347358');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,0,'La CaVe','45 Rue de Paris, 93100 Montreuil','01 42 87 09 48','http://www.lacaveestrestaurant.com/','48.8576152','2.4342148999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,0,1,1,'Villa 9 Trois','71 Rue Hoche, 93100 Montreuil','01 48 58 17 37','http://www.villa9trois.com/','48.8638352','2.4331966');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'L''Amourette','54 Rue Robespierre, 93100 Montreuil','01 48 59 99 94','http://www.lamourette.fr/','48.853121599999994','2.4234494');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Maison Montreuil','31 Rue du Capitaine Dreyfus, 93100 Montreuil','09 87 18 18 81','https://www.lamaisonmontreuil.com/','48.859359700000006','2.4399254999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'le poulet en feu','63 Rue Danton, 93100 Montreuil','09 87 51 10 90','https://www.pouletenfeu.fr/','48.8653553','2.4514297');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'Les Tonneaux','62 Rue Robespierre, 93100 Montreuil','01 48 58 95 01',NULL,'48.85205','2.4238472');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Les Pianos','26 Rue Robespierre, 93100 Montreuil','09 63 53 85 17','https://www.facebook.com/lespianosmontreuilofficiel/','48.854841799999996','2.4230319');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'M I M','113 Rue Marceau, 93100 Montreuil','01 43 63 31 13',NULL,'48.849849999999996','2.4265312999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'Le Gévaudan','1 Bd Rouget de Lisle, 93100 Montreuil','01 42 87 42 83',NULL,'48.8617445','2.4412374');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Restaurant Filippo','6 Bd Chanzy, 93100 Montreuil','01 48 18 08 16',NULL,'48.8583964','2.4349743');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,0,1,1,'Le Mange Disc','50 Rue de Romainville, 93100 Montreuil','09 83 54 60 27','https://m.facebook.com/Le-Mange-Disc-102557926519195/?locale2=fr_FR','48.8658457','2.4466363');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'Restaurant El Kahina','227 Rue de Paris, 93100 Montreuil','01 48 70 95 46',NULL,'48.8550124','2.4195686');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (NULL,1,1,1,'La Baraka','262 Rue de Paris, 93100 Montreuil','01 42 87 19 27','http://www.labarakamontreuil.fr/?lang=fr','48.8549268','2.4177603999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Bottega Della Pizza','34 Bd Rouget de Lisle, 93100 Montreuil','01 43 63 04 35','http://www.labottegadellapizza.fr/','48.860204200000005','2.4387626');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,NULL,'Restaurant de la Paix','11 Rue Armand Carrel, 93100 Montreuil','01 73 55 21 72',NULL,'48.853764','2.4177003999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Fontaine Bar Restaurant','47 Rue Armand Carrel, 93100 Montreuil','01 48 70 08 84','https://www.facebook.com/pages/la-fontaine-de-montreuil-Restaurant/213852528659590?fref=ts','48.8512132','2.4183881');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,NULL,'La Cantine Arkose Montreuil','33 Rue du Progrès, 93100 Montreuil','01 49 88 45 07','https://lacantine.arkose.com/montreuil/','48.8516335','2.419278');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,NULL,'Kashmir Café.','14 Rue du Capitaine Dreyfus, 93100 Montreuil','01 43 63 33 86','http://www.kashmircafe.fr/','48.8582843','2.4378471999999998');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'W Lounge','37 Rue de Valmy, 93100 Montreuil','01 48 37 61 17','http://wlounge-montreuil.com/?utm_source=gmb&utm_medium=referral','48.8507208','2.4187186');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'L''Oasis','171 Rue de Paris, 93100 Montreuil','01 48 70 70 52','https://loasis-montreuil.fr/fr','48.855555599999995','2.4230556');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Obrigado','8 Av. de la Prte de Montreuil, 75020 Paris','09 84 58 24 21','http://obrigado.paris/','48.8534995','2.4118692');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Le Xanthos','30 Rue du Capitaine Dreyfus, 93100 Montreuil','01 55 86 26 77',NULL,'48.858785','2.4388468999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Thé Vert','43 Rue du Capitaine Dreyfus, 93100 Montreuil','01 42 87 79 57','http://www.thevertenligne.fr/','48.8596741','2.4405049');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Gramophone','1 Rue Pépin, 93100 Montreuil','01 49 88 74 56','http://www.restaurantlegramophone.com/','48.8641275','2.4449753');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,NULL,'La Grosse Mignonne','56 Rue Carnot, 93100 Montreuil','01 42 87 54 51','https://www.facebook.com/LaGrosseMignonne','48.855322','2.4413144');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'La Galetiere','126 Rue de Paris, 93100 Montreuil','01 42 87 47 32','http://lagaletiere.eatbu.com/','48.8563999','2.4263293');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,1,'Le Mamaju','36 Rue de Lagny, 93100 Montreuil','01 83 74 02 26','https://mamaju-restaurant-montreuil.eatbu.com/','48.8490247','2.4265491');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Le Pizzo','15 Rue du Capitaine Dreyfus, 93100 Montreuil','09 88 46 71 29',NULL,'48.8588721','2.4385882999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'L''Olivier','211 Rue de Paris, 93100 Montreuil','06 47 82 43 41',NULL,'48.855081','2.4203481');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Louise','27 Rue du Capitaine Dreyfus, 93100 Montreuil','06 75 32 56 81','https://instagram.com/cafelouisemontreuil?utm_medium=copy_link','48.859237','2.4394462');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'Ô Bar Lié','16 Rue de la République, 93100 Montreuil','01 48 58 71 95','http://www.obarlie.com/','48.8531155','2.4209562');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'Gabycook','27 Rue du Progrès, 93100 Montreuil',NULL,NULL,'48.851772999999994','2.4202114');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'L''ALEMBERT','268 Rue de Paris, 93100 Montreuil','01 42 87 29 61','http://www.lalembert.fr/','48.8549126','2.4174881999999998');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Gujarat','35 Bd Paul Vaillant Couturier, 93100 Montreuil','01 48 58 77 16','http://restaurantgujarat.fr/','48.865111','2.443053');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'L''effiloché Montreuil','5 Rue du Centenaire, 93100 Montreuil',NULL,NULL,'48.8579636','2.4270348');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Famille-CMC','6 Av. Pasteur, 93100 Montreuil',NULL,NULL,'48.862999300000006','2.441328');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'O''Villagio','28 Rue du Capitaine Dreyfus, 93100 Montreuil','01 57 42 63 82','https://ovillaggio93.wixsite.com/o-villaggio','48.858722','2.4386695');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Brasserie des Laitières','38 Rue de Lagny, 93100 Montreuil','01 48 51 50 70','https://le-bl.metro.biz/','48.8490399','2.4262376999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'LE HAVANE','248 Rue de Paris, 93100 Montreuil','01 48 57 17 23',NULL,'48.855091599999994','2.4187965');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Chez Carla','6 Rue Claude Bernard, 93100 Montreuil','01 48 18 00 53','http://www.chezcarla.fr/','48.8699343','2.4507599');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'2 Bd Chanzy, 93100 Montreuil','48.85847716355682','2.4358987134859515','Le Sultan',1,1,'0148180475','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'19 Av. de la Résistance, 93100 Montreuil','48.85945630168561','2.436446504305728','Monoprix',1,0,'0141720580','monoprix.fr');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,' 20, Avenue De La Resistance','48.859572881535506','2.43723868323233','Fournil du Perche',1,0,'','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'Place Jacques Duclot','48.85763987017326','2.4357752878301313','Street Wok',1,0,'','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'18 Bd Rouget de Lisle, 93100 Montreuil','48.86127664908431','2.440266447738863','La Casa',2,1,'0187004594','www.lacasa-pizza.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'31 Rue Franklin, 93100 Montreuil','48.86373425237411','2.444081609130601','New Kyoto',2,1,'0142877365','https://newkyoto93.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'86 Bd Henri Barbusse, 93100 Montreuil','48.868535950518506','2.4415787173758625','Cosa C E Da Mangiare',2,1,'0148510777','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'8 Av. Walwein, 93100 Montreuil','48.86227215595597','2.443526611143298','Bamboo & Sum',2,1,'0987366393','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'78 Av. de la Résistance, 93100 Montreuil','48.86260826926845','2.4370469579964404','O Bon Coin',1,1,'0953523586','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'14 Rue du Capitaine Dreyfus, 93100 Montreuil','48.85828992238344','2.437848545198565','Kashmir Café',2,1,'0143633386','http://www.kashmircafe.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'45 Bd Paul Vaillant Couturier, 93100 Montreuil','48.86615467929139','2.4442899980905284','Le Marrakech',3,1,'0148589402','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'7 Bd Rouget de Lisle, 93100 Montreuil','48.86133951184523','2.4407883330629856','BOLKIRI',2,1,'0184671708','http://bolkiri.fr/');
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 9, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 1, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 9, 3, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (4, 6, 2, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 5, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 10, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 3, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 7, 1, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (4, 2, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 3, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 10, 4, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 3, 4, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 3, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 8, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 15, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (8, 15, 3, false);
insert into type (id_type, libelle) values (1, 'Kebab');
insert into type (id_type, libelle) values (2, 'Supermarché');
insert into type (id_type, libelle) values (3, 'Boulangerie');
insert into type (id_type, libelle) values (4, 'Thaï');
insert into type (id_type, libelle) values (5, 'Français');
insert into type (id_type, libelle) values (6, 'Pizza');
insert into type (id_type, libelle) values (7, 'Brasserie');
insert into type (id_type, libelle) values (8, 'Americain');
insert into type (id_type, libelle) values (9, 'Japonais');
insert into type (id_type, libelle) values (11, 'Italien');
insert into type (id_type, libelle) values (13, 'Chinois');
insert into type (id_type, libelle) values (15, 'Hamburger');
insert into type (id_type, libelle) values (16, 'Indien');
insert into type (id_type, libelle) values (17, 'Marocain');
insert into type (id_type, libelle) values (20, 'Vietnamien');
insert into type (id_type, libelle) values (21, 'Bistrot');
insert into type (id_type, libelle) values (22, 'Poulet');
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (1,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (2,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (3,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (4,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (5,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (6,8);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (6,22);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (7,7);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (8,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (9,21);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (10,7);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (42,1);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (43,2);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (44,3);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (45,4);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (46,6);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (47,9);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (48,11);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (49,13);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (50,15);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (51,16);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (52,17);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (53,20);

View file

@ -0,0 +1,230 @@
DROP SCHEMA IF EXISTS `simpleat`;
CREATE SCHEMA IF NOT EXISTS `simpleat` DEFAULT CHARACTER SET utf8mb4 ;
USE `simpleat` ;
CREATE TABLE IF NOT EXISTS `simpleat`.`personne` (
`id_personne` INT NOT NULL AUTO_INCREMENT,
`email` VARCHAR(255) NOT NULL,
`nom` VARCHAR(255) NOT NULL,
`password` VARCHAR(255) NOT NULL,
`prenom` VARCHAR(255) NOT NULL,
PRIMARY KEY (`id_personne`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`personne_role_list` (
`personne_id_personne` INT NOT NULL,
`role_list` VARCHAR(255) NULL DEFAULT NULL,
INDEX (`personne_id_personne`),
FOREIGN KEY (`personne_id_personne`)
REFERENCES `simpleat`.`personne` (`id_personne`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`restaurant` (
`id_restau` INT NOT NULL AUTO_INCREMENT,
`a_emporter` BOOLEAN NULL DEFAULT NULL,
`accespmr` BOOLEAN NULL DEFAULT NULL,
`adresse` VARCHAR(255) NOT NULL,
`latitude` VARCHAR(255) NOT NULL,
`longitude` VARCHAR(255) NOT NULL,
`nom` VARCHAR(255) NOT NULL,
`prix` INT NULL DEFAULT NULL,
`sur_place` BOOLEAN NULL DEFAULT NULL,
`telephone` VARCHAR(255) NULL DEFAULT NULL,
`website` VARCHAR(255) NULL DEFAULT NULL,
PRIMARY KEY (`id_restau`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`preference` (
`favori` BOOLEAN NULL DEFAULT NULL,
`note` INT NULL DEFAULT NULL,
`restau_id_restau` INT NOT NULL,
`personne_id_personne` INT NOT NULL,
PRIMARY KEY (`personne_id_personne`, `restau_id_restau`),
INDEX (`restau_id_restau`),
INDEX (`personne_id_personne`),
FOREIGN KEY (`restau_id_restau`)
REFERENCES `simpleat`.`restaurant` (`id_restau`),
FOREIGN KEY (`personne_id_personne`)
REFERENCES `simpleat`.`personne` (`id_personne`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`reservation` (
`date_resa` DATETIME NOT NULL,
`nb_personne` INT NOT NULL,
`id_restau` INT NOT NULL,
`id_personne` INT NOT NULL,
PRIMARY KEY (`date_resa`, `id_personne`, `id_restau`),
INDEX (`id_restau`),
INDEX (`id_personne`),
FOREIGN KEY (`id_restau`)
REFERENCES `simpleat`.`restaurant` (`id_restau`),
FOREIGN KEY (`id_personne`)
REFERENCES `simpleat`.`personne` (`id_personne`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`type` (
`id_type` INT NOT NULL AUTO_INCREMENT,
`libelle` VARCHAR(255) NOT NULL,
PRIMARY KEY (`id_type`)
);
CREATE TABLE IF NOT EXISTS `simpleat`.`type_restau` (
`id_restau` INT NOT NULL,
`id_type` INT NOT NULL,
INDEX (`id_type`) ,
INDEX (`id_restau` ) ,
FOREIGN KEY (`id_type`)
REFERENCES `simpleat`.`type` (`id_type`),
FOREIGN KEY (`id_restau`)
REFERENCES `simpleat`.`restaurant` (`id_restau`)
);
insert into personne (nom, prenom, email, password) values ('Cardon', 'Thomas', 'thomas.cardon@gmail.com', '$2a$10$724bLjLyGOEKTBbHy.s3C.ETc.HuBnhEoCOuoO7.Ts7kyPbz6hkme');
insert into personne (nom, prenom, email, password) values ('Ramiere', 'Vincent', 'vincent.ramiere@gmail.com', '$2a$10$x6.VyO9PCMXSPsi5/m/Hze9xOP.IUdYbaye7cNFc.PfyuRuVLbG7e');
insert into personne (nom, prenom, email, password) values ('Verger', 'Romain', 'romain.verger@gmail.com', '$2a$10$oe/h0ZDpi6xFmTj8CvDMDe13hoEGv0DhHziY7GUatbb9ETcRw/8RG');
insert into personne (nom, prenom, email, password) values ('Ribardiere', 'Paul-Emmanuel', 'paul.ribardiere@gmail.com', '$2a$10$ArSe7TSUapTs9oGE8824fOv4PM6NJwu7mzcg72cSmHy0.ds585Oke');
insert into personne (nom, prenom, email, password) values ('Noris', 'William', 'william.noris@gmail.com', '$2a$10$6UbvPYBR2Ql09M1kgK0.HuoX3X1gxScmaOxI242EB2U7cXiylX3z.');
insert into personne (nom, prenom, email, password) values ('Harmand', 'Isabelle', 'isabelle.harmand@gmail.com', '$2a$10$at1EZABxNN32M5pCttV36OvzbUWx1myGisa36i3..vveO6j0Lk2Da');
insert into personne (nom, prenom, email, password) values ('Bajard', 'Blandine', 'blandine.bajard@gmail.com', '$2a$10$koeHn0Wg54MTc7iDb9hbsujy/Opfrhhu0uuhhBNA00rMXLeMpSl.m');
insert into personne (nom, prenom, email, password) values ('El Hiri', 'Sana', 'sana.el-hiri@gmail.com', '$2a$10$jBBk1RQrl5XOeSQYz3xdJ.Xl8hBIu/x3mqHpYyL10m6KjwfDsWGEW');
insert into personne (nom, prenom, email, password) values ('Lucas', 'Cecile', 'cecile.lucas@gmail.com', '$2a$10$HAUg8vlmtvS/YphJzWAPfuGJdLd/3SeSZ48JVvybK6Wh/AY3QirGG');
insert into personne (nom, prenom, email, password) values ('Kerkeb', 'Mohamed', 'mohamed.kerkeb@gmail.com', '$2a$10$BpWZMlDLKXA2qGMo9t6cxeS6G/6mvjdsdN4nIUOAjE2sr/0sJNiCW');
insert into personne (nom, prenom, email, password) values ('Rinquin', 'Aline', 'aline.rinquin@gmail.com', '$2a$10$FJKDTcipj/8PKos7AcCnZ.HHAmdDh6EjknpUWPLDcVfSXWPcHZI5O');
insert into personne (nom, prenom, email, password) values ('Keddar', 'Noreddine', 'noredinne.keddar@gmail.com', '$2a$10$5iowOIUv72hFVsT9B8K.nerA3YTPAyyUiqOAwKR55ZZcpiHT96LhG');
insert into personne (nom, prenom, email, password) values ('Tomczyk', 'Julian', 'julian.tomczyk@gmail.com', '$2a$10$vJ89S5CXjtO01NsYrwfLyudU/p2Cz1QNDm1dGUkfKD60Z23HLZM2.');
insert into personne (nom, prenom, email, password) values ('Mjid', 'Hedi', 'hedi.mjid@gmail.com', '$10$vJ89S5CXjtO01NsYrwfLyudU/p2Cz1QNDm1dGUkfKD60Z23HLZM2.');
insert into personne (nom, prenom, email, password) values ('BIDEN', 'Joe', 'joe@biden.fr', '$2a$10$NNfAnATNZf/MzIjrUFi5K.xqWizxv1Hil4/PyRAabKWK5DxsLPE6.');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (1,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (2,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (3,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (4,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (5,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (6,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (7,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (8,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (9,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (10,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (11,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (12,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (13,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (14,'ROLE_READER');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (15,'ROLE_ADMIN');
INSERT INTO `personne_role_list` (`personne_id_personne`,`role_list`) VALUES (15,'ROLE_READER');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'Le Jardin de Montreuil','1 Rue du Sergent Godefroy, 93100 Montreuil','01 41 63 92 66','http://www.lejardindemontreuil.fr/','48.853391599999995','2.4347358');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,0,'La CaVe','45 Rue de Paris, 93100 Montreuil','01 42 87 09 48','http://www.lacaveestrestaurant.com/','48.8576152','2.4342148999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,0,1,1,'Villa 9 Trois','71 Rue Hoche, 93100 Montreuil','01 48 58 17 37','http://www.villa9trois.com/','48.8638352','2.4331966');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'L''Amourette','54 Rue Robespierre, 93100 Montreuil','01 48 59 99 94','http://www.lamourette.fr/','48.853121599999994','2.4234494');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Maison Montreuil','31 Rue du Capitaine Dreyfus, 93100 Montreuil','09 87 18 18 81','https://www.lamaisonmontreuil.com/','48.859359700000006','2.4399254999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'le poulet en feu','63 Rue Danton, 93100 Montreuil','09 87 51 10 90','https://www.pouletenfeu.fr/','48.8653553','2.4514297');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'Les Tonneaux','62 Rue Robespierre, 93100 Montreuil','01 48 58 95 01',NULL,'48.85205','2.4238472');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Les Pianos','26 Rue Robespierre, 93100 Montreuil','09 63 53 85 17','https://www.facebook.com/lespianosmontreuilofficiel/','48.854841799999996','2.4230319');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,1,'M I M','113 Rue Marceau, 93100 Montreuil','01 43 63 31 13',NULL,'48.849849999999996','2.4265312999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'Le Gévaudan','1 Bd Rouget de Lisle, 93100 Montreuil','01 42 87 42 83',NULL,'48.8617445','2.4412374');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Restaurant Filippo','6 Bd Chanzy, 93100 Montreuil','01 48 18 08 16',NULL,'48.8583964','2.4349743');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,0,1,1,'Le Mange Disc','50 Rue de Romainville, 93100 Montreuil','09 83 54 60 27','https://m.facebook.com/Le-Mange-Disc-102557926519195/?locale2=fr_FR','48.8658457','2.4466363');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'Restaurant El Kahina','227 Rue de Paris, 93100 Montreuil','01 48 70 95 46',NULL,'48.8550124','2.4195686');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (NULL,1,1,1,'La Baraka','262 Rue de Paris, 93100 Montreuil','01 42 87 19 27','http://www.labarakamontreuil.fr/?lang=fr','48.8549268','2.4177603999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Bottega Della Pizza','34 Bd Rouget de Lisle, 93100 Montreuil','01 43 63 04 35','http://www.labottegadellapizza.fr/','48.860204200000005','2.4387626');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,NULL,'Restaurant de la Paix','11 Rue Armand Carrel, 93100 Montreuil','01 73 55 21 72',NULL,'48.853764','2.4177003999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Fontaine Bar Restaurant','47 Rue Armand Carrel, 93100 Montreuil','01 48 70 08 84','https://www.facebook.com/pages/la-fontaine-de-montreuil-Restaurant/213852528659590?fref=ts','48.8512132','2.4183881');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,NULL,'La Cantine Arkose Montreuil','33 Rue du Progrès, 93100 Montreuil','01 49 88 45 07','https://lacantine.arkose.com/montreuil/','48.8516335','2.419278');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,NULL,'Kashmir Café.','14 Rue du Capitaine Dreyfus, 93100 Montreuil','01 43 63 33 86','http://www.kashmircafe.fr/','48.8582843','2.4378471999999998');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'W Lounge','37 Rue de Valmy, 93100 Montreuil','01 48 37 61 17','http://wlounge-montreuil.com/?utm_source=gmb&utm_medium=referral','48.8507208','2.4187186');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'L''Oasis','171 Rue de Paris, 93100 Montreuil','01 48 70 70 52','https://loasis-montreuil.fr/fr','48.855555599999995','2.4230556');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Obrigado','8 Av. de la Prte de Montreuil, 75020 Paris','09 84 58 24 21','http://obrigado.paris/','48.8534995','2.4118692');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Le Xanthos','30 Rue du Capitaine Dreyfus, 93100 Montreuil','01 55 86 26 77',NULL,'48.858785','2.4388468999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Thé Vert','43 Rue du Capitaine Dreyfus, 93100 Montreuil','01 42 87 79 57','http://www.thevertenligne.fr/','48.8596741','2.4405049');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Gramophone','1 Rue Pépin, 93100 Montreuil','01 49 88 74 56','http://www.restaurantlegramophone.com/','48.8641275','2.4449753');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,0,1,NULL,'La Grosse Mignonne','56 Rue Carnot, 93100 Montreuil','01 42 87 54 51','https://www.facebook.com/LaGrosseMignonne','48.855322','2.4413144');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'La Galetiere','126 Rue de Paris, 93100 Montreuil','01 42 87 47 32','http://lagaletiere.eatbu.com/','48.8563999','2.4263293');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (3,1,1,1,'Le Mamaju','36 Rue de Lagny, 93100 Montreuil','01 83 74 02 26','https://mamaju-restaurant-montreuil.eatbu.com/','48.8490247','2.4265491');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Le Pizzo','15 Rue du Capitaine Dreyfus, 93100 Montreuil','09 88 46 71 29',NULL,'48.8588721','2.4385882999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'L''Olivier','211 Rue de Paris, 93100 Montreuil','06 47 82 43 41',NULL,'48.855081','2.4203481');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Louise','27 Rue du Capitaine Dreyfus, 93100 Montreuil','06 75 32 56 81','https://instagram.com/cafelouisemontreuil?utm_medium=copy_link','48.859237','2.4394462');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'Ô Bar Lié','16 Rue de la République, 93100 Montreuil','01 48 58 71 95','http://www.obarlie.com/','48.8531155','2.4209562');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,NULL,'Gabycook','27 Rue du Progrès, 93100 Montreuil',NULL,NULL,'48.851772999999994','2.4202114');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'L''ALEMBERT','268 Rue de Paris, 93100 Montreuil','01 42 87 29 61','http://www.lalembert.fr/','48.8549126','2.4174881999999998');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Gujarat','35 Bd Paul Vaillant Couturier, 93100 Montreuil','01 48 58 77 16','http://restaurantgujarat.fr/','48.865111','2.443053');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'L''effiloché Montreuil','5 Rue du Centenaire, 93100 Montreuil',NULL,NULL,'48.8579636','2.4270348');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'Famille-CMC','6 Av. Pasteur, 93100 Montreuil',NULL,NULL,'48.862999300000006','2.441328');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,NULL,'O''Villagio','28 Rue du Capitaine Dreyfus, 93100 Montreuil','01 57 42 63 82','https://ovillaggio93.wixsite.com/o-villaggio','48.858722','2.4386695');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'La Brasserie des Laitières','38 Rue de Lagny, 93100 Montreuil','01 48 51 50 70','https://le-bl.metro.biz/','48.8490399','2.4262376999999997');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (1,1,1,1,'LE HAVANE','248 Rue de Paris, 93100 Montreuil','01 48 57 17 23',NULL,'48.855091599999994','2.4187965');
INSERT INTO restaurant(prix,a_emporter,sur_place,accespmr,nom,adresse,telephone,website,latitude,longitude) VALUES (2,1,1,1,'Chez Carla','6 Rue Claude Bernard, 93100 Montreuil','01 48 18 00 53','http://www.chezcarla.fr/','48.8699343','2.4507599');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'2 Bd Chanzy, 93100 Montreuil','48.85847716355682','2.4358987134859515','Le Sultan',1,1,'0148180475','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'19 Av. de la Résistance, 93100 Montreuil','48.85945630168561','2.436446504305728','Monoprix',1,0,'0141720580','monoprix.fr');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,' 20, Avenue De La Resistance','48.859572881535506','2.43723868323233','Fournil du Perche',1,0,'','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'Place Jacques Duclot','48.85763987017326','2.4357752878301313','Street Wok',1,0,'','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'18 Bd Rouget de Lisle, 93100 Montreuil','48.86127664908431','2.440266447738863','La Casa',2,1,'0187004594','www.lacasa-pizza.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'31 Rue Franklin, 93100 Montreuil','48.86373425237411','2.444081609130601','New Kyoto',2,1,'0142877365','https://newkyoto93.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'86 Bd Henri Barbusse, 93100 Montreuil','48.868535950518506','2.4415787173758625','Cosa C E Da Mangiare',2,1,'0148510777','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,1,'8 Av. Walwein, 93100 Montreuil','48.86227215595597','2.443526611143298','Bamboo & Sum',2,1,'0987366393','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'78 Av. de la Résistance, 93100 Montreuil','48.86260826926845','2.4370469579964404','O Bon Coin',1,1,'0953523586','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'14 Rue du Capitaine Dreyfus, 93100 Montreuil','48.85828992238344','2.437848545198565','Kashmir Café',2,1,'0143633386','http://www.kashmircafe.fr/');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'45 Bd Paul Vaillant Couturier, 93100 Montreuil','48.86615467929139','2.4442899980905284','Le Marrakech',3,1,'0148589402','');
INSERT INTO restaurant (`a_emporter`,`accespmr`,`adresse`,`latitude`,`longitude`,`nom`,`prix`,`sur_place`,`telephone`,`website`) VALUES (1,NULL,'7 Bd Rouget de Lisle, 93100 Montreuil','48.86133951184523','2.4407883330629856','BOLKIRI',2,1,'0184671708','http://bolkiri.fr/');
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 9, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 1, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 9, 3, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (4, 6, 2, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 5, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 10, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 3, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 7, 1, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (4, 2, 1, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (1, 3, 5, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 10, 4, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (3, 3, 4, true);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 3, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (2, 8, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (5, 15, 3, false);
insert into preference (restau_id_restau, personne_id_personne, note, favori) values (8, 15, 3, false);
insert into type (id_type, libelle) values (1, 'Kebab');
insert into type (id_type, libelle) values (2, 'Supermarché');
insert into type (id_type, libelle) values (3, 'Boulangerie');
insert into type (id_type, libelle) values (4, 'Thaï');
insert into type (id_type, libelle) values (5, 'Français');
insert into type (id_type, libelle) values (6, 'Pizza');
insert into type (id_type, libelle) values (7, 'Brasserie');
insert into type (id_type, libelle) values (8, 'Americain');
insert into type (id_type, libelle) values (9, 'Japonais');
insert into type (id_type, libelle) values (11, 'Italien');
insert into type (id_type, libelle) values (13, 'Chinois');
insert into type (id_type, libelle) values (15, 'Hamburger');
insert into type (id_type, libelle) values (16, 'Indien');
insert into type (id_type, libelle) values (17, 'Marocain');
insert into type (id_type, libelle) values (20, 'Vietnamien');
insert into type (id_type, libelle) values (21, 'Bistrot');
insert into type (id_type, libelle) values (22, 'Poulet');
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (1,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (2,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (3,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (4,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (5,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (6,8);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (6,22);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (7,7);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (8,5);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (9,21);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (10,7);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (42,1);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (43,2);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (44,3);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (45,4);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (46,6);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (47,9);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (48,11);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (49,13);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (50,15);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (51,16);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (52,17);
INSERT INTO type_restau (`id_restau`,`id_type`) VALUES (53,20);