From df9459836a08e12cc0a246561baa5bdaf5e93d72 Mon Sep 17 00:00:00 2001 From: Thibaud Ajas Date: Fri, 12 May 2017 16:06:46 +0200 Subject: [PATCH] Modif de la BD en rapport avec l'ajout du gestionnaire du materiel --- database/labinvent_2.1_12-05-16.sql | 1 + database/update/db-update-2017-05-12.sh | 34 ++++++++++++++++++++++++++++++++++ database/update/script_sql/db-update-2017-05-12.sql | 3 +++ src/Template/Materiels/add.ctp | 5 ----- 4 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 database/update/db-update-2017-05-12.sh create mode 100644 database/update/script_sql/db-update-2017-05-12.sql diff --git a/database/labinvent_2.1_12-05-16.sql b/database/labinvent_2.1_12-05-16.sql index a72bd69..3926742 100755 --- a/database/labinvent_2.1_12-05-16.sql +++ b/database/labinvent_2.1_12-05-16.sql @@ -172,6 +172,7 @@ CREATE TABLE IF NOT EXISTS `materiels` ( `lieu_detail` varchar(45) DEFAULT NULL, `nom_responsable` varchar(45) DEFAULT NULL, `email_responsable` varchar(45) DEFAULT NULL, + `nom_gestionnaire` VARCHAR(45) NOT NULL, `nom_createur` varchar(45) DEFAULT NULL COMMENT 'nom du createur de la fiche', `nom_modificateur` varchar(45) DEFAULT NULL COMMENT 'nom du modificateur de la fiche', `created` datetime DEFAULT NULL COMMENT 'date et heure de creation de la fiche', diff --git a/database/update/db-update-2017-05-12.sh b/database/update/db-update-2017-05-12.sh new file mode 100644 index 0000000..16da758 --- /dev/null +++ b/database/update/db-update-2017-05-12.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +# Pour Mac OS recent (10.10, Yosemite), la syntaxe du SED est differente +# Il faut donc faire une copie de ce fichier et transformer les instructions sed a l'interieur +# Pour cela, il suffit d'executer ces 2 lignes : +# cp ce_script.sh ce_script_macosx.sh +# sed -e "s/ -i / -i '' /" -i '' ce_script_macosx.sh + +if [ ! -f ../../config/app.php ] ; then +echo "Vous devez executer ce script depuis le dossier database/update/" +exit 1 +fi + + +# Get login, pass, dbname, and hostname +username=$(grep "/\*d\*/'username'" ../../config/app.php | cut -d"'" -f4) +password=$(grep "/\*d\*/'password'" ../../config/app.php | cut -d"'" -f4) +database=$(grep "/\*d\*/'database'" ../../config/app.php | cut -d"'" -f4) +host=$(grep "/\*d\*/'host'" ../../config/app.php | cut -d"'" -f4) + + +cp -p ./script_sql/db-update-2017-05-12.sql ./script_sql/db-update-2017-05-12-build.sql + +# Execute sql update script +sed -e "s/database/$database/" -i ./script_sql/db-update-2017-05-12-build.sql +mysql --user=$username --password=$password -h $host < ./script_sql/db-update-2017-05-12-build.sql + +# Delete cakephp cache +sudo rm ../../tmp/cache/models/* +sudo rm ../../tmp/cache/persistent/* + +sudo chmod -R 777 ../../tmp +sudo chmod -R 777 ../../vendor +sudo chmod -R 777 ../../webroot diff --git a/database/update/script_sql/db-update-2017-05-12.sql b/database/update/script_sql/db-update-2017-05-12.sql new file mode 100644 index 0000000..efb1e28 --- /dev/null +++ b/database/update/script_sql/db-update-2017-05-12.sql @@ -0,0 +1,3 @@ +use database; + +ALTER TABLE `materiels` ADD `nom_gestionnaire` VARCHAR( 45 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL AFTER `email_responsable` ; diff --git a/src/Template/Materiels/add.ctp b/src/Template/Materiels/add.ctp index 285a256..b1c7eff 100755 --- a/src/Template/Materiels/add.ctp +++ b/src/Template/Materiels/add.ctp @@ -135,11 +135,8 @@ else { 'default' => $mail_responsable ]); - // ==========================Zone de travail============================== - // Modif BD : // ALTER TABLE `materiels` ADD `nom_gestionnaire` VARCHAR( 45 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL AFTER `email_responsable` ; - echo $this->Form->input('nom_gestionnaire', [ 'label' => 'Nom du gestionnaire de référence du matériel', 'empty' => 'Choisir un utilisateur', @@ -147,8 +144,6 @@ else { 'options' => TableRegistry::get('Users')->find('list', [ 'keyField' => 'nom', 'valueField' => 'nom'])->where(['role =' => 'Administration']) ]); - // ======================================================================= - echo $this->Form->input('fournisseur', ['label' => 'Fournisseur', 'default' => $Fournisseur]); echo $this->Form->input('organisme_id', ['options' => $organismes, 'style' => 'width: 380px', 'empty' => 'Choisir un organisme', 'default' => $Organisme_id]); echo $this->Form->input('prix_ht', ['label' => 'Prix HT (€)', 'default' => $Prix_ht]); -- libgit2 0.21.2