- Ajout système complet de gestion des secteurs avec contours géographiques - Import des contours départementaux depuis GeoJSON - API REST pour la gestion des secteurs (/api/sectors) - Service de géolocalisation pour déterminer les secteurs - Migration base de données avec tables x_departements_contours et sectors_adresses - Interface Flutter pour visualisation et gestion des secteurs - Ajout thème sombre dans l'application - Corrections diverses et optimisations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
55 lines
2.2 KiB
SQL
55 lines
2.2 KiB
SQL
-- Script pour intégrer les données de x_departements_contours dans x_departements
|
|
-- Ce script ajoute une colonne contour à x_departements et y copie les données
|
|
-- Note : Les colonnes bbox_* ne sont pas migrées car elles ne sont pas utilisées dans l'API
|
|
|
|
-- 1. Ajouter la colonne contour à x_departements si elle n'existe pas déjà
|
|
ALTER TABLE x_departements
|
|
ADD COLUMN IF NOT EXISTS contour GEOMETRY DEFAULT NULL
|
|
COMMENT 'Contour géographique du département'
|
|
AFTER dept_limitrophes;
|
|
|
|
-- 2. Mettre à jour x_departements avec les contours depuis x_departements_contours
|
|
-- On copie directement les contours non NULL
|
|
UPDATE x_departements d
|
|
INNER JOIN x_departements_contours dc ON d.code = dc.code_dept
|
|
SET d.contour = dc.contour
|
|
WHERE dc.contour IS NOT NULL;
|
|
|
|
-- 3. Vérifier les départements sans contour (hors DOM-TOM et Corse historique)
|
|
SELECT
|
|
d.code,
|
|
d.libelle,
|
|
CASE
|
|
WHEN d.code IN ('20', '971', '972', '973', '974', '975', '976') THEN 'DOM-TOM ou Corse historique - Normal'
|
|
WHEN d.contour IS NULL THEN 'Pas de contour'
|
|
ELSE 'OK'
|
|
END as statut
|
|
FROM x_departements d
|
|
WHERE d.contour IS NULL
|
|
AND d.code NOT IN ('20', '971', '972', '973', '974', '975', '976')
|
|
ORDER BY d.code;
|
|
|
|
-- 4. Créer l'index spatial
|
|
-- Les valeurs NULL sont autorisées dans un index spatial MySQL
|
|
ALTER TABLE x_departements
|
|
ADD SPATIAL INDEX idx_contour (contour);
|
|
|
|
-- 5. Vérifier le nombre de départements mis à jour
|
|
SELECT
|
|
COUNT(*) as total_departements,
|
|
SUM(CASE WHEN contour IS NOT NULL THEN 1 ELSE 0 END) as departements_avec_contour,
|
|
SUM(CASE WHEN contour IS NULL THEN 1 ELSE 0 END) as departements_sans_contour
|
|
FROM x_departements;
|
|
|
|
-- 6. Lister les départements qui n'ont pas de contour (s'il y en a)
|
|
SELECT code, libelle
|
|
FROM x_departements
|
|
WHERE contour IS NULL
|
|
ORDER BY code;
|
|
|
|
-- 7. Optionnel : Après vérification, vous pouvez supprimer la table x_departements_contours
|
|
-- ATTENTION : Ne décommentez cette ligne qu'après avoir vérifié que toutes les données sont bien migrées
|
|
-- DROP TABLE IF EXISTS x_departements_contours;
|
|
|
|
-- 8. Mettre à jour les statistiques de la table pour optimiser les requêtes spatiales
|
|
ANALYZE TABLE x_departements; |