1.1.0_to_1.2.0.sql 6.05 KB
Newer Older
tguillon's avatar
tguillon committed
1 2
BEGIN;

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
--
-- Création de la table articles
--
CREATE TABLE articles (
    id serial NOT NULL PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    description TEXT,
    createdbyorganisation_id INTEGER NOT NULL REFERENCES organisations(id) ON DELETE CASCADE ON UPDATE CASCADE,
    created timestamp without time zone NOT NULL,
    modified timestamp without time zone NOT NULL
);

--
-- Création de la table fichierarticles
--
CREATE TABLE fichierarticles (
    id SERIAL NOT NULL PRIMARY KEY,
    nom VARCHAR(100) NOT NULL,
    url VARCHAR(100) NOT NULL,
    article_id INTEGER NOT NULL REFERENCES articles(id) ON DELETE CASCADE ON UPDATE CASCADE,
    created timestamp without time zone NOT NULL,
    modified timestamp without time zone NOT NULL
);

CREATE UNIQUE INDEX fichierarticles_nom_article_id_idx ON fichierarticles (nom, article_id);

--
-- Création de la table de jointure Articles Organisations
--
CREATE TABLE articles_organisations (
    id SERIAL PRIMARY KEY NOT NULL,
    article_id INTEGER NOT NULL REFERENCES articles(id) ON DELETE CASCADE ON UPDATE CASCADE,
    organisation_id INTEGER NOT NULL REFERENCES organisations(id) ON DELETE CASCADE ON UPDATE CASCADE
);

CREATE UNIQUE INDEX articles_organisations_article_id_organisation_id_idx ON articles_organisations (article_id, organisation_id);

tguillon's avatar
tguillon committed
40 41 42 43
--
-- Insertion de valeur dans la table liste_droits
--
INSERT INTO liste_droits (libelle, value, created, modified) VALUES
tguillon's avatar
tguillon committed
44 45 46 47
('Créer un article dans la FAQ', 28, NOW(), NOW()),
('Modifier un article dans la FAQ', 29, NOW(), NOW()),
('Consulter la FAQ', 30, NOW(), NOW()),
('Supprimer un article dans la FAQ', 31, NOW(), NOW());
tguillon's avatar
tguillon committed
48

49 50 51 52 53 54 55
--
-- Insertion de valeur dans la table etats
--
INSERT INTO etats (libelle, value, created, modified) VALUES
('Initialisation du traitement par le DPO', 11, NOW(), NOW()),
('Rédaction du traitement initialisé', 12, NOW(), NOW());

56
ALTER TABLE organisations DROP verrouiller;
tguillon's avatar
tguillon committed
57

58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
--
-- Création de la table baselegales
--
CREATE TABLE baselegales (
    id serial NOT NULL PRIMARY KEY,
    libelle VARCHAR NOT NULL,
    description VARCHAR NOT NULL,
    created timestamp without time zone NOT NULL,
    modified timestamp without time zone NOT NULL
);
CREATE UNIQUE INDEX baselegales_libelle_idx ON baselegales (libelle);

--
-- Insertion de valeur dans la table baselegales
--
INSERT INTO baselegales (libelle, description, created, modified) VALUES
('Le consentement', 'Article  6  1. a) : La personne concernée a consenti au traitement de ses données à caractère personnel pour une ou plusieurs finalités spécifiques.', NOW(), NOW()),
('Le contrat', 'Article  6  1. b) : Le traitement est nécessaire à l''exécution d''un contrat auquel la personne concernée est partie ou à l''exécution de mesures précontractuelles prises à la demande de celle-ci.', NOW(), NOW()),
('L’obligation légale', 'Article  6  1. c) : Le traitement est nécessaire au respect d''une obligation légale à laquelle le responsable du traitement est soumis.', NOW(), NOW()),
('La sauvegarde des intérêts vitaux', 'Article  6  1. d) : Le traitement est nécessaire à la sauvegarde des intérêts vitaux de la personne concernée ou d''une autre personne physique.', NOW(), NOW()),
('L’intérêt public', 'Article  6  1. e) : Le traitement est nécessaire à l''exécution d''une mission d''intérêt public ou relevant de l''exercice de l''autorité publique dont est investi le responsable du traitement.', NOW(), NOW()),
('Les intérêts légitimes', 'Article  6  1. f) : Le traitement est nécessaire aux fins des intérêts légitimes poursuivis par le responsable du traitement ou par un tiers, à moins que ne prévalent les intérêts ou les libertés et droits fondamentaux de la personne concernée qui exigent une protection des données à caractère personnel, notamment lorsque la personne concernée est un enfant.<br /><br />Le point f) du premier alinéa ne s''applique pas au traitement effectué par les autorités publiques dans l''exécution de leurs missions.', NOW(), NOW());

