update_Donnees_IAS_Labinvent2.sql 10.5 KB
START TRANSACTION;

--    IAS : Distribution 09/03/2015 *
/*
- Ajout table "organismes", "type_suivis", "sites"
- Ajout clé correspondante dans table "matériels"
- Transformation des données correspondantes
- Suppression anciens champs
- Ajout table "documents"
- Sauvegarder les utilisateurs
- Transformer table "utilisateurs" en "users"
- Ajout table "configuration"
- Ajout clé étrangère emprunts (site_id)/suivis (type_suivi_id)
- Transformation des données correspondantes
- Suppression ancien champ emprunt (e_lieu_stockage), suivis (type_intervention)
*/
set foreign_key_checks=0;


-- 
-- 27/07/2015
-- Rajouter la table organismes
-- Structure de la table organismes
-- 

CREATE TABLE IF NOT EXISTS `organismes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

-- Contenu de la table `organismes`

INSERT INTO `organismes` (`id`, `nom`) VALUES
(1, 'CNRS'),
(2, 'UPS'),
(3, 'Ird');


-- -------------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- Rajouter la table type_suivis 
-- Structure de la table `type_suivis`
--

CREATE TABLE IF NOT EXISTS `type_suivis` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

-- Contenu de la table `type_suivis`

INSERT INTO `type_suivis` (`id`, `nom`) VALUES
(1, 'Etalonnage'),
(2, 'Maintenance');



-- -------------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- MODIF TABLE MATERIELS

-- Structure de la table `materiels`
ALTER TABLE `materiels` ADD `date_reception` date DEFAULT NULL;
-- ALTER TABLE `materiels` ADD `organisme` varchar(20) DEFAULT NULL;
ALTER TABLE `materiels` ADD `organisme_id` int(11) DEFAULT NULL;
-- ALTER TABLE `materiels` ADD `lieu_stockage` varchar(45) DEFAULT NULL;
ALTER TABLE `materiels` ADD `site_id` int(11) DEFAULT '2';


-- -----------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- Rajouter la table sites 
-- Structure de la table `sites`
--

CREATE TABLE IF NOT EXISTS `sites` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

INSERT INTO `sites` (`id`, `nom`) VALUES
(1, 'Roches'),
(2, 'Belin'),
(3, 'Tarbes'),
(4, 'CNES');


-- Contraintes pour la table `materiels`

ALTER TABLE `materiels`
  ADD CONSTRAINT `fk_materiels_organisme_id` FOREIGN KEY (`organisme_id`) REFERENCES `organismes` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `fk_materiels_site_id` FOREIGN KEY (`site_id`) REFERENCES `sites` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Transformation des données
-- requete pour remplir le champ organisme_id 
update materiels set organisme_id = NULL where organisme is NULL;
update materiels set organisme_id ="1" where organisme like "CNRS%";
update materiels set organisme_id ="2" where organisme like "UPS%";
update materiels set organisme_id ="3" where organisme like "Ird%";


-- requete pour remplir le champ site_id 
update materiels set site_id = NULL where lieu_stockage is NULL;
update materiels set site_id ="1" where lieu_stockage like "Belin%";
update materiels set site_id ="2" where lieu_stockage like "Roche%";
update materiels set site_id ="3" where lieu_stockage like "Tarbes%";
update materiels set site_id ="4" where lieu_stockage like "CNES%";

alter table `materiels` drop `organisme`;
alter table `materiels` drop `lieu_stockage`;

-- 27/07/2015
-- Rajouter la table documents 
-- Structure de la table `documents`

CREATE TABLE IF NOT EXISTS `documents` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `type_doc` varchar(20) DEFAULT NULL,
  `chemin` varchar(60) DEFAULT NULL,
  `description` varchar(100) DEFAULT NULL,
  `chemin` varchar(100) DEFAULT NULL,
  `materiel_id` int(11) DEFAULT NULL,
  `suivi_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fk_documents_materiel_id` (`materiel_id`),
  KEY `fk_documents_suivi_id` (`suivi_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

