Line 46... |
Line 46... |
46 |
-- -----------------------------------------------------
|
46 |
-- -----------------------------------------------------
|
47 |
DROP TABLE IF EXISTS `cel_mots_cles_images` ;
|
47 |
DROP TABLE IF EXISTS `cel_mots_cles_images` ;
|
Line 48... |
Line 48... |
48 |
|
48 |
|
49 |
CREATE TABLE IF NOT EXISTS `cel_mots_cles_images` (
|
49 |
CREATE TABLE IF NOT EXISTS `cel_mots_cles_images` (
|
50 |
`id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL COMMENT 'Identifiant du mot-clé pour une position donnée dans l\'arbre d\'utilisateur.\nLe même mot-clé peut être placé à plusieurs endroits de l\'arbre et aura donc deux id distincts.' ,
|
50 |
`id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL COMMENT 'Identifiant du mot-clé pour une position donnée dans l\'arbre d\'utilisateur.\nLe même mot-clé peut être placé à plusieurs endroits de l\'arbre et aura donc deux id distincts.' ,
|
51 |
`id_utilisateur` VARCHAR(32) NOT NULL ,
|
51 |
`id_utilisateur` VARCHAR(255) NOT NULL ,
|
52 |
`mot_cle` VARCHAR(50) NOT NULL COMMENT 'Mot clé de l\'utilisateur pour une position dans l\'arbre.' ,
|
52 |
`mot_cle` VARCHAR(50) NOT NULL COMMENT 'Mot clé de l\'utilisateur pour une position dans l\'arbre.' ,
|
53 |
`md5` VARCHAR(32) NOT NULL COMMENT 'MD5 du mot clé en minuscule.' ,
|
53 |
`md5` VARCHAR(32) NOT NULL COMMENT 'MD5 du mot clé en minuscule.' ,
|
54 |
`bg` BIGINT NOT NULL COMMENT 'Bordure gauche.' ,
|
54 |
`bg` BIGINT NOT NULL COMMENT 'Bordure gauche.' ,
|
55 |
`bd` BIGINT NOT NULL COMMENT 'bordure droite.' ,
|
55 |
`bd` BIGINT NOT NULL COMMENT 'bordure droite.' ,
|
Line 79... |
Line 79... |
79 |
DROP TABLE IF EXISTS `cel_images_mots_cles` ;
|
79 |
DROP TABLE IF EXISTS `cel_images_mots_cles` ;
|
Line 80... |
Line 80... |
80 |
|
80 |
|
81 |
CREATE TABLE IF NOT EXISTS `cel_images_mots_cles` (
|
81 |
CREATE TABLE IF NOT EXISTS `cel_images_mots_cles` (
|
82 |
`id_image` BIGINT NOT NULL ,
|
82 |
`id_image` BIGINT NOT NULL ,
|
83 |
`id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
83 |
`id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
84 |
`id_utilisateur` VARCHAR(32) NOT NULL ,
|
84 |
`id_utilisateur` VARCHAR(128) NOT NULL ,
|
85 |
PRIMARY KEY (`id_image`, `id_mot_cle_image`, `id_utilisateur`) ,
|
85 |
PRIMARY KEY (`id_image`, `id_mot_cle_image`, `id_utilisateur`) ,
|
86 |
INDEX `image` (`id_image` ASC) )
|
86 |
INDEX `image` (`id_image` ASC) )
|
87 |
ENGINE = MyISAM
|
87 |
ENGINE = MyISAM
|
88 |
DEFAULT CHARACTER SET = utf8
|
88 |
DEFAULT CHARACTER SET = utf8
|
Line 95... |
Line 95... |
95 |
DROP TABLE IF EXISTS `cel_images` ;
|
95 |
DROP TABLE IF EXISTS `cel_images` ;
|
Line 96... |
Line 96... |
96 |
|
96 |
|
97 |
CREATE TABLE IF NOT EXISTS `cel_images` (
|
97 |
CREATE TABLE IF NOT EXISTS `cel_images` (
|
98 |
`id_image` BIGINT NOT NULL AUTO_INCREMENT ,
|
98 |
`id_image` BIGINT NOT NULL AUTO_INCREMENT ,
|
99 |
`ordre` BIGINT NOT NULL ,
|
99 |
`ordre` BIGINT NOT NULL ,
|
100 |
`ce_utilisateur` VARCHAR(32) NOT NULL COMMENT 'L\'id utilisateur est un int mais on utilise un varchar pour stocker des observations avec des identifiants temporaires\n' ,
|
100 |
`ce_utilisateur` VARCHAR(255) NOT NULL COMMENT 'L\'id utilisateur est un int mais on utilise un varchar pour stocker des observations avec des identifiants temporaires\n' ,
|
101 |
`prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
101 |
`prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
102 |
`nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
102 |
`nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
103 |
`courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
103 |
`courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
|
104 |
`hauteur` INT NOT NULL ,
|
104 |
`hauteur` INT NOT NULL ,
|
Line 132... |
Line 132... |
132 |
-- -----------------------------------------------------
|
132 |
-- -----------------------------------------------------
|
133 |
DROP TABLE IF EXISTS `cel_mots_cles_obs` ;
|
133 |
DROP TABLE IF EXISTS `cel_mots_cles_obs` ;
|
Line 134... |
Line 134... |
134 |
|
134 |
|
135 |
CREATE TABLE IF NOT EXISTS `cel_mots_cles_obs` (
|
135 |
CREATE TABLE IF NOT EXISTS `cel_mots_cles_obs` (
|
136 |
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
136 |
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
137 |
`id_utilisateur` VARCHAR(32) NOT NULL ,
|
137 |
`id_utilisateur` VARCHAR(255) NOT NULL ,
|
138 |
`mot_cle` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
138 |
`mot_cle` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
139 |
`md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
139 |
`md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
140 |
`bg` BIGINT NOT NULL ,
|
140 |
`bg` BIGINT NOT NULL ,
|
141 |
`bd` BIGINT NOT NULL ,
|
141 |
`bd` BIGINT NOT NULL ,
|
Line 165... |
Line 165... |
165 |
DROP TABLE IF EXISTS `cel_obs_mots_cles` ;
|
165 |
DROP TABLE IF EXISTS `cel_obs_mots_cles` ;
|
Line 166... |
Line 166... |
166 |
|
166 |
|
167 |
CREATE TABLE IF NOT EXISTS `cel_obs_mots_cles` (
|
167 |
CREATE TABLE IF NOT EXISTS `cel_obs_mots_cles` (
|
168 |
`id_observation` BIGINT NOT NULL ,
|
168 |
`id_observation` BIGINT NOT NULL ,
|
169 |
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
169 |
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
|
170 |
`id_utilisateur` VARCHAR(32) NOT NULL ,
|
170 |
`id_utilisateur` VARCHAR(128) NOT NULL ,
|
171 |
PRIMARY KEY (`id_observation`, `id_mot_cle_obs`, `id_utilisateur`) ,
|
171 |
PRIMARY KEY (`id_observation`, `id_mot_cle_obs`, `id_utilisateur`) ,
|
172 |
INDEX `observation` (`id_observation` ASC) )
|
172 |
INDEX `observation` (`id_observation` ASC) )
|
173 |
ENGINE = MyISAM
|
173 |
ENGINE = MyISAM
|
174 |
DEFAULT CHARACTER SET = utf8
|
174 |
DEFAULT CHARACTER SET = utf8
|
Line 260... |
Line 260... |
260 |
PRIMARY KEY (`id_observation`) ,
|
260 |
PRIMARY KEY (`id_observation`) ,
|
261 |
INDEX `id_obs` (`ordre` ASC, `ce_utilisateur` ASC) ,
|
261 |
INDEX `id_obs` (`ordre` ASC, `ce_utilisateur` ASC) ,
|
262 |
INDEX `date_creation` (`ce_utilisateur` ASC, `date_creation` ASC) ,
|
262 |
INDEX `date_creation` (`ce_utilisateur` ASC, `date_creation` ASC) ,
|
263 |
INDEX `coordonnees` (`latitude` ASC, `longitude` ASC) ,
|
263 |
INDEX `coordonnees` (`latitude` ASC, `longitude` ASC) ,
|
264 |
INDEX `nom_retenu` (`nom_ret` ASC) ,
|
264 |
INDEX `nom_retenu` (`nom_ret` ASC) ,
|
- |
|
265 |
INDEX `date_observation` (`date_observation` ASC) COMMENT 'Date_transmission : nécessaire à l'ORDER BY utilisé dans la liste d'observation de DEL' ,
|
265 |
INDEX `date_observation` (`date_observation` ASC) ,
|
266 |
INDEX `nom_referentiel` (`nom_referentiel`(5) ASC) COMMENT 'Index sur (bdtfx,bdtfx,isfan)' ,
|
- |
|
267 |
INDEX `date_transmission` (`date_transmission` DESC) COMMENT 'Nécessaire à CEL/DEL qui officie avec transmission = 1' ,
|
266 |
INDEX `nom_referentiel` (`nom_referentiel`(5) ASC) )
|
268 |
INDEX `transmission` (`transmission` ASC) )
|
267 |
ENGINE = MyISAM
|
269 |
ENGINE = MyISAM
|
268 |
DEFAULT CHARACTER SET = utf8
|
270 |
DEFAULT CHARACTER SET = utf8
|
269 |
COLLATE = utf8_general_ci;
|
271 |
COLLATE = utf8_general_ci;
|
Line 317... |
Line 319... |
317 |
-- -----------------------------------------------------
|
319 |
-- -----------------------------------------------------
|
318 |
-- View `cel_utilisateurs`
|
320 |
-- View `cel_utilisateurs`
|
319 |
-- -----------------------------------------------------
|
321 |
-- -----------------------------------------------------
|
320 |
DROP VIEW IF EXISTS `cel_utilisateurs` ;
|
322 |
DROP VIEW IF EXISTS `cel_utilisateurs` ;
|
321 |
DROP TABLE IF EXISTS `cel_utilisateurs`;
|
323 |
DROP TABLE IF EXISTS `cel_utilisateurs`;
|
322 |
CREATE OR REPLACE VIEW `cel_utilisateurs` AS
|
324 |
CREATE OR REPLACE VIEW `cel_utilisateurs` AS
|
323 |
SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,
|
325 |
SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,
|
324 |
ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation
|
326 |
ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation
|
325 |
FROM tela_prod_v4.annuaire_tela AS at
|
327 |
FROM tela_prod_v4.annuaire_tela AS at
|
326 |
LEFT JOIN cel_utilisateurs_infos AS ui ON (ui.id_utilisateur = at.U_ID);
|
328 |
LEFT JOIN cel_utilisateurs_infos AS ui ON (ui.id_utilisateur = at.U_ID);
|
Line 327... |
Line 329... |
327 |
|
329 |
|
328 |
-- -----------------------------------------------------
|
330 |
-- -----------------------------------------------------
|
329 |
-- View `cel_tapir`
|
331 |
-- View `cel_tapir`
|
330 |
-- -----------------------------------------------------
|
332 |
-- -----------------------------------------------------
|
331 |
DROP VIEW IF EXISTS `cel_tapir` ;
|
333 |
DROP VIEW IF EXISTS `cel_tapir` ;
|
332 |
DROP TABLE IF EXISTS `cel_tapir`;
|
334 |
DROP TABLE IF EXISTS `cel_tapir`;
|
333 |
CREATE OR REPLACE VIEW `cel_tapir` AS
|
335 |
CREATE OR REPLACE VIEW `cel_tapir` AS
|
334 |
select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
|
336 |
select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
|
335 |
`o`.`id_observation` AS `observation_id`,
|
337 |
`o`.`id_observation` AS `observation_id`,
|
336 |
date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
|
338 |
date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
|
337 |
`o`.`nom_sel` AS `nom_scientifique_complet`,
|
339 |
`o`.`nom_sel` AS `nom_scientifique_complet`,
|
338 |
`o`.`nom_sel_nn` AS `nom_num_nomenclatural`,
|
340 |
`o`.`nom_sel_nn` AS `nom_num_nomenclatural`,
|
339 |
`o`.`nt` AS `nom_num_taxonomique`,
|
341 |
`o`.`nt` AS `nom_num_taxonomique`,
|
340 |
`o`.`famille` AS `nom_famille`,
|
342 |
`o`.`famille` AS `nom_famille`,
|
341 |
concat(_utf8'',`zg`.`nom`,' [INSEE:',`zg`.`code`,']') AS `lieu_commune_nom_complet`,
|
343 |
concat(_utf8'',`zg`.`nom`,' [INSEE:',`zg`.`code`,']') AS `lieu_commune_nom_complet`,
|
342 |
`zg`.`nom` AS `lieu_commune_nom`,
|
344 |
`zg`.`nom` AS `lieu_commune_nom`,
|
343 |
`zg`.`code` AS `lieu_commune_code_insee`,
|
345 |
`zg`.`code` AS `lieu_commune_code_insee`,
|
344 |
if((`zg`.`code` <> ''), 'Lion1906 version 26-05-2008 - http://www.lion1906.com/', NULL) AS `lieu_commune_source`,
|
346 |
if((`zg`.`code` <> ''), 'Lion1906 version 26-05-2008 - http://www.lion1906.com/', NULL) AS `lieu_commune_source`,
|
345 |
format(if((`o`.`latitude` <> ''), `o`.`latitude`, `zg`.`wgs84_latitude`), 5) AS `lieu_latitude`,
|
347 |
format(if((`o`.`latitude` <> ''), `o`.`latitude`, `zg`.`wgs84_latitude`), 5) AS `lieu_latitude`,
|
346 |
format(if((`o`.`longitude` <> ''), `o`.`longitude`, `zg`.`wgs84_longitude`), 5) AS `lieu_longitude`,
|
348 |
format(if((`o`.`longitude` <> ''), `o`.`longitude`, `zg`.`wgs84_longitude`), 5) AS `lieu_longitude`,
|
347 |
`o`.`geodatum` AS `lieu_geodatum`,
|
349 |
`o`.`geodatum` AS `lieu_geodatum`,
|
348 |
if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
|
350 |
if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
|
349 |
`o`.`lieudit` AS `lieu_localite`,
|
351 |
`o`.`lieudit` AS `lieu_localite`,
|
350 |
`o`.`prenom_utilisateur` AS `observateur_prenom`,
|
352 |
`o`.`prenom_utilisateur` AS `observateur_prenom`,
|
351 |
`o`.`nom_utilisateur` AS `observateur_nom`,
|
353 |
`o`.`nom_utilisateur` AS `observateur_nom`,
|
352 |
`o`.`courriel_utilisateur` AS `observateur_courriel`,
|
354 |
`o`.`courriel_utilisateur` AS `observateur_courriel`,
|
353 |
concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
|
355 |
concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
|
354 |
concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',`o`.`courriel_utilisateur`,'>')) AS `observateur_intitule`,
|
356 |
concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',`o`.`courriel_utilisateur`,'>')) AS `observateur_intitule`,
|
355 |
`o`.`commentaire` AS `observation_commentaire`,
|
357 |
`o`.`commentaire` AS `observation_commentaire`,
|
356 |
concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
|
358 |
concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
|
357 |
'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
|
359 |
'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
|
358 |
'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
|
360 |
'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
|
359 |
'nom_num_taxonomique=',`o`.`nt`,'; ',
|
361 |
'nom_num_taxonomique=',`o`.`nt`,'; ',
|
360 |
'nom_referentiel=',encodeToDcsv(`o`.`nom_referentiel`),'; ',
|
362 |
'nom_referentiel=',encodeToDcsv(`o`.`nom_referentiel`),'; ',
|
361 |
'saisie_date_transmission=',`o`.`date_transmission`,'; ',
|
363 |
'saisie_date_transmission=',`o`.`date_transmission`,'; ',
|
362 |
'saisie_date_creation=',`o`.`date_creation`,'; ',
|
364 |
'saisie_date_creation=',`o`.`date_creation`,'; ',
|
363 |
'ordre=',`o`.`ordre`,'; ',
|
365 |
'ordre=',`o`.`ordre`,'; ',
|
364 |
'station=',encodeToDcsv(`o`.`station`),'; ',
|
366 |
'station=',encodeToDcsv(`o`.`station`),'; ',
|
365 |
'milieu=',encodeToDcsv(`o`.`milieu`),'; ',
|
367 |
'milieu=',encodeToDcsv(`o`.`milieu`),'; ',
|
366 |
'mots_cles=',encodeToDcsv(`o`.`mots_cles_texte`),'; ',
|
368 |
'mots_cles=',encodeToDcsv(`o`.`mots_cles_texte`),'; ',
|
367 |
'zg_utm_secteur=',encodeToDcsv(`zg`.`utm_secteur`),'; ',
|
369 |
'zg_utm_secteur=',encodeToDcsv(`zg`.`utm_secteur`),'; ',
|
368 |
'zg_date_modification=',`zg`.`date_modification`) AS `observation_information_complement`,
|
370 |
'zg_date_modification=',`zg`.`date_modification`) AS `observation_information_complement`,
|
369 |
`o`.`date_modification` AS `saisie_date_modification`,
|
371 |
`o`.`date_modification` AS `saisie_date_modification`,
|
370 |
`o`.`date_creation` AS `saisie_date_creation`
|
372 |
`o`.`date_creation` AS `saisie_date_creation`
|
371 |
from (`cel_obs` `o`
|
373 |
from (`cel_obs` `o`
|
372 |
left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`)))
|
374 |
left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`)))
|
373 |
where `o`.`transmission` = 1
|
375 |
where `o`.`transmission` = 1
|
Line 374... |
Line 376... |
374 |
AND (`o`.`mots_cles_texte` NOT LIKE '%sensible%' OR `o`.`mots_cles_texte` IS NULL);
|
376 |
AND (`o`.`mots_cles_texte` NOT LIKE '%sensible%' OR `o`.`mots_cles_texte` IS NULL);
|
375 |
|
377 |
|