# frozen_string_literal: true module ErpIntegration # The `ErpIntegration::SalesOrder` exposes an uniformed API for interaction with # third-party ERP vendors. class SalesOrder < Resource attr_accessor :id, :channel, :number, :party, :sale_date, :shipment_address, :amount_invoiced, :attachments, :carrier, :carrier_service, :channel_identifier, :comment, :company, :confirmation_time, :create_date, :currency, :description, :gateway_transaction, :invoice_address, :invoice_method, :invoice_state, :invoices, :lines, :metadata, :payment_term, :payment_total, :price_list, :reference, :sales_person, :shipment_amount, :shipment_method, :shipment_state, :shipments, :shipping_start_date, :state, :tax_amount, :total_amount, :total_quantity, :total_shipment_cost, :untaxed_amount, :warehouse, :weight, :weight_uom, :write_date, :write_uid def cancel self.class.adapter.cancel(id) end def duplicate self.class.adapter.duplicate(id) end def confirm self.class.adapter.confirm(id) end def process self.class.adapter.process(id) end end end