ash_admin/dev/repo/migrations/20201206012255_migrate_resources1.exs

65 lines
1.8 KiB
Elixir
Raw Normal View History

2020-12-08 19:22:24 +13:00
defmodule Demo.Repo.Migrations.MigrateResources1 do
@moduledoc """
Updates resources based on their most recent snapshots.
This file was autogenerated with `mix ash_postgres.generate_migrations`
"""
use Ecto.Migration
def up() do
create table(:users, primary_key: false) do
add(:id, :binary_id, null: true, default: nil, primary_key: true)
add(:representative, :boolean, null: true, default: nil, primary_key: false)
add(:last_name, :text, null: true, default: nil, primary_key: false)
add(:first_name, :text, null: true, default: nil, primary_key: false)
end
create(
unique_index(:users, [:first_name, :last_name],
name: "users_representative_name_unique_index",
where: "representative = true"
)
)
alter table(:users) do
add(:admin, :boolean, null: false, default: false, primary_key: false)
end
create table(:tickets, primary_key: false) do
add(:id, :binary_id, null: true, default: nil, primary_key: true)
add(:subject, :text, null: false, default: nil, primary_key: false)
add(:status, :text, null: false, default: nil, primary_key: false)
add(:response, :text, null: true, default: nil, primary_key: false)
add(:representative_id, references("users", type: :binary_id, column: :id),
default: nil,
primary_key: false
)
add(:reporter_id, references("users", type: :binary_id, column: :id),
default: nil,
primary_key: false
)
add(:description, :text, null: true, default: nil, primary_key: false)
end
end
def down() do
drop(table("tickets"))
alter table(:users) do
remove(:admin)
end
drop_if_exists(
unique_index(:users, [:first_name, :last_name],
name: "users_representative_name_unique_index"
)
)
drop(table("users"))
end
end