dear_inventory 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06b7290754b857b04a983d81fb7f409600b11c6cc3ea2c7aa29d2ab5d6de9169
4
- data.tar.gz: ea6cc10252ec0131abcc507f11bf29a498ba9c33e5d166c1614a7c5039307c8b
3
+ metadata.gz: 02022adf726ae29f8c9c08ecb4c625432f5723bf46b6138efd8efb09b4aa95be
4
+ data.tar.gz: '0283093df8de02f746d7353e7be4b2663c6ad51dbc9a99a7191191f3803a7fcd'
5
5
  SHA512:
6
- metadata.gz: 1f46d30f480e186c5c96aa29c5aada16358377a02972472bbbc5e2e0d0021cc145a79b500bb16cee31fc577de87e1c359cb513ca0a0e5f5924c69437e52b2ee5
7
- data.tar.gz: 80de674c305a60635ce942ee63c68afaea977a46a0cb968276af08e6b5cb6543737387adc38368f0957584e72a6dbec349c918df4f99fb60ccbf90ab84e323c4
6
+ metadata.gz: 0433ebf1fb989c92d5d5dd7e2067cc485a91055c4a97623aea00c2b40eef7330d1fd4888c084811634ad16a67803b006b715b2fd54baa0f52e4cb609afa5584f
7
+ data.tar.gz: 14722d12fefe0efbc9cf1e828e63d9a1231c081b4aef1ed5d17661ab76e8ea57840d8c45ad59aae5e6add2bf4c14f9ed01c1b8be5fa3d039b2e6d9c86b3523e5
@@ -23,6 +23,8 @@ require "dear_inventory/models/additional_charge"
23
23
  require "dear_inventory/models/address"
24
24
  require "dear_inventory/models/attachment"
25
25
  require "dear_inventory/models/inventory_movement"
26
+ require "dear_inventory/models/purchase_list"
27
+ require "dear_inventory/models/purchase_lists"
26
28
  require "dear_inventory/models/sale_list"
27
29
  require "dear_inventory/models/sales/line"
28
30
  require "dear_inventory/models/sales/invoice_line"
@@ -47,16 +49,19 @@ require "dear_inventory/models/request"
47
49
  require "dear_inventory/validator"
48
50
  require "dear_inventory/validators/boolean"
49
51
  require "dear_inventory/validators/enum"
52
+ require "dear_inventory/validators/guid"
50
53
  require "dear_inventory/validators/integer"
51
54
  require "dear_inventory/validators/required"
52
55
  require "dear_inventory/validators/string"
53
56
  require "dear_inventory/validators/time"
54
57
 
55
58
  require "dear_inventory/parameters"
59
+ require "dear_inventory/parameters/purchase_list/index"
56
60
  require "dear_inventory/parameters/sale/index"
57
61
  require "dear_inventory/parameters/sale_list/index"
58
62
 
59
63
  require "dear_inventory/resource"
64
+ require "dear_inventory/resources/purchase_list"
60
65
  require "dear_inventory/resources/sale"
61
66
  require "dear_inventory/resources/sale_list"
62
67
 
@@ -37,10 +37,14 @@ module DearInventory
37
37
  end
38
38
  end
39
39
 
40
+ alias initialize_abstract initialize
41
+
40
42
  sig do
41
- params(values: T.nilable(T::Hash[String, T.untyped])).void
43
+ params(values: T.nilable(T::Hash[T.any(String, Symbol), T.untyped])).void
42
44
  end
43
- def initialize(values)
45
+ def initialize(values = nil)
46
+ initialize_abstract
47
+
44
48
  return if values.nil?
45
49
 
46
50
  self.class.enumerate_fields do |response_name, specifications|
