erp_integration 0.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 17355e9b381181f43c54715c29142911d1c698961b9e83316725cdd7d15d0482
4
- data.tar.gz: 0dc34879a850e7bcac51d5f5250d97ff4abba11bf49dffdc1e1526dc07e35fc0
3
+ metadata.gz: ad8a8ac7a7ae3e4fdf89fb54a43c1c40733db2c0c9cb1a56567bc4988d981f76
4
+ data.tar.gz: 7607c3e4822aeac9ee4d4977f256345bf53a74af8e4ef4a35dd030ba76ccf29f
5
5
  SHA512:
6
- metadata.gz: 7c20118ad5a092bafc6db0b98ca234055f03ec3aa468894389517091b56efab41bdc47b98b519be5dec7b8db286da52daee7167f287d91e9e31ff2765147a847
7
- data.tar.gz: 3beffaa2d1c803448298f8023655a7653d4ad1f3ab14d7aa6a86279b2c8f831b1049f290cd6edfc6c42b151f861d03b341cdfe4e59c891ea554faed47d3d091a
6
+ metadata.gz: d1266d8a100256536c54e4990514ee69a8e3ceb6b1d9f82d72d570e0965699469bebd9ef4717f500233f9129fba7ec57965afebfa081aa523227d378fe4b7011
7
+ data.tar.gz: 9c40ac462de22c038446633a23fc0b45327a4a1b879cf397c6cb0de3ea12103c83fc7a15ea7f70aec4a9e82c1ae9e4a3bf98c2c9d25f9d45258a90d836f0434e
data/README.md CHANGED
@@ -37,15 +37,15 @@ end
37
37
  After configuring the gem, one can easily query all the available ERP resources from the connected third-parties.
38
38
 
39
39
  ```ruby
40
- $ ErpIntegration::Order.where(reference: 'MT1000SKX')
41
- => #<ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::Order @id=100 />] />
40
+ $ ErpIntegration::SalesOrder.where(reference: 'MT1000SKX')
41
+ => #<ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::SalesOrder @id=100 />] />
42
42
  ```
43
43
 
44
44
  By default, only the `id` will be added to the found ERP resources. However, one can use the `select` method to include more fields.
45
45
 
46
46
  ```ruby
47
- $ ErpIntegration::Order.select(:id, :reference).where(reference: 'MT1000SKX')
48
- => #<ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::Order @id=100 @reference=MT1000SKX />] />
47
+ $ ErpIntegration::SalesOrder.select(:id, :reference).where(reference: 'MT1000SKX')
48
+ => #<ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::SalesOrder @id=100 @reference=MT1000SKX />] />
49
49
  ```
50
50
 
51
51
  There are also other type of `where` queries available:
data/bin/prerelease CHANGED
@@ -17,4 +17,4 @@ git push origin "release_v.$VERSION"
17
17
 
18
18
  # Tag the new gem version.
19
19
  git tag v$VERSION
20
- git push --tags
20
+ git push origin v$VERSION
@@ -33,7 +33,7 @@ Gem::Specification.new do |spec|
33
33
 
34
34
  # Faraday is a HTTP/REST API client library to interact with third-party API vendors
35
35
  spec.add_dependency 'faraday', '>= 0.17.3', '< 1.9.0'
36
- spec.add_dependency 'faraday_middleware', '~> 0.14.0'
36
+ spec.add_dependency 'faraday_middleware', '>= 0.14', '< 1.3'
37
37
 
38
38
  # Development dependencies
39
39
  spec.add_development_dependency 'byebug', '~> 11.0'
@@ -22,10 +22,10 @@ module ErpIntegration
22
22
  # @return [String] The merchant ID for Fulfil.
23
23
  attr_accessor :fulfil_merchant_id
24
24
 
25
- # Allows configuring an adapter for the `Order` resource. When none is
25
+ # Allows configuring an adapter for the `Product` resource. When none is
26
26
  # configured, it will default to Fulfil.
27
- # @return [Symbol] The configured adapter for the orders
28
- attr_writer :order_adapter
27
+ # @return [Symbol] The configured adapter for the products.
28
+ attr_writer :product_adapter
29
29
 
30
30
  # Allows configuring an adapter for the `PurchaseOrder` resource. When none is
31
31
  # configured, it will default to Fulfil.
@@ -37,14 +37,39 @@ module ErpIntegration
37
37
  # @return [Symbol] The configured adapter for the purchase order lines.
38
38
  attr_writer :purchase_order_line_adapter
39
39
 
