Line 164... |
Line 164... |
164 |
// @TODO vérifier qu'elles existent pour ne pas insérer de doublons en relançant le script !!
|
164 |
// @TODO vérifier qu'elles existent pour ne pas insérer de doublons en relançant le script !!
|
165 |
$idCollection = $this->creerCollection($idStructure, $ligne, $colonnesParNom);
|
165 |
$idCollection = $this->creerCollection($idStructure, $ligne, $colonnesParNom);
|
166 |
$idCollectionsParIdTemp[$ligne[$colonnesParNom['id']]] = $idCollection;
|
166 |
$idCollectionsParIdTemp[$ligne[$colonnesParNom['id']]] = $idCollection;
|
167 |
}
|
167 |
}
|
Line -... |
Line 168... |
- |
|
168 |
|
- |
|
169 |
// mettre à jour le GUID des collections et des structures
|
- |
|
170 |
$this->mettreAJourGUIDCollections();
|
- |
|
171 |
$this->mettreAJourGUIDStructures();
|
168 |
|
172 |
|
169 |
//ouvrir le fichier collection botanique
|
173 |
//ouvrir le fichier collection botanique
|
170 |
$pointeurCollectionsBota = fopen($fichierCollectionsBota, "r");
|
174 |
$pointeurCollectionsBota = fopen($fichierCollectionsBota, "r");
|
171 |
// Chargement de la première colonne (qui contient les noms de colonnes à importer)
|
175 |
// Chargement de la première colonne (qui contient les noms de colonnes à importer)
|
172 |
$colonnesBota = fgetcsv($pointeurCollectionsBota, 0, $separateur);
|
176 |
$colonnesBota = fgetcsv($pointeurCollectionsBota, 0, $separateur);
|
Line 213... |
Line 217... |
213 |
protected function creerStructure($nomStructure) {
|
217 |
protected function creerStructure($nomStructure) {
|
214 |
$nsp = $this->bdd->proteger($nomStructure);
|
218 |
$nsp = $this->bdd->proteger($nomStructure);
|
215 |
$requete = "INSERT INTO " . $this->table_structure . " (cs_nom)"
|
219 |
$requete = "INSERT INTO " . $this->table_structure . " (cs_nom)"
|
216 |
. " VALUES ($nsp)";
|
220 |
. " VALUES ($nsp)";
|
217 |
//echo "REQ INS: $requete\n";
|
221 |
//echo "REQ INS: $requete\n";
|
218 |
$resultat = $this->bdd->executer($requete);
|
222 |
$this->bdd->executer($requete);
|
219 |
$idStructure = $this->bdd->recupererIdDernierAjout();
|
223 |
$idStructure = $this->bdd->recupererIdDernierAjout();
|
Line 220... |
Line 224... |
220 |
|
224 |
|
221 |
return $idStructure;
|
225 |
return $idStructure;
|
Line 228... |
Line 232... |
228 |
*/
|
232 |
*/
|
229 |
protected function creerCollection($idStructure, $ligne, $colonnesParNom) {
|
233 |
protected function creerCollection($idStructure, $ligne, $colonnesParNom) {
|
230 |
//echo "Insertion ! : "; var_dump($ligne); echo "<br/>";
|
234 |
//echo "Insertion ! : "; var_dump($ligne); echo "<br/>";
|
231 |
$nom = $this->bdd->proteger($ligne[$colonnesParNom['cc_nom']]);
|
235 |
$nom = $this->bdd->proteger($ligne[$colonnesParNom['cc_nom']]);
|
232 |
$desc = $this->bdd->proteger($ligne[$colonnesParNom['cc_description']]);
|
236 |
$desc = $this->bdd->proteger($ligne[$colonnesParNom['cc_description']]);
|
- |
|
237 |
$type = $this->bdd->proteger($ligne[$colonnesParNom['cc_ce_type']]);
|
233 |
$pcd = $this->bdd->proteger($ligne[$colonnesParNom['cc_periode_constitution_debut']]);
|
238 |
$pcd = $this->bdd->proteger($ligne[$colonnesParNom['cc_periode_constitution_debut']]);
|
234 |
$pcf = $this->bdd->proteger($ligne[$colonnesParNom['cc_periode_constitution_fin']]);
|
239 |
$pcf = $this->bdd->proteger($ligne[$colonnesParNom['cc_periode_constitution_fin']]);
|
235 |
$tcl = $this->bdd->proteger($ligne[$colonnesParNom['cc_truk_couverture_lieu']]);
|
240 |
$tcl = $this->bdd->proteger($ligne[$colonnesParNom['cc_truk_couverture_lieu']]);
|
236 |
$cst = $this->bdd->proteger($ligne[$colonnesParNom['cc_ce_specimen_type']]);
|
241 |
$cst = $this->bdd->proteger($ligne[$colonnesParNom['cc_ce_specimen_type']]);
|
Line 237... |
Line 242... |
237 |
|
242 |
|
238 |
$requete = "INSERT INTO " . $this->table_collection
|
243 |
$requete = "INSERT INTO " . $this->table_collection
|
239 |
. " (cc_ce_structure, cc_nom, cc_description, cc_periode_constitution_debut, cc_periode_constitution_fin, cc_truk_couverture_lieu, cc_ce_specimen_type)"
|
244 |
. " (cc_ce_structure, cc_nom, cc_description, cc_ce_type, cc_periode_constitution_debut, cc_periode_constitution_fin, cc_truk_couverture_lieu, cc_ce_specimen_type)"
|
240 |
. " VALUES ($idStructure, $nom, $desc, $pcd, $pcf, $tcl, $cst)";
|
245 |
. " VALUES ($idStructure, $nom, $desc, $type, $pcd, $pcf, $tcl, $cst)";
|
241 |
//echo "REQ INS: $requete\n";
|
246 |
//echo "REQ INS: $requete\n";
|
242 |
$resultat = $this->bdd->executer($requete);
|
247 |
$this->bdd->executer($requete);
|
Line 243... |
Line 248... |
243 |
$idCollection = $this->bdd->recupererIdDernierAjout();
|
248 |
$idCollection = $this->bdd->recupererIdDernierAjout();
|
244 |
|
249 |
|
Line 245... |
Line 250... |
245 |
return $idCollection;
|
250 |
return $idCollection;
|
- |
|
251 |
}
|
- |
|
252 |
|
- |
|
253 |
/**
|
- |
|
254 |
* Reconstruit les GUID des structures à partir de leurs ID
|
- |
|
255 |
*/
|
- |
|
256 |
protected function mettreAJourGUIDStructures() {
|
- |
|
257 |
$requete = "UPDATE coel_structure SET cs_guid = CONCAT('urn:lsid:tela-botanica.org:str', cs_id_structure)";
|
- |
|
258 |
$this->bdd->executer($requete);
|
- |
|
259 |
}
|
- |
|
260 |
|
- |
|
261 |
/**
|
- |
|
262 |
* Reconstruit les GUID des collections à partir de leurs ID
|
- |
|
263 |
*/
|
- |
|
264 |
protected function mettreAJourGUIDCollections() {
|
- |
|
265 |
$requete = "UPDATE coel_collection SET cc_guid = CONCAT('urn:lsid:tela-botanica.org:coll', cc_id_collection)";
|
- |
|
266 |
$this->bdd->executer($requete);
|
246 |
}
|
267 |
}
|
247 |
|
268 |
|
248 |
/**
|
269 |
/**
|
249 |
* Crée une collection botanique; la remplit avec les données issues de $ligne en se
|
270 |
* Crée une collection botanique; la remplit avec les données issues de $ligne en se
|
250 |
* servant de $colonnesParNom pour accéder aux valeurs par clés textuelles
|
271 |
* servant de $colonnesParNom pour accéder aux valeurs par clés textuelles
|
Line 258... |
Line 279... |
258 |
$ac = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_annotation_classement']]);
|
279 |
$ac = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_annotation_classement']]);
|
259 |
$ct = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_ce_traitement']]);
|
280 |
$ct = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_ce_traitement']]);
|
260 |
$ci = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_ce_inventaire']]);
|
281 |
$ci = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_ce_inventaire']]);
|
261 |
$ii = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_inventaire_info']]);
|
282 |
$ii = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_inventaire_info']]);
|
262 |
$aur = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_autres_unite_rangement']]);
|
283 |
$aur = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_autres_unite_rangement']]);
|
- |
|
284 |
$nph = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_nb_planches_herbiers']]);
|
263 |
$tcpt = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_truk_conservation_papier_type']]);
|
285 |
$tcpt = $this->bdd->proteger($ligne[$colonnesBotaParNom['ccb_truk_conservation_papier_type']]);
|
Line 264... |
Line 286... |
264 |
|
286 |
|
265 |
// @TODO comment gérer la colonne "Nombre de parts" ? Faut la mettre dans quoi ?
|
287 |
// @TODO comment gérer la colonne "Nombre de parts" ? Faut la mettre dans quoi ?
|
266 |
$requete = "INSERT INTO " . $this->table_collection_bota
|
288 |
$requete = "INSERT INTO " . $this->table_collection_bota
|
267 |
. " (ccb_id_collection, ccb_ce_etat_general, ccb_nbre_echantillon, ccb_specialite, ccb_annotation_classement, ccb_ce_traitement, ccb_ce_inventaire,"
|
289 |
. " (ccb_id_collection, ccb_ce_etat_general, ccb_nbre_echantillon, ccb_specialite, ccb_annotation_classement, ccb_ce_traitement, ccb_ce_inventaire,"
|
268 |
. " ccb_inventaire_info, ccb_autres_unites_rangement, ccb_truk_conservation_papier_type)"
|
290 |
. " ccb_inventaire_info, ccb_autres_unites_rangement, ccb_nb_planches_herbiers, ccb_truk_conservation_papier_type)"
|
269 |
. " VALUES ($id, $ceg, $ne, $spec, $ac, $ct, $ci, $ii, $aur, $tcpt)";
|
291 |
. " VALUES ($id, $ceg, $ne, $spec, $ac, $ct, $ci, $ii, $aur, $nph, $tcpt)";
|
270 |
//echo "REQ INS: $requete\n";
|
292 |
//echo "REQ INS: $requete\n";
|
271 |
$resultat = $this->bdd->executer($requete);
|
293 |
$this->bdd->executer($requete);
|
Line 272... |
Line 294... |
272 |
}
|
294 |
}
|
Line 273... |
Line 295... |
273 |
|
295 |
|