@@ -56,7 +60,7 @@ module DearInventory
56
60
  params(
57
61
  response_name: Symbol,
58
62
  values:
59
- T::Hash[String, T.untyped],
63
+ T::Hash[T.any(String, Symbol), T.untyped],
60
64
  specifications:
61
65
  T::Hash[Symbol, T.any(Symbol, T.class_of(DearInventory::Model))]
62
66
  ).returns(
@@ -0,0 +1,125 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ class PurchaseList < DearInventory::Model
7
+ extend T::Sig
8
+
9
+ fields(
10
+ ID: {
11
+ name: :id,
12
+ type: :Guid,
13
+ },
14
+ BlindReceipt: {
15
+ name: :blind_receipt,
16
+ type: :Boolean,
17
+ },
18
+ OrderNumber: {
19
+ name: :order_number,
20
+ type: :String,
21
+ },
22
+ Status: {
23
+ name: :status,
24
+ type: :String,
25
+ },
26
+ OrderDate: {
27
+ name: :order_date,
28
+ type: :Date,
29
+ },
30
+ InvoiceDate: {
31
+ name: :invoice_date,
32
+ type: :Date,
33
+ },
34
+ Supplier: {
35
+ name: :customer,
36
+ type: :String,
37
+ },
38
+ SupplierID: {
39
+ name: :customer_id,
40
+ type: :Guid,
41
+ },
42
+ InvoiceNumber: {
43
+ name: :invoice_number,
44
+ type: :String,
45
+ },
46
+ InvoiceAmount: {
47
+ name: :invoice_amount,
48
+ type: :Float,
49
+ },
50
+ PaidAmount: {
51
+ name: :paid_amount,
52
+ type: :Float,
53
+ },
54
+ InvoiceDueDate: {
55
+ name: :invoice_due_date,
56
+ type: :Date,
57
+ },
58
+ RequiredBy: {
59
+ name: :required_by,
60
+ type: :Date,
61
+ },
62
+ BaseCurrency: {
63
+ name: :base_currency,
64
+ type: :String,
65
+ },
66
+ SupplierCurrency: {
67
+ name: :supplier_currency,
68
+ type: :String,
69
+ },
70
+ CreditNoteNumber: {
71
+ name: :credit_note_number,
72
+ type: :String,
73
+ },
74
+ OrderStatus: {
75
+ name: :order_status,
76
+ type: :String,
77
+ },
78
+ StockReceivedStatus: {
79
+ name: :stock_received_status,
80
+ type: :String,
81
+ },
82
+ UnstockStatus: {
83
+ name: :unstock_status,
84
+ type: :String,
85
+ },
86
+ InvoiceStatus: {
87
+ name: :invoice_status,
88
+ type: :String,
89
+ },
90
+ CreditNoteStatus: {
91
+ name: :credit_note_status,
92
+ type: :String,
93
+ },
94
+ LastUpdatedDate: {
95
+ name: :last_updated_date,
96
+ type: :Date,
97
+ },
98
+ CombinedReceivingStatus: {
99
+ name: :combined_receiving_status,
100
+ type: :String,
101
+ },
102
+ CombinedInvoiceStatus: {
103
+ name: :combined_invoice_status,
104
+ type: :String,
105
+ },
106
+ CombinedPaymentStatus: {
107
+ name: :combined_payment_status,
108
+ type: :String,
109
+ },
110
+ Type: {
111
+ name: :type,
112
+ type: :String,
113
+ },
114
+ IsServiceOnly: {
115
+ name: :is_service_only,
116
+ type: :Boolean,
117
+ },
118
+ DropShipTaskID: {
119
+ name: :drop_ship_task_id,
120
+ type: :Guid,
121
+ }
122
+ )
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,26 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ class PurchaseLists < DearInventory::Model
7
+ extend T::Sig
8
+
9
+ fields(
10
+ Total: {
11
+ name: :total,
12
+ type: :Integer,
13
+ },
14
+ Page: {
15
+ name: :page,
16
+ type: :Integer,
17
+ },
18
+ PurchaseList: {
19
+ name: :purchase_list,
20
+ type: :Array,
21
+ model: DearInventory::Models::PurchaseList,
22
+ }
23
+ )
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,84 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ class Parameters
6
+ module PurchaseList
7
+ class Index < DearInventory::Parameters
8
+ extend T::Sig
9
+
10
+ fields(
11
+ page: {
12
+ property: :Page,
13
+ type: :Integer,
14
+ required: false,
15
+ },
16
+ limit: {
17
+ property: :Limit,
18
+ type: :Integer,
19
+ required: false,
20
+ },
21
+ search: {
22
+ property: :Search,
23
+ type: :String,
24
+ required: false,
25
+ },
26
+ required_by: {
27
+ property: :RequiredBy,
28
+ type: :DateTime,
29
+ required: false,
30
+ },
31
+ updated_since: {
32
+ property: :UpdatedSince,
33
+ type: :DateTime,
34
+ required: false,
35
+ },
36
+ order_status: {
37
+ property: :OrderStatus,
38
+ type: :Enum,
39
+ values: ["VOIDED", "DRAFT", "AUTHORISED", "NOT AVAILABLE",],
40
+ required: false,
41
+ },
42
+ restock_received_status: {
43
+ property: :RestockReceivedStatus,
44
+ type: :String,
45
+ required: false,
46
+ },
47
+ invoice_status: {
48
+ property: :InvoiceStatus,
49
+ type: :Enum,
50
+ values: ["VOIDED", "DRAFT", "AUTHORISED", "NOT AVAILABLE",],
51
+ required: false,
52
+ },
53
+ credit_note_status: {
54
+ property: :CreditNoteStatus,
55
+ type: :Enum,
56
+ values: ["VOIDED", "DRAFT", "AUTHORISED", "NOT AVAILABLE",],
57
+ required: false,
58
+ },
59
+ unstock_status: {
60
+ property: :UnstockStatus,
61
+ type: :Enum,
62
+ values: ["VOIDED", "DRAFT", "AUTHORISED", "NOT AVAILABLE",],
63
+ required: false,
64
+ },
65
+ status: {
66
+ property: :Status,
67
+ type: :Enum,
68
+ values: [
69
+ "DRAFT", "VOIDED", "ORDERING", "ORDERED", "RECEIVING", "RECEIVED",
70
+ "INVOICED", "CREDITED", "RECEIVING / CREDITED",
71
+ "RECEIVED / CREDITED", "PARTIALLY INVOICED", "COMPLETED"
72
+ ],
73
+ required: false,
74
+ },
75
+ drop_ship_task_id: {
76
+ property: :DropShipTaskID,
77
+ type: :Guid,
78
+ required: false,
79
+ }
80
+ )
81
+ end
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ class PurchaseList < Resource
6
+ class << self
7
+ extend T::Sig
8
+
9
+ # Purchase List
10
+ #
11
+ # @param params [Hash] URL query string parameters that conform to
12
+ # DearInventory::Parameters::PurchaseList::Index
13
+ sig do
14
+ params(params: T::Hash[Symbol, T.untyped]).
15
+ returns(DearInventory::Response)
16
+ end
17
+ def index(params: {})
18
+ new.request(
19
+ :get, params: params, model: DearInventory::Models::PurchaseLists
20
+ )
21
+ end
22
+ end
23
+ end
24
+ end
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module DearInventory
5
- VERSION = "0.3.0"
5
+ VERSION = "0.4.0"
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dear_inventory
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Rice
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-05 00:00:00.000000000 Z
11
+ date: 2020-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: http
@@ -235,6 +235,8 @@ files:
235
235
  - lib/dear_inventory/models/address.rb
236
236
  - lib/dear_inventory/models/attachment.rb
237
237
  - lib/dear_inventory/models/inventory_movement.rb
238
+ - lib/dear_inventory/models/purchase_list.rb
239
+ - lib/dear_inventory/models/purchase_lists.rb
238
240
  - lib/dear_inventory/models/request.rb
239
241
  - lib/dear_inventory/models/sale.rb
240
242
  - lib/dear_inventory/models/sale_list.rb
@@ -256,9 +258,11 @@ files:
256
258
  - lib/dear_inventory/models/shipping_address.rb
257
259
  - lib/dear_inventory/models/transaction.rb
258
260
  - lib/dear_inventory/parameters.rb
261
+ - lib/dear_inventory/parameters/purchase_list/index.rb
259
262
  - lib/dear_inventory/parameters/sale/index.rb
260
263
  - lib/dear_inventory/parameters/sale_list/index.rb
261
264
  - lib/dear_inventory/resource.rb
265
+ - lib/dear_inventory/resources/purchase_list.rb
262
266
  - lib/dear_inventory/resources/sale.rb
263
267
  - lib/dear_inventory/resources/sale_list.rb
264
268
  - lib/dear_inventory/response.rb