Module: StoreItemsHelper
- Defined in:
- app/helpers/store_items_helper.rb
Overview
== Schema Information
Table name: store_items
id :integer not null, primary key
item_id :integer
store_id :integer
qty_on_hand :integer default(0)
qty_committed :integer default(0)
unit_cogs :decimal(10, 4)
handling_charge :decimal(8, 2)
created_at :datetime
updated_at :datetime
is_discontinued :boolean default(FALSE)
requires_serial_number :boolean default(FALSE)
location :string(255)
last_item_ledger_entry_id :integer
Instance Method Summary collapse
- #render_store_item_actions_button(store_item) ⇒ Object
- #setup_store_item(store_item) ⇒ Object
- #storage_location_store_item_drop_down(store_item) ⇒ Object
- #store_item_edit_panel(store_item, f) ⇒ Object
Instance Method Details
#render_store_item_actions_button(store_item) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'app/helpers/store_items_helper.rb', line 37 def (store_item) = [] if can?(:edit, store_item) << link_to('Edit', edit_store_item_path(store_item)) end if can?(:do_location_transfer, ItemLedgerEntry) && !store_item.is_kit? << link_to('Location Transfer', location_transfer_item_ledger_entries_path(store_id: store_item.store_id, store: store_item.store_id, from: store_item.location, item_id: store_item.item_id )) end if can?(:do_inventory_adjustment, ItemLedgerEntry) && !store_item.is_kit? << link_to('Inventory Adjustment', inventory_adjustment_item_ledger_entries_path(store_item_id: store_item.id, return_path: item_path(store_item.item_id, tab: "store_items"))) end if can?(:read, ItemLedgerEntrySearch) query_params = { store_id_in: [store_item.store_id], location_in: [store_item.location], item_id_in: [store_item.item_id] } << link_to('Item Ledger Search', search_and_show_searches_path(search_mode: :full, type: 'ItemLedgerEntrySearch', query_params: query_params)) end render_combo_drop_down end |
#setup_store_item(store_item) ⇒ Object
21 22 23 24 25 26 27 |
# File 'app/helpers/store_items_helper.rb', line 21 def setup_store_item(store_item) store_item.tap do |si| si.handling_charge ||= 0 si.unit_cogs ||= 0 si.location ||= 'AVAILABLE' end end |
#storage_location_store_item_drop_down(store_item) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 |
# File 'app/helpers/store_items_helper.rb', line 55 def storage_location_store_item_drop_down(store_item) links = [] store_item.storage_locations.each do |storage_location| links << link_to(storage_location.reference_number, storage_location_path(storage_location), class: 'dropdown-item') end if store_item.storage_locations.size > 1 links << link_to("View All Locations", store_storage_locations_path(store_id: store_item.store_id, store_item_id: store_item.id), class: 'dropdown-item') end links << link_to('New Storage Location', new_store_storage_location_path(store_item.store, store_item_id: store_item.id)) render_combo_drop_down links end |
#store_item_edit_panel(store_item, f) ⇒ Object
29 30 31 32 33 34 35 |
# File 'app/helpers/store_items_helper.rb', line 29 def store_item_edit_panel(store_item, f) { store_item: { partial: 'form1', locals: { f: f } }, catalog_items: { partial: 'catalog_items_form', locals: { f: f } }, packaging: { partial: 'packaging_form', locals: { f: f } } } end |