dear_inventory 0.4.1 → 0.5.0

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dear_inventory.rb +18 -1
  3. data/lib/dear_inventory/model.rb +5 -1
  4. data/lib/dear_inventory/models/inventory_movement.rb +2 -2
  5. data/lib/dear_inventory/models/purchase.rb +151 -0
  6. data/lib/dear_inventory/models/purchases/additional_charge.rb +43 -0
  7. data/lib/dear_inventory/models/purchases/credit_note.rb +59 -0
  8. data/lib/dear_inventory/models/purchases/inventory_movement.rb +31 -0
  9. data/lib/dear_inventory/models/purchases/invoice.rb +69 -0
  10. data/lib/dear_inventory/models/purchases/invoice_additional_charge.rb +23 -0
  11. data/lib/dear_inventory/models/purchases/invoice_line.rb +19 -0
  12. data/lib/dear_inventory/models/purchases/line.rb +59 -0
  13. data/lib/dear_inventory/models/purchases/manual_journal.rb +24 -0
  14. data/lib/dear_inventory/models/purchases/manual_journal_line.rb +39 -0
  15. data/lib/dear_inventory/models/purchases/order.rb +50 -0
  16. data/lib/dear_inventory/models/purchases/stock.rb +24 -0
  17. data/lib/dear_inventory/models/purchases/stock_line.rb +63 -0
  18. data/lib/dear_inventory/models/purchases/unstock_line.rb +51 -0
  19. data/lib/dear_inventory/models/sale.rb +2 -2
  20. data/lib/dear_inventory/models/sale_list.rb +4 -4
  21. data/lib/dear_inventory/models/sales/additional_charge.rb +47 -0
  22. data/lib/dear_inventory/models/sales/credit_note.rb +6 -6
  23. data/lib/dear_inventory/models/sales/fulfilment.rb +1 -1
  24. data/lib/dear_inventory/models/sales/fulfilments/pick_pack_line.rb +1 -1
  25. data/lib/dear_inventory/models/sales/invoice.rb +7 -7
  26. data/lib/dear_inventory/models/sales/invoice_additional_charge.rb +19 -0
  27. data/lib/dear_inventory/models/sales/line.rb +6 -6
  28. data/lib/dear_inventory/models/sales/manual_journal_line.rb +2 -2
  29. data/lib/dear_inventory/models/sales/order.rb +4 -4
  30. data/lib/dear_inventory/models/sales/payment_line.rb +2 -2
  31. data/lib/dear_inventory/models/sales/quote.rb +4 -4
  32. data/lib/dear_inventory/models/transaction.rb +1 -1
  33. data/lib/dear_inventory/parameters/purchase/index.rb +25 -0
  34. data/lib/dear_inventory/parameters/purchase_list/index.rb +5 -5
  35. data/lib/dear_inventory/resources/purchase.rb +24 -0
  36. data/lib/dear_inventory/resources/purchase_list.rb +1 -1
  37. data/lib/dear_inventory/resources/sale.rb +1 -1
  38. data/lib/dear_inventory/resources/sale_list.rb +1 -1
  39. data/lib/dear_inventory/response.rb +7 -6
  40. data/lib/dear_inventory/version.rb +1 -1
  41. metadata +20 -3
  42. data/lib/dear_inventory/models/additional_charge.rb +0 -45
