Module: TinyBuilder::AllocatedStock

Included in:
QuantityCounter
Defined in:
lib/tiny_builder/allocated_stock.rb

Instance Method Summary collapse

Instance Method Details

#allocated_stock_active?Boolean

Returns:

  • (Boolean)


5
6
7
8
9
# File 'lib/tiny_builder/allocated_stock.rb', line 5

def allocated_stock_active?
  stock_alloc.present? &&
    stock_alloc.start_at <= Time.now &&
    stock_alloc.end_at >= Time.now
end

#count_allocated_stockObject



11
12
13
# File 'lib/tiny_builder/allocated_stock.rb', line 11

def count_allocated_stock
  stock_alloc.quantity.to_i - one_alloc_rsvd_stock(stock_alloc).to_i
end

#hostObject



15
16
17
18
# File 'lib/tiny_builder/allocated_stock.rb', line 15

def host
  url = ENV['ORDERS_URL'] || 'orders.forstok.com'
  url + '/api/v2/item_line/count_one_allocated_reserved_stock'
end

#one_alloc_rsvd_stock(allocated_stock) ⇒ Object

one_alloc_rsvd_stock fungsi untuk mendapatkan satu allocated reserved stock



31
32
33
# File 'lib/tiny_builder/allocated_stock.rb', line 31

def one_alloc_rsvd_stock(allocated_stock)
  RestClient.get("#{host}?#{params(allocated_stock)}")
end

#params(allocated_stock) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/tiny_builder/allocated_stock.rb', line 20

def params(allocated_stock)
  {
    channel_id: allocated_stock.variant_listing.channel_id,
    item_variant_id: allocated_stock.variant_listing.variant_id,
    start_at: allocated_stock.start_at,
    end_at: allocated_stock.end_at
  }.to_query
end