item_builder 0.1.15 → 0.1.16

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 (31) hide show
  1. checksums.yaml +4 -4
  2. data/lib/item_builder.rb +54 -52
  3. data/lib/item_builder/get_quantity_service.rb +1 -1
  4. data/lib/item_builder/modes.rb +1 -1
  5. data/lib/item_builder/modes/active_service.rb +1 -1
  6. data/lib/item_builder/modes/base_service.rb +1 -1
  7. data/lib/item_builder/modes/price/base.rb +1 -1
  8. data/lib/item_builder/modes/price/blibli_service.rb +1 -1
  9. data/lib/item_builder/modes/price/bukalapak_service.rb +1 -1
  10. data/lib/item_builder/modes/price/jd_service.rb +1 -1
  11. data/lib/item_builder/modes/price/sale_price_policy.rb +1 -1
  12. data/lib/item_builder/modes/price/shopify_service.rb +1 -1
  13. data/lib/item_builder/modes/price/zalora_service.rb +1 -1
  14. data/lib/item_builder/modes/price_service.rb +1 -1
  15. data/lib/item_builder/modes/quantity/base.rb +1 -1
  16. data/lib/item_builder/modes/quantity/blibli_service.rb +1 -1
  17. data/lib/item_builder/modes/quantity/lazada_service.rb +1 -1
  18. data/lib/item_builder/modes/quantity/zalora_service.rb +1 -1
  19. data/lib/item_builder/modes/quantity_service.rb +1 -1
  20. data/lib/item_builder/modes/simple_service.rb +1 -1
  21. data/lib/item_builder/modes/update/base.rb +1 -1
  22. data/lib/item_builder/modes/update/blibli_service.rb +1 -1
  23. data/lib/item_builder/modes/update/bukalapak_service.rb +1 -1
  24. data/lib/item_builder/modes/update/jd_service.rb +1 -1
  25. data/lib/item_builder/modes/update/lazada_service.rb +1 -1
  26. data/lib/item_builder/modes/update/shopify_service.rb +1 -1
  27. data/lib/item_builder/modes/update/tokopedia_service.rb +1 -1
  28. data/lib/item_builder/modes/update/zalora_service.rb +1 -1
  29. data/lib/item_builder/modes/update_service.rb +1 -1
  30. data/lib/item_builder/version.rb +2 -2
  31. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 78374ce9b35b89257c71b2c25a0ec5ae52490eaa79ca64c777acc1fd65bcb2e5
4
- data.tar.gz: b839aa926980f7479349658c67ed6e870e2c7960944d0f9abcc2839dec21f984
3
+ metadata.gz: c73662d1db692cc3c0356465e141d519e3880f2f57ecf9934e8c14b431fad8ba
4
+ data.tar.gz: a210f12fb2665cbb4275816c7dd10d8483dacd70a9bcbc066634ec7fdeeddec0
5
5
  SHA512:
6
- metadata.gz: 35913352045ce6d2d1df6d641ed49e2a4fcd7e6aca2b8ec7e016315fe8923dad12037db32f3eeb52077f514685673071b3aa548c36460e715e4e4784ead4306c
7
- data.tar.gz: 53928e6cc0be8ad63fb1a42644d4195c031a8a6afc3aece2ff8ae57c3e85a8f49c001288e632d34dfe9c7eae38c6c71175e305823fa73abe65262b61d037ac8d
6
+ metadata.gz: d7cee35582b4506ec8762dbccb7681c1cfbb93c17f9c30c86b0cc607bde60e479ee8e973a444ae30f3a36f619dbac97c424629ea3e0e2a3afeeb0b2a3c53d710
7
+ data.tar.gz: 670770117728b939f832b038849a82a33041c53677e6b211f154aa684bb215e192a0af7dc21022815e79d10f93e55c6578db17dd6cfb61a7284300c8cda45fbd
@@ -8,68 +8,70 @@ require 'item_builder/modes/quantity_service'
8
8
  require 'item_builder/modes/simple_service'
9
9
  require 'item_models'
10
10
 
11
- module ItemBuilder
12
- class << self
13
- attr_reader :listing_ids
14
- attr_reader :listings
15
- attr_reader :mode
16
- attr_reader :wh_spaces
17
- attr_reader :variants
18
- attr_reader :variant_ids
19
- def build(listing_ids, mode)
20
- @listing_ids = listing_ids
21
- @mode = mode
22
- mode_check
23
- end
11
+ class ItemBuilder
12
+ def self.build(listing_ids, mode)
13
+ new(listing_ids, mode).mode_check
14
+ end
24
15
 
25
- def mode_check
26
- if mode == :quantity
27
- quantity_mode
28
- else
29
- default
30
- end
31
- end
16
+ attr_reader :listing_ids
17
+ attr_reader :listings
18
+ attr_reader :mode
19
+ attr_reader :wh_spaces
20
+ attr_reader :variants
21
+ attr_reader :variant_ids
32
22
 
33
- def quantity_mode
34
- listings.map do |listing|
35
- modes[mode].new(
36
- listing: listing,
37
- wh_spaces: wh_spaces,
38
- variants: variants
39
- ).perform
40
- end
41
- end
23
+ def initialize(listing_ids, mode)
24
+ @listing_ids = listing_ids
25
+ @mode = mode
26
+ end
42
27
 
43
- def default
44
- listings.map do |listing|
45
- modes[mode].new(listing: listing).perform
46
- end
28
+ def mode_check
29
+ if mode == :quantity
30
+ quantity_mode
31
+ else
32
+ default
47
33
  end
34
+ end
48
35
 
49
- def wh_spaces
50
- @wh_spaces ||= WarehouseSpace.where(item_variant_id: variant_ids)
36
+ def quantity_mode
37
+ listings.map do |listing|
38
+ modes[mode].new(
39
+ listing: listing,
40
+ wh_spaces: wh_spaces,
41
+ variants: variants
42
+ ).perform
51
43
  end
44
+ end
52
45
 
53
- def variants
54
- @variants ||= Variant.where(id: variant_ids)
46
+ def default
47
+ listings.map do |listing|
48
+ modes[mode].new(listing: listing).perform
55
49
  end
50
+ end
56
51
 
57
- def variant_ids
58
- @variant_ids ||= listings.map(&:variant_id).uniq
59
- end
52
+ def wh_spaces
53
+ @wh_spaces ||= WarehouseSpace.where(item_variant_id: variant_ids)
54
+ end
60
55
 
61
- def listings
62
- @listings ||= VariantListing.where(id: listing_ids)
63
- end
56
+ def variants
57
+ @variants ||= Variant.where(id: variant_ids)
58
+ end
64
59
 
65
- def modes
66
- {
67
- price: ItemBuilder::Modes::PriceService,
68
- quantity: ItemBuilder::Modes::QuantityService,
69
- simple: ItemBuilder::Modes::SimpleService,
70
- active: ItemBuilder::Modes::ActiveService,
71
- update: ItemBuilder::Modes::UpdateService
72
- }
73
- end
60
+ def variant_ids
61
+ @variant_ids ||= listings.map(&:variant_id).uniq
62
+ end
63
+
64
+ def listings
65
+ @listings ||= VariantListing.where(id: listing_ids)
66
+ end
67
+
68
+ def modes
69
+ {
70
+ price: ItemBuilder::Modes::PriceService,
71
+ quantity: ItemBuilder::Modes::QuantityService,
72
+ simple: ItemBuilder::Modes::SimpleService,
73
+ active: ItemBuilder::Modes::ActiveService,
74
+ update: ItemBuilder::Modes::UpdateService
75
+ }
74
76
  end
75
77
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'warehouse_models'
4
4
  require 'item_builder/modes.rb'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  class GetQuantityService
7
7
  attr_reader :listing, :wh_sp, :variant
8
8
  def initialize(args)
@@ -6,7 +6,7 @@ require 'item_builder/modes/quantity_service'
6
6
  require 'item_builder/modes/simple_service'
7
7
  require 'item_builder/modes/active_service'
8
8
  require 'item_builder/modes/update_service'
9
- module ItemBuilder
9
+ class ItemBuilder
10
10
  module Modes
11
11
  attr_reader :listing
12
12
  attr_reader :wh_spaces
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes.rb'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  class ActiveService
7
7
  include Modes
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes.rb'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  class BaseService
7
7
  attr_reader :listing
@@ -4,7 +4,7 @@ require 'date'
4
4
  require 'item_builder/modes.rb'
5
5
  require 'item_builder/modes/price_service'
6
6
  require 'item_builder/modes/price/sale_price_policy'
7
- module ItemBuilder
7
+ class ItemBuilder
8
8
  module Modes
9
9
  module Price
10
10
  class Base
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'date'
4
4
  require 'item_builder/modes/price/base'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  module Modes
7
7
  module Price
8
8
  class BlibliService < Base
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'date'
4
4
  require 'item_builder/modes/price/base'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  module Modes
7
7
  module Price
8
8
  class BukalapakService < Base
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'date'
4
4
  require 'item_builder/modes/price/base'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  module Modes
7
7
  module Price
8
8
  class JdService < Base
@@ -3,7 +3,7 @@
3
3
  require 'date'
4
4
  require 'item_builder/modes.rb'
5
5
  require 'item_builder/modes/price_service'
6
- module ItemBuilder
6
+ class ItemBuilder
7
7
  module Modes
8
8
  module Price
9
9
  class SalePricePolicy
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'date'
4
4
  require 'item_builder/modes/price/base'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  module Modes
7
7
  module Price
8
8
  class ShopifyService < Base
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'date'
4
4
  require 'item_builder/modes/price/base'
5
- module ItemBuilder
5
+ class ItemBuilder
6
6
  module Modes
7
7
  module Price
8
8
  class ZaloraService < Base
@@ -6,7 +6,7 @@ require 'item_builder/modes/price/bukalapak_service'
6
6
  require 'item_builder/modes/price/zalora_service'
7
7
  require 'item_builder/modes/price/shopify_service'
8
8
  require 'item_builder/modes/price/jd_service'
9
- module ItemBuilder
9
+ class ItemBuilder
10
10
  module Modes
11
11
  class PriceService
12
12
  include Modes
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module ItemBuilder
3
+ class ItemBuilder
4
4
  module Modes
5
5
  module Quantity
6
6
  class Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/quantity/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Quantity
7
7
  class BlibliService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/quantity/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Quantity
7
7
  class LazadaService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/quantity/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Quantity
7
7
  class ZaloraService < Base
@@ -7,7 +7,7 @@ require 'item_builder/modes/quantity/base'
7
7
  require 'item_builder/modes/quantity/lazada_service'
8
8
  require 'item_builder/modes/quantity/blibli_service'
9
9
  require 'item_builder/modes/quantity/zalora_service'
10
- module ItemBuilder
10
+ class ItemBuilder
11
11
  module Modes
12
12
  class QuantityService
13
13
  include Modes
@@ -3,7 +3,7 @@
3
3
  require 'item_builder/modes/quantity_service.rb'
4
4
  require 'item_builder/modes/price_service.rb'
5
5
  require 'item_builder/modes.rb'
6
- module ItemBuilder
6
+ class ItemBuilder
7
7
  module Modes
8
8
  class SimpleService
9
9
  include Modes
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes.rb'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class BlibliService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class BukalapakService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class JdService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class LazadaService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class ShopifyService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class TokopediaService < Base
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'item_builder/modes/update/base'
4
- module ItemBuilder
4
+ class ItemBuilder
5
5
  module Modes
6
6
  module Update
7
7
  class ZaloraService < Base
@@ -8,7 +8,7 @@ require 'item_builder/modes/update/zalora_service'
8
8
  require 'item_builder/modes/update/shopify_service'
9
9
  require 'item_builder/modes/update/jd_service'
10
10
  require 'item_builder/modes/update/tokopedia_service'
11
- module ItemBuilder
11
+ class ItemBuilder
12
12
  module Modes
13
13
  class UpdateService
14
14
  include Modes
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module ItemBuilder
4
- VERSION = '0.1.15'
3
+ class ItemBuilder
4
+ VERSION = '0.1.16'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: item_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.15
4
+ version: 0.1.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - okaaryanata
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-01-13 00:00:00.000000000 Z
11
+ date: 2021-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler