change UI and add expected waiting time
This commit is contained in:
@@ -12,7 +12,7 @@ App.checkin = App.cable.subscriptions.create('OrderReservationChannel', {
|
|||||||
$.each(order, function(key,value){
|
$.each(order, function(key,value){
|
||||||
var rowCount = key+1;
|
var rowCount = key+1;
|
||||||
var date = new Date(value.created_at);
|
var date = new Date(value.created_at);
|
||||||
|
var deliveries = value["delivery"];
|
||||||
var isPM = date.getHours() >= 12;
|
var isPM = date.getHours() >= 12;
|
||||||
var isMidday = date.getHours() == 12;
|
var isMidday = date.getHours() == 12;
|
||||||
var time = [date.getHours() - (isPM && !isMidday ? 12 : 0),
|
var time = [date.getHours() - (isPM && !isMidday ? 12 : 0),
|
||||||
@@ -20,6 +20,15 @@ App.checkin = App.cable.subscriptions.create('OrderReservationChannel', {
|
|||||||
(isPM ? ' PM' : 'AM');
|
(isPM ? ' PM' : 'AM');
|
||||||
var created_at = date.getFullYear() +'-'+ (date.getMonth() > 10? date.getMonth() : '0' + (date.getMonth() + 1)) +'-'+ date.getDate();
|
var created_at = date.getFullYear() +'-'+ (date.getMonth() > 10? date.getMonth() : '0' + (date.getMonth() + 1)) +'-'+ date.getDate();
|
||||||
|
|
||||||
|
var delivery_type = "";
|
||||||
|
if(deliveries.delivery_type == "service"){
|
||||||
|
delivery_type = "DELIVERY";
|
||||||
|
}else if(deliveries.delivery_type == "pick_up"){
|
||||||
|
delivery_type = "PICK-UP";
|
||||||
|
}else{
|
||||||
|
delivery_type = "DIRECT DELIVERY";
|
||||||
|
}
|
||||||
|
|
||||||
row = '<tr class="custom-tr first-'+rowCount+'" style="" data-id="'+value.order_reservation_id+'" data-sr-no="'+rowCount+'">'
|
row = '<tr class="custom-tr first-'+rowCount+'" style="" data-id="'+value.order_reservation_id+'" data-sr-no="'+rowCount+'">'
|
||||||
+'<td width ="5%" class="align-left">'+rowCount
|
+'<td width ="5%" class="align-left">'+rowCount
|
||||||
+'</td>'
|
+'</td>'
|
||||||
@@ -30,7 +39,7 @@ App.checkin = App.cable.subscriptions.create('OrderReservationChannel', {
|
|||||||
+'<td width ="20%" class="align-center">'+value.grand_total
|
+'<td width ="20%" class="align-center">'+value.grand_total
|
||||||
+'</td>'
|
+'</td>'
|
||||||
+'<td width ="30%" class="align-center">'
|
+'<td width ="30%" class="align-center">'
|
||||||
+'<span class="font-10 col-blue">'+ value.status +'</span>'
|
+'<span class="font-10 col-blue">'+ delivery_type +'</span>'
|
||||||
+'</td>'
|
+'</td>'
|
||||||
+' </tr>'
|
+' </tr>'
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ $(function() {
|
|||||||
// console.log(type);
|
// console.log(type);
|
||||||
});
|
});
|
||||||
|
|
||||||
jQuery(function(){
|
$(function(){
|
||||||
jQuery('.first-1').click();
|
$('.first-1').click();
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".custom-tr").on("click", function(){
|
$(".custom-tr").on("click", function(){
|
||||||
@@ -66,15 +66,28 @@ $(function() {
|
|||||||
var items = data["order_items"];
|
var items = data["order_items"];
|
||||||
var item_list = $('.summary-items');
|
var item_list = $('.summary-items');
|
||||||
|
|
||||||
var date = new Date(data.requested_time);
|
var newDate = new Date(data.requested_time);
|
||||||
var newDate = new Date(date.getTime() + (date.getTimezoneOffset() * 60000));
|
|
||||||
|
|
||||||
var isPM = newDate.getHours() >= 12;
|
var isPM = newDate.getHours() >= 12;
|
||||||
var isMidday = newDate.getHours() == 12;
|
var isMidday = newDate.getHours() == 12;
|
||||||
var time = [newDate.getHours() - (isPM && !isMidday ? 12 : 0),
|
var time = [newDate.getHours() - (isPM && !isMidday ? 12 : 0),
|
||||||
newDate.getMinutes() || '00'].join(':') +
|
newDate.getMinutes() || '00'].join(':') +
|
||||||
(isPM ? ' PM' : 'AM');
|
(isPM ? ' PM' : 'AM');
|
||||||
var requested_date = newDate.getFullYear() + '-' + (newDate.getMonth() > 10? newDate.getMonth() : '0' + (newDate.getMonth() + 1)) +'-'+ newDate.getDate() +' '+time;
|
var requested_date = newDate.getFullYear() + '-' + (newDate.getMonth() > 10? newDate.getMonth() : '0' + (newDate.getMonth() + 1)) +'-'+ (newDate.getDate() > 10? newDate.getDate() : '0' + newDate.getDate()) +' '+time;
|
||||||
|
|
||||||
|
if((data.expected_waiting_time!=undefined) && (data.expected_waiting_time!=null)){
|
||||||
|
var expDate = new Date(data.expected_waiting_time);
|
||||||
|
var isPM = expDate.getHours() >= 12;
|
||||||
|
var isMidday = expDate.getHours() == 12;
|
||||||
|
var exptime = [expDate.getHours() - (isPM && !isMidday ? 12 : 0),
|
||||||
|
expDate.getMinutes() || '00'].join(':') +
|
||||||
|
(isPM ? ' PM' : 'AM');
|
||||||
|
var expected_time = expDate.getFullYear() + '-' + (expDate.getMonth() > 10? expDate.getMonth() : '0' + (expDate.getMonth() + 1)) +'-'+ (expDate.getDate() > 10? expDate.getDate() : '0' + expDate.getDate()) +' '+exptime;
|
||||||
|
$('.expected_time').show();
|
||||||
|
$('#expected_time').text(expected_time? expected_time : '');
|
||||||
|
}else{
|
||||||
|
$('.expected_time').hide();
|
||||||
|
$('#expected_time').text('');
|
||||||
|
}
|
||||||
|
|
||||||
item_list.empty();
|
item_list.empty();
|
||||||
|
|
||||||
@@ -153,11 +166,10 @@ $(function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$("#accepted").on("click", function(){
|
$("#accepted").on("click", function(){
|
||||||
var status = $(this).attr("data-value");
|
var requested_time = $("#requested_date_time").text();
|
||||||
var order_id = $('#order_id').text();
|
$("#requested_order_time").text(requested_time);
|
||||||
var ref_no = $('#ref_no').text();
|
showTimePicker(requested_time);
|
||||||
var callback = $('#callback_url').text();
|
$("#waiting_timeModal").modal({show : true, backdrop: false, keyboard : false});
|
||||||
callback_url(callback,ref_no,order_id,status);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#cancel").on("click", function(){
|
$("#cancel").on("click", function(){
|
||||||
@@ -168,20 +180,44 @@ $(function() {
|
|||||||
callback_url(callback,ref_no,order_id,status);
|
callback_url(callback,ref_no,order_id,status);
|
||||||
});
|
});
|
||||||
|
|
||||||
function callback_url(callback,ref_no,order_id,status){
|
function showTimePicker(requested_time){
|
||||||
|
// var date = new Date(requested_time);
|
||||||
|
// var isPM = date.getHours() >= 12;
|
||||||
|
// var isMidday = date.getHours() == 12;
|
||||||
|
// var time = [date.getHours() - (isPM && !isMidday ? 12 : 0),
|
||||||
|
// date.getMinutes() || '00'].join(':') +
|
||||||
|
// (isPM ? 'pm' : 'am');
|
||||||
|
// console.log(time);
|
||||||
|
$('.timepicker').bootstrapMaterialDatePicker({
|
||||||
|
format: 'HH:mm',
|
||||||
|
useSeconds: false,
|
||||||
|
clearButton: true,
|
||||||
|
date: false
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function callback_url(callback,ref_no,order_id,status,time,exptime){
|
||||||
var url = 'order_reservation/update';
|
var url = 'order_reservation/update';
|
||||||
var post_url = "order_reservation/send_status";
|
var post_url = "order_reservation/send_status";
|
||||||
|
var waiting_time = "";
|
||||||
|
if(time!=undefined && time!=""){
|
||||||
|
waiting_time = time;
|
||||||
|
}
|
||||||
|
var expected_time = "";
|
||||||
|
if(exptime!=undefined && exptime!=""){
|
||||||
|
expected_time = exptime;
|
||||||
|
}
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
url: post_url,
|
url: post_url,
|
||||||
data: {url: callback, ref_no: ref_no, status: status},
|
data: {url: callback, ref_no: ref_no, status: status, waiting_time: waiting_time},
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
if(data.status){
|
if(data.status){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
url: url,
|
url: url,
|
||||||
data: {'order_id': order_id, 'status': status},
|
data: {'order_id': order_id, 'status': status, 'expected_time' : expected_time},
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
if (data.status) {
|
if (data.status) {
|
||||||
@@ -215,5 +251,27 @@ $(function() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$("#save").on("click",function(){
|
||||||
|
$("#waiting_timeErr").text("");
|
||||||
|
var status = $("#status").text();
|
||||||
|
var order_id = $('#order_id').text();
|
||||||
|
var ref_no = $('#ref_no').text();
|
||||||
|
var callback = $('#callback_url').text();
|
||||||
|
var requested_time = new Date($("#requested_date_time").text());
|
||||||
|
var date_time = requested_time.getFullYear()+'-'+(requested_time.getMonth() > 10? requested_time.getMonth() : '0'+ (requested_time.getMonth() + 1))+'-'+(requested_time.getDate()> 10? requested_time.getDate() : '0' + requested_time.getDate());
|
||||||
|
var waiting_time = new Date(date_time+' '+$("#waiting_time").val());
|
||||||
|
// requested_time.setHours(requested_time.getHours() - 1);
|
||||||
|
// console.log(requested_time);
|
||||||
|
if(waiting_time.getTime() < requested_time.getTime()){
|
||||||
|
var time_diff = (requested_time.getTime() - waiting_time.getTime());
|
||||||
|
var expected_time = (Math.floor(time_diff) / 1000) / 60;
|
||||||
|
callback_url(callback,ref_no,order_id,status,expected_time,waiting_time);
|
||||||
|
}else{
|
||||||
|
$("#waiting_time").val("");
|
||||||
|
$("#waiting_timeErr").text("Expected waiting time is greater than requested time!");
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,8 @@ class Api::OrderReserve::OrderReservationController < Api::ApiController
|
|||||||
order_reservation = params
|
order_reservation = params
|
||||||
order_reservation_id, flag = OrderReservation.addOrderReservationInfo(order_reservation)
|
order_reservation_id, flag = OrderReservation.addOrderReservationInfo(order_reservation)
|
||||||
|
|
||||||
order_reservation = OrderReservation.latest_order.where("status = 'new'") #find(order_reservation_id)
|
order_reservation = OrderReservation.get_pending_orders #find(order_reservation_id)
|
||||||
|
|
||||||
if flag #&& ENV["SERVER_MODE"] != 'cloud'
|
if flag #&& ENV["SERVER_MODE"] != 'cloud'
|
||||||
ActionCable.server.broadcast "order_reservation_channel",data: order_reservation
|
ActionCable.server.broadcast "order_reservation_channel",data: order_reservation
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ class Origami::OrderReservationController < BaseOrigamiController
|
|||||||
def update
|
def update
|
||||||
@id = params[:order_id]
|
@id = params[:order_id]
|
||||||
@status = params[:status]
|
@status = params[:status]
|
||||||
|
expected_waiting_time = params[:expected_time]
|
||||||
@order_reservation = OrderReservation.find(@id)
|
@order_reservation = OrderReservation.find(@id)
|
||||||
|
|
||||||
status = true
|
status = true
|
||||||
@@ -26,7 +27,7 @@ class Origami::OrderReservationController < BaseOrigamiController
|
|||||||
OrderReservation.update_order_reservation(@id, nil, "cancelled")
|
OrderReservation.update_order_reservation(@id, nil, "cancelled")
|
||||||
result = {:status=> true, :message => "rejected" }
|
result = {:status=> true, :message => "rejected" }
|
||||||
else
|
else
|
||||||
OrderReservation.update_order_reservation(@id, nil, "accepted")
|
OrderReservation.update_order_reservation(@id, nil, "accepted", expected_waiting_time)
|
||||||
result = {:status=> true, :message => "accepted" }
|
result = {:status=> true, :message => "accepted" }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -51,7 +52,7 @@ class Origami::OrderReservationController < BaseOrigamiController
|
|||||||
status = params[:status]
|
status = params[:status]
|
||||||
end
|
end
|
||||||
|
|
||||||
response = OrderReservation.send_status_to_ordering(params[:url],params[:ref_no],status)
|
response = OrderReservation.send_status_to_ordering(params[:url],params[:ref_no],status,params[:waiting_time])
|
||||||
|
|
||||||
render :json => response
|
render :json => response
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ class OrderReservation < ApplicationRecord
|
|||||||
order_reservation = OrderReservation.new
|
order_reservation = OrderReservation.new
|
||||||
order_reservation.order_reservation_type = order_reserve[:order_type]
|
order_reservation.order_reservation_type = order_reserve[:order_type]
|
||||||
order_reservation.customer_id = order_reserve[:cus_info]
|
order_reservation.customer_id = order_reserve[:cus_info]
|
||||||
order_reservation.requested_time = DateTime.parse(order_reserve[:requested_time]).utc
|
order_reservation.requested_time = Time.parse(order_reserve[:requested_time]).utc
|
||||||
order_reservation.callback_url = order_reserve[:callback_url]
|
order_reservation.callback_url = order_reserve[:callback_url]
|
||||||
order_reservation.transaction_ref = order_reserve[:reference]
|
order_reservation.transaction_ref = order_reserve[:reference]
|
||||||
if order_reserve[:order_info]
|
if order_reserve[:order_info]
|
||||||
@@ -134,96 +134,10 @@ class OrderReservation < ApplicationRecord
|
|||||||
|
|
||||||
result = {:status=> true, :message => DELIVERED }
|
result = {:status=> true, :message => DELIVERED }
|
||||||
return result
|
return result
|
||||||
# rebate_amount = nil
|
|
||||||
|
|
||||||
# For Cashier by Zone
|
|
||||||
# bookings = Booking.where("sale_id='#{sale_id}'")
|
|
||||||
|
|
||||||
# if bookings[0].dining_facility_id.to_i > 0
|
|
||||||
# table = DiningFacility.find(bookings[0].dining_facility_id)
|
|
||||||
# cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id)
|
|
||||||
# cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id)
|
|
||||||
# else
|
|
||||||
# shift = ShiftSale.find(saleObj.shift_sale_id)
|
|
||||||
# cashier_terminal = CashierTerminal.find(shift.cashier_terminal_id)
|
|
||||||
# end
|
|
||||||
|
|
||||||
# For Print
|
|
||||||
# if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
|
||||||
# receipt_bill_a5_pdf = Lookup.collection_of("print_settings") #print_settings with name:ReceiptBillA5Pdf
|
|
||||||
# unique_code = "ReceiptBillPdf"
|
|
||||||
# if !receipt_bill_a5_pdf.empty?
|
|
||||||
# receipt_bill_a5_pdf.each do |receipt_bilA5|
|
|
||||||
# if receipt_bilA5[0] == 'ReceiptBillA5Pdf'
|
|
||||||
# if receipt_bilA5[1] == '1'
|
|
||||||
# unique_code = "ReceiptBillA5Pdf"
|
|
||||||
# else
|
|
||||||
# unique_code = "ReceiptBillPdf"
|
|
||||||
# end
|
|
||||||
# end
|
|
||||||
# end
|
|
||||||
# end
|
|
||||||
|
|
||||||
# customer= Customer.find(saleObj.customer_id)
|
|
||||||
|
|
||||||
# get member information
|
|
||||||
# rebate = MembershipSetting.find_by_rebate(1)
|
|
||||||
# credit_data = SalePayment.find_by_sale_id_and_payment_method(sale_id,'creditnote')
|
|
||||||
|
|
||||||
# if customer.membership_id != nil && rebate && credit_data.nil?
|
|
||||||
# member_info = Customer.get_member_account(customer)
|
|
||||||
# if member_info["status"] == true
|
|
||||||
# rebate_amount = Customer.get_membership_transactions(customer,saleObj.receipt_no)
|
|
||||||
# current_balance = SaleAudit.paymal_search(sale_id)
|
|
||||||
# end
|
|
||||||
# end
|
|
||||||
|
|
||||||
#orders print out
|
|
||||||
# if params[:type] == "quick_service"
|
|
||||||
# booking = Booking.find_by_sale_id(sale_id)
|
|
||||||
# if booking.dining_facility_id.to_i>0
|
|
||||||
# table_id = booking.dining_facility_id
|
|
||||||
# else
|
|
||||||
# table_id = 0
|
|
||||||
# end
|
|
||||||
|
|
||||||
# booking.booking_orders.each do |order|
|
|
||||||
# # Order.pay_process_order_queue(order.order_id, table_id)
|
|
||||||
# oqs = OrderQueueStation.new
|
|
||||||
# oqs.pay_process_order_queue(order.order_id, table_id)
|
|
||||||
# end
|
|
||||||
|
|
||||||
# end
|
|
||||||
|
|
||||||
#for card sale data
|
|
||||||
# card_data = Array.new
|
|
||||||
# card_sale_trans_ref_no = Sale.getCardSaleTrans(sale_id)
|
|
||||||
# if !card_sale_trans_ref_no.nil?
|
|
||||||
# card_sale_trans_ref_no.each do |cash_sale_trans|
|
|
||||||
# card_res_date = cash_sale_trans.res_date.strftime("%Y-%m-%d").to_s
|
|
||||||
# card_res_time = cash_sale_trans.res_time.strftime("%H:%M").to_s
|
|
||||||
# card_no = cash_sale_trans.pan.last(4)
|
|
||||||
# card_no = card_no.rjust(19,"**** **** **** ")
|
|
||||||
# card_data.push({'res_date' => card_res_date, 'res_time' => card_res_time, 'batch_no' => cash_sale_trans.batch_no, 'trace' => cash_sale_trans.trace, 'pan' => card_no, 'app' => cash_sale_trans.app, 'tid' => cash_sale_trans.terminal_id, 'app_code' => cash_sale_trans.app_code, 'ref_no' => cash_sale_trans.ref_no, 'mid' => cash_sale_trans.merchant_id})
|
|
||||||
# end
|
|
||||||
# end
|
|
||||||
|
|
||||||
# get printer info
|
|
||||||
# print_settings=PrintSetting.find_by_unique_code(unique_code)
|
|
||||||
# Calculate Food and Beverage Total
|
|
||||||
# item_price_by_accounts = SaleItem.calculate_price_by_accounts(saleObj.sale_items)
|
|
||||||
# discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items)
|
|
||||||
|
|
||||||
# printer = Printer::ReceiptPrinter.new(print_settings)
|
|
||||||
# filename, sale_receipt_no, printer_name = printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "Paid",current_balance,card_data)
|
|
||||||
|
|
||||||
# render json: JSON.generate({:status => saleObj.rebate_status, :message => "Can't Rebate coz of Sever Error ", :filename => filename, :receipt_no => sale_receipt_no, :printer_name => printer_name})
|
|
||||||
|
|
||||||
#end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.send_status_to_ordering(url,ref_no,status)
|
def self.send_status_to_ordering(url,ref_no,status,waiting_time=nil)
|
||||||
base_url = 'https://api.doemal.com'
|
base_url = 'https://api.doemal.com'
|
||||||
token = '3T-tnlYtFJ-5Z1vY6XQqxQ'
|
token = '3T-tnlYtFJ-5Z1vY6XQqxQ'
|
||||||
order_reservation = Lookup.collection_of("order_reservation")
|
order_reservation = Lookup.collection_of("order_reservation")
|
||||||
@@ -242,10 +156,15 @@ class OrderReservation < ApplicationRecord
|
|||||||
Rails.logger.debug "Doemal URL" + base_url
|
Rails.logger.debug "Doemal URL" + base_url
|
||||||
post_url = base_url + url
|
post_url = base_url + url
|
||||||
|
|
||||||
|
if !waiting_time.nil?
|
||||||
|
send_params = {id: ref_no, waiting_time: waiting_time, status: status}
|
||||||
|
else
|
||||||
|
send_params = {id: ref_no, status: status}
|
||||||
|
end
|
||||||
|
|
||||||
begin
|
begin
|
||||||
response = HTTParty.post(post_url,
|
response = HTTParty.post(post_url,
|
||||||
:body => { id: ref_no, status: status}.to_json,
|
:body => send_params.to_json,
|
||||||
:headers => {
|
:headers => {
|
||||||
'Authorization' => 'Token token='+token,
|
'Authorization' => 'Token token='+token,
|
||||||
'Content-Type' => 'application/json',
|
'Content-Type' => 'application/json',
|
||||||
@@ -265,11 +184,14 @@ class OrderReservation < ApplicationRecord
|
|||||||
return response
|
return response
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.update_order_reservation(id, sale_id, status)
|
def self.update_order_reservation(id, sale_id, status, expected_waiting_time=nil)
|
||||||
order_reservation = OrderReservation.find(id)
|
order_reservation = OrderReservation.find(id)
|
||||||
if sale_id.present?
|
if sale_id.present?
|
||||||
order_reservation.sale_id = sale_id
|
order_reservation.sale_id = sale_id
|
||||||
end
|
end
|
||||||
|
if !expected_waiting_time.nil?
|
||||||
|
order_reservation.expected_waiting_time = DateTime.parse(expected_waiting_time).utc
|
||||||
|
end
|
||||||
order_reservation.status = status
|
order_reservation.status = status
|
||||||
order_reservation.save
|
order_reservation.save
|
||||||
end
|
end
|
||||||
@@ -278,6 +200,13 @@ class OrderReservation < ApplicationRecord
|
|||||||
order_reservation = OrderReservation.select("COUNT(order_reservation_id) as count, status").group("status")
|
order_reservation = OrderReservation.select("COUNT(order_reservation_id) as count, status").group("status")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.get_pending_orders
|
||||||
|
order_reservation = OrderReservation.select("order_reservations.*,deliveries.provider,deliveries.delivery_type")
|
||||||
|
.joins(" JOIN deliveries as del on del.order_reservation_id=order_reservations.order_reservation_id")
|
||||||
|
.where("order_reservations.status='new'")
|
||||||
|
.order("order_reservations.order_reservation_id desc, order_reservations.created_at desc")
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def generate_custom_id
|
def generate_custom_id
|
||||||
self.order_reservation_id = SeedGenerator.generate_id(self.class.name, "ODRS")
|
self.order_reservation_id = SeedGenerator.generate_id(self.class.name, "ODRS")
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class MenuItemImageUploader < CarrierWave::Uploader::Base
|
|||||||
|
|
||||||
# Process files as they are uploaded:
|
# Process files as they are uploaded:
|
||||||
# process scale: [200, 300]
|
# process scale: [200, 300]
|
||||||
process :resize_to_fit => [200, 150]
|
process :resize_to_fit => [400, 250]#[200, 150]
|
||||||
|
|
||||||
#
|
#
|
||||||
# def scale(width, height)
|
# def scale(width, height)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
if @order
|
if @order
|
||||||
|
|
||||||
json.(@order, :order_reservation_id,:order_reservation_type,:customer_id,
|
json.(@order, :order_reservation_id,:order_reservation_type,:customer_id,
|
||||||
:requested_time,:callback_url,:transaction_ref,:item_count,:total_customer,:payment_type,
|
:requested_time,:expected_waiting_time,:callback_url,:transaction_ref,:item_count,:total_customer,:payment_type,
|
||||||
:payment_status,:payment_ref,:taxes,:total_amount,:total_tax,
|
:payment_status,:payment_ref,:taxes,:total_amount,:total_tax,
|
||||||
:discount_amount,:convenience_charge,:grand_total,:status,:order_remark,
|
:discount_amount,:convenience_charge,:grand_total,:status,:order_remark,
|
||||||
:reservation_remark,:sale_id)
|
:reservation_remark,:sale_id)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<div class="row m-t--10">
|
<div class="row m-t--10">
|
||||||
<div class="col-lg-4 col-md-4 col-sm-4 div_order_margin">
|
<div class="col-lg-4 col-md-4 col-sm-4 div_order_margin">
|
||||||
<ul class="nav nav-tabs tab-col-teal" role="tablist">
|
<ul class="nav nav-tabs tab-col-teal" role="tablist">
|
||||||
<li class="nav-item red" data-color="#F44336" data-type="pending">
|
<li class="nav-item red m-b-10" data-color="#F44336" data-type="pending">
|
||||||
<a class="nav-link" data-toggle="tab" href="#pending" role="tab"><p class="num p-t-15 p-b-5">
|
<a class="nav-link" data-toggle="tab" href="#pending" role="tab"><p class="num p-t-15 p-b-5">
|
||||||
<% if !@count_on_order.nil? %>
|
<% if !@count_on_order.nil? %>
|
||||||
<% @count_on_order.each do |count_order|
|
<% @count_on_order.each do |count_order|
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
end %>
|
end %>
|
||||||
<% end %></p> <%= t :pending %></a>
|
<% end %></p> <%= t :pending %></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item purple" data-color="#673AB7" data-type="processing">
|
<li class="nav-item purple m-b-10" data-color="#673AB7" data-type="processing">
|
||||||
<a class="nav-link" data-toggle="tab" href="#processing" role="tab"><p class="num p-t-15 p-b-5">
|
<a class="nav-link" data-toggle="tab" href="#processing" role="tab"><p class="num p-t-15 p-b-5">
|
||||||
<% if !@count_on_order.nil? %>
|
<% if !@count_on_order.nil? %>
|
||||||
<% @count_on_order.each do |count_order|
|
<% @count_on_order.each do |count_order|
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
end %>
|
end %>
|
||||||
<% end %></p> <%= t :processing %></a>
|
<% end %></p> <%= t :processing %></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item" data-color="#009688" data-type="delivery" style="background-color: #009688;">
|
<li class="nav-item m-b-10" data-color="#009688" data-type="delivery" style="background-color: #009688;">
|
||||||
<a class="nav-link" data-toggle="tab" href="#delivery" role="tab"><p class="num p-t-15 p-b-5">
|
<a class="nav-link" data-toggle="tab" href="#delivery" role="tab"><p class="num p-t-15 p-b-5">
|
||||||
<% if !@count_on_order.nil? %>
|
<% if !@count_on_order.nil? %>
|
||||||
<% @count_on_order.each do |count_order|
|
<% @count_on_order.each do |count_order|
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
end %>
|
end %>
|
||||||
<% end %></p> <%= t :delivering %></a>
|
<% end %></p> <%= t :delivering %></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item" data-color="#03A9F4" data-type="completed" style="background-color: #03A9F4;">
|
<li class="nav-item m-b-10" data-color="#03A9F4" data-type="completed" style="background-color: #03A9F4;">
|
||||||
<a class="nav-link" data-toggle="tab" href="#completed" role="tab"><p class="num p-t-15 p-b-5">
|
<a class="nav-link" data-toggle="tab" href="#completed" role="tab"><p class="num p-t-15 p-b-5">
|
||||||
<% if !@count_on_order.nil? %>
|
<% if !@count_on_order.nil? %>
|
||||||
<% @count_on_order.each do |count_order|
|
<% @count_on_order.each do |count_order|
|
||||||
@@ -350,6 +350,10 @@
|
|||||||
<span class="font-13">PHONE</span><br>
|
<span class="font-13">PHONE</span><br>
|
||||||
<b id="phone"></b>
|
<b id="phone"></b>
|
||||||
</td>
|
</td>
|
||||||
|
<td class="body-td align-right expected_time">
|
||||||
|
<span class="font-13">EXPECTED WAITING TIME</span><br>
|
||||||
|
<b id="expected_time"></b>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="body-td align-left">
|
<td class="body-td align-left">
|
||||||
@@ -380,9 +384,36 @@
|
|||||||
<p id="callback_url" class="hidden"></p>
|
<p id="callback_url" class="hidden"></p>
|
||||||
<p id="order_id" class="hidden"></p>
|
<p id="order_id" class="hidden"></p>
|
||||||
<p id="status" class="hidden"></p>
|
<p id="status" class="hidden"></p>
|
||||||
|
|
||||||
|
<div class="modal fade" id="waiting_timeModal" tabindex="-1" role="dialog">
|
||||||
|
<div class="modal-dialog modal-md" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h4 class="modal-title" id="waiting_timeModalLabel">Expected Waiting Time for <span id="requested_order_time"></span></h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<input type="text" id="waiting_time" name="waiting_time" value="" class="timepicker form-control" placeholder="Expected Waiting Time">
|
||||||
|
<span id="waiting_timeErr" style="color:red;"></span>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer ">
|
||||||
|
<div class="row p-r-20">
|
||||||
|
<div class="col-md-5">
|
||||||
|
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-red waves-effect " id="save" active="true">SAVE</button>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-5">
|
||||||
|
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-blue waves-effect" data-dismiss="modal">CLOSE</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(function(){
|
$(function(){
|
||||||
$("#discount").hide();
|
$("#discount").hide();
|
||||||
|
$(".expected_time").hide();
|
||||||
$('.first-1').click();
|
$('.first-1').click();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user