app/models/dorsale/billing_machine/quotation.rb in dorsale-3.9.3 vs app/models/dorsale/billing_machine/quotation.rb in dorsale-3.9.4

- old
+ new

@@ -27,10 +27,14 @@ default_scope -> { order(unique_index: :desc) } + def document_type + :quotation + end + before_create :assign_unique_index before_create :assign_tracking_id def assign_unique_index if unique_index.nil? @@ -53,10 +57,13 @@ before_save :update_totals def update_totals assign_default_values + lines.each(&:update_total) + apply_vat_rate_to_lines + lines_sum = lines.map(&:total).sum self.total_excluding_taxes = lines_sum - commercial_discount if commercial_discount.nonzero? && lines_sum.nonzero? @@ -100,11 +107,9 @@ vat_rates.first || ::Dorsale::BillingMachine::DEFAULT_VAT_RATE end attr_writer :vat_rate - - before_validation :apply_vat_rate_to_lines def apply_vat_rate_to_lines return if ::Dorsale::BillingMachine.vat_mode == :multiple lines.each do |line|