diff --git a/db/migrate/20230818104038_create_account_onboarding_invitation_lists.rb b/db/migrate/20230818104038_create_account_onboarding_invitation_lists.rb new file mode 100644 index 000000000..878e0d93e --- /dev/null +++ b/db/migrate/20230818104038_create_account_onboarding_invitation_lists.rb @@ -0,0 +1,11 @@ +class CreateAccountOnboardingInvitationLists < ActiveRecord::Migration[7.0] + def change + create_table :account_onboarding_invitation_lists do |t| + t.references :team, null: false, foreign_key: true + t.references :sender, null: false, foreign_key: {to_table: :memberships} + t.jsonb :invitations + + t.timestamps + end + end +end diff --git a/db/migrate/20230818110855_add_invitation_list_to_invitation.rb b/db/migrate/20230818110855_add_invitation_list_to_invitation.rb new file mode 100644 index 000000000..f2e0f0a58 --- /dev/null +++ b/db/migrate/20230818110855_add_invitation_list_to_invitation.rb @@ -0,0 +1,5 @@ +class AddInvitationListToInvitation < ActiveRecord::Migration[7.0] + def change + add_reference :invitations, :invitation_list, null: true, foreign_key: {to_table: :account_onboarding_invitation_lists} + end +end diff --git a/db/schema.rb b/db/schema.rb index f52d0bb36..609427d9e 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,10 +10,20 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.0].define(version: 2022_12_31_003438) do +ActiveRecord::Schema[7.0].define(version: 2023_08_18_110855) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" + create_table "account_onboarding_invitation_lists", force: :cascade do |t| + t.bigint "team_id", null: false + t.bigint "sender_id", null: false + t.jsonb "invitations" + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + t.index ["sender_id"], name: "index_account_onboarding_invitation_lists_on_sender_id" + t.index ["team_id"], name: "index_account_onboarding_invitation_lists_on_team_id" + end + create_table "action_mailbox_inbound_emails", force: :cascade do |t| t.integer "status", default: 0, null: false t.string "message_id", null: false @@ -78,6 +88,8 @@ t.datetime "created_at", precision: nil, null: false t.datetime "updated_at", precision: nil, null: false t.integer "team_id" + t.bigint "invitation_list_id" + t.index ["invitation_list_id"], name: "index_invitations_on_invitation_list_id" t.index ["team_id"], name: "index_invitations_on_team_id" end @@ -338,10 +350,13 @@ t.index ["team_id"], name: "index_webhooks_outgoing_events_on_team_id" end + add_foreign_key "account_onboarding_invitation_lists", "memberships", column: "sender_id" + add_foreign_key "account_onboarding_invitation_lists", "teams" 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 "integrations_stripe_installations", "oauth_stripe_accounts" add_foreign_key "integrations_stripe_installations", "teams" + add_foreign_key "invitations", "account_onboarding_invitation_lists", column: "invitation_list_id" add_foreign_key "invitations", "teams" add_foreign_key "memberships", "invitations" add_foreign_key "memberships", "memberships", column: "added_by_id"