40
+ # Allows configuring an adapter for the `PurchaseRequest` resource. When
41
+ # none is configured, it will default to Fulfil.
42
+ # @return [Symbol] The configured adapter for the purchase request.
43
+ attr_writer :purchase_request_adapter
44
+
45
+ # Allows configuring an adapter for the `SalesOrder` resource. When none is
46
+ # configured, it will default to Fulfil.
47
+ # @return [Symbol] The configured adapter for the sales orders
48
+ attr_writer :sales_order_adapter
49
+
50
+ # Allows configuring an adapter for the `SalesOrderLine` resource. When none is
51
+ # configured, it will default to Fulfil.
52
+ # @return [Symbol] The configured adapter for the order lines.
53
+ attr_writer :sales_order_line_adapter
54
+
55
+ # Allows configuring an adapter for the `SupplierShipment` resource. When
56
+ # none is configured, it will default to Fulfil.
57
+ # @return [Symbol] The configured adapter for the supplier shipment.
58
+ attr_writer :supplier_shipment_adapter
59
+
60
+ # Allows configuring an adapter for the `StockMove` resource. When
61
+ # none is configured, it will default to Fulfil.
62
+ # @return [Symbol] The configured adapter for the stock move.
63
+ attr_writer :stock_move_adapter
64
+
40
65
  def initialize(**options)
41
66
  options.each_pair do |key, value|
42
67
  public_send("#{key}=", value) if respond_to?("#{key}=")
43
68
  end
44
69
  end
45
70
 
46
- def order_adapter
47
- @order_adapter || :fulfil
71
+ def product_adapter
72
+ @product_adapter || :fulfil
48
73
  end
49
74
 
50
75
  def purchase_order_adapter
@@ -54,6 +79,26 @@ module ErpIntegration
54
79
  def purchase_order_line_adapter
55
80
  @purchase_order_line_adapter || :fulfil
56
81
  end
82
+
83
+ def purchase_request_adapter
84
+ @purchase_request_adapter || :fulfil
85
+ end
86
+
87
+ def sales_order_line_adapter
88
+ @sales_order_line_adapter || :fulfil
89
+ end
90
+
91
+ def sales_order_adapter
92
+ @sales_order_adapter || :fulfil
93
+ end
94
+
95
+ def supplier_shipment_adapter
96
+ @supplier_shipment_adapter || :fulfil
97
+ end
98
+
99
+ def stock_move_adapter
100
+ @stock_move_adapter || :fulfil
101
+ end
57
102
  end
58
103
 
59
104
  # Returns ERP Integration's configuration.
@@ -13,14 +13,14 @@ module ErpIntegration
13
13
  # selecting multiple fields at once.
14
14
  #
15
15
  # @example
16
- # $ ErpIntegration::Order.select(:id, :name, 'product.name')
16
+ # $ ErpIntegration::SalesOrder.select(:id, :name, 'product.name')
17
17
  # # => <ErpIntegration::Fulfil::Resources::Order @selected_fields=[:id, :name, "product.name"] />
18
18
  #
19
19
  # When one calls the `all` method, it will fetch all the resources from Fulfil
20
20
  # and it will return all the given fields (if available).
21
21
  #
22
22
  # @example
23
- # $ ErpIntegration::Order.select(:id, :name, 'product.name').all
23
+ # $ ErpIntegration::SalesOrder.select(:id, :name, 'product.name').all
24
24
  # # => <ErpIntegration::Fulfil::Collection @items=[...] />
25
25
  #
26
26
  # Both a list of Strings, Symbols or a combination of these can be passed
@@ -41,8 +41,8 @@ module ErpIntegration
41
41
  # to query resources in Fulfil.
42
42
  #
43
43
  # @example
44
- # $ ErpIntegration::Order.where(id: 100).all
45
- # # => <ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::Order @id=100 />] />
44
+ # $ ErpIntegration::SalesOrder.where(id: 100).all
45
+ # # => <ErpIntegration::Fulfil::Collection @items=[<ErpIntegration::SalesOrder @id=100 />] />
46
46
  #
47
47
  # If one adds the `comparison_operator` key to the arguments, it will use
48
48
  # that comparison operator to build the query to Fulfil.
@@ -74,10 +74,26 @@ module ErpIntegration
74
74
  where(args.merge(comparison_operator: 'in'))
75
75
  end
76
76
 
77
+ def where_less_than(args)
78
+ where(args.merge(comparison_operator: '<'))
79
+ end
80
+
81
+ def where_less_or_equal_to(args)
82
+ where(args.merge(comparison_operator: '<='))
83
+ end
84
+
77
85
  def where_like(args)
78
86
  where(args.merge(comparison_operator: 'like'))
79
87
  end
80
88
 
