diff --git a/app/controllers/cards/engagements_controller.rb b/app/controllers/cards/engagements_controller.rb deleted file mode 100644 index 73b8e9c9d3..0000000000 --- a/app/controllers/cards/engagements_controller.rb +++ /dev/null @@ -1,18 +0,0 @@ -class Cards::EngagementsController < ApplicationController - include CardScoped - - def create - case params[:engagement] - when "doing" - @card.engage - when "on_deck" - @card.move_to_on_deck - end - render_card_replacement - end - - def destroy - @card.reconsider - render_card_replacement - end -end diff --git a/app/models/card/engagement.rb b/app/models/card/engagement.rb deleted file mode 100644 index 2f45543dc9..0000000000 --- a/app/models/card/engagement.rb +++ /dev/null @@ -1,6 +0,0 @@ -class Card::Engagement < ApplicationRecord - belongs_to :account, default: -> { card.account } - belongs_to :card, class_name: "::Card", touch: true - - validates :status, presence: true, inclusion: { in: %w[doing on_deck] } -end diff --git a/db/migrate/20251219120755_drop_card_engagements.rb b/db/migrate/20251219120755_drop_card_engagements.rb new file mode 100644 index 0000000000..634d64456a --- /dev/null +++ b/db/migrate/20251219120755_drop_card_engagements.rb @@ -0,0 +1,16 @@ +class DropCardEngagements < ActiveRecord::Migration[8.2] + def up + drop_table :card_engagements + end + + def down + create_table :card_engagements, id: :uuid do |t| + t.references :account, type: :uuid, null: false + t.references :card, type: :uuid, null: false, index: true + t.string :status, null: false + t.timestamps + end + + add_index :card_engagements, [ :account_id, :status ] + end +end diff --git a/db/schema.rb b/db/schema.rb index 645cb7a96f..c120a87aea 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[8.2].define(version: 2025_12_10_054934) do +ActiveRecord::Schema[8.2].define(version: 2025_12_19_120755) do create_table "accesses", id: :uuid, charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t| t.datetime "accessed_at" t.uuid "account_id", null: false @@ -169,16 +169,6 @@ t.index ["card_id"], name: "index_card_activity_spikes_on_card_id", unique: true end - create_table "card_engagements", id: :uuid, charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t| - t.uuid "account_id", null: false - t.uuid "card_id" - t.datetime "created_at", null: false - t.string "status", default: "doing", null: false - t.datetime "updated_at", null: false - t.index ["account_id", "status"], name: "index_card_engagements_on_account_id_and_status" - t.index ["card_id"], name: "index_card_engagements_on_card_id" - end - create_table "card_goldnesses", id: :uuid, charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t| t.uuid "account_id", null: false t.uuid "card_id", null: false diff --git a/test/fixtures/card/engagements.yml b/test/fixtures/card/engagements.yml deleted file mode 100644 index 8c96bd4b5f..0000000000 --- a/test/fixtures/card/engagements.yml +++ /dev/null @@ -1,4 +0,0 @@ -logo: - id: <%= ActiveRecord::FixtureSet.identify("logo_engagement", :uuid) %> - account: 37s_uuid - card: logo_uuid