Files
sx-fc/app/controllers/oqs/home_controller.rb
2017-06-02 11:28:07 +06:30

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