quickbooks-ruby 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/quickbooks-ruby.rb +4 -0
- data/lib/quickbooks/model/batch_request.rb +31 -0
- data/lib/quickbooks/model/batch_response.rb +19 -0
- data/lib/quickbooks/model/custom_field.rb +4 -0
- data/lib/quickbooks/model/fault.rb +14 -0
- data/lib/quickbooks/model/item.rb +0 -1
- data/lib/quickbooks/model/transaction_tax_detail.rb +1 -0
- data/lib/quickbooks/service/batch.rb +11 -0
- data/lib/quickbooks/version.rb +1 -1
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e9f08f2bfe36efcbc4e438d7772eab4c46bc63f6
|
4
|
+
data.tar.gz: 1ca22e4d49058187e2181ce1ced6daeddddf7a60
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee1e2883870be85a1767f5903a8f3b2e078aa8c394be50efb215af98e839276dd77a3ee3d0fc07bb3be152f03604f0a691003390ffee6303fde804883f5a90c8
|
7
|
+
data.tar.gz: 043b4a0f98ff875d583c1f5684877ccd4c68e048a7a8803b02052374eff235bf5a7271ca66c537ea0e14ae9f7f81b6a0592b20a209896ab4bfde2846f693512d
|
data/lib/quickbooks-ruby.rb
CHANGED
@@ -66,6 +66,9 @@ require 'quickbooks/model/tax_rate'
|
|
66
66
|
require 'quickbooks/model/tax_rate_detail'
|
67
67
|
require 'quickbooks/model/sales_tax_rate_list'
|
68
68
|
require 'quickbooks/model/tax_code'
|
69
|
+
require 'quickbooks/model/fault'
|
70
|
+
require 'quickbooks/model/batch_request'
|
71
|
+
require 'quickbooks/model/batch_response'
|
69
72
|
|
70
73
|
#== Services
|
71
74
|
require 'quickbooks/service/service_crud'
|
@@ -92,6 +95,7 @@ require 'quickbooks/service/vendor_credit'
|
|
92
95
|
require 'quickbooks/service/estimate'
|
93
96
|
require 'quickbooks/service/tax_rate'
|
94
97
|
require 'quickbooks/service/tax_code'
|
98
|
+
require 'quickbooks/service/batch'
|
95
99
|
|
96
100
|
module Quickbooks
|
97
101
|
@@logger = nil
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class Quickbooks::Model::BatchRequest < Quickbooks::Model::BaseModel
|
2
|
+
class BatchItemRequest
|
3
|
+
include ROXML
|
4
|
+
XML_NODE = "BatchItemRequest"
|
5
|
+
xml_name XML_NODE
|
6
|
+
|
7
|
+
xml_accessor :operation, :from => "@operation"
|
8
|
+
xml_accessor :bId, :from => "@bId"
|
9
|
+
[:Item, :Account, :Invoice, :Customer, :Bill, :SalesReceipt].each do |model|
|
10
|
+
xml_accessor model.to_s.underscore, from: model.to_s, as: "Quickbooks::Model::#{model.to_s}".constantize
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
XML_COLLECTION_NODE = "IntuitBatchRequest"
|
15
|
+
XML_NODE = "IntuitBatchRequest"
|
16
|
+
REST_RESOURCE = 'batch'
|
17
|
+
xml_name XML_NODE
|
18
|
+
xml_accessor :request_items, from: "BatchItemRequest", as: [Quickbooks::Model::BatchRequest::BatchItemRequest]
|
19
|
+
|
20
|
+
def initialize
|
21
|
+
self.request_items = []
|
22
|
+
end
|
23
|
+
|
24
|
+
def add(batch_item_id, batch_item, operation)
|
25
|
+
bir = Quickbooks::Model::BatchRequest::BatchItemRequest.new
|
26
|
+
bir.operation = operation
|
27
|
+
bir.bId = batch_item_id
|
28
|
+
bir.send("#{batch_item.class::XML_NODE.underscore}=", batch_item)
|
29
|
+
self.request_items << bir
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class Quickbooks::Model::BatchResponse < Quickbooks::Model::BaseModel
|
2
|
+
class BatchItemResponse
|
3
|
+
include ROXML
|
4
|
+
xml_name "BatchItemResponse"
|
5
|
+
|
6
|
+
xml_accessor :bId, :from => "@bId"
|
7
|
+
xml_accessor :fault, :from => 'Fault', :as => Quickbooks::Model::Fault
|
8
|
+
[:Item, :Account, :Invoice, :Customer, :Bill, :SalesReceipt].each do |model|
|
9
|
+
xml_accessor model.to_s.underscore, from: model.to_s, as: "Quickbooks::Model::#{model.to_s}".constantize
|
10
|
+
end
|
11
|
+
|
12
|
+
def fault?
|
13
|
+
fault
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
xml_name "IntuitResponse"
|
18
|
+
xml_accessor :response_items, :from => :BatchItemResponse, as: [Quickbooks::Model::BatchResponse::BatchItemResponse]
|
19
|
+
end
|
@@ -4,6 +4,10 @@ module Quickbooks
|
|
4
4
|
xml_accessor :id, :from => 'Id', :as => Integer
|
5
5
|
xml_accessor :name, :from => 'Name'
|
6
6
|
xml_accessor :type, :from => 'Type'
|
7
|
+
xml_accessor :string_value, :from => 'StringValue'
|
8
|
+
xml_accessor :boolean_value, :from => 'BooleanValue'
|
9
|
+
xml_accessor :date_value, :from => 'DateValue', :as => Date
|
10
|
+
xml_accessor :number_value, :from => 'NumberValue', :as => Integer
|
7
11
|
end
|
8
12
|
end
|
9
13
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Quickbooks
|
2
|
+
module Model
|
3
|
+
class Fault < BaseModel
|
4
|
+
class Error
|
5
|
+
include ROXML
|
6
|
+
xml_name 'Error'
|
7
|
+
xml_accessor :code, :from => "@code"
|
8
|
+
xml_accessor :message, :from => "Message"
|
9
|
+
end
|
10
|
+
|
11
|
+
xml_accessor :errors, :as => [Quickbooks::Model::Fault::Error]
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -29,7 +29,6 @@ module Quickbooks
|
|
29
29
|
|
30
30
|
# read-only
|
31
31
|
xml_accessor :fully_qualified_name, :from => 'FullyQualifiedName'
|
32
|
-
|
33
32
|
xml_accessor :taxable?, :from => 'Taxable'
|
34
33
|
xml_accessor :sales_tax_included?, :from => 'SalesTaxIncluded'
|
35
34
|
xml_accessor :unit_price, :from => 'UnitPrice', :as => BigDecimal, :to_xml => to_xml_big_decimal
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module Quickbooks
|
2
|
+
module Service
|
3
|
+
class Batch < BaseService
|
4
|
+
|
5
|
+
def make_request(entity, options = {})
|
6
|
+
response = do_http_post(url_for_resource('batch'), valid_xml_document(entity.to_xml_ns))
|
7
|
+
Quickbooks::Model::BatchResponse.from_xml(response.plain_body)
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
data/lib/quickbooks/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: quickbooks-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cody Caughlan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-03-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: oauth
|
@@ -164,7 +164,7 @@ dependencies:
|
|
164
164
|
- - '='
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: 3.0.0
|
167
|
-
description: REST API to Quickbooks Online
|
167
|
+
description: QBO V3 REST API to Quickbooks Online
|
168
168
|
email: toolbag@gmail.com
|
169
169
|
executables: []
|
170
170
|
extensions: []
|
@@ -175,6 +175,8 @@ files:
|
|
175
175
|
- lib/quickbooks/model/account_based_expense_line_detail.rb
|
176
176
|
- lib/quickbooks/model/base_model.rb
|
177
177
|
- lib/quickbooks/model/base_reference.rb
|
178
|
+
- lib/quickbooks/model/batch_request.rb
|
179
|
+
- lib/quickbooks/model/batch_response.rb
|
178
180
|
- lib/quickbooks/model/bill.rb
|
179
181
|
- lib/quickbooks/model/bill_line_item.rb
|
180
182
|
- lib/quickbooks/model/bill_payment.rb
|
@@ -191,6 +193,7 @@ files:
|
|
191
193
|
- lib/quickbooks/model/email_address.rb
|
192
194
|
- lib/quickbooks/model/employee.rb
|
193
195
|
- lib/quickbooks/model/estimate.rb
|
196
|
+
- lib/quickbooks/model/fault.rb
|
194
197
|
- lib/quickbooks/model/group_line_detail.rb
|
195
198
|
- lib/quickbooks/model/invoice.rb
|
196
199
|
- lib/quickbooks/model/invoice_line_item.rb
|
@@ -227,6 +230,7 @@ files:
|
|
227
230
|
- lib/quickbooks/service/access_token.rb
|
228
231
|
- lib/quickbooks/service/account.rb
|
229
232
|
- lib/quickbooks/service/base_service.rb
|
233
|
+
- lib/quickbooks/service/batch.rb
|
230
234
|
- lib/quickbooks/service/bill.rb
|
231
235
|
- lib/quickbooks/service/bill_payment.rb
|
232
236
|
- lib/quickbooks/service/company_info.rb
|
@@ -276,5 +280,5 @@ rubyforge_project:
|
|
276
280
|
rubygems_version: 2.0.6
|
277
281
|
signing_key:
|
278
282
|
specification_version: 4
|
279
|
-
summary: REST API to Quickbooks Online
|
283
|
+
summary: REST API to Quickbooks Online
|
280
284
|
test_files: []
|