108 lines
6.0 KiB
SQL
108 lines
6.0 KiB
SQL
\echo ******************************
|
|
\echo * Dropping database participer_thsf
|
|
\echo ******************************
|
|
|
|
\c postgres;
|
|
drop database participer_thsf;
|
|
|
|
\echo **************************
|
|
\echo * Dropping role participer_thsf
|
|
\echo **************************
|
|
drop role participer_thsf;
|
|
|
|
\echo ***************************************************
|
|
\echo * Creating role participer_thsf with password participer_thsf
|
|
\echo ***************************************************
|
|
create role participer_thsf with LOGIN ENCRYPTED PASSWORD 'participer_thsf';
|
|
|
|
\echo ******************************
|
|
\echo * Creating database participer_thsf
|
|
\echo ******************************
|
|
create database participer_thsf;
|
|
|
|
\echo *******************************************
|
|
\echo * Giving participer_thsf ownership to participer_thsf
|
|
\echo *******************************************
|
|
alter database participer_thsf owner to participer_thsf;
|
|
|
|
\echo *********************************
|
|
\echo * Creating participer_thsf_users table
|
|
\echo *********************************
|
|
|
|
\c participer_thsf;
|
|
CREATE TABLE participer_thsf_users (
|
|
id serial primary key,
|
|
mail text not NULL,
|
|
password text not NULL,
|
|
name text,
|
|
phone text,
|
|
diet text,
|
|
is_admin integer not NULL
|
|
);
|
|
|
|
|
|
\echo *********************************
|
|
\echo * Creating participer_thsf_roles table
|
|
\echo *********************************
|
|
|
|
CREATE TABLE participer_thsf_roles (
|
|
id serial primary key,
|
|
role text not NULL,
|
|
description text not NULL
|
|
);
|
|
|
|
\echo *********************************
|
|
\echo * Creating participer_thsf_turns table
|
|
\echo *********************************
|
|
CREATE TYPE dow AS ENUM ('Jeudi', 'Vendredi', 'Samedi', 'Dimanche');
|
|
CREATE TABLE participer_thsf_turns (
|
|
id serial primary key,
|
|
role_id integer not NULL,
|
|
user_id integer,
|
|
wday dow not NULL,
|
|
start_time time not NULL,
|
|
end_time time not NULL,
|
|
constraint fk_turns_role
|
|
foreign key (role_id)
|
|
REFERENCES participer_thsf_roles (id),
|
|
constraint fk_turns_user
|
|
foreign key (user_id)
|
|
REFERENCES participer_thsf_users (id)
|
|
);
|
|
|
|
\echo *************************************************
|
|
\echo * Giving participer_thsf_users ownership to participer_thsf
|
|
\echo *************************************************
|
|
alter table participer_thsf_users owner to participer_thsf;
|
|
|
|
\echo *************************************************
|
|
\echo * Giving participer_thsf_roles ownership to participer_thsf
|
|
\echo *************************************************
|
|
alter table participer_thsf_roles owner to participer_thsf;
|
|
|
|
\echo *************************************************
|
|
\echo * Giving participer_thsf_turns ownership to participer_thsf
|
|
\echo *************************************************
|
|
alter table participer_thsf_turns owner to participer_thsf;
|
|
|
|
\echo *********************************************************************
|
|
\echo * Inserting user demo identified by password demo to participer_thsf_users
|
|
\echo *********************************************************************
|
|
insert into participer_thsf_users (mail, password, name, phone, diet, is_admin) values ('bofh@tetalab.org',
|
|
'$2b$12$wm7PQ9IE7TYGYk1XB11mPusq7HsjYLYxt5G4v5Wz.jZbh5iWDHP5q',
|
|
'BOFH',
|
|
'0000000000',
|
|
'Omnivore',
|
|
1);
|
|
|
|
\echo *********************************************************************
|
|
\echo * Inserting roles to participer_thsf_roles
|
|
\echo *********************************************************************
|
|
insert into participer_thsf_roles (role, description) values ('Préparation/Installation/signalétique', 'Fermeture des zones inaccessibles au public|Prépa buvette : allumage tireuses et frigos 4h avant ouverture + approvisionnement des bars en produits destinés à la vente|Préparation des différents postes / stands selon besoins : PLN, billetterie, T-Shirts...|Prépa toilettes public : aspiration/pompage, nettoyage à grandes eaux, remplissage du produit, changement poubelles, approvisionnement PQ|Nettoyage lieu, réapprovisionnement poubelles aux endroits stratégiques');
|
|
insert into participer_thsf_roles (role, description) values ('Volante', 'veille à la sécurité du lieu : rondes, surveillance accès, gestion de crises, messager, remplaçant, etc... (collaboration avec référent staff)|Ramassage verre, check PQ, ménage ponctuel|Sur le dernier créneau horaire, nettoyage de deux blocs WC|Au moins une personne connaissant bien Myrys sur chaque créneau horaire');
|
|
insert into participer_thsf_roles (role, description) values ('P.L.N', 'Accueil public, explication du concept de PLN, tampons (si besoin)|Informer et guider le public (prog, espaces, toilettes,...)|Comptage du public');
|
|
insert into participer_thsf_roles (role, description) values ('Buvette','Service au bar et encaissement (caisse ou tickets boisson selon besoins)|Nettoyage régulier : bar, tireuses, cendriers, verres abandonnés...');
|
|
insert into participer_thsf_roles (role, description) values ('Billeterie','Vente de tickets boisson / 1 ticket = 2,50 €|Poinçonnage des cartes VIP. 1 poinçon = 1 ticket = 1 euros|Tickets valables sur les 4 jours mais NON REMBOURSABLES');
|
|
insert into participer_thsf_roles (role, description) values ('Catering', 'Vérification de l''accès au catering (badge)|Service à l''assiette si besoin, gestion des quantités, réapprovisionnement du buffet|Maintenir la propreté des espaces catering (cuisine, buffet, tables, salle d''AG, tables extérieures, jardins)|Informer / rappeler le principe d''autogestion pour la vaisselle');
|
|
insert into participer_thsf_roles (role, description) values ('Ménage', 'Nettoyage général à la fermeture du lieu : ramasser verres / déchets / cendriers, sortir poubelles, cleaner surfaces (bar, stand,...) + balai');
|