Commit | Line | Data |
---|---|---|
b9ad0878 PC |
1 | -- Import complet des anciens |
2 | ||
3 | DROP TABLE IF EXISTS `fusionax_anciens`; | |
4 | ||
5 | CREATE TABLE IF NOT EXISTS `fusionax_anciens` ( | |
6 | `AN` varbinary(2) NOT NULL COMMENT 'Vaut toujours AN pour cette table', | |
7 | `id_ancien` varbinary(8) NOT NULL COMMENT 'Id unique de l''ancien', | |
8 | `Login` varbinary(15) NOT NULL COMMENT 'Login sur le site de l''AX', | |
9 | `Password` int(11) NOT NULL COMMENT 'Mot de passe sur le site AX', | |
10 | `promotion_etude` int(11) NOT NULL COMMENT 'Promotion avec laquelle il/elle a fait ses études', | |
11 | `Groupe_promo` enum('','A','B','C','N','S') character set binary NOT NULL COMMENT 'Groupe de promotion (code compris seulement par AX)', | |
12 | `Nom_patronymique` varchar(50) character set utf8 NOT NULL COMMENT 'Nom patronymique (nom de jeune fille) sans la particule', | |
13 | `partic_patro` varchar(5) character set utf8 NOT NULL COMMENT 'Particule du nom patronymique', | |
14 | `prenom` varchar(30) character set utf8 NOT NULL COMMENT 'Prénom', | |
15 | `Nom_usuel` varchar(50) character set utf8 NOT NULL COMMENT 'Nom usuel (nom marital par exemple) sans la particule', | |
16 | `partic_nom` varchar(5) character set utf8 NOT NULL COMMENT 'Particule du nom usuel', | |
17 | `Nom_complet` varchar(80) character set utf8 NOT NULL COMMENT 'Nom patronymique complet (avec la particule)', | |
18 | `Civilite` enum('','.','M','MME','MLLE') character set utf8 NOT NULL COMMENT 'Civilité', | |
19 | `Code_nationalite` varbinary(2) NOT NULL COMMENT 'Nationalité (code)', | |
20 | `Type_membre` enum('','*','F','FB','P','PB','T','TB','TA') character set binary NOT NULL COMMENT 'Type de membre (code compris seulement par AX)', | |
21 | `corps_sortie` varchar(10) character set utf8 NOT NULL COMMENT 'Corps de sortie (ou D si aucun)', | |
22 | `Date_deces` DATE COMMENT 'Date de décès', | |
23 | `grade` varbinary(20) NOT NULL COMMENT 'Grade actuel dans son corps', | |
24 | `Mel_usage` varbinary(150) NOT NULL COMMENT 'Adresse e-mail d''usage', | |
25 | `Mel_publiable` tinyint(4) NOT NULL COMMENT 'Autorisation d''utiliser le mail', | |
26 | `tel_mobile` varbinary(30) NOT NULL COMMENT 'Numéro de téléphone mobile', | |
27 | `annee_dernCot` int(11) NOT NULL COMMENT 'Année de dernière cotisation AX', | |
28 | `Representant` enum('','K','DE') character set binary NOT NULL COMMENT 'Représentant de promotion', | |
29 | `hash_adr_defaut` binary(5) NOT NULL COMMENT 'Hash de l''adresse par défaut', | |
30 | `Date_maj` DATE NOT NULL, | |
31 | PRIMARY KEY (`id_ancien`) | |
32 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; | |
33 | ||
34 | LOAD DATA LOCAL INFILE 'Anciens.txt' INTO TABLE `fusionax_anciens` FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n' | |
35 | (`AN`, `id_ancien`, `Login`, `Password`, `promotion_etude`, `Groupe_promo`, `Nom_patronymique`, `partic_patro`, `prenom`, Nom_usuel, partic_nom, | |
36 | Nom_complet, Civilite, Code_nationalite, Type_membre, corps_sortie, @StringDate_deces, grade, Mel_usage, Mel_publiable, | |
37 | tel_mobile, annee_dernCot, Representant, @Type_adr_defaut, @AdrC_Ligne1, @AdrC_Ligne2, @AdrC_Ligne3, @AdrC_code_postal, @AdrC_ville, | |
38 | @AdrC_zip_cedex, @AdrC_etat_distr, @AdrC_pays, @tel, @fax, @StringDate_maj) | |
39 | SET | |
40 | `hash_adr_defaut` = SUBSTRING( MD5( @Type_adr_defaut ), 1, 5), | |
41 | `Date_maj` = CONCAT(SUBSTRING(@StringDate_maj,7),'-',SUBSTRING(@StringDate_maj,4,2),'-',SUBSTRING(@StringDate_maj,1,2)), | |
42 | `Date_deces` = CONCAT(SUBSTRING(@StringDate_deces,7),'-',SUBSTRING(@StringDate_deces,4,2),'-',SUBSTRING(@StringDate_deces,1,2)); | |
43 | ||
cc8ea8b2 | 44 | -- Correspondances entre fiches X.org et fiches AX |
b9ad0878 PC |
45 | DROP TABLE IF EXISTS `fusionax_import`; |
46 | ||
47 | CREATE TABLE IF NOT EXISTS `fusionax_import` ( | |
48 | `id_ancien` binary(8) NOT NULL COMMENT 'identifiant AX de l''ancien', | |
49 | `user_id` int(11) default NULL COMMENT 'identifiant x.org de l''ancien si on l''a trouvé', | |
50 | `date_match_id` timestamp NULL default NULL COMMENT 'date de mise en correspondance des identifiants', | |
51 | PRIMARY KEY (`id_ancien`), | |
52 | KEY `user_id` (`user_id`) | |
53 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; | |
54 | ||
55 | INSERT INTO `fusionax_import` ( SELECT `id_ancien`, NULL, NULL FROM `fusionax_anciens` ); | |
cc8ea8b2 | 56 | REPLACE INTO `fusionax_import` ( SELECT `matricule_ax`, `user_id`, NOW() FROM `auth_user_md5` ); |
b9ad0878 PC |
57 | |
58 | DROP VIEW IF EXISTS `fusionax_deceased`; | |
59 | ||
60 | CREATE VIEW `fusionax_deceased` AS | |
61 | SELECT u.user_id, a.id_ancien, u.nom, u.prenom, u.promo, u.deces AS deces_xorg, a.Date_deces AS deces_ax | |
62 | FROM `auth_user_md5` AS u | |
63 | INNER JOIN fusionax_anciens AS a ON ( a.id_ancien = u.matricule_ax ) | |
64 | WHERE u.deces != a.Date_deces; |