Files
geo/cron/init_batiments.sql
pierre 2f5946a184 feat: Version 3.5.2 - Configuration Stripe et gestion des immeubles
- Configuration complète Stripe pour les 3 environnements (DEV/REC/PROD)
  * DEV: Clés TEST Pierre (mode test)
  * REC: Clés TEST Client (mode test)
  * PROD: Clés LIVE Client (mode live)
- Ajout de la gestion des bases de données immeubles/bâtiments
  * Configuration buildings_database pour DEV/REC/PROD
  * Service BuildingService pour enrichissement des adresses
- Optimisations pages et améliorations ergonomie
- Mises à jour des dépendances Composer
- Nettoyage des fichiers obsolètes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 18:26:27 +01:00

74 lines
2.0 KiB
SQL

-- Script d'initialisation de la base batiments
-- À exécuter avant le premier import
-- Création de la base de données
CREATE DATABASE IF NOT EXISTS batiments
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;
USE batiments;
-- Table d'historique des imports
CREATE TABLE IF NOT EXISTS _histo (
id INT AUTO_INCREMENT PRIMARY KEY,
date_import DATETIME NOT NULL,
dept VARCHAR(5) NOT NULL,
nb_batiments INT DEFAULT 0,
INDEX idx_date_import (date_import),
INDEX idx_dept (dept)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- Vue consolidée de tous les départements (à créer après les imports)
-- Cette vue sera créée dynamiquement après l'import de tous les départements
-- Exemple de requête pour créer la vue après imports :
/*
CREATE OR REPLACE VIEW v_batiments_france AS
SELECT * FROM bat01
UNION ALL SELECT * FROM bat02
UNION ALL SELECT * FROM bat03
-- ... etc pour tous les départements
;
*/
-- Index supplémentaires recommandés après import complet
-- À exécuter sur chaque table batXX après import :
/*
ALTER TABLE bat01 ADD INDEX idx_nb_log (nb_log);
ALTER TABLE bat01 ADD INDEX idx_nb_niv (nb_niv_max);
ALTER TABLE bat01 ADD INDEX idx_coords (latitude, longitude);
*/
-- Permissions pour l'utilisateur osm_maj_user
GRANT ALL PRIVILEGES ON batiments.* TO 'osm_maj_user'@'localhost';
GRANT ALL PRIVILEGES ON batiments.* TO 'osm_maj_user'@'%';
FLUSH PRIVILEGES;
-- Statistiques globales
CREATE OR REPLACE VIEW v_stats_imports AS
SELECT
dept,
MAX(date_import) as derniere_import,
SUM(nb_batiments) as total_batiments
FROM _histo
GROUP BY dept
ORDER BY dept;
-- Exemple de jointure avec la base adresses
/*
-- Depuis la base batiments, joindre avec la base adresses :
SELECT
b.batiment_groupe_id,
b.nb_log,
b.nb_niv_max,
b.nb_pdl_res_princ as nb_compteurs,
a.numero,
a.rue,
a.cp,
a.ville
FROM bat01 b
JOIN adresses.cp01 a ON b.cle_interop_adr = a.id
WHERE b.nb_log > 0
AND b.nb_pdl_res_princ > 0;
*/