lib/quickbooks/model/batch_request.rb
class Quickbooks::Model::BatchRequest < Quickbooks::Model::BaseModel class BatchItemRequest include ROXML XML_NODE = "BatchItemRequest" xml_name XML_NODE xml_accessor :operation, :from => "@operation" xml_accessor :bId, :from => "@bId" # Supported Entities xml_accessor :account, from: "Account", as: Quickbooks::Model::Account xml_accessor :bill_payment, from: "BillPayment", as: Quickbooks::Model::BillPayment xml_accessor :bill, from: "Bill", as: Quickbooks::Model::Bill xml_accessor :credit_memo, from: "CreditMemo", as: Quickbooks::Model::CreditMemo xml_accessor :customer, from: "Customer", as: Quickbooks::Model::Customer xml_accessor :invoice, from: "Invoice", as: Quickbooks::Model::Invoice xml_accessor :item, from: "Item", as: Quickbooks::Model::Item xml_accessor :journal_entry, from: "JournalEntry", as: Quickbooks::Model::JournalEntry xml_accessor :payment, from: "Payment", as: Quickbooks::Model::Payment xml_accessor :purchase_order, from: "PurchaseOrder", as: Quickbooks::Model::PurchaseOrder xml_accessor :purchase, from: "Purchase", as: Quickbooks::Model::Purchase xml_accessor :refund_receipt, from: "RefundReceipt", as: Quickbooks::Model::RefundReceipt xml_accessor :sales_receipt, from: "SalesReceipt", as: Quickbooks::Model::SalesReceipt xml_accessor :time_activity, from: "TimeActivity", as: Quickbooks::Model::TimeActivity xml_accessor :vendor, from: "Vendor", as: Quickbooks::Model::Vendor end XML_COLLECTION_NODE = "IntuitBatchRequest" XML_NODE = "IntuitBatchRequest" REST_RESOURCE = 'batch' xml_name XML_NODE xml_accessor :request_items, from: "BatchItemRequest", as: [Quickbooks::Model::BatchRequest::BatchItemRequest] def initialize self.request_items = [] end def add(batch_item_id, batch_item, operation) bir = Quickbooks::Model::BatchRequest::BatchItemRequest.new bir.operation = operation bir.bId = batch_item_id bir.send("#{batch_item.class::XML_NODE.underscore}=", batch_item) self.request_items << bir end end