57 lines
2.0 KiB
Ruby
57 lines
2.0 KiB
Ruby
class Oqs::HomeController < BaseOqsController
|
|
def index
|
|
@queue_stations=OrderQueueStation.all
|
|
|
|
@queue_items_details = queue_items_query('false')
|
|
|
|
@queue_completed_item = queue_items_query('true')
|
|
|
|
@queue_stations_items=Array.new
|
|
|
|
# Calculate Count for each station tab
|
|
@queue_stations.each do |que|
|
|
i=0
|
|
@queue_items_details.each do |qid|
|
|
if qid.station_name == que.station_name
|
|
i+=1
|
|
@queue_stations_items.push({:station_name => que.station_name ,:item_count => i })
|
|
break
|
|
end
|
|
end
|
|
end
|
|
|
|
@queue_stations_items
|
|
end
|
|
|
|
def show
|
|
end
|
|
|
|
# update delivery status when complete click
|
|
def update_delivery_status
|
|
puts "WWWW" + params[:id]
|
|
assigned_item_id = params[:id]
|
|
assigned_item=AssignedOrderItem.find(assigned_item_id)
|
|
assigned_item.delivery_status=true
|
|
assigned_item.save
|
|
# respond_to do |format|
|
|
# format.json { render json: "updated" }
|
|
# end
|
|
flash[:success] = "updated!"
|
|
end
|
|
|
|
# Query for OQS with status
|
|
def queue_items_query(status)
|
|
AssignedOrderItem.select("assigned_order_items.id, oqs.station_name, oqs.is_active, df.name as zone, odt.item_code, odt.item_name, odt.price, odt.qty, odt.item_order_by, cus.name as customer_name, odt.created_at")
|
|
.joins("join order_queue_process_by_zones as oqpz ON oqpz.order_queue_station_id = assigned_order_items.order_queue_station_id
|
|
left join dining_facilities as df on df.zone_id = oqpz.zone_id
|
|
left join order_queue_stations as oqs ON oqs.id = assigned_order_items.order_queue_station_id
|
|
left join orders as od ON od.id = assigned_order_items.order_id
|
|
left join order_items as odt ON odt.item_code = assigned_order_items.item_code
|
|
left join customers as cus ON cus.id = od.customer_id")
|
|
.where('assigned_order_items.delivery_status=' + status)
|
|
.group('oqs.station_name')
|
|
.order("odt.item_name DESC")
|
|
end
|
|
end
|
|
|