@@ -0,0 +1,23 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class InvoiceAdditionalCharge < AdditionalCharge
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Reference: {
12
+ name: :reference,
13
+ type: :String,
14
+ },
15
+ Account: {
16
+ name: :account,
17
+ type: :String,
18
+ }
19
+ )
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class InvoiceLine < Line
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Account: {
12
+ name: :account,
13
+ type: :String,
14
+ }
15
+ )
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,59 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class Line < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ ProductID: {
12
+ name: :product_id,
13
+ type: :Guid,
14
+ },
15
+ SKU: {
16
+ name: :sku,
17
+ type: :String,
18
+ },
19
+ Name: {
20
+ name: :name,
21
+ type: :String,
22
+ },
23
+ Quantity: {
24
+ name: :quantity,
25
+ type: :BigDecimal,
26
+ },
27
+ Price: {
28
+ name: :price,
29
+ type: :BigDecimal,
30
+ },
31
+ Discount: {
32
+ name: :discount,
33
+ type: :BigDecimal,
34
+ },
35
+ Tax: {
36
+ name: :tax,
37
+ type: :BigDecimal,
38
+ },
39
+ TaxRule: {
40
+ name: :tax_rule,
41
+ type: :String,
42
+ },
43
+ SupplierSKU: {
44
+ name: :supplier_sku,
45
+ type: :String,
46
+ },
47
+ Comment: {
48
+ name: :comment,
49
+ type: :String,
50
+ },
51
+ Total: {
52
+ name: :total,
53
+ type: :BigDecimal,
54
+ }
55
+ )
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class ManualJournal < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Status: {
12
+ name: :status,
13
+ type: :String,
14
+ },
15
+ Lines: {
16
+ name: :lines,
17
+ type: :Array,
18
+ model: DearInventory::Models::Purchases::ManualJournalLine,
19
+ }
20
+ )
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,39 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class ManualJournalLine < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Reference: {
12
+ name: :reference,
13
+ type: :String,
14
+ },
15
+ Amount: {
16
+ name: :amount,
17
+ type: :BigDecimal,
18
+ },
19
+ Date: {
20
+ name: :date,
21
+ type: :Date,
22
+ },
23
+ Debit: {
24
+ name: :debit,
25
+ type: :String,
26
+ },
27
+ Credit: {
28
+ name: :credit,
29
+ type: :String,
30
+ },
31
+ IsSystem: {
32
+ name: :is_system,
33
+ type: :Boolean,
34
+ }
35
+ )
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,50 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class Order < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Memo: {
12
+ name: :memo,
13
+ type: :String,
14
+ },
15
+ Status: {
16
+ name: :status,
17
+ type: :String,
18
+ },
19
+ Lines: {
20
+ name: :lines,
21
+ type: :Array,
22
+ model: DearInventory::Models::Purchases::Line,
23
+ },
24
+ AdditionalCharges: {
25
+ name: :additional_charges,
26
+ type: :Array,
27
+ model: DearInventory::Models::Purchases::AdditionalCharge,
28
+ },
29
+ Prepayments: {
30
+ name: :prepayments,
31
+ type: :Array,
32
+ model: DearInventory::Models::Sales::PaymentLine,
33
+ },
34
+ TotalBeforeTax: {
35
+ name: :total_before_tax,
36
+ type: :BigDecimal,
37
+ },
38
+ Tax: {
39
+ name: :tax,
40
+ type: :BigDecimal,
41
+ },
42
+ Total: {
43
+ name: :total,
44
+ type: :BigDecimal,
45
+ }
46
+ )
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class Stock < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Status: {
12
+ name: :status,
13
+ type: :String,
14
+ },
15
+ Lines: {
16
+ name: :lines,
17
+ type: :Array,
18
+ model: DearInventory::Models::Purchases::StockLine,
19
+ }
20
+ )
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,63 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class StockLine < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Date: {
12
+ name: :date,
13
+ type: :Date,
14
+ },
15
+ Quantity: {
16
+ name: :quantity,
17
+ type: :BigDecimal,
18
+ },
19
+ ProductID: {
20
+ name: :product_id,
21
+ type: :Guid,
22
+ },
23
+ SKU: {
24
+ name: :sku,
25
+ type: :String,
26
+ },
27
+ Name: {
28
+ name: :name,
29
+ type: :String,
30
+ },
31
+ Location: {
32
+ name: :location,
33
+ type: :String,
34
+ },
35
+ LocationID: {
36
+ name: :location_id,
37
+ type: :Guid,
38
+ },
39
+ Received: {
40
+ name: :received,
41
+ type: :Boolean,
42
+ },
43
+ BatchSN: {
44
+ name: :batch_sn,
45
+ type: :String,
46
+ },
47
+ SupplierSKU: {
48
+ name: :supplier_sku,
49
+ type: :String,
50
+ },
51
+ ExpiryDate: {
52
+ name: :expiry_date,
53
+ type: :Date,
54
+ },
55
+ CardID: {
56
+ name: :card_id,
57
+ type: :Guid,
58
+ }
59
+ )
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,51 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Purchases
7
+ class UnstockLine < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ CardID: {
12
+ name: :card_id,
13
+ type: :Guid,
14
+ },
15
+ Date: {
16
+ name: :date,
17
+ type: :Date,
18
+ },
19
+ Quantity: {
20
+ name: :quantity,
21
+ type: :BigDecimal,
22
+ },
23
+ ProductID: {
24
+ name: :product_id,
25
+ type: :Guid,
26
+ },
27
+ SKU: {
28
+ name: :sku,
29
+ type: :String,
30
+ },
31
+ Name: {
32
+ name: :name,
33
+ type: :String,
34
+ },
35
+ Location: {
36
+ name: :location,
37
+ type: :String,
38
+ },
39
+ BatchSN: {
40
+ name: :batch_sn,
41
+ type: :String,
42
+ },
43
+ ExpiryDate: {
44
+ name: :expiry_date,
45
+ type: :Date,
46
+ }
47
+ )
48
+ end
49
+ end
50
+ end
51
+ end
@@ -99,7 +99,7 @@ module DearInventory
99
99
  },
