FEAT: init admins group

This commit is contained in:
seb-by-ouidou 2023-08-25 20:53:30 +00:00 committed by seb-by-ouidou
parent 1d0054c38e
commit e2f792b44b
49 changed files with 708 additions and 3 deletions

View file

@ -0,0 +1,9 @@
class CreateAdminsGroupManagers < ActiveRecord::Migration[7.0]
def change
create_table "admins_group_managers" do |t|
t.bigint :user_id, null: false
t.index [:user_id], name: :index_admins_group_managers_on_user_id
t.timestamps
end
end
end

View file

@ -0,0 +1,15 @@
class CreateAdminsGroups < ActiveRecord::Migration[7.0]
def change
create_table "admins_groups" do |t|
t.string :name, null: false
t.references :admins_group
t.index [:name], name: :index_admins_groups_on_name
t.timestamps
end
create_join_table :admins_groups, :admins_group_managers do |t|
t.index [:admins_group_id, :admins_group_manager_id], name: :index_on_admins_group_and_admins_group_manager
t.index [:admins_group_manager_id, :admins_group_id], name: :index_on_admins_group_manager_and_admins_group
end
end
end

View file

@ -0,0 +1,7 @@
class AddAdminsGroupToAdministrateurs < ActiveRecord::Migration[7.0]
disable_ddl_transaction!
def change
add_reference :administrateurs, :admins_group, index: { algorithm: :concurrently }, null: true
end
end

View file

@ -0,0 +1,5 @@
class AddForeignKeyAdminsGroupToAdministrateurs < ActiveRecord::Migration[7.0]
def change
add_foreign_key :administrateurs, :admins_groups, validate: false
end
end

View file

@ -0,0 +1,5 @@
class ValidateForeignKeyAdminsGroupToAdministrateurs < ActiveRecord::Migration[7.0]
def change
validate_foreign_key :administrateurs, :admins_groups
end
end

View file

@ -61,9 +61,11 @@ ActiveRecord::Schema[7.0].define(version: 2023_09_28_083809) do
end
create_table "administrateurs", id: :serial, force: :cascade do |t|
t.bigint "admins_group_id"
t.datetime "created_at", precision: 6
t.datetime "updated_at", precision: 6
t.bigint "user_id", null: false
t.index ["admins_group_id"], name: "index_administrateurs_on_admins_group_id"
t.index ["user_id"], name: "index_administrateurs_on_user_id"
end
@ -88,6 +90,29 @@ ActiveRecord::Schema[7.0].define(version: 2023_09_28_083809) do
t.index ["procedure_id"], name: "index_administrateurs_procedures_on_procedure_id"
end
create_table "admins_group_managers", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.bigint "user_id", null: false
t.index ["user_id"], name: "index_admins_group_managers_on_user_id"
end
create_table "admins_group_managers_groups", id: false, force: :cascade do |t|
t.bigint "admins_group_id", null: false
t.bigint "admins_group_manager_id", null: false
t.index ["admins_group_id", "admins_group_manager_id"], name: "index_on_admins_group_and_admins_group_manager"
t.index ["admins_group_manager_id", "admins_group_id"], name: "index_on_admins_group_manager_and_admins_group"
end
create_table "admins_groups", force: :cascade do |t|
t.bigint "admins_group_id"
t.datetime "created_at", null: false
t.string "name", null: false
t.datetime "updated_at", null: false
t.index ["admins_group_id"], name: "index_admins_groups_on_admins_group_id"
t.index ["name"], name: "index_admins_groups_on_name"
end
create_table "api_tokens", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t|
t.bigint "administrateur_id", null: false
t.bigint "allowed_procedure_ids", array: true
@ -1034,6 +1059,7 @@ ActiveRecord::Schema[7.0].define(version: 2023_09_28_083809) do
add_foreign_key "active_storage_attachments", "active_storage_blobs", column: "blob_id"
add_foreign_key "active_storage_variant_records", "active_storage_blobs", column: "blob_id"
add_foreign_key "administrateurs", "admins_groups"
add_foreign_key "administrateurs", "users"
add_foreign_key "administrateurs_instructeurs", "administrateurs"
add_foreign_key "administrateurs_instructeurs", "instructeurs"