81 82 83
--
-- ALTER TABLE fg_formulaires TO formulaires
--
84 85
ALTER TABLE fg_formulaires RENAME TO formulaires;
ALTER SEQUENCE fg_formulaires_id_seq RENAME TO formulaires_id_seq;
86 87 88 89 90

ALTER TABLE formulaires
    DROP CONSTRAINT fg_formulaires_organisations_id_fkey,
    ADD CONSTRAINT formulaires_organisations_id_fkey FOREIGN KEY (organisations_id) REFERENCES organisations (id) ON DELETE CASCADE ON UPDATE CASCADE;

91 92 93 94 95 96
ALTER TABLE formulaires ADD COLUMN usesousfinalite BOOLEAN DEFAULT FALSE;
ALTER TABLE formulaires ADD COLUMN usebaselegale BOOLEAN DEFAULT FALSE;
ALTER TABLE formulaires ADD COLUMN usedecisionautomatisee BOOLEAN DEFAULT FALSE;
ALTER TABLE formulaires ADD COLUMN usetransferthorsue BOOLEAN DEFAULT FALSE;
ALTER TABLE formulaires ADD COLUMN usedonneessensible BOOLEAN DEFAULT FALSE;
ALTER TABLE formulaires ADD COLUMN useallextensionfiles BOOLEAN DEFAULT FALSE;
97

98 99 100
ALTER TABLE formulaires ALTER COLUMN soustraitant DROP NOT NULL;
ALTER TABLE formulaires ALTER COLUMN active DROP NOT NULL;
ALTER TABLE formulaires ALTER COLUMN active SET DEFAULT FALSE;
101

102 103 104
--
-- ALTER TABLE fg_champs TO champs
--
105 106
ALTER TABLE fg_champs RENAME TO champs;
ALTER SEQUENCE fg_champs_id_seq RENAME TO champs_id_seq;
107

108
ALTER TABLE champs RENAME COLUMN formulaires_id TO formulaire_id;
109

110 111
ALTER TABLE champs
    DROP CONSTRAINT fg_champs_formulaires_id_fkey,
112 113
    ADD CONSTRAINT champs_formulaire_id_fkey FOREIGN KEY (formulaire_id) REFERENCES formulaires (id) ON DELETE CASCADE ON UPDATE CASCADE;

114 115 116
ALTER TABLE champs ADD COLUMN champ_coresponsable BOOLEAN DEFAULT FALSE;
ALTER TABLE champs ADD COLUMN champ_soustraitant BOOLEAN DEFAULT FALSE;

117 118 119
--
-- ALTER TABLE fiches
--
120 121 122 123
ALTER TABLE fiches
    DROP CONSTRAINT fiches_form_id_fkey,
    ADD CONSTRAINT fiches_form_id_fkey FOREIGN KEY (form_id) REFERENCES formulaires (id) ON DELETE CASCADE ON UPDATE CASCADE;

124 125 126 127 128
ALTER TABLE fiches ADD COLUMN soustraitance BOOL NOT NULL DEFAULT FALSE;

--
-- ALTER TABLE modeles
--
129 130 131
ALTER TABLE modeles
    DROP CONSTRAINT modeles_formulaires_id_fkey,
    ADD CONSTRAINT modeles_formulaires_id_fkey FOREIGN KEY (formulaires_id) REFERENCES formulaires (id) ON DELETE CASCADE ON UPDATE CASCADE;
132

tguillon's avatar
tguillon committed
133
COMMIT;