erp_integration 0.3.1 → 0.5.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: 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