quickbooks-ruby 0.0.2 → 0.0.3
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.rb → quickbooks-ruby.rb} +26 -4
- data/lib/quickbooks/model/account.rb +91 -0
- data/lib/quickbooks/model/account_based_expense_line_detail.rb +15 -0
- data/lib/quickbooks/model/base_model.rb +21 -0
- data/lib/quickbooks/model/{customer_ref.rb → base_reference.rb} +1 -1
- data/lib/quickbooks/model/bill.rb +36 -0
- data/lib/quickbooks/model/bill_line_item.rb +23 -0
- data/lib/quickbooks/model/bill_payment.rb +34 -0
- data/lib/quickbooks/model/bill_payment_check.rb +12 -0
- data/lib/quickbooks/model/bill_payment_credit_card.rb +10 -0
- data/lib/quickbooks/model/bill_payment_line_item.rb +21 -0
- data/lib/quickbooks/model/check_payment.rb +11 -0
- data/lib/quickbooks/model/credit_card_payment.rb +17 -0
- data/lib/quickbooks/model/credit_memo.rb +38 -0
- data/lib/quickbooks/model/customer.rb +18 -15
- data/lib/quickbooks/model/discount_override.rb +5 -3
- data/lib/quickbooks/model/invoice.rb +41 -19
- data/lib/quickbooks/model/invoice_line_item.rb +6 -6
- data/lib/quickbooks/model/item.rb +24 -17
- data/lib/quickbooks/model/line.rb +28 -0
- data/lib/quickbooks/model/payment_line_detail.rb +6 -4
- data/lib/quickbooks/model/payment_method.rb +14 -0
- data/lib/quickbooks/model/physical_address.rb +18 -2
- data/lib/quickbooks/model/sales_item_line_detail.rb +9 -7
- data/lib/quickbooks/model/sales_receipt.rb +44 -0
- data/lib/quickbooks/model/sub_total_line_detail.rb +7 -5
- data/lib/quickbooks/service/account.rb +22 -0
- data/lib/quickbooks/service/base_service.rb +45 -60
- data/lib/quickbooks/service/bill.rb +15 -0
- data/lib/quickbooks/service/bill_payment.rb +15 -0
- data/lib/quickbooks/service/credit_memo.rb +15 -0
- data/lib/quickbooks/service/payment_method.rb +23 -0
- data/lib/quickbooks/service/sales_receipt.rb +15 -0
- data/lib/quickbooks/service/service_crud.rb +4 -8
- data/lib/quickbooks/util/class_util.rb +14 -0
- data/lib/quickbooks/{http_encoding_helper.rb → util/http_encoding_helper.rb} +16 -11
- data/lib/quickbooks/version.rb +1 -1
- metadata +26 -6
- data/lib/quickbooks/model/invoice_item_ref.rb +0 -21
@@ -0,0 +1,23 @@
|
|
1
|
+
module Quickbooks
|
2
|
+
module Service
|
3
|
+
class PaymentMethod < BaseService
|
4
|
+
include ServiceCrud
|
5
|
+
|
6
|
+
def default_model_query
|
7
|
+
"SELECT * FROM PaymentMethod"
|
8
|
+
end
|
9
|
+
|
10
|
+
def fetch_by_name(name)
|
11
|
+
self.query(search_name_query(name)).entries.first
|
12
|
+
end
|
13
|
+
|
14
|
+
def model
|
15
|
+
Quickbooks::Model::PaymentMethod
|
16
|
+
end
|
17
|
+
|
18
|
+
def search_name_query(name)
|
19
|
+
"SELECT * FROM PaymentMethod WHERE Name = '#{name}'"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -3,10 +3,6 @@ module Quickbooks
|
|
3
3
|
module ServiceCrud
|
4
4
|
|
5
5
|
def query(object_query = nil, options = {})
|
6
|
-
object_query ||= default_model_query
|
7
|
-
|
8
|
-
options[:page] ||= 1
|
9
|
-
options[:per_page] ||= 20
|
10
6
|
fetch_collection(object_query, model, options)
|
11
7
|
end
|
12
8
|
|
@@ -20,7 +16,7 @@ module Quickbooks
|
|
20
16
|
xml = entity.to_xml_ns(options)
|
21
17
|
response = do_http_post(url_for_resource(model.resource_for_singular), valid_xml_document(xml))
|
22
18
|
if response.code.to_i == 200
|
23
|
-
model.from_xml(parse_singular_entity_response(model, response.
|
19
|
+
model.from_xml(parse_singular_entity_response(model, response.plain_body))
|
24
20
|
else
|
25
21
|
nil
|
26
22
|
end
|
@@ -36,7 +32,7 @@ module Quickbooks
|
|
36
32
|
xml = entity.to_xml_ns(options)
|
37
33
|
response = do_http_post(url, valid_xml_document(xml))
|
38
34
|
if response.code.to_i == 200
|
39
|
-
parse_singular_entity_response_for_delete(model, response.
|
35
|
+
parse_singular_entity_response_for_delete(model, response.plain_body)
|
40
36
|
else
|
41
37
|
false
|
42
38
|
end
|
@@ -50,7 +46,7 @@ module Quickbooks
|
|
50
46
|
xml = entity.to_xml_ns(options)
|
51
47
|
response = do_http_post(url_for_resource(model.resource_for_singular), valid_xml_document(xml))
|
52
48
|
if response.code.to_i == 200
|
53
|
-
model.from_xml(parse_singular_entity_response(model, response.
|
49
|
+
model.from_xml(parse_singular_entity_response(model, response.plain_body))
|
54
50
|
else
|
55
51
|
nil
|
56
52
|
end
|
@@ -58,4 +54,4 @@ module Quickbooks
|
|
58
54
|
|
59
55
|
end
|
60
56
|
end
|
61
|
-
end
|
57
|
+
end
|
@@ -18,9 +18,9 @@
|
|
18
18
|
# content=response.plain_body # Method from our library
|
19
19
|
# puts "Transferred: #{response.body.length} bytes"
|
20
20
|
# puts "Compression: #{response['content-encoding']}"
|
21
|
-
# puts "Extracted: #{response.plain_body.length} bytes"
|
21
|
+
# puts "Extracted: #{response.plain_body.length} bytes"
|
22
22
|
# end
|
23
|
-
#
|
23
|
+
#
|
24
24
|
|
25
25
|
require 'zlib'
|
26
26
|
require 'stringio'
|
@@ -28,22 +28,27 @@ require 'stringio'
|
|
28
28
|
class Net::HTTPResponse
|
29
29
|
# Return the uncompressed content
|
30
30
|
def plain_body
|
31
|
-
|
32
|
-
|
33
|
-
|
31
|
+
|
32
|
+
encoding = self['Content-Encoding']
|
33
|
+
@_content ||= nil
|
34
|
+
|
35
|
+
return @_content if @_content
|
36
|
+
|
37
|
+
if encoding
|
34
38
|
case encoding
|
35
39
|
when 'gzip'
|
36
|
-
i=Zlib::GzipReader.new(StringIO.new(self.body))
|
37
|
-
|
40
|
+
i = Zlib::GzipReader.new(StringIO.new(self.body))
|
41
|
+
@_content = i.read
|
38
42
|
when 'deflate'
|
39
|
-
i=Zlib::Inflate.new
|
40
|
-
|
43
|
+
i = Zlib::Inflate.new
|
44
|
+
@_content = i.inflate(self.body)
|
41
45
|
else
|
42
46
|
raise "Unknown encoding - #{encoding}"
|
43
47
|
end
|
44
48
|
else
|
45
|
-
|
49
|
+
@_content = self.body
|
46
50
|
end
|
47
|
-
|
51
|
+
|
52
|
+
@_content
|
48
53
|
end
|
49
54
|
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.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cody Caughlan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-01-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: oauth
|
@@ -170,33 +170,53 @@ executables: []
|
|
170
170
|
extensions: []
|
171
171
|
extra_rdoc_files: []
|
172
172
|
files:
|
173
|
-
- lib/quickbooks/
|
173
|
+
- lib/quickbooks/model/account.rb
|
174
|
+
- lib/quickbooks/model/account_based_expense_line_detail.rb
|
174
175
|
- lib/quickbooks/model/base_model.rb
|
176
|
+
- lib/quickbooks/model/base_reference.rb
|
177
|
+
- lib/quickbooks/model/bill.rb
|
178
|
+
- lib/quickbooks/model/bill_line_item.rb
|
179
|
+
- lib/quickbooks/model/bill_payment.rb
|
180
|
+
- lib/quickbooks/model/bill_payment_check.rb
|
181
|
+
- lib/quickbooks/model/bill_payment_credit_card.rb
|
182
|
+
- lib/quickbooks/model/bill_payment_line_item.rb
|
183
|
+
- lib/quickbooks/model/check_payment.rb
|
184
|
+
- lib/quickbooks/model/credit_card_payment.rb
|
185
|
+
- lib/quickbooks/model/credit_memo.rb
|
175
186
|
- lib/quickbooks/model/custom_field.rb
|
176
187
|
- lib/quickbooks/model/customer.rb
|
177
|
-
- lib/quickbooks/model/customer_ref.rb
|
178
188
|
- lib/quickbooks/model/discount_override.rb
|
179
189
|
- lib/quickbooks/model/email_address.rb
|
180
190
|
- lib/quickbooks/model/invoice.rb
|
181
|
-
- lib/quickbooks/model/invoice_item_ref.rb
|
182
191
|
- lib/quickbooks/model/invoice_line_item.rb
|
183
192
|
- lib/quickbooks/model/item.rb
|
193
|
+
- lib/quickbooks/model/line.rb
|
184
194
|
- lib/quickbooks/model/linked_transaction.rb
|
185
195
|
- lib/quickbooks/model/meta_data.rb
|
186
196
|
- lib/quickbooks/model/payment_line_detail.rb
|
197
|
+
- lib/quickbooks/model/payment_method.rb
|
187
198
|
- lib/quickbooks/model/physical_address.rb
|
188
199
|
- lib/quickbooks/model/sales_item_line_detail.rb
|
200
|
+
- lib/quickbooks/model/sales_receipt.rb
|
189
201
|
- lib/quickbooks/model/sub_total_line_detail.rb
|
190
202
|
- lib/quickbooks/model/telephone_number.rb
|
191
203
|
- lib/quickbooks/model/web_site_address.rb
|
204
|
+
- lib/quickbooks/service/account.rb
|
192
205
|
- lib/quickbooks/service/base_service.rb
|
206
|
+
- lib/quickbooks/service/bill.rb
|
207
|
+
- lib/quickbooks/service/bill_payment.rb
|
208
|
+
- lib/quickbooks/service/credit_memo.rb
|
193
209
|
- lib/quickbooks/service/customer.rb
|
194
210
|
- lib/quickbooks/service/invoice.rb
|
195
211
|
- lib/quickbooks/service/item.rb
|
212
|
+
- lib/quickbooks/service/payment_method.rb
|
213
|
+
- lib/quickbooks/service/sales_receipt.rb
|
196
214
|
- lib/quickbooks/service/service_crud.rb
|
215
|
+
- lib/quickbooks/util/class_util.rb
|
216
|
+
- lib/quickbooks/util/http_encoding_helper.rb
|
197
217
|
- lib/quickbooks/util/logging.rb
|
198
218
|
- lib/quickbooks/version.rb
|
199
|
-
- lib/quickbooks.rb
|
219
|
+
- lib/quickbooks-ruby.rb
|
200
220
|
homepage: http://github.com/ruckus/quickbooks-ruby
|
201
221
|
licenses:
|
202
222
|
- MIT
|
@@ -1,21 +0,0 @@
|
|
1
|
-
module Quickbooks
|
2
|
-
module Model
|
3
|
-
class InvoiceItemRef < BaseModel
|
4
|
-
xml_convention :camelcase
|
5
|
-
xml_accessor :name, :from => '@name' # Attribute with name 'name'
|
6
|
-
xml_accessor :value, :from => :content
|
7
|
-
|
8
|
-
def initialize(value = nil)
|
9
|
-
self.value = value
|
10
|
-
end
|
11
|
-
|
12
|
-
def to_i
|
13
|
-
self.value.to_i
|
14
|
-
end
|
15
|
-
|
16
|
-
def to_s
|
17
|
-
self.value.to_s
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|