100
100
  COGSAmount: {
101
101
  name: :cogs_amount,
102
- type: :Numeric,
102
+ type: :BigDecimal,
103
103
  },
104
104
  Status: {
105
105
  name: :status,
@@ -139,7 +139,7 @@ module DearInventory
139
139
  },
140
140
  CurrencyRate: {
141
141
  name: :currency_rate,
142
- type: :Numeric,
142
+ type: :BigDecimal,
143
143
  },
144
144
  SalesRepresentative: {
145
145
  name: :sales_representative,
@@ -29,7 +29,7 @@ module DearInventory
29
29
  },
30
30
  InvoiceDate: {
31
31
  name: :invoice_date,
32
- type: :DateTime,
32
+ type: :Date,
33
33
  },
34
34
  InvoiceNumber: {
35
35
  name: :invoice_number,
@@ -37,7 +37,7 @@ module DearInventory
37
37
  },
38
38
  OrderDate: {
39
39
  name: :order_date,
40
- type: :DateTime,
40
+ type: :Date,
41
41
  },
42
42
  OrderNumber: {
43
43
  name: :order_number,
@@ -53,11 +53,11 @@ module DearInventory
53
53
  },
54
54
  InvoiceDueDate: {
55
55
  name: :invoice_due_date,
56
- type: :DateTime,
56
+ type: :Date,
57
57
  },
58
58
  ShipBy: {
59
59
  name: :ship_by,
60
- type: :DateTime,
60
+ type: :Date,
61
61
  },
62
62
  BaseCurrency: {
63
63
  name: :base_currency,
@@ -0,0 +1,47 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ module DearInventory
5
+ module Models
6
+ module Sales
7
+ class AdditionalCharge < DearInventory::Model
8
+ extend T::Sig
9
+
10
+ fields(
11
+ Description: {
12
+ name: :description,
13
+ type: :String,
14
+ },
15
+ Price: {
16
+ name: :price,
17
+ type: :BigDecimal,
18
+ },
19
+ Quantity: {
20
+ name: :quantity,
21
+ type: :BigDecimal,
22
+ },
23
+ Discount: {
24
+ name: :discount,
25
+ type: :BigDecimal,
26
+ },
27
+ Tax: {
28
+ name: :tax,
29
+ type: :BigDecimal,
30
+ },
31
+ Total: {
32
+ name: :total,
33
+ type: :BigDecimal,
34
+ },
35
+ TaxRule: {
36
+ name: :tax_rule,
37
+ type: :String,
38
+ },
39
+ Comment: {
40
+ name: :comment,
41
+ type: :String,
42
+ }
43
+ )
44
+ end
45
+ end
46
+ end
47
+ end