Aller au contenu

app.module_dependance

Dépendances entre modules, reflet des manifestes du domaine (packages/domain/src/modules/manifestes.ts) : un module ne s’active que si ses modules requis sont actifs, et un module requis ne se désactive pas tant qu’un module qui en dépend est actif.

Name Type Default Nullable Children Parents Comment
id uuid app.uuid_v7() false Identifiant stable (UUID v7).
module_code text false app.module Module qui dépend.
requis_code text false app.module Module requis.
cree_le timestamp with time zone now() false Date de création de la ligne.
modifie_le timestamp with time zone now() false Date de dernière modification (par migration seulement).
Name Type Definition
module_dependance_check CHECK CHECK ((module_code <> requis_code))
module_dependance_module_code_fkey FOREIGN KEY FOREIGN KEY (module_code) REFERENCES app.module(code)
module_dependance_requis_code_fkey FOREIGN KEY FOREIGN KEY (requis_code) REFERENCES app.module(code)
module_dependance_pkey PRIMARY KEY PRIMARY KEY (id)
module_dependance_module_code_requis_code_key UNIQUE UNIQUE (module_code, requis_code)
Name Definition
module_dependance_pkey CREATE UNIQUE INDEX module_dependance_pkey ON app.module_dependance USING btree (id)
module_dependance_module_code_requis_code_key CREATE UNIQUE INDEX module_dependance_module_code_requis_code_key ON app.module_dependance USING btree (module_code, requis_code)
Name Definition
journal CREATE TRIGGER journal AFTER INSERT OR DELETE OR UPDATE ON app.module_dependance FOR EACH ROW EXECUTE FUNCTION journal.tg_journaliser()
modifie_le CREATE TRIGGER modifie_le BEFORE UPDATE ON app.module_dependance FOR EACH ROW EXECUTE FUNCTION app.tg_modifie_le()
erDiagram

"app.module_dependance" }o--|| "app.module" : "FOREIGN KEY (module_code) REFERENCES app.module(code)"
"app.module_dependance" }o--|| "app.module" : "FOREIGN KEY (requis_code) REFERENCES app.module(code)"

"app.module_dependance" {
  uuid id "Identifiant stable (UUID v7)."
  text module_code FK "Module qui dépend."
  text requis_code FK "Module requis."
  timestamp_with_time_zone cree_le "Date de création de la ligne."
  timestamp_with_time_zone modifie_le "Date de dernière modification (par migration seulement)."
}
"app.module" {
  uuid id "Identifiant stable (UUID v7)."
  text code "Code du module ; préfixe de ses permissions (EC-092)."
  text libelle_fr "Libellé en français."
  text libelle_en "Libellé en anglais."
  boolean toujours_actif "Vrai pour le noyau : il ne s'active ni ne se désactive."
  smallint ordre "Ordre d'affichage."
  timestamp_with_time_zone cree_le "Date de création de la ligne."
  timestamp_with_time_zone modifie_le "Date de dernière modification (par migration seulement)."
}

Generated by tbls