-- Contraintes pour la table `documents`

ALTER TABLE `documents`
  ADD CONSTRAINT `fk_documents_materiel_id` FOREIGN KEY (`materiel_id`) REFERENCES `materiels` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `fk_documents_suivi_id` FOREIGN KEY (`suivi_id`) REFERENCES `suivis` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;


DROP TABLE IF EXISTS `fichiers`;

-- Utilisateurs -> Users
-- 25/04/2016
-- Modifications nom table "utilisateurs" ==> "users"
-- Ajout attribut "password" dans la table users
-- Modification attribut "login" de la table users en "username"

CREATE TABLE users AS SELECT * FROM utilisateurs ;

ALTER TABLE `users` ADD `password` VARCHAR(255) DEFAULT '$2y$10$nBQMNstgN.sgad1ZANznY.pbJI.ZG/.Q5qX4gC8SXCFQnDIZC8rcW';

ALTER TABLE `users` CHANGE `login` `username` VARCHAR(45) DEFAULT NULL;

DROP TABLE IF EXISTS `utilisateurs`;

INSERT INTO users (id, nom, username, password, email, role) VALUES
('25', 'super-admin', 'superadmin', '$2y$10$nBQMNstgN.sgad1ZANznY.pbJI.ZG/.Q5qX4gC8SXCFQnDIZC8rcW', 'superadmin@admin.fr', 'Super Administrateur');

--
-- Contraintes pour la table `users`
--
ALTER TABLE `users`
  ADD CONSTRAINT `fk_users_groupes_travails1` FOREIGN KEY (`groupes_metier_id`) REFERENCES `groupes_metiers` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;



DROP TABLE IF EXISTS `configurations`;
CREATE TABLE IF NOT EXISTS `configurations` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(45) NOT NULL COMMENT 'obligatoire (et unique)',
  `mode_install` tinyint(1)  DEFAULT NULL,
  `mode_debug` tinyint(1)  DEFAULT NULL,
  `use_ldap` tinyint(1)  DEFAULT NULL,
  `host_ldap` text DEFAULT NULL,
  `port_ldap` varchar(10)  DEFAULT NULL,
  `authentificationType_ldap` varchar(30)  DEFAULT 'xxx',
  `baseDn_ldap` varchar(30)  DEFAULT NULL,
  `filter_ldap` varchar(30)  DEFAULT NULL,
  `labName` varchar(30)  DEFAULT NULL,
  `labNameShort` varchar(20)  DEFAULT NULL,
  `labPresent` varchar(10)  DEFAULT NULL,
  `labUmr` varchar(30)  DEFAULT NULL,
  `hasPrinter` tinyint(1)  DEFAULT NULL,
  `nom_groupe_thematique` varchar(50) DEFAULT 'Groupe thematique',
  `nom_groupe_metier` varchar(50) DEFAULT 'Groupe metier',
  `envoi_mail_management_dev` tinyint(1) DEFAULT NULL,
  `sender_mail` varchar(500) DEFAULT 'labinvent@irap.omp.eu',
  `emailGuest1` varchar(45)  DEFAULT NULL,
  `emailGuest2` varchar(45)  DEFAULT NULL,
  `emailGuest3` varchar(45)  DEFAULT NULL,
  `emailGuest4` varchar(45)  DEFAULT NULL,
  `emailGuest5` varchar(45)  DEFAULT NULL,
  `emailGuest6` varchar(45)  DEFAULT NULL,
  `emailGuest7` varchar(45)  DEFAULT NULL,
  `emailGuest8` varchar(45)  DEFAULT NULL,
  `emailGuest9` varchar(45)  DEFAULT NULL,
  `emailGuest10` varchar(45)  DEFAULT NULL,
  `test` tinyint(1) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `nom_UNIQUE` (`nom`)
);


Insert into `configurations`(`nom`, `mode_install`, `mode_debug`, `use_ldap`, `host_ldap`, `port_ldap`, `authentificationType_ldap`, `baseDn_ldap`, `filter_ldap`, `labName`, `labNameShort`, `labPresent`, `labUmr`, `hasPrinter`, `emailGuest1`, `emailGuest2`, `emailGuest3`) values ('default', '1', '0', '0', '', '', 'xxx', '', '', 'LABONAME', 'LABO', 'du ', '', '0', '', '', '');

