Skip to content

Commit

Permalink
Merge pull request #149 from PnEcrins/develop
Browse files Browse the repository at this point in the history
Preparation 1.8.1
  • Loading branch information
camillemonchicourt authored Jan 5, 2017
2 parents 8cbd567 + 6163b1a commit 747dfa5
Show file tree
Hide file tree
Showing 4 changed files with 76 additions and 8 deletions.
6 changes: 1 addition & 5 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,5 +1 @@
<<<<<<< HEAD
1.8.1dev
=======
1.8.1.dev0
>>>>>>> 6057f3e0118c4f905592d7411638385068727d96
1.8.1
58 changes: 57 additions & 1 deletion data/update_1.8to1.8.1.sql
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,60 @@ CREATE OR REPLACE VIEW synthese.v_tree_taxons_synthese AS
LEFT JOIN taxonomie.taxref ph ON ph.id_rang = 'PH'::bpchar AND ph.cd_nom = ph.cd_ref AND ph.lb_nom::text = t_1.phylum::text AND NOT t_1.phylum IS NULL
LEFT JOIN taxonomie.taxref cl ON cl.id_rang = 'CL'::bpchar AND cl.cd_nom = cl.cd_ref AND cl.lb_nom::text = t_1.classe::text AND NOT t_1.classe IS NULL
LEFT JOIN taxonomie.taxref ord ON ord.id_rang = 'OR'::bpchar AND ord.cd_nom = ord.cd_ref AND ord.lb_nom::text = t_1.ordre::text AND NOT t_1.ordre IS NULL
LEFT JOIN taxonomie.taxref f ON f.id_rang = 'FM'::bpchar AND f.cd_nom = f.cd_ref AND f.lb_nom::text = t_1.famille::text AND f.phylum::text = t_1.phylum::text AND NOT t_1.famille IS NULL) t;
LEFT JOIN taxonomie.taxref f ON f.id_rang = 'FM'::bpchar AND f.cd_nom = f.cd_ref AND f.lb_nom::text = t_1.famille::text AND f.phylum::text = t_1.phylum::text AND NOT t_1.famille IS NULL) t;

----- MAJ de 2 fonctions pour le contactflore
CREATE OR REPLACE FUNCTION contactflore.update_releve_cflore() RETURNS trigger
LANGUAGE plpgsql
AS $$
DECLARE
re integer;
BEGIN
-- Si changement de taxon,
IF new.id_nom<>old.id_nom THEN
-- Correction du cd_ref_origine
SELECT INTO re taxonomie.find_cdref(cd_nom) FROM taxonomie.bib_noms WHERE id_nom = new.id_nom;
new.cd_ref_origine = re;
END IF;
RETURN NEW;
END;
$$;

CREATE OR REPLACE FUNCTION contactflore.insert_releve_cflore() RETURNS trigger
LANGUAGE plpgsql
AS $$
DECLARE
cdnom integer;
re integer;
unite integer;
nbobs integer;
line record;
fiche record;
BEGIN
--récup du cd_nom du taxon
SELECT INTO cdnom cd_nom FROM taxonomie.bib_noms WHERE id_nom = new.id_nom;
--récup du cd_ref du taxon pour le stocker en base au moment de l'enregistrement (= conseil inpn)
SELECT INTO re taxonomie.find_cdref(cd_nom) FROM taxonomie.bib_noms WHERE id_nom = new.id_nom;
new.cd_ref_origine = re;
-- MAJ de la table cor_unite_taxon_cflore, on commence par récupérer l'unité à partir du pointage (table t_fiches_cf)
SELECT INTO fiche * FROM contactflore.t_fiches_cflore WHERE id_cflore = new.id_cflore;
SELECT INTO unite u.id_unite_geo FROM layers.l_unites_geo u WHERE ST_INTERSECTS(fiche.the_geom_2154,u.the_geom);
--si on est dans une des unités on peut mettre à jour la table cor_unite_taxon_cflore, sinon on fait rien
IF unite>0 THEN
SELECT INTO line * FROM contactflore.cor_unite_taxon_cflore WHERE id_unite_geo = unite AND id_nom = new.id_nom;
--si la ligne existe dans cor_unite_taxon_cflore on la supprime
IF line IS NOT NULL THEN
DELETE FROM contactflore.cor_unite_taxon_cflore WHERE id_unite_geo = unite AND id_nom = new.id_nom;
END IF;
--on compte le nombre d'enregistrement pour ce taxon dans l'unité
SELECT INTO nbobs count(*) from synthese.syntheseff s
JOIN layers.l_unites_geo u ON ST_Intersects(u.the_geom, s.the_geom_2154) AND u.id_unite_geo = unite
WHERE s.cd_nom = cdnom;
--on créé ou recréé la ligne
INSERT INTO contactflore.cor_unite_taxon_cflore VALUES(unite,new.id_nom,fiche.dateobs,contactflore.couleur_taxon(new.id_nom,fiche.dateobs), nbobs+1);
END IF;
RETURN NEW;
END;
$$;


18 changes: 17 additions & 1 deletion docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,25 @@
CHANGELOG
=========

1.8.1dev (unreleased)
1.8.2dev (unreleased)
----------------------

1.8.1 (2017-01-05)
------------------

**Nouveautés**

* Ajout des sauvegardes et de l'installation globale avec un exemple détaillé dans la documentation : http://geonature.readthedocs.io
* Optimisation et correction de la vue qui retourne l'arbre des rangs taxonomiques (synthese.v_tree_taxons_synthese)
* Mise en cohérence des données exemple de GeoNature-atlas avec les critères des vues matérialisées de GeoNature-atlas
* Mise à jour de 2 triggers du Contact Flore (@ClaireLagaye)

**Notes de versions**

Vous pouvez passer directement d'une 1.7.X à la 1.8.1, en prenant en compte les notes des différentes versions intermédiaires.

Si vous migrez depuis la version 1.8.0, éxécutez le fichier ``data/update_1.8to1.8.1.sql``

1.8.0 (2016-12-14)
------------------

Expand Down
2 changes: 1 addition & 1 deletion docs/install_all/install_all.ini
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ drop_usershubdb=false
usershubdb_name=usershubdb

###CONFIGURATION GEONATURE###
geonature_release=1.8.0
geonature_release=1.8.1
# effacer la base de données GeoNature existante lors de l'installation
drop_geonaturedb=false
#nom de la base de données GeoNature
Expand Down

0 comments on commit 747dfa5

Please sign in to comment.