Sha256: f1a83e4005a4f74a78224bd7c44ec6076cee6b2b79771530ce43065f7eabb984

Contents?: true

Size: 674 Bytes

Versions: 3

Compression:

Stored size: 674 Bytes

Contents

module SolidusAvataxCertified
  module Request
    class GetTax < SolidusAvataxCertified::Request::Base
      def generate
        @request = {
          DocCode: order.number,
          DocDate: doc_date,
          Discount: order.all_adjustments.promotion.eligible.sum(:amount).abs.to_s,
          Commit: @commit,
          DocType: @doc_type ? @doc_type : 'SalesOrder',
          Addresses: address_lines,
          Lines: sales_lines
        }.merge(base_tax_hash)

        check_vat_id

        @request
      end

      protected

      def doc_date
        order.completed? ? order.completed_at.strftime('%F') : Date.today.strftime('%F')
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
solidus_avatax_certified-3.0.0 app/models/solidus_avatax_certified/request/get_tax.rb
solidus_avatax_certified-2.0.0 app/models/solidus_avatax_certified/request/get_tax.rb
solidus_avatax_certified-1.1.0 app/models/solidus_avatax_certified/request/get_tax.rb