-- EMPRUNTS
-- Structure de la table emprunts
ALTER TABLE `emprunts` ADD `site_id` int(11) DEFAULT NULL;

-- Contrainte de la table emprunts
ALTER TABLE `emprunts`
  ADD CONSTRAINT `fk_emprunts_site_id` FOREIGN KEY (`site_id`) REFERENCES `sites` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Transformation des données
update emprunts set site_id = NULL where e_lieu_stockage is NULL;
update emprunts set site_id ="1" where e_lieu_stockage like "B%";
update emprunts set site_id ="2" where e_lieu_stockage like "R%";
update emprunts set site_id ="3" where e_lieu_stockage like "T%";
update emprunts set site_id ="4" where e_lieu_stockage like "C%";

-- Suppression attribut
ALTER TABLE `emprunts` DROP `e_lieu_stockage`;


-- SUIVIS
-- Structure de la table suivis
ALTER TABLE `suivis` ADD `type_suivi_id` int(11) DEFAULT NULL;

-- Contrainte de la table suivis
ALTER TABLE `suivis`
  ADD CONSTRAINT `fk_suivis_type_suivi_id` FOREIGN KEY (`type_suivi_id`) REFERENCES `type_suivis` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Transformation des données
update suivis set type_suivi_id = NULL where type_intervention is NULL;
update suivis set type_suivi_id ="1" where type_intervention like "Etalonnage%";
update suivis set type_suivi_id ="2" where type_intervention like "Maintenance%";

-- Suppression attribut
ALTER TABLE `suivis` DROP `type_intervention`;

Alter table `suivis` Add `type_frequence` VARCHAR(30) DEFAULT NULL;


Insert into type_suivis(id, nom) values (9, 'Panne');
Insert into sites(id, nom) values (9, 'N/A');

ALTER TABLE `suivis` ADD `panne_resolu` tinyint(1) DEFAULT 1;

ALTER TABLE `materiels` ADD `date_fin_garantie` date DEFAULT NULL;
ALTER TABLE `materiels` ADD `duree_garantie` int(10) DEFAULT NULL;
ALTER TABLE `materiels` ADD `unite_duree_garantie` varchar (30) DEFAULT NULL;

ALTER TABLE `configurations` ADD `prix_inventaire_administratif` int( 10 ) DEFAULT '800';

ALTER TABLE `users` ADD `groupe_thematique_id` int(11) DEFAULT NULL;
ALTER TABLE `users`
  ADD CONSTRAINT `fk_users_groupe_thematique_id` FOREIGN KEY (`groupe_thematique_id`) REFERENCES `groupes_thematiques` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;


update emprunts set date_emprunt = NULL where date_emprunt = '1970-01-01';
update emprunts set date_retour_emprunt = NULL where date_retour_emprunt = '1970-01-01';

update suivis set date_controle = NULL where date_controle = '1970-01-01';
update suivis set date_prochain_controle = NULL where date_prochain_controle = '1970-01-01';

update materiels set date_acquisition = NULL where date_acquisition = '1970-01-01';
update materiels set date_archivage = NULL where date_archivage = '1970-01-01';
update materiels set date_reception = NULL where date_reception = '1970-01-01';


ALTER TABLE `suivis` ADD `groupes_metier_id` int(11) DEFAULT NULL;
ALTER TABLE `suivis` ADD `groupes_thematique_id` int(11) DEFAULT NULL;

ALTER TABLE `suivis` ADD CONSTRAINT `fk_suivis_groupe_thematique` FOREIGN KEY (`groupes_thematique_id`) REFERENCES `groupes_thematiques` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE `suivis` ADD CONSTRAINT `fk_suivis_groupe_metier` FOREIGN KEY (`groupes_metier_id`) REFERENCES `groupes_metiers` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;


COMMIT;