beanie 0.0.1 → 0.0.2
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/README.md +0 -1
- data/VERSION +1 -1
- data/beanie.gemspec +1 -0
- data/lib/beanie/api.rb +69 -21
- data/lib/beanie/bank_account.rb +11 -1
- data/lib/beanie/bank_statement.rb +11 -0
- data/lib/beanie/bank_statement_data.rb +16 -0
- data/lib/beanie/beanie_alert.rb +10 -0
- data/lib/beanie/{contact.rb → bill_of_material.rb} +12 -23
- data/lib/beanie/billable.rb +11 -0
- data/lib/beanie/bom_item.rb +44 -0
- data/lib/beanie/company.rb +27 -0
- data/lib/beanie/company_member.rb +9 -0
- data/lib/beanie/config_type.rb +12 -0
- data/lib/beanie/config_value.rb +8 -0
- data/lib/beanie/customer.rb +18 -1
- data/lib/beanie/customer_address.rb +63 -0
- data/lib/beanie/{contact_address.rb → customer_note.rb} +10 -3
- data/lib/beanie/document.rb +11 -0
- data/lib/beanie/fixed_asset.rb +11 -0
- data/lib/beanie/journal.rb +10 -0
- data/lib/beanie/journal_item.rb +10 -0
- data/lib/beanie/nominal_account.rb +9 -0
- data/lib/beanie/nominal_account_category.rb +9 -0
- data/lib/beanie/product.rb +13 -0
- data/lib/beanie/product_category.rb +9 -0
- data/lib/beanie/product_price.rb +10 -0
- data/lib/beanie/production_order.rb +58 -0
- data/lib/beanie/purchase_invoice.rb +19 -0
- data/lib/beanie/purchase_order.rb +11 -0
- data/lib/beanie/purchase_order_item.rb +13 -0
- data/lib/beanie/sales_invoice.rb +18 -0
- data/lib/beanie/sales_invoice_item.rb +15 -0
- data/lib/beanie/sales_order.rb +13 -0
- data/lib/beanie/sales_order_item.rb +18 -0
- data/lib/beanie/stock_adjustment.rb +13 -0
- data/lib/beanie/stock_category.rb +10 -0
- data/lib/beanie/stock_item.rb +12 -0
- data/lib/beanie/stock_location.rb +8 -0
- data/lib/beanie/stock_supplier.rb +13 -0
- data/lib/beanie/supplier.rb +14 -1
- data/lib/beanie/supplier_address.rb +53 -0
- data/lib/beanie/{contact_note.rb → supplier_note.rb} +10 -2
- data/lib/beanie/tax_registration.rb +9 -0
- data/lib/beanie/vat_record.rb +10 -0
- data/lib/beanie/vat_return.rb +15 -0
- data/lib/beanie/version.rb +1 -1
- data/lib/beanie/work_centre.rb +10 -0
- data/lib/beanie/work_centre_group.rb +10 -4
- data/lib/beanie.rb +23 -26
- metadata +24 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d12f97b41e0c32526bf8f6db1f0e7a7db200266d
|
4
|
+
data.tar.gz: 219bd84135de543e3e986624b6dec48f10b8899d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2842992bf0caa0f58a118cbb6e424b99f3f465a985c3cd23eb3a5ec48611450a037877072d914a71c57d75d59de31eb2808ecad9400c07346b3860bd13c31940
|
7
|
+
data.tar.gz: ed3891c4ff76b46fa78373c0fdc99880c932005f7e9f4f79e55b1a1164828ffe22963ceab08c11a46d222393957e03067fdf896d635e03262397fbd06e770eac
|
data/README.md
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.2
|
data/beanie.gemspec
CHANGED
data/lib/beanie/api.rb
CHANGED
@@ -31,10 +31,63 @@ require 'active_support/inflector'
|
|
31
31
|
|
32
32
|
module Beanie
|
33
33
|
class Api
|
34
|
+
#
|
35
|
+
# Find all the objects
|
36
|
+
def self.all(opts = {})
|
37
|
+
data = get(opts)
|
38
|
+
objlist = []
|
39
|
+
data[new.object_name.pluralize].each do |objdata|
|
40
|
+
objlist << new.populate(objdata)
|
41
|
+
end
|
42
|
+
objlist
|
43
|
+
end
|
44
|
+
|
45
|
+
#
|
46
|
+
# Find an object based on its ID
|
47
|
+
def self.find(id)
|
48
|
+
data = get(:id => id)
|
49
|
+
obj = new
|
50
|
+
obj.populate(data[obj.object_name])
|
51
|
+
end
|
52
|
+
|
53
|
+
#
|
54
|
+
# Save the customer data
|
55
|
+
def save!(opts = {})
|
56
|
+
data = extract()
|
57
|
+
data.delete("id")
|
58
|
+
objdata = {object_name => data}
|
59
|
+
response = self.class.post(objdata, opts)
|
60
|
+
self.populate(response[self.object_name])
|
61
|
+
end
|
62
|
+
|
63
|
+
#
|
64
|
+
# Populate the instance variables from the provided hash.
|
65
|
+
def populate(data)
|
66
|
+
self.instance_variables.each do |var|
|
67
|
+
self.instance_variable_set(var, data[field_name(var)])
|
68
|
+
end
|
69
|
+
self
|
70
|
+
end
|
71
|
+
|
72
|
+
#
|
73
|
+
# Populate the instance variables from the provided hash.
|
74
|
+
def extract
|
75
|
+
data = {}
|
76
|
+
self.instance_variables.each do |var|
|
77
|
+
data[field_name(var)] = self.instance_variable_get(var)
|
78
|
+
end
|
79
|
+
data
|
80
|
+
end
|
81
|
+
|
82
|
+
#
|
83
|
+
# Determine the field name
|
84
|
+
def field_name(var)
|
85
|
+
var.to_s.gsub(/^@/, '')
|
86
|
+
end
|
87
|
+
|
34
88
|
#
|
35
89
|
# Run a REST GET against the Beanie API.
|
36
90
|
def self.get(opts = {})
|
37
|
-
puts "Beanie GET..."
|
38
91
|
response = RestClient.get(build_url(opts), headers=set_headers)
|
39
92
|
JSON.parse(response.body)
|
40
93
|
end
|
@@ -42,7 +95,6 @@ module Beanie
|
|
42
95
|
#
|
43
96
|
# Run a REST PUT against the Beanie API.
|
44
97
|
def self.put(data, opts = {})
|
45
|
-
puts "Beanie PUT..."
|
46
98
|
response = RestClient.put(build_url(opts), data, headers=set_headers)
|
47
99
|
JSON.parse(response.body)
|
48
100
|
end
|
@@ -50,15 +102,13 @@ module Beanie
|
|
50
102
|
#
|
51
103
|
# Run a REST POST against the Beanie API.
|
52
104
|
def self.post(data, opts = {})
|
53
|
-
|
54
|
-
response = RestClient.post(build_url(opts), data, headers=set_headers)
|
105
|
+
response = RestClient.post(build_url(opts), data.to_json, headers=set_headers)
|
55
106
|
JSON.parse(response.body)
|
56
107
|
end
|
57
108
|
|
58
109
|
#
|
59
110
|
# Run a REST DELETE against the Beanie API.
|
60
111
|
def self.delete(data, opts = {})
|
61
|
-
puts "Beanie DELETE..."
|
62
112
|
response = RestClient.delete(build_url(opts), headers=set_headers)
|
63
113
|
JSON.parse(response.body)
|
64
114
|
end
|
@@ -66,22 +116,23 @@ module Beanie
|
|
66
116
|
#
|
67
117
|
#
|
68
118
|
def self.build_url(opts = {})
|
69
|
-
puts "BUILD URL. Opts:-"
|
70
|
-
p opts
|
71
119
|
if opts[:url]
|
72
|
-
url = "#{Beanie.base_uri}#{opts[:url]}
|
120
|
+
url = "#{Beanie.base_uri}#{opts[:url]}"
|
73
121
|
opts.delete(:url)
|
74
122
|
else
|
75
|
-
url = "#{Beanie.base_uri}/#{new.
|
123
|
+
url = "#{Beanie.base_uri}/#{new.construct_path(opts)}"
|
124
|
+
end
|
125
|
+
if opts[:id]
|
126
|
+
url += "/#{opts[:id]}"
|
127
|
+
opts.delete(:id)
|
76
128
|
end
|
129
|
+
url += ".json"
|
77
130
|
optstr = ""
|
78
131
|
opts.each_key do |key|
|
79
132
|
optstr += (optstr.length == 0) ? "?" : "&"
|
80
133
|
optstr += "#{key.to_s}=#{opts[key]}"
|
81
134
|
end
|
82
|
-
url
|
83
|
-
puts "URL: #{url}"
|
84
|
-
url
|
135
|
+
url + optstr
|
85
136
|
end
|
86
137
|
|
87
138
|
#
|
@@ -94,6 +145,12 @@ module Beanie
|
|
94
145
|
headers
|
95
146
|
end
|
96
147
|
|
148
|
+
#
|
149
|
+
# Default mechanism for constructing a path
|
150
|
+
def construct_path(opts = {})
|
151
|
+
object_name.pluralize
|
152
|
+
end
|
153
|
+
|
97
154
|
#
|
98
155
|
# Compute a Beanie object name from the class name.
|
99
156
|
def object_name
|
@@ -104,14 +161,5 @@ module Beanie
|
|
104
161
|
tr("-", "_").
|
105
162
|
downcase
|
106
163
|
end
|
107
|
-
|
108
|
-
#
|
109
|
-
# Populate the instance variables from the provided hash.
|
110
|
-
def populate(data, *vars)
|
111
|
-
vars.each do |var|
|
112
|
-
varsym = var.to_s.gsub(/^/, '@').to_sym
|
113
|
-
self.instance_variable_set(varsym, data[var.to_s])
|
114
|
-
end
|
115
|
-
end
|
116
164
|
end
|
117
165
|
end
|
data/lib/beanie/bank_account.rb
CHANGED
@@ -29,6 +29,16 @@
|
|
29
29
|
#
|
30
30
|
module Beanie
|
31
31
|
class BankAccount < Api
|
32
|
-
attr_accessor :id, :iban, :name, :swift, :nominal_account_id
|
32
|
+
attr_accessor :id, :iban, :name, :swift, :nominal_account_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@iban = nil
|
39
|
+
@name = nil
|
40
|
+
@swift = nil
|
41
|
+
@nominal_account_id = nil
|
42
|
+
end
|
33
43
|
end
|
34
44
|
end
|
@@ -30,5 +30,16 @@
|
|
30
30
|
module Beanie
|
31
31
|
class BankStatement < Api
|
32
32
|
attr_accessor :id, :end_date, :start_date, :upload_file, :bank_account_id, :document_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@end_date = nil
|
39
|
+
@start_date = nil
|
40
|
+
@upload_file = nil
|
41
|
+
@bank_account_id = nil
|
42
|
+
@document_id = nil
|
43
|
+
end
|
33
44
|
end
|
34
45
|
end
|
@@ -31,5 +31,21 @@ module Beanie
|
|
31
31
|
class BankStatementData < Api
|
32
32
|
attr_accessor :id, :cr_amount, :date, :dr_amount, :balance, :bank_statement_id
|
33
33
|
attr_accessor :narrative1, :narrative2, :narrative3, :narrative4, :narrative5
|
34
|
+
|
35
|
+
#
|
36
|
+
# Initialize instance variables
|
37
|
+
def initialize
|
38
|
+
@id = nil
|
39
|
+
@cr_amount = nil
|
40
|
+
@date = nil
|
41
|
+
@dr_amount = nil
|
42
|
+
@balance = nil
|
43
|
+
@bank_statement_id = nil
|
44
|
+
@narrative1 = nil
|
45
|
+
@narrative2 = nil
|
46
|
+
@narrative3 = nil
|
47
|
+
@narrative4 = nil
|
48
|
+
@narrative5 = nil
|
49
|
+
end
|
34
50
|
end
|
35
51
|
end
|
data/lib/beanie/beanie_alert.rb
CHANGED
@@ -40,6 +40,16 @@ module Beanie
|
|
40
40
|
["Acknowledged (Read)", STATE_READ],
|
41
41
|
["Archived", STATE_ARCHIVED]
|
42
42
|
].freeze
|
43
|
+
|
44
|
+
#
|
45
|
+
# Initialize instance variables
|
46
|
+
def initialize
|
47
|
+
@id = nil
|
48
|
+
@state = nil
|
49
|
+
@message = nil
|
50
|
+
@url = nil
|
51
|
+
@member_id = nil
|
52
|
+
end
|
43
53
|
|
44
54
|
#
|
45
55
|
# Printable form of the state name
|
@@ -28,28 +28,17 @@
|
|
28
28
|
# POSSIBILITY OF SUCH DAMAGE.
|
29
29
|
#
|
30
30
|
module Beanie
|
31
|
-
class
|
32
|
-
attr_accessor :id, :
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
TITLE_NAMES = [
|
45
|
-
["", TITLE_NONE],
|
46
|
-
["Mr", TITLE_MR],
|
47
|
-
["Mrs", TITLE_MRS],
|
48
|
-
["Ms", TITLE_MS],
|
49
|
-
["Master", TITLE_MASTER],
|
50
|
-
["Dr", TITLE_DR],
|
51
|
-
["Fr", TITLE_FR],
|
52
|
-
["Rev", TITLE_REV]
|
53
|
-
].freeze
|
31
|
+
class ProductionOrder < Api
|
32
|
+
attr_accessor :id, :name, :revision, :description, :stock_item_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@name = nil
|
39
|
+
@revision = nil
|
40
|
+
@description = nil
|
41
|
+
@stock_item_id = nil
|
42
|
+
end
|
54
43
|
end
|
55
44
|
end
|
data/lib/beanie/billable.rb
CHANGED
@@ -31,5 +31,16 @@ module Beanie
|
|
31
31
|
class Billable < Api
|
32
32
|
attr_accessor :id, :sales_invoice_item_id, :sales_order_item_id
|
33
33
|
attr_accessor :quantity, :start, :description
|
34
|
+
|
35
|
+
#
|
36
|
+
# Initialize instance variables
|
37
|
+
def initialize
|
38
|
+
@id = nil
|
39
|
+
@sales_invoice_item_id = nil
|
40
|
+
@sales_order_item_id = nil
|
41
|
+
@quantity = nil
|
42
|
+
@start = nil
|
43
|
+
@description = nil
|
44
|
+
end
|
34
45
|
end
|
35
46
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#
|
2
|
+
# Copyright (c) 2017-2018, AltoYield Limited. All rights reserved.
|
3
|
+
#
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
5
|
+
# under the terms of the GNU General Public License as published by
|
6
|
+
# the Free Software Foundation; either version 2, or (at your option)
|
7
|
+
# any later version.
|
8
|
+
#
|
9
|
+
# It is distributed in the hope that it will be useful, but WITHOUT
|
10
|
+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
11
|
+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
12
|
+
# for more details.
|
13
|
+
#
|
14
|
+
# You should have received a copy of the GNU General Public License along
|
15
|
+
# with this product; see the file COPYING. If not, write to the Free
|
16
|
+
# Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
17
|
+
#
|
18
|
+
# THIS SOFTWARE IS PROVIDED BY ALTOYIELD LIMITED "AS IS" AND ANY EXPRESS
|
19
|
+
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
20
|
+
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
21
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL ALTOYIELD LIMITED BE LIABLE FOR
|
22
|
+
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
23
|
+
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
24
|
+
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
25
|
+
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
26
|
+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
27
|
+
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
28
|
+
# POSSIBILITY OF SUCH DAMAGE.
|
29
|
+
#
|
30
|
+
module Beanie
|
31
|
+
class BomItem < Api
|
32
|
+
attr_accessor :id, :stock_item_id, :quantity, :notes, :designators
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@stock_item_id = nil
|
39
|
+
@quantity = nil
|
40
|
+
@notes = nil
|
41
|
+
@designators = nil
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
data/lib/beanie/company.rb
CHANGED
@@ -36,5 +36,32 @@ module Beanie
|
|
36
36
|
attr_accessor :sales_shipping_nominal_account_id
|
37
37
|
attr_accessor :accounts_receivable_nominal_account_id
|
38
38
|
attr_accessor :accounts_payable_nominal_account_id
|
39
|
+
|
40
|
+
#
|
41
|
+
# Initialize instance variables
|
42
|
+
def initialize
|
43
|
+
@id = nil
|
44
|
+
@name = nil
|
45
|
+
@email = nil
|
46
|
+
@address1 = nil
|
47
|
+
@address2 = nil
|
48
|
+
@address3 = nil
|
49
|
+
@city = nil
|
50
|
+
@state_county = nil
|
51
|
+
@website = nil
|
52
|
+
@phone = nil
|
53
|
+
@fax = nil
|
54
|
+
@zip_postcode = nil
|
55
|
+
@registration = nil
|
56
|
+
@next_fye = nil
|
57
|
+
@runcom = nil
|
58
|
+
@country = nil
|
59
|
+
@currency = nil
|
60
|
+
@invoice_template_id = nil
|
61
|
+
@purchase_shipping_nominal_account_id = nil
|
62
|
+
@sales_shipping_nominal_account_id = nil
|
63
|
+
@accounts_receivable_nominal_account_id = nil
|
64
|
+
@accounts_payable_nominal_account_id = nil
|
65
|
+
end
|
39
66
|
end
|
40
67
|
end
|
@@ -30,5 +30,14 @@
|
|
30
30
|
module Beanie
|
31
31
|
class CompanyMember < Api
|
32
32
|
attr_accessor :id, :member_id, :role, :member_email
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@member_id = nil
|
39
|
+
@role = nil
|
40
|
+
@member_email = nil
|
41
|
+
end
|
33
42
|
end
|
34
43
|
end
|
data/lib/beanie/config_type.rb
CHANGED
@@ -30,6 +30,18 @@
|
|
30
30
|
module Beanie
|
31
31
|
class ConfigType < Api
|
32
32
|
attr_accessor :id, :defvalue, :description, :name, :regexp, :tag, :typecode
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@defvalue = nil
|
39
|
+
@description = nil
|
40
|
+
@name = nil
|
41
|
+
@regexp = nil
|
42
|
+
@tag = nil
|
43
|
+
@typecode = nil
|
44
|
+
end
|
33
45
|
|
34
46
|
TYPE_BOOLEAN = 0
|
35
47
|
TYPE_INTEGER = 1
|
data/lib/beanie/config_value.rb
CHANGED
data/lib/beanie/customer.rb
CHANGED
@@ -29,6 +29,23 @@
|
|
29
29
|
#
|
30
30
|
module Beanie
|
31
31
|
class Customer < Api
|
32
|
-
attr_accessor :id, :
|
32
|
+
attr_accessor :id, :name, :state, :balance, :terms, :customer_vat, :currency
|
33
|
+
attr_accessor :internal_ref, :credit_limit, :credit_hold, :invoice_method
|
34
|
+
|
35
|
+
#
|
36
|
+
# Initialize instance variables
|
37
|
+
def initialize
|
38
|
+
@id = nil
|
39
|
+
@name = nil
|
40
|
+
@state = nil
|
41
|
+
@balance = nil
|
42
|
+
@terms = nil
|
43
|
+
@customer_vat = nil
|
44
|
+
@currency = nil
|
45
|
+
@internal_ref = nil
|
46
|
+
@credit_limit = nil
|
47
|
+
@credit_hold = nil
|
48
|
+
@invoice_method = nil
|
49
|
+
end
|
33
50
|
end
|
34
51
|
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
#
|
2
|
+
# Copyright (c) 2017-2018, AltoYield Limited. All rights reserved.
|
3
|
+
#
|
4
|
+
# This is free software; you can redistribute it and/or modify it
|
5
|
+
# under the terms of the GNU General Public License as published by
|
6
|
+
# the Free Software Foundation; either version 2, or (at your option)
|
7
|
+
# any later version.
|
8
|
+
#
|
9
|
+
# It is distributed in the hope that it will be useful, but WITHOUT
|
10
|
+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
11
|
+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
12
|
+
# for more details.
|
13
|
+
#
|
14
|
+
# You should have received a copy of the GNU General Public License along
|
15
|
+
# with this product; see the file COPYING. If not, write to the Free
|
16
|
+
# Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
17
|
+
#
|
18
|
+
# THIS SOFTWARE IS PROVIDED BY ALTOYIELD LIMITED "AS IS" AND ANY EXPRESS
|
19
|
+
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
20
|
+
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
21
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL ALTOYIELD LIMITED BE LIABLE FOR
|
22
|
+
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
23
|
+
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
24
|
+
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
25
|
+
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
26
|
+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
27
|
+
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
28
|
+
# POSSIBILITY OF SUCH DAMAGE.
|
29
|
+
#
|
30
|
+
module Beanie
|
31
|
+
class CustomerAddress < Api
|
32
|
+
attr_accessor :customer_id, :id, :label, :name, :address1, :address2, :address3, :city
|
33
|
+
attr_accessor :state_county, :zip_postcode, :country_id, :email, :phone, :website
|
34
|
+
|
35
|
+
#
|
36
|
+
# Initialize instance variables
|
37
|
+
def initialize
|
38
|
+
@id = nil
|
39
|
+
@customer_id = nil
|
40
|
+
@label = nil
|
41
|
+
@name = nil
|
42
|
+
@address1 = nil
|
43
|
+
@address2 = nil
|
44
|
+
@address3 = nil
|
45
|
+
@city = nil
|
46
|
+
@state_county = nil
|
47
|
+
@zip_postcode = nil
|
48
|
+
@country = nil
|
49
|
+
@email = nil
|
50
|
+
@phone = nil
|
51
|
+
@website = nil
|
52
|
+
end
|
53
|
+
|
54
|
+
#
|
55
|
+
# Construct the path a little differently...
|
56
|
+
def construct_path(opts = {})
|
57
|
+
raise ":customer_id is not defined" unless opts[:customer_id]
|
58
|
+
path = "/customers/#{opts[:customer_id]}/customer_addresses"
|
59
|
+
opts.delete(:customer_id)
|
60
|
+
path
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -28,8 +28,15 @@
|
|
28
28
|
# POSSIBILITY OF SUCH DAMAGE.
|
29
29
|
#
|
30
30
|
module Beanie
|
31
|
-
class
|
32
|
-
attr_accessor :id, :
|
33
|
-
|
31
|
+
class CustomerNote < Api
|
32
|
+
attr_accessor :id, :member, :note
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@member = nil
|
39
|
+
@note = nil
|
40
|
+
end
|
34
41
|
end
|
35
42
|
end
|
data/lib/beanie/document.rb
CHANGED
@@ -50,6 +50,17 @@ module Beanie
|
|
50
50
|
["Contracts", CATEGORY_CONTRACTS],
|
51
51
|
["Miscellaneous", CATEGORY_MISCELLANEOUS]
|
52
52
|
].freeze
|
53
|
+
|
54
|
+
#
|
55
|
+
# Initialize instance variables
|
56
|
+
def initialize
|
57
|
+
@id = nil
|
58
|
+
@bxref = nil
|
59
|
+
@mime_type = nil
|
60
|
+
@size = nil
|
61
|
+
@src_file = nil
|
62
|
+
@category = nil
|
63
|
+
end
|
53
64
|
|
54
65
|
#
|
55
66
|
# Display a name for the document category
|
data/lib/beanie/fixed_asset.rb
CHANGED
@@ -30,5 +30,16 @@
|
|
30
30
|
module Beanie
|
31
31
|
class FixedAsset < Api
|
32
32
|
attr_accessor :id, :acquired, :cost, :name, :value, :nominal_account_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@acquired = nil
|
39
|
+
@cost = nil
|
40
|
+
@name = nil
|
41
|
+
@value = nil
|
42
|
+
@nominal_account_id = nil
|
43
|
+
end
|
33
44
|
end
|
34
45
|
end
|
data/lib/beanie/journal.rb
CHANGED
@@ -30,5 +30,15 @@
|
|
30
30
|
module Beanie
|
31
31
|
class Journal < Api
|
32
32
|
attr_accessor :id, :date, :folio, :title, :number
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@date = nil
|
39
|
+
@folio = nil
|
40
|
+
@title = nil
|
41
|
+
@number = nil
|
42
|
+
end
|
33
43
|
end
|
34
44
|
end
|
data/lib/beanie/journal_item.rb
CHANGED
@@ -30,5 +30,15 @@
|
|
30
30
|
module Beanie
|
31
31
|
class JournalItem < Api
|
32
32
|
attr_accessor :id, :amount, :is_credit, :journal_id, :nominal_account_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@amount = nil
|
39
|
+
@is_credit = nil
|
40
|
+
@journal_id = nil
|
41
|
+
@nominal_account_id = nil
|
42
|
+
end
|
33
43
|
end
|
34
44
|
end
|
@@ -30,5 +30,14 @@
|
|
30
30
|
module Beanie
|
31
31
|
class NominalAccount < Api
|
32
32
|
attr_accessor :id, :code, :name, :nominal_account_category_id
|
33
|
+
|
34
|
+
#
|
35
|
+
# Initialize instance variables
|
36
|
+
def initialize
|
37
|
+
@id = nil
|
38
|
+
@code = nil
|
39
|
+
@name = nil
|
40
|
+
@nominal_account_category_id = nil
|
41
|
+
end
|
33
42
|
end
|
34
43
|
end
|
@@ -54,6 +54,15 @@ module Beanie
|
|
54
54
|
["Other Expense", NA_TYPE_OTHER_EXPENSE],
|
55
55
|
["Other Income", NA_TYPE_OTHER_INCOME]
|
56
56
|
].freeze
|
57
|
+
|
58
|
+
#
|
59
|
+
# Initialize instance variables
|
60
|
+
def initialize
|
61
|
+
@id = nil
|
62
|
+
@na_type = nil
|
63
|
+
@name = nil
|
64
|
+
@parent_category_id = nil
|
65
|
+
end
|
57
66
|
|
58
67
|
#
|
59
68
|
# Show proper name for type
|
data/lib/beanie/product.rb
CHANGED
@@ -32,6 +32,19 @@ module Beanie
|
|
32
32
|
attr_accessor :id, :description, :name, :sku, :is_service
|
33
33
|
attr_accessor :nominal_account_id, :product_category_id, :unit_of_measure
|
34
34
|
|
35
|
+
#
|
36
|
+
# Initialize instance variables
|
37
|
+
def initialize
|
38
|
+
@id = nil
|
39
|
+
@description = nil
|
40
|
+
@name = nil
|
41
|
+
@sku = nil
|
42
|
+
@is_service = nil
|
43
|
+
@nominal_account_id = nil
|
44
|
+
@product_category_id = nil
|
45
|
+
@unit_of_measure = nil
|
46
|
+
end
|
47
|
+
|
35
48
|
def self.find_by_name(name)
|
36
49
|
puts "Find by name: #{name}"
|
37
50
|
Beanie.find("products", "name", name)
|