item_builder 0.1.3 → 0.1.4

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: 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