89
+ def where_more_than(args)
90
+ where(args.merge(comparison_operator: '>'))
91
+ end
92
+
93
+ def where_more_or_equal_to(args)
94
+ where(args.merge(comparison_operator: '>='))
95
+ end
96
+
81
97
  def where_not(args)
82
98
  where(args.merge(comparison_operator: '!='))
83
99
  end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../api_resource'
4
+
5
+ module ErpIntegration
6
+ module Fulfil
7
+ module Resources
8
+ class Product < ApiResource
9
+ self.model_name = 'product.product'
10
+
11
+ # Checks whether a certain product is a BOM.
12
+ # @param sku [String] The product's SKU.
13
+ # @return [Boolean] Whether it's a BOM or not.
14
+ def bom?(sku)
15
+ select(:boms).where(code: sku).first.boms.any?
16
+ end
17
+ alias billing_of_materials? bom?
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../api_resource'
4
+
5
+ module ErpIntegration
6
+ module Fulfil
7
+ module Resources
8
+ class PurchaseRequest < ApiResource
9
+ self.model_name = 'purchase.request'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -5,7 +5,7 @@ require_relative '../api_resource'
5
5
  module ErpIntegration
6
6
  module Fulfil
7
7
  module Resources
8
- class Order < ApiResource
8
+ class SalesOrder < ApiResource
9
9
  self.model_name = 'sale.sale'
10
10
 
11
11
  # Allows cancelling the entire sales order in Fulfil.
@@ -22,6 +22,11 @@ module ErpIntegration
22
22
  # https://developers.fulfil.io/rest_api/model/sale.sale/#cancel-a-sales-order
23
23
  rescue ErpIntegration::HttpError::BadRequest
24
24
  false
25
+ # Workaround: Fulfil api does not return a json when status code is 200 (a.k.a. "Ok")
26
+ # and faraday is having an error when trying to parse it. Let's skip the parse error
27
+ # and move on.
28
+ rescue Faraday::ParsingError
29
+ true
25
30
  end
26
31
  end
27
32
  end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../api_resource'
4
+
5
+ module ErpIntegration
6
+ module Fulfil
7
+ module Resources
8
+ class SalesOrderLine < ApiResource
9
+ self.model_name = 'sale.line'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../api_resource'
4
+
5
+ module ErpIntegration
6
+ module Fulfil
7
+ module Resources
8
+ class StockMove < ApiResource
9
+ self.model_name = 'stock.move'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../api_resource'
4
+
5
+ module ErpIntegration
6
+ module Fulfil
7
+ module Resources
8
+ class SupplierShipment < ApiResource
9
+ self.model_name = 'stock.shipment.in'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -18,7 +18,7 @@ module ErpIntegration
18
18
  # # => <WhereClause @key="id" value="100" comparison_operator="=" />
19
19
  class WhereClause
20
20
  COMPARISON_OPERATORS = [
21
- '=', '!=', '<', '<=', '=>', '>', 'like', 'ilike', 'in', 'not in'
21
+ '=', '!=', '<', '<=', '>=', '>', 'like', 'ilike', 'in', 'not in'
22
22
  ].freeze
23
23
 
24
24
  DEFAULT_COMPARISON_OPERATOR = '='
@@ -26,7 +26,7 @@ module ErpIntegration
26
26
  def initialize(key:, value:, comparison_operator: DEFAULT_COMPARISON_OPERATOR)
27
27
  @comparison_operator = verify_comparison_operator(comparison_operator)
28
28
  @key = key.to_s
29
- @value = value.to_s
29
+ @value = value
30
30
  end
31
31
 
32
32
  # Transforms the `WhereClause` into a filter object for Fulfil.
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ # The `ErpIntegration::Product` exposes an uniformed API for interaction with
5
+ # third-party ERP vendors.
6
+ class Product < Resource
7
+ attr_accessor :id, :code, :cost_price, :cost_price_method, :quantity_available,
8
+ :quantity_buildable, :quantity_inbound, :quantity_on_hand, :salable,
9
+ :template, :variant_name, :abc_classification, :account_category,
10
+ :account_cogs_used, :account_expense_used, :account_revenue_used,
11
+ :account_stock_lost_found_used, :account_stock_production_used,
12
+ :account_stock_supplier_used, :account_stock_used, :active,
13
+ :asin, :attachments, :attribute_set, :attributes, :attributes_json,
14
+ :average_daily_consumed, :average_daily_sales, :average_monthly_consumed,
15
+ :average_monthly_sales, :average_price, :boms, :box_type, :brand, :channel_listings,
16
+ :consumable, :country_of_origin, :create_date, :create_uid, :customs_description,
17
+ :customs_value, :days_of_inventory_left, :default_uom, :default_uom_category,
18
+ :description, :dimensions_uom, :ean, :fulfil_strategy, :gc_max, :gc_min,
19
+ :gift_card_delivery_mode, :gift_card_prices, :google_product_category,
20
+ :gross_margin, :gross_profit, :height, :hs_code, :is_gift_card, :landed_cost,
21
+ :lead_time_in_days, :length, :list_price, :long_description, :metadata,
22
+ :next_shipping_date, :product_suppliers, :purchasable, :purchase_uom,
23
+ :quantity_on_confirmed_purchase_orders, :quantity_outbound, :quantity_returned,
24
+ :quantity_sold, :quantity_waiting_consumption, :quantity_wip, :safety_stock_days,
25
+ :sale_uom, :scan_required, :ship_from_stock_if_available, :type,
26
+ :upc, :use_name_as_customs_description, :weight, :weight_uom,
27
+ :width, :write_date, :write_uid
28
+ end
29
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ # The `ErpIntegration::PurchaseRequest` exposes an uniformed API for interaction with
5
+ # third-party ERP vendors.
6
+ class PurchaseRequest < Resource
7
+ attr_accessor :id, :party, :product, :quantity, :attachments, :company,
8
+ :create_date, :create_uid, :customer, :delivery_address,
9
+ :metadata, :purchase, :purchase_date, :purchase_line, :state,
10
+ :uom, :warehouse, :write_date, :write_uid
11
+ end
12
+ end
@@ -16,8 +16,8 @@ module ErpIntegration
16
16
  # config.order_adapter = :fulfil
17
17
  # end
18
18
  #
19
- # $ ErpIntegration::Order.adapter
20
- # => #<ErpIntegration::Orders::FulfilOrder />
19
+ # $ ErpIntegration::SalesOrder.adapter
20
+ # => #<ErpIntegration::SalesOrders::FulfilOrder />
21
21
  #
22
22
  # To add a new resource, follow these steps:
23
23
  # 1. Add a new `attr_writer` in the `ErpIntegration::Configuration` class.
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ # The `ErpIntegration::SalesOrder` exposes an uniformed API for interaction with
5
+ # third-party ERP vendors.
6
+ class SalesOrder < Resource
7
+ attr_accessor :id, :channel, :number, :party, :sale_date, :shipment_address,
8
+ :amount_invoiced, :attachments, :carrier, :carrier_service,
9
+ :channel_identifier, :comment, :company, :confirmation_time,
10
+ :create_date, :currency, :description, :gateway_transaction,
11
+ :invoice_address, :invoice_method, :invoice_state, :invoices,
12
+ :lines, :metadata, :payment_term, :payment_total, :price_list,
13
+ :reference, :sales_person, :shipment_amount, :shipment_method,
14
+ :shipment_state, :shipments, :shipping_start_date, :state,
15
+ :tax_amount, :total_amount, :total_quantity, :total_shipment_cost,
16
+ :untaxed_amount, :warehouse, :weight, :weight_uom, :write_date,
17
+ :write_uid
18
+
19
+ def cancel
20
+ self.class.adapter.cancel(id)
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ # The `ErpIntegration::SalesOrderLine` exposes an uniformed API for interaction with
5
+ # third-party ERP vendors.
6
+ class SalesOrderLine < Resource
7
+ attr_accessor :id, :product, :quantity, :unit, :unit_price, :amount, :attachments,
8
+ :channel_identifier, :create_date, :create_uid, :delivery_address,
9
+ :delivery_date, :delivery_mode, :description, :discount, :gift_message,
10
+ :gross_profit_cpny_cc, :is_gift_card, :list_price, :listing_sku,
11
+ :metadata, :note, :options, :purhcase_request, :quantity_canceled,
12
+ :quantity_reserved, :quantity_shipped, :return_reason, :sale,
13
+ :sequence, :shipping_date, :taxes, :type, :warehouse, :write_date,
14
+ :write_uid
15
+ end
16
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ class StockMove < Resource
5
+ attr_accessor :attachments, :children, :company, :cost_price, :create_date,
6
+ :create_uid, :currency, :effective_date, :from_location,
7
+ :from_sublocation, :id, :internal_quantity, :journal_entry,
8
+ :metadata, :planned_date, :quantity, :quantity_available,
9
+ :reference, :state, :to_location, :unit_price, :uom, :write_date,
10
+ :write_uid
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ErpIntegration
4
+ class SupplierShipment < Resource
5
+ attr_accessor :acknowledged_by_3pl_at, :attachments, :carrier, :carrier_service,
6
+ :company, :contact_address, :cost, :cost_currency, :create_date,
7
+ :create_uidcustomer_shipments, :effective_date, :id, :incoming_moves,
8
+ :inventory_moves, :metadata, :moves, :number, :packages, :planned_date,
9
+ :reference, :sent_to_3pl_at, :shipping_instructions, :shipping_manifest,
10
+ :sscc_code, :state, :supplier, :supplier_location, :total_quantity,
11
+ :tpl_status, :tracking_number, :warehouse, :weight, :weight_uom,
12
+ :write_date, :write_uid
13
+ end
14
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ErpIntegration
4
- VERSION = '0.3.1'
4
+ VERSION = '0.5.0'
5
5
  end
@@ -20,8 +20,13 @@ require_relative 'erp_integration/fulfil/client'
20
20
  # The `ErpIntegration` integrates Mejuri with third-party ERP vendors.
21
21
  module ErpIntegration
22
22
  # Resources
23
- autoload :Resource, 'erp_integration/resource'
24
- autoload :Order, 'erp_integration/order'
23
+ autoload :Product, 'erp_integration/product'
25
24
  autoload :PurchaseOrder, 'erp_integration/purchase_order'
26
25
  autoload :PurchaseOrderLine, 'erp_integration/purchase_order_line'
26
+ autoload :PurchaseRequest, 'erp_integration/purchase_request'
27
+ autoload :Resource, 'erp_integration/resource'
28
+ autoload :SalesOrder, 'erp_integration/sales_order'
29
+ autoload :SalesOrderLine, 'erp_integration/sales_order_line'
30
+ autoload :StockMove, 'erp_integration/stock_move'
31
+ autoload :SupplierShipment, 'erp_integration/supplier_shipment'
27
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: erp_integration
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Vermaas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-10-07 00:00:00.000000000 Z
11
+ date: 2021-10-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -48,16 +48,22 @@ dependencies:
48
48
  name: faraday_middleware
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - "~>"
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0.14'
54
+ - - "<"
52
55
  - !ruby/object:Gem::Version
53
- version: 0.14.0
56
+ version: '1.3'
54
57
  type: :runtime
55
58
  prerelease: false
56
59
  version_requirements: !ruby/object:Gem::Requirement
57
60
  requirements:
58
- - - "~>"
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '0.14'
64
+ - - "<"
59
65
  - !ruby/object:Gem::Version
60
- version: 0.14.0
66
+ version: '1.3'
61
67
  - !ruby/object:Gem::Dependency
62
68
  name: byebug
63
69
  requirement: !ruby/object:Gem::Requirement
@@ -259,15 +265,25 @@ files:
259
265
  - lib/erp_integration/fulfil/client.rb
260
266
  - lib/erp_integration/fulfil/query.rb
261
267
  - lib/erp_integration/fulfil/query_methods.rb
262
- - lib/erp_integration/fulfil/resources/order.rb
268
+ - lib/erp_integration/fulfil/resources/product.rb
263
269
  - lib/erp_integration/fulfil/resources/purchase_order.rb
264
270
  - lib/erp_integration/fulfil/resources/purchase_order_line.rb
271
+ - lib/erp_integration/fulfil/resources/purchase_request.rb
272
+ - lib/erp_integration/fulfil/resources/sales_order.rb
273
+ - lib/erp_integration/fulfil/resources/sales_order_line.rb
274
+ - lib/erp_integration/fulfil/resources/stock_move.rb
275
+ - lib/erp_integration/fulfil/resources/supplier_shipment.rb
265
276
  - lib/erp_integration/fulfil/where_clause.rb
266
277
  - lib/erp_integration/middleware/error_handling.rb
267
- - lib/erp_integration/order.rb
278
+ - lib/erp_integration/product.rb
268
279
  - lib/erp_integration/purchase_order.rb
269
280
  - lib/erp_integration/purchase_order_line.rb
281
+ - lib/erp_integration/purchase_request.rb
270
282
  - lib/erp_integration/resource.rb
283
+ - lib/erp_integration/sales_order.rb
284
+ - lib/erp_integration/sales_order_line.rb
285
+ - lib/erp_integration/stock_move.rb
286
+ - lib/erp_integration/supplier_shipment.rb
271
287
  - lib/erp_integration/version.rb
272
288
  homepage: https://www.github.com/mejuri-inc/erp-integration
273
289
  licenses:
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ErpIntegration
4
- # The `ErpIntegration::Order` exposes an uniformed API for interaction with
5
- # third-party ERP vendors.
6
- class Order < Resource
7
- attr_accessor :id, :number
8
- end
9
- end