Sha256: 0832e20ec8337f36f1ea9346b83b56281a0277d1e3bdea526d7bd9e09c29aa24

Contents?: true

Size: 1.06 KB

Versions: 2

Compression:

Stored size: 1.06 KB

Contents

# This migration comes from spree (originally 20150609093816)
class IncreaseScaleOnPreTaxAmounts < ActiveRecord::Migration
  def change
    # set pre_tax_amount on shipments to discounted_amount - included_tax_total
    # so that the null: false option on the shipment pre_tax_amount doesn't generate
    # errors.
    #
    execute(<<-SQL)
      UPDATE spree_shipments
      SET pre_tax_amount = (cost + promo_total) - included_tax_total
      WHERE pre_tax_amount IS NULL;
    SQL

    # set pre_tax_amount on line_items to discounted_amount - included_tax_total
    # so that the null: false option on the line_item pre_tax_amount doesn't generate
    # errors.
    #
    execute(<<-SQL)
      UPDATE spree_line_items
      SET pre_tax_amount = (price * quantity + promo_total) - included_tax_total
      WHERE pre_tax_amount IS NULL;
    SQL

    change_column :spree_line_items, :pre_tax_amount, :decimal, precision: 12, scale: 4, default: 0.0, null: false
    change_column :spree_shipments, :pre_tax_amount, :decimal, precision: 12, scale: 4, default: 0.0, null: false
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
spree_order_reporting-0.0.2 spec/dummy/db/migrate/20160707103593_increase_scale_on_pre_tax_amounts.spree.rb
spree_order_reporting-0.0.1 spec/dummy/db/migrate/20160706112545_increase_scale_on_pre_tax_amounts.spree.rb