Sha256: fb4aeb883f0654b3c6dced385d6cf9a41ca7144a7931310e84c908e65beda411

Contents?: true

Size: 927 Bytes

Versions: 25

Compression:

Stored size: 927 Bytes

Contents

# frozen_string_literal: true
# This migration comes from spree (originally 20170319191942)

class RemoveOrderIdFromInventoryUnits < ActiveRecord::Migration[5.0]
  class InconsistentInventoryUnitError < StandardError; end

  class InventoryUnit < ActiveRecord::Base
    self.table_name = "spree_inventory_units"
    belongs_to :shipment
  end

  class Shipment < ActiveRecord::Base
    self.table_name = "spree_shipments"
    has_many :inventory_units
  end

  def up
    if InventoryUnit.
        joins(:shipment).
        where.not(
          'spree_inventory_units.order_id = spree_shipments.order_id'
        ).exists?
      raise InconsistentInventoryUnitError, "You have inventory units with inconsistent order references. Please fix those before running this migration"
    end
    remove_column :spree_inventory_units, :order_id
  end

  def down
    add_reference :spree_inventory_units, :order, index: true
  end
end

Version data entries

25 entries across 25 versions & 9 rubygems

Version Path
solidus_i18n-2.2.0 spec/dummy/db/migrate/20210218213831_remove_order_id_from_inventory_units.spree.rb
solidus_i18n-2.1.1 spec/dummy/db/migrate/20210218213831_remove_order_id_from_inventory_units.spree.rb
solidus_auth_devise-2.5.4 spec/dummy/db/migrate/20211112052451_remove_order_id_from_inventory_units.spree.rb
solidus_reports-1.0.0 spec/dummy/db/migrate/20211108200420_remove_order_id_from_inventory_units.spree.rb
solidus_i18n-2.1.0 spec/dummy/db/migrate/20210218213831_remove_order_id_from_inventory_units.spree.rb
solidus_auth_devise-2.5.3 spec/dummy/db/migrate/20210129115363_remove_order_id_from_inventory_units.spree.rb
solidus_auth_devise-2.5.2 spec/dummy/db/migrate/20201006131554_remove_order_id_from_inventory_units.spree.rb
solidus_auth_devise-2.5.1 spec/dummy/db/migrate/20201006131554_remove_order_id_from_inventory_units.spree.rb
solidus_auth_devise-2.5.0 spec/dummy/db/migrate/20201006131554_remove_order_id_from_inventory_units.spree.rb
solidus_reviews-1.4.1 spec/dummy/db/migrate/20200810122120_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.7 spec/dummy/db/migrate/20191128105353_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.6 spec/dummy/db/migrate/20191122155252_remove_order_id_from_inventory_units.spree.rb
solidus_drip-0.1.0 spec/dummy/db/migrate/20191101230319_remove_order_id_from_inventory_units.spree.rb
solidus_drip-0.0.1 spec/dummy/db/migrate/20191101230319_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.5 spec/dummy/db/migrate/20191028084765_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.4 spec/dummy/db/migrate/20190926134956_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.3 spec/dummy/db/migrate/20190924075650_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.2 spec/dummy/db/migrate/20190920154640_remove_order_id_from_inventory_units.spree.rb
solidus_billing_address-0.0.1 spec/dummy/db/migrate/20190823131016_remove_order_id_from_inventory_units.spree.rb
solidus_bank_transfer-0.1.0 spec/dummy/db/migrate/20190822093450_remove_order_id_from_inventory_units.spree.rb