item_builder 0.1.3 → 0.1.4

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: c92a9679076c8b127303bb9fc809ba3567424193373552d5675aa1db4f582595
4
- data.tar.gz: 2701fcce867981222ce0abc80194043c8a7ec05ba126709d90d4879cebfa7484
3
+ metadata.gz: 149dad9c254c3b2318bf2b34aac1cb8788028b5006a01722d1d119f794e95963
4
+ data.tar.gz: 40bf302606d6d08a0fae8be2b3eee65ac0126c88cb0883cd88a883aea7a93459
5
5
  SHA512:
6
- metadata.gz: b42422beea0ceae242ab2f80d8f8777967eaae82153be8feda2941a8bd7fe1e5819bfcd0a4d105bd2c44fd45d303e4ad722555d128b765ba1661fbc50651a550
7
- data.tar.gz: 324aa9b16a344e7b9adb67454767bafb43b8a4253057681446d68bb5d54194a02dde8183117d1ae201dc860af6bacf349c2b3bff66db91cdebeae8f2c52e3fca
6
+ metadata.gz: 89afe48d4af43f64d63cfd0f9237979ba60e60842e6a4444003dc3f9b8f4df4834c3d38fbd2bcc1d763f3ab68dcc1ab2f02b683e87dfe28dd939e45b074c8c05
7
+ data.tar.gz: a2b6664b091533401982e7edcb337c4f32a4f877c7dcebdfba6cf4ea034da69cec72dd0526732684381a35cce49b2f57427c71e928b5df58e200502022f699fb
@@ -10,7 +10,6 @@ module ItemBuilder
10
10
  attr_reader :listing
11
11
  def initialize(args)
12
12
  @listing = args.fetch(:listing)
13
- warehouse
14
13
  end
15
14
 
16
15
  def base
@@ -21,33 +20,5 @@ module ItemBuilder
21
20
  sku: listing.sku
22
21
  }
23
22
  end
24
-
25
- def warehouse
26
- warehouse_spaces.each do |warehouse_space|
27
- warehouses << to_h(warehouse_space)
28
- end
29
- end
30
-
31
- def warehouse_spaces
32
- WarehouseSpace.where(item_variant_id: listing.variant_id)
33
- end
34
-
35
- def warehouse_mapping(warehouse_id)
36
- WarehouseMapping
37
- .where(profile_channel_association_id:
38
- listing.profile_channel_association_id,
39
- warehouse_id: warehouse_id)
40
- end
41
-
42
- def wh_mapping(warehouse_id)
43
- data = warehouse_mapping(warehouse_id)
44
- return nil if data.empty?
45
-
46
- warehouse_mapping(warehouse_id)[0].channel_warehouse_id
47
- end
48
-
49
- def warehouses
50
- @warehouses ||= []
51
- end
52
23
  end
53
24
  end
@@ -7,17 +7,12 @@ module ItemBuilder
7
7
  include Modes
8
8
 
9
9
  def perform
10
- base.merge!(
11
- warehouse: warehouses
12
- )
10
+ to_h.merge(base)
13
11
  end
14
12
 
15
- def to_h(warehouse_space)
13
+ def to_h
16
14
  {
17
- active: listing.active,
18
- warehouse_id: wh_mapping(
19
- warehouse_space.warehouse_id
20
- )
15
+ active: listing.active
21
16
  }
22
17
  end
23
18
  end
@@ -7,20 +7,15 @@ module ItemBuilder
7
7
  include Modes
8
8
 
9
9
  def perform
10
- base.merge!(
11
- warehouse: warehouses
12
- )
10
+ to_h.merge(base)
13
11
  end
14
12
 
15
- def to_h(warehouse_space)
13
+ def to_h
16
14
  {
17
15
  price: listing.price,
18
16
  sale_price: listing.sale_price,
19
17
  sale_start_at: listing.sale_start_at,
20
- sale_end_at: listing.sale_end_at,
21
- warehouse_id: wh_mapping(
22
- warehouse_space.warehouse_id
23
- )
18
+ sale_end_at: listing.sale_end_at
24
19
  }
25
20
  end
26
21
  end
@@ -8,19 +8,18 @@ module ItemBuilder
8
8
  include Modes
9
9
 
10
10
  def perform
11
- base.merge!(
12
- warehouse: warehouses
13
- )
11
+ to_h.merge(base)
14
12
  end
15
13
 
16
- def to_h(warehouse_space)
14
+ def to_h
17
15
  {
18
- quantity: warehouse_space.quantity,
19
- warehouse_id: wh_mapping(
20
- warehouse_space.warehouse_id
21
- )
16
+ quantity: warehouse.quantity
22
17
  }
23
18
  end
19
+
20
+ def warehouse
21
+ WarehouseSpace.find_by(item_variant_id: listing.variant_id)
22
+ end
24
23
  end
25
24
  end
26
25
  end
@@ -9,22 +9,19 @@ module ItemBuilder
9
9
  include Modes
10
10
 
11
11
  def perform
12
- base.merge!(
13
- warehouse: warehouses
14
- )
12
+ to_h.merge(base)
15
13
  end
16
14
 
17
- def to_h(warehouse_space)
18
- {
19
- quantity: warehouse_space.quantity,
20
- price: listing.price,
21
- sale_price: listing.sale_price,
22
- sale_start_at: listing.sale_start_at,
23
- sale_end_at: listing.sale_end_at,
24
- warehouse_id: wh_mapping(
25
- warehouse_space.warehouse_id
26
- )
27
- }
15
+ def to_h
16
+ quantity.merge(price)
17
+ end
18
+
19
+ def quantity
20
+ QuantityService.new(listing: listing).to_h
21
+ end
22
+
23
+ def price
24
+ PriceService.new(listing: listing).to_h
28
25
  end
29
26
  end
30
27
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ItemBuilder
4
- VERSION = '0.1.3'
4
+ VERSION = '0.1.4'
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.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - okaaryanata
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-04 00:00:00.000000000 Z
11
+ date: 2020-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -141,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
141
  - !ruby/object:Gem::Version
142
142
  version: '0'
143
143
  requirements: []
144
- rubygems_version: 3.1.2
144
+ rubygems_version: 3.0.6
145
145
  signing_key:
146
146
  specification_version: 4
147
147
  summary: Item builder