From b7c66145378ad16b2ebb25596d5e5f7f85a8908b Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Fri, 25 May 2018 13:14:57 +0630 Subject: [PATCH] upadte api order create process order --- app/assets/stylesheets/addorder.scss | 18 +++- app/controllers/api/orders_controller.rb | 5 + app/models/order.rb | 125 +++++++++++------------ 3 files changed, 81 insertions(+), 67 deletions(-) diff --git a/app/assets/stylesheets/addorder.scss b/app/assets/stylesheets/addorder.scss index 64bbc08f..36ea4e33 100755 --- a/app/assets/stylesheets/addorder.scss +++ b/app/assets/stylesheets/addorder.scss @@ -73,16 +73,26 @@ section .content{ .nav-tabs { background-color: #ccc; } +.nav-tabs li a.active{ + border-bottom:1px solid #54A5AF !important; +} .nav-tabs .nav-link { padding: 0.7286rem 0.2575; border-top-left-radius: 0rem; border-top-right-radius: 0rem; } + +.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover { + color: #54A5AF #54A5AF #54A5AF; +} +.nav-tabs .nav-link.active:focus, .nav-tabs .nav-link.active:hover { + background-color: #009688; +} .nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link { - background-color: #a1aade; - border-left: 6px solid #111; - color:#54A5AF; - font-weight: bold; + background-color: #fff !important; + border-left: 6px solid #54A5AF !important; + color: #54A5AF !important; + font-weight: bold !important; border-color: #fff #fff #fff #54A5AF; } .sub_category_list{ diff --git a/app/controllers/api/orders_controller.rb b/app/controllers/api/orders_controller.rb index 49afe833..a25b60ab 100755 --- a/app/controllers/api/orders_controller.rb +++ b/app/controllers/api/orders_controller.rb @@ -117,6 +117,11 @@ class Api::OrdersController < Api::ApiController end @status, @booking = @order.generate + if @status && @booking + if params[:order_source] != "quick_service" + Order.process_order_queue(@order.order_id,@order.table_id,@order.source) + end + end # # for parallel order # remoteIP = "" # begin diff --git a/app/models/order.rb b/app/models/order.rb index 9a52942e..d9a50d4a 100755 --- a/app/models/order.rb +++ b/app/models/order.rb @@ -301,13 +301,6 @@ class Order < ApplicationRecord end # end end - - def check_cup_status(status) - if status.include? "Active: active (running)" || "Active: active (exited)" #"Cup Server is already running" - return true - end - return false - end #send order items and send to order queue def send_order_broadcast(booking) @@ -485,68 +478,74 @@ class Order < ApplicationRecord end #Process order items and send to order queue - # def process_order_queue - # print_status = nil - # cup_status = nil + def self.process_order_queue(order_id,table_id,source) + print_status = nil + cup_status = nil - # #Send to background job for processing - # order = Order.find(self.id) - # sidekiq = Lookup.find_by_lookup_type("sidekiq") + #Send to background job for processing + order = Order.find(order_id) + sidekiq = Lookup.find_by_lookup_type("sidekiq") - # if ENV["SERVER_MODE"] != 'cloud' - # cup_status = `#{"sudo service cups status"}` - # print_status = check_cup_status(cup_status) - # end + if ENV["SERVER_MODE"] != 'cloud' + cup_status = `#{"sudo service cups status"}` + print_status = check_cup_status(cup_status) + end - # if print_status - # if !sidekiq.nil? - # OrderQueueProcessorJob.perform_later(self.id, self.table_id) - # else - # if order - # oqs = OrderQueueStation.new - # oqs.process_order(order, self.table_id, self.source) - # end - # # assign_order = AssignedOrderItem.assigned_order_item_by_job(self.id) - # # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order - # end - # else - # if ENV["SERVER_MODE"] != 'cloud' - # cup_start = `#{"sudo service cups start"}` - # cup_status = `#{"sudo service cups status"}` - # print_status = check_cup_status(cup_status) - # end + if print_status + if !sidekiq.nil? + OrderQueueProcessorJob.perform_later(order_id, table_id) + else + if order + oqs = OrderQueueStation.new + oqs.process_order(order, table_id, source) + end + # assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id) + # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order + end + else + if ENV["SERVER_MODE"] != 'cloud' + cup_start = `#{"sudo service cups start"}` + cup_status = `#{"sudo service cups status"}` + print_status = check_cup_status(cup_status) + end - # if print_status - # if !sidekiq.nil? - # OrderQueueProcessorJob.perform_later(self.id, self.table_id) - # else - # if order - # oqs = OrderQueueStation.new - # oqs.process_order(order, self.table_id, self.source) - # end - # # assign_order = AssignedOrderItem.assigned_order_item_by_job(self.id) - # # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order - # end - # else - # if ENV["SERVER_MODE"] != 'cloud' + if print_status + if !sidekiq.nil? + OrderQueueProcessorJob.perform_later(order_id, table_id) + else + if order + oqs = OrderQueueStation.new + oqs.process_order(order, table_id, source) + end + # assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id) + # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order + end + else + if ENV["SERVER_MODE"] != 'cloud' - # msg = ' Print Error ! Please contact to service' - # ActionCable.server.broadcast "call_waiter_channel",table: msg,time:'print_error' - # end - # if !sidekiq.nil? - # OrderQueueProcessorJob.perform_later(self.id, self.table_id) - # else - # if order - # oqs = OrderQueueStation.new - # oqs.process_order(order, self.table_id, self.source) - # end - # assign_order = AssignedOrderItem.assigned_order_item_by_job(self.id) - # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order - # end - # end - # end - # end + msg = ' Print Error ! Please contact to service' + ActionCable.server.broadcast "call_waiter_channel",table: msg,time:'print_error' + end + if !sidekiq.nil? + OrderQueueProcessorJob.perform_later(order_id, table_id) + else + if order + oqs = OrderQueueStation.new + oqs.process_order(order, table_id, source) + end + assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id) + ActionCable.server.broadcast "order_queue_station_channel",order: assign_order + end + end + end + end + def self.check_cup_status(status) + if status.include? "Active: active (running)" || "Active: active (exited)" #"Cup Server is already running" + return true + end + return false + end private