Merge branch 'sqa-1804-001' of bitbucket.org:code2lab/sxrestaurant into r-1804001-01
This commit is contained in:
@@ -1373,7 +1373,7 @@ $(function() {
|
||||
if (JSON.stringify(menu_items[field].item_sets)!='[]') {
|
||||
fa_plus = '';
|
||||
add = '';
|
||||
menu_item_box = 'add_icon';
|
||||
menu_item_box = 'set_add_icon';
|
||||
data_target = 'sx_item_set_detailModal';
|
||||
data_modal = 'modal'
|
||||
add_icon = "set_item_box"
|
||||
|
||||
@@ -19,33 +19,34 @@ App.check_new_order = App.cable.subscriptions.create('CheckNewOrderChannel', {
|
||||
});
|
||||
|
||||
// alert(order_lists);
|
||||
swal({
|
||||
title: 'Information',
|
||||
target: document.getElementById(shop_code+"_notify_new_order"),
|
||||
text: "You have new orders <br/>"+
|
||||
"Are you accept or reject for these orders <b>"+order_lists+"</b>?",
|
||||
type: 'success',
|
||||
html: true,
|
||||
closeOnConfirm: false,
|
||||
closeOnCancel: false,
|
||||
allowOutsideClick: false
|
||||
}, function (isConfirm) {
|
||||
if(isConfirm){
|
||||
swal.close();
|
||||
}
|
||||
});
|
||||
// $("#notify_new_order_lists").text(order_lists);
|
||||
// if($("#notify_new_order").hasClass("hidden")){
|
||||
// $("#notify_new_order").removeClass("hidden");
|
||||
// swal({
|
||||
// title: 'Information',
|
||||
// target: document.getElementById(shop_code+"_notify_new_order"),
|
||||
// text: "You have new orders <br/>"+
|
||||
// "Are you accept or reject for these orders <b>"+order_lists+"</b>?",
|
||||
// type: 'success',
|
||||
// html: true,
|
||||
// closeOnConfirm: false,
|
||||
// closeOnCancel: false,
|
||||
// allowOutsideClick: false
|
||||
// }, function (isConfirm) {
|
||||
// if(isConfirm){
|
||||
// swal.close();
|
||||
// }
|
||||
// $("#notify_new_order").on('show.bs.modal', function(e){
|
||||
// $("#notify_order_send_to_kitchen").addClass("hidden");
|
||||
// $("#notify_order_ready_to_delivery").addClass("hidden");
|
||||
// }).on('shown.bs.modal', function(e){
|
||||
// $("#notify_new_order").focus();
|
||||
// }).on('hide.bs.modal', function (e) {
|
||||
// $("#notify_new_order").addClass("hidden");
|
||||
// }).modal({show: true, keyboard: false, backdrop: false});
|
||||
// });
|
||||
$("#notify_new_order_lists").text(order_lists);
|
||||
// if($("#"+shop_code+"_notify_new_order").hasClass("hidden")){
|
||||
$("#"+shop_code+"_notify_new_order").removeClass("hidden");
|
||||
// }
|
||||
$("#"+shop_code+"_notify_new_order").on('shown.bs.modal', function(e){
|
||||
// $(document).off('focusin.modal');
|
||||
$("#"+shop_code+"_notify_new_order").focus();
|
||||
$("#"+shop_code+"_doemal_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").addClass("hidden");
|
||||
}).on('hide.bs.modal', function (e) {
|
||||
$("#"+shop_code+"_notify_new_order").addClass("hidden");
|
||||
}).modal({show: true, keyboard: false, backdrop: false});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -19,33 +19,34 @@ App.check_order_ready_to_delivery = App.cable.subscriptions.create('CheckOrderRe
|
||||
});
|
||||
|
||||
// alert(order_lists);
|
||||
swal({
|
||||
title: 'Information',
|
||||
target: document.getElementById(shop_code+"_notify_order_ready_to_delivery"),
|
||||
text: "You have orders that are ready to deliver <br/>"+
|
||||
"Could you ready these orders <b>"+order_lists+"</b> to deliver?",
|
||||
type: 'success',
|
||||
html: true,
|
||||
closeOnConfirm: false,
|
||||
closeOnCancel: false,
|
||||
allowOutsideClick: false
|
||||
}, function (isConfirm) {
|
||||
if(isConfirm){
|
||||
swal.close();
|
||||
}
|
||||
});
|
||||
// $("#notify_order_ready_to_delivery_lists").text(order_lists);
|
||||
// if($("#notify_order_ready_to_delivery").hasClass("hidden")){
|
||||
// $("#notify_order_ready_to_delivery").removeClass("hidden");
|
||||
// swal({
|
||||
// title: 'Information',
|
||||
// target: document.getElementById(shop_code+"_notify_order_ready_to_delivery"),
|
||||
// text: "You have orders that are ready to deliver <br/>"+
|
||||
// "Could you ready these orders <b>"+order_lists+"</b> to deliver?",
|
||||
// type: 'success',
|
||||
// html: true,
|
||||
// closeOnConfirm: false,
|
||||
// closeOnCancel: false,
|
||||
// allowOutsideClick: false
|
||||
// }, function (isConfirm) {
|
||||
// if(isConfirm){
|
||||
// swal.close();
|
||||
// }
|
||||
// $("#notify_order_ready_to_delivery").on('shown.bs.modal', function(e){
|
||||
// $("#notify_new_order").addClass("hidden");
|
||||
// $("#notify_order_send_to_kitchen").addClass("hidden");
|
||||
// }).on('shown.bs.modal', function(e){
|
||||
// $("#notify_order_ready_to_delivery").focus();
|
||||
// }).on('hide.bs.modal', function (e) {
|
||||
// $("#notify_order_ready_to_delivery").addClass("hidden");
|
||||
// }).modal({show: true, keyboard: false, backdrop: false});
|
||||
// });
|
||||
$("#notify_order_ready_to_delivery_lists").text(order_lists);
|
||||
// if($("#notify_order_ready_to_delivery").hasClass("hidden")){
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").removeClass("hidden");
|
||||
// }
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").on('shown.bs.modal', function(e){
|
||||
// $(document).off('focusin.modal');
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").focus();
|
||||
$("#"+shop_code+"_doemal_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").addClass("hidden");
|
||||
}).on('hide.bs.modal', function (e) {
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").addClass("hidden");
|
||||
}).modal({show: true, keyboard: false, backdrop: false});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -19,33 +19,34 @@ App.check_order_send_to_kitchen = App.cable.subscriptions.create('CheckOrderSend
|
||||
});
|
||||
|
||||
// alert(order_lists);
|
||||
swal({
|
||||
title: 'Information',
|
||||
target: document.getElementById(shop_code+"_notify_order_send_to_kitchen"),
|
||||
text: "You have to send order to kitchen <br/>"+
|
||||
"Could you send these orders <b>"+order_lists+"</b> to kitchen?",
|
||||
type: 'success',
|
||||
html: true,
|
||||
closeOnConfirm: false,
|
||||
closeOnCancel: false,
|
||||
allowOutsideClick: false
|
||||
}, function (isConfirm) {
|
||||
if(isConfirm){
|
||||
swal.close();
|
||||
}
|
||||
});
|
||||
// $("#notify_order_send_to_kitchen_lists").text(order_lists);
|
||||
// if($("#notify_order_send_to_kitchen").hasClass("hidden")){
|
||||
// $("#notify_order_send_to_kitchen").removeClass("hidden");
|
||||
// swal({
|
||||
// title: 'Information',
|
||||
// target: document.getElementById(shop_code+"_notify_order_send_to_kitchen"),
|
||||
// text: "You have to send order to kitchen <br/>"+
|
||||
// "Could you send these orders <b>"+order_lists+"</b> to kitchen?",
|
||||
// type: 'success',
|
||||
// html: true,
|
||||
// closeOnConfirm: false,
|
||||
// closeOnCancel: false,
|
||||
// allowOutsideClick: false
|
||||
// }, function (isConfirm) {
|
||||
// if(isConfirm){
|
||||
// swal.close();
|
||||
// }
|
||||
// $("#notify_order_send_to_kitchen").on('show.bs.modal', function(e){
|
||||
// $("#notify_new_order").addClass("hidden");
|
||||
// $("#notify_order_ready_to_delivery").addClass("hidden");
|
||||
// }).on('shown.bs.modal', function(e){
|
||||
// $("#notify_order_send_to_kitchen").focus();
|
||||
// }).on('hide.bs.modal', function (e) {
|
||||
// $("#notify_order_send_to_kitchen").addClass("hidden");
|
||||
// }).modal({show: true, keyboard: false, backdrop: false});
|
||||
// });
|
||||
$("#notify_order_send_to_kitchen_lists").text(order_lists);
|
||||
// if($("#notify_order_send_to_kitchen").hasClass("hidden")){
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").removeClass("hidden");
|
||||
// }
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").on('shown.bs.modal', function(e){
|
||||
// $(document).off('focusin.modal');
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").focus();
|
||||
$("#"+shop_code+"_doemal_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").addClass("hidden");
|
||||
}).on('hide.bs.modal', function (e) {
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").addClass("hidden");
|
||||
}).modal({show: true, keyboard: false, backdrop: false});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -157,12 +157,28 @@ $(function() {
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// $('button[data-dismiss="modal"]').on('click', function(){ $(this).parent().parent().parent().parent().modal('hide'); });
|
||||
|
||||
// $(".new_order_close").on("click",function(){
|
||||
// var code = $(this).attr("data-value");
|
||||
// $("#"+code+"_doemal_new_order").modal("hide");
|
||||
// });
|
||||
$(".new_order_close").on("click",function(){
|
||||
var code = $(this).attr("data-value");
|
||||
$("#"+code+"_doemal_new_order").modal("hide");
|
||||
});
|
||||
|
||||
$(".notify_new_close").on("click",function(){
|
||||
var code = $(this).attr("data-value");
|
||||
$("#"+code+"_notify_new_order").modal("hide");
|
||||
});
|
||||
|
||||
$(".notify_order_send_close").on("click",function(){
|
||||
var code = $(this).attr("data-value");
|
||||
$("#"+code+"_notify_order_send_to_kitchen").modal("hide");
|
||||
});
|
||||
|
||||
$(".notify_order_ready_close").on("click",function(){
|
||||
var code = $(this).attr("data-value");
|
||||
$("#"+code+"_notify_order_ready_to_delivery").modal("hide");
|
||||
});
|
||||
|
||||
// $("[data-dismiss='modal']").on('click', function() {
|
||||
// $('body').addClass('modal-open-fix');
|
||||
@@ -467,42 +483,42 @@ function showNewOrder(order_reservation,shop_code){
|
||||
var time = timeFormat(date);
|
||||
var requested_date = date.getFullYear() + '-' + (date.getMonth() >= 10? date.getMonth() : '0' + (date.getMonth() + 1)) +'-'+ (date.getDate() >= 10? date.getDate() : '0' + date.getDate()) +' '+time;
|
||||
//audio play
|
||||
var audio = new Audio('/beep.mp3'); // define your audio
|
||||
var audio = new Audio('/'+shop_code+'-beep.mp3'); // define your audio
|
||||
// setTimeout(function(){
|
||||
// audio.loop = true;
|
||||
audio.play();
|
||||
// },10000);
|
||||
|
||||
// $("#new_order").text(order_reservation.order_reservation_id);
|
||||
// $("#new_order_date").text(requested_date);
|
||||
$("#new_order").text(order_reservation.order_reservation_id);
|
||||
$("#new_order_date").text(requested_date);
|
||||
// if($("#"+shop_code+"_doemal_new_order").hasClass("hidden")){
|
||||
// $("#"+shop_code+"_doemal_new_order").removeClass("hidden");
|
||||
$("#"+shop_code+"_doemal_new_order").removeClass("hidden");
|
||||
// }
|
||||
// $("#"+shop_code+"_doemal_new_order").on('show.bs.modal', function(e){
|
||||
// $("#notify_new_order").addClass("hidden");
|
||||
// $("#notify_order_send_to_kitchen").addClass("hidden");
|
||||
// $("#notify_order_ready_to_delivery").addClass("hidden");
|
||||
// }).on('shown.bs.modal', function(e){
|
||||
// $("#"+shop_code+"_doemal_new_order").focus();
|
||||
// }).on('hide.bs.modal', function (e) {
|
||||
// $("#"+shop_code+"_doemal_new_order").addClass("hidden");
|
||||
// }).modal({show: true, keyboard: false, backdrop: false});
|
||||
swal({
|
||||
title: 'Information',
|
||||
target: document.getElementById(shop_code+"_notify_new_order"),
|
||||
text: "You have new order "+
|
||||
"<b>"+order_reservation.order_reservation_id+"</b> requested for "+requested_date+"?",
|
||||
type: 'success',
|
||||
html: true,
|
||||
closeOnConfirm: false,
|
||||
closeOnCancel: false,
|
||||
allowOutsideClick: false
|
||||
}, function (isConfirm) {
|
||||
if(isConfirm){
|
||||
audio.pause();
|
||||
swal.close();
|
||||
}
|
||||
});
|
||||
$("#"+shop_code+"_doemal_new_order").on('shown.bs.modal', function(e){
|
||||
// $(document).off('focusin.modal');
|
||||
$("#"+shop_code+"_doemal_new_order").focus();
|
||||
$("#"+shop_code+"_notify_new_order").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_send_to_kitchen").addClass("hidden");
|
||||
$("#"+shop_code+"_notify_order_ready_to_delivery").addClass("hidden");
|
||||
}).on('hide.bs.modal', function (e) {
|
||||
$("#"+shop_code+"_doemal_new_order").addClass("hidden");
|
||||
}).modal({show: true, keyboard: false, backdrop: false});
|
||||
// swal({
|
||||
// title: 'Information',
|
||||
// target: document.getElementById(shop_code+"_notify_new_order"),
|
||||
// text: "You have new order "+
|
||||
// "<b>"+order_reservation.order_reservation_id+"</b> requested for "+requested_date+"?",
|
||||
// type: 'success',
|
||||
// html: true,
|
||||
// closeOnConfirm: false,
|
||||
// closeOnCancel: false,
|
||||
// allowOutsideClick: false
|
||||
// }, function (isConfirm) {
|
||||
// if(isConfirm){
|
||||
// audio.pause();
|
||||
// swal.close();
|
||||
// }
|
||||
// });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -271,3 +271,7 @@ i.logout_icon{
|
||||
.border-left{
|
||||
border-left:1px solid #fff;
|
||||
}
|
||||
|
||||
.set_add_icon{
|
||||
display:none;
|
||||
}
|
||||
@@ -89,7 +89,6 @@ class Oqs::HomeController < BaseOqsController
|
||||
|
||||
# Query for OQS with delivery status
|
||||
def queue_items_query(status)
|
||||
byebug
|
||||
AssignedOrderItem.select("assigned_order_items.assigned_order_item_id, oqs.id as station_id, oqs.station_name, oqs.is_active, oqpz.zone_id, df.name as zone, df.type as type, odt.order_id, odt.item_code, odt.item_name, odt.price, odt.qty, odt.item_order_by, odt.options, cus.name as customer_name, odt.created_at")
|
||||
.joins(" left join order_queue_stations as oqs on oqs.id = assigned_order_items.order_queue_station_id
|
||||
left join order_queue_process_by_zones as oqpz on oqpz.order_queue_station_id = oqs.id
|
||||
|
||||
@@ -67,6 +67,8 @@ class Origami::AddordersController < BaseOrigamiController
|
||||
end
|
||||
|
||||
def get_menu()
|
||||
puts "sssssssssssssss"
|
||||
puts params[:id]
|
||||
if (params[:id])
|
||||
#Pull this menu
|
||||
@menu = Menu.find_by_id(params[:id])
|
||||
|
||||
@@ -81,6 +81,8 @@ class Origami::ShiftsController < BaseOrigamiController
|
||||
#get tax
|
||||
shift_obj = ShiftSale.where('id =?',@shift.id)
|
||||
@sale_taxes = Sale.get_separate_tax(shift_obj,from=nil,to=nil,type='')
|
||||
@total_waste = Sale.get_total_waste(shift_id).sum(:grand_total)
|
||||
@total_spoile = Sale.get_total_spoile(shift_id).sum(:grand_total)
|
||||
#other payment details for mpu or visa like card
|
||||
@other_payment = ShiftSale.get_by_shift_other_payment(@shift)
|
||||
|
||||
@@ -94,10 +96,9 @@ class Origami::ShiftsController < BaseOrigamiController
|
||||
|
||||
# get printer info
|
||||
print_settings = PrintSetting.find_by_unique_code(unique_code)
|
||||
#byebug
|
||||
printer = Printer::CashierStationPrinter.new(print_settings)
|
||||
|
||||
printer.print_close_cashier(print_settings,cashier_terminal,@shift,shop_details,@sale_taxes,@other_payment,@total_amount_by_account,@total_discount_by_account,@total_member_discount,@total_dinein,@total_takeway,@total_other_charges)
|
||||
printer.print_close_cashier(print_settings,cashier_terminal,@shift,shop_details,@sale_taxes,@other_payment,@total_amount_by_account,@total_discount_by_account,@total_member_discount,@total_dinein,@total_takeway,@total_other_charges,@total_waste,@total_spoile)
|
||||
end
|
||||
end
|
||||
Employee.logout(session[:session_token])
|
||||
|
||||
@@ -155,6 +155,7 @@ class Menu < ApplicationRecord
|
||||
|
||||
# Menu Item Attributes
|
||||
item_attrs = []
|
||||
if !row["Attributes"].nil?
|
||||
attributes = row["Attributes"].split(',')
|
||||
attributes.each do |attr|
|
||||
attribute = MenuItemAttribute.find_by_name(attr)
|
||||
@@ -163,9 +164,11 @@ class Menu < ApplicationRecord
|
||||
end
|
||||
item_attrs.push(attribute.id)
|
||||
end
|
||||
end
|
||||
|
||||
# Menu Item Options
|
||||
item_opts = []
|
||||
if !row["Options"].nil?
|
||||
options = row["Options"].split(',')
|
||||
options.each do |opt|
|
||||
option = MenuItemOption.find_by_name(opt)
|
||||
@@ -174,6 +177,7 @@ class Menu < ApplicationRecord
|
||||
end
|
||||
item_opts.push(option.id)
|
||||
end
|
||||
end
|
||||
|
||||
menu_itm = MenuItem.find_by_item_code(row["Item Code"])
|
||||
if !menu_itm
|
||||
@@ -189,7 +193,11 @@ class Menu < ApplicationRecord
|
||||
|
||||
menu_inst = MenuItemInstance.find_by_item_instance_code(row["Instance Code"])
|
||||
if !menu_inst
|
||||
imported_instance = MenuItemInstance.create(menu_item_id: menu_itm.id, item_instance_code: row["Instance Code"], item_instance_name: row["Instance Name"], item_attributes: [], price: row["Price"], is_on_promotion: false, promotion_price: 0, is_available: true, is_default: row["Is Default"])
|
||||
instance_name = ''
|
||||
if !row["Instance Name"].nil?
|
||||
instance_name = row["Instance Name"]
|
||||
end
|
||||
imported_instance = MenuItemInstance.create(menu_item_id: menu_itm.id, item_instance_code: row["Instance Code"], item_instance_name: instance_name, item_attributes: [], price: row["Price"], is_on_promotion: false, promotion_price: 0, is_available: true, is_default: row["Is Default"])
|
||||
# else
|
||||
# status = status + "Instance Code already exists for " + row["Instance Name"] + "."
|
||||
end
|
||||
|
||||
@@ -38,7 +38,7 @@ class Printer::CashierStationPrinter < Printer::PrinterWorker
|
||||
# self.print(filename, cashier_terminal.printer_name)
|
||||
# end
|
||||
|
||||
def print_close_cashier(printer_settings,cashier_terminal,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount,total_dinein,total_takeway,total_other_charges)
|
||||
def print_close_cashier(printer_settings,cashier_terminal,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount,total_dinein,total_takeway,total_other_charges,total_waste,total_spoile)
|
||||
|
||||
#Use CUPS service
|
||||
#Generate PDF
|
||||
@@ -46,7 +46,7 @@ class Printer::CashierStationPrinter < Printer::PrinterWorker
|
||||
cashier = shift_sale.employee.name
|
||||
shift_name = shift_sale.shift_started_at.utc.getlocal.strftime("%d-%m-%Y %I:%M %p") + "_" + shift_sale.shift_closed_at.utc.getlocal.strftime("%d-%m-%Y %I:%M %p")
|
||||
filename = "tmp/close_cashier_#{cashier}_#{shift_name}.pdf"
|
||||
pdf = CloseCashierPdf.new(printer_settings,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount)
|
||||
pdf = CloseCashierPdf.new(printer_settings,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount,total_waste,total_spoile)
|
||||
close_cashier_pdf = Lookup.collection_of("print_settings") #print_settings with name:CloseCashierPdf
|
||||
|
||||
if !close_cashier_pdf.empty?
|
||||
@@ -55,7 +55,7 @@ class Printer::CashierStationPrinter < Printer::PrinterWorker
|
||||
if close_cashier[1] == '1'
|
||||
pdf = CloseCashierCustomisePdf.new(printer_settings,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount,total_dinein,total_takeway,total_other_charges)
|
||||
else
|
||||
pdf = CloseCashierPdf.new(printer_settings,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount)
|
||||
pdf = CloseCashierPdf.new(printer_settings,shift_sale,shop_details,sale_taxes,other_payment,amount,discount,member_discount,total_waste,total_spoile)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1091,6 +1091,14 @@ end
|
||||
return sale_arr
|
||||
end
|
||||
|
||||
def self.get_total_waste(shift_id)
|
||||
query = Sale.where("sale_status = 'waste' and shift_sale_id = ?", shift_id)
|
||||
end
|
||||
|
||||
def self.get_total_spoile(shift_id)
|
||||
query = Sale.where("sale_status = 'spoile' and shift_sale_id = ?", shift_id)
|
||||
end
|
||||
|
||||
def self.get_separate_tax(shift_sale_range=nil,shift,from,to,payment_type)
|
||||
|
||||
# wrong amount tax for service and commercial tax
|
||||
|
||||
@@ -70,7 +70,7 @@ class CloseCashierCustomisePdf < Prawn::Document
|
||||
stroke_horizontal_rule
|
||||
end
|
||||
|
||||
def shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,precision,delimiter,total_dinein,total_takeway,total_other_charges)
|
||||
def shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,precision,delimiter,total_dinein,total_takeway,total_other_charges,total_spoile)
|
||||
move_down 7
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.label_width, :height => self.item_height) do
|
||||
|
||||
@@ -2,7 +2,7 @@ class CloseCashierPdf < Prawn::Document
|
||||
include ActionView::Helpers::NumberHelper
|
||||
attr_accessor :label_width,:price_column_width,:page_width, :page_height, :margin, :price_width, :item_width, :header_font_size, :item_font_size,:item_height,:qty_width,:total_width,:item_description_width,:text_width
|
||||
|
||||
def initialize(printer_settings, shift_sale,shop_details,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount)
|
||||
def initialize(printer_settings, shift_sale,shop_details,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,total_waste,total_spoile)
|
||||
self.page_width = printer_settings.page_width #PrintSetting.where("name = ?","Close Cashier").first.page_width
|
||||
self.page_height = printer_settings.page_height
|
||||
self.header_font_size = printer_settings.header_font_size.to_i
|
||||
@@ -54,7 +54,7 @@ class CloseCashierPdf < Prawn::Document
|
||||
|
||||
stroke_horizontal_rule
|
||||
|
||||
shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,printer_settings.precision,delimiter)
|
||||
shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,printer_settings.precision,delimiter,total_waste,total_spoile)
|
||||
end
|
||||
|
||||
def header (shop_details)
|
||||
@@ -70,7 +70,7 @@ class CloseCashierPdf < Prawn::Document
|
||||
stroke_horizontal_rule
|
||||
end
|
||||
|
||||
def shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,precision,delimiter)
|
||||
def shift_detail(shift_sale,sale_taxes,other_payment,total_amount_by_account,total_discount_by_account,total_member_discount,precision,delimiter,total_waste,total_spoile)
|
||||
move_down 7
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.label_width, :height => self.item_height) do
|
||||
@@ -341,6 +341,22 @@ class CloseCashierPdf < Prawn::Document
|
||||
text "(#{shift_sale.total_void})", :size => self.item_font_size, :align => :right
|
||||
end
|
||||
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => 20) do
|
||||
text "Total Waste :", :size => self.item_font_size, :align => :right
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.price_width, :height => 20) do
|
||||
text "(#{ number_with_precision(total_waste, :precision => precision.to_i, :delimiter => delimiter)})", :size => self.item_font_size, :align => :right
|
||||
end
|
||||
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => 20) do
|
||||
text "Total Spoile :", :size => self.item_font_size, :align => :right
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.price_width, :height => 20) do
|
||||
text "(#{ number_with_precision(total_spoile, :precision => precision.to_i, :delimiter => delimiter)})", :size => self.item_font_size, :align => :right
|
||||
end
|
||||
|
||||
# y_position = cursor
|
||||
# bounding_box([0,y_position], :width =>self.item_description_width, :height => 20) do
|
||||
# text "Grand Total :", :size => self.item_font_size, :align => :right
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
<span class="main_menu" id="main_menu menu_name" >
|
||||
<%if @menu.present? %>
|
||||
<%=menu[0].name%>
|
||||
<%=@menus[0].name%>
|
||||
<% end%>
|
||||
</span>
|
||||
</a>
|
||||
@@ -650,11 +650,58 @@
|
||||
$(document).on('click', '.menu_click', function(event){
|
||||
var menu_id = $(this).attr("data-id");
|
||||
var name = $(this).attr("data-name");
|
||||
var menus = JSON.parse(localStorage.getItem("menus"));
|
||||
if (menus != null) {
|
||||
menu_click_cache_append(name,menus,menu_id);
|
||||
}else{
|
||||
var url = "get_menu/"+menu_id;
|
||||
show_menu_cat_list(name, url);
|
||||
}
|
||||
});
|
||||
//End menu category Click
|
||||
|
||||
function menu_click_cache_append(name,menus,menu_id) {
|
||||
var menu_list = $('.menu_items_list');
|
||||
menu_list.empty();
|
||||
|
||||
var menu_cat = $('.category_list');
|
||||
menu_cat.empty();
|
||||
|
||||
$(".main_menu").text(name);
|
||||
for(var i in menus) {
|
||||
console.log(menus)
|
||||
console.log(menus[i]["id"]);
|
||||
console.log(menus[i]["is_active"]);
|
||||
console.log(menu_id);
|
||||
if (menu_id == menus[i]["id"] && menus[i]["is_active"] == true) {
|
||||
// menu_list_template(menus[i]);
|
||||
var category = menus[i]["categories"];
|
||||
|
||||
for(var ii in category) {
|
||||
if (category[ii]["is_available"]== true){
|
||||
if (category[ii]["valid_time"]== true){
|
||||
if (category[ii]["parent_id"] == null ){
|
||||
if(type){
|
||||
if (category[ii]["code"].includes("SPL") != true) {
|
||||
category_list_template(category[ii]);
|
||||
}
|
||||
}else{
|
||||
if ($("#table_get_current").text()) {
|
||||
if (category[ii]["code"].includes("SPL") != true) {
|
||||
category_list_template(category[ii]);
|
||||
}else {
|
||||
category_list_template(category[ii]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//show menu item list when click menu category
|
||||
function show_menu_cat_list(name, url_item){
|
||||
var menu_list = $('.menu_items_list');
|
||||
@@ -663,15 +710,18 @@
|
||||
var menu_cat = $('.category_list');
|
||||
menu_cat.empty();
|
||||
|
||||
$(".main_menu").text(name)
|
||||
if (modify_order=="true" && type =="true") {
|
||||
$(".main_menu").text(name);
|
||||
cashier_type = window.location.href.indexOf("quick_service");
|
||||
modify_order = window.location.href.indexOf("modify_order");
|
||||
if (cashier_type != -1 && modify_order != -1) {
|
||||
url_item = '../../../addorders/'+url_item;
|
||||
}if(modify_order=="false" && type =="true"){
|
||||
}
|
||||
if(modify_order == -1 && cashier_type != -1){
|
||||
url_item = 'addorders/'+url_item
|
||||
}else{
|
||||
}
|
||||
if (cashier_type ==-1 && modify_order == -1){
|
||||
url_item = url_item;
|
||||
}
|
||||
|
||||
//Start Ajax
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
@@ -679,10 +729,8 @@
|
||||
data: {},
|
||||
dataType: "json",
|
||||
success: function(data) {
|
||||
|
||||
for(var i in data) {
|
||||
if (data[i].is_available == true) {
|
||||
|
||||
row = '<div class="card custom-card testimonial-card animated fadeInRight menu_category sub_click" data-id="'+ data[i].id +'">'
|
||||
+' <div class="card-block custom-card-block">'
|
||||
+' <p>'+ data[i].name +'<p>'
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
<div class="container-fluid">
|
||||
<div id="loading_wrapper" style="display:none;">
|
||||
<div id="loading"></div>
|
||||
</div>
|
||||
<div class="block-header">
|
||||
<!-- <h2><%= t :dashboard %></h2> -->
|
||||
<h2><%= t :date_time %> : <%= Time.zone.now.utc.getlocal.strftime("%Y-%m-%d %I:%M %p") %></h2>
|
||||
@@ -208,15 +211,24 @@
|
||||
<input type="hidden" name="server_mode" value="<%=ENV["SERVER_MODE"]%>" id="server_mode">
|
||||
<script>
|
||||
$(function() {
|
||||
$( "#loading_wrapper").show();
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: 'get_all_menu',
|
||||
data: {},
|
||||
success:function(result){
|
||||
localStorage.setItem("menus", JSON.stringify(result));
|
||||
|
||||
var menu = localStorage.getItem("menus");
|
||||
|
||||
if (menu != null ) {
|
||||
$( "#loading_wrapper").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(".cashier_view").on('click', function() {
|
||||
window.location.href = '/origami';
|
||||
});
|
||||
|
||||
@@ -1010,7 +1010,13 @@
|
||||
|
||||
$('#add_order').on('click', function () {
|
||||
var dining_id = "<%= @dining.id %>";
|
||||
|
||||
var menus = JSON.parse(localStorage.getItem("menus"));
|
||||
// if (menus != null) {
|
||||
// console.log("menu");
|
||||
// menu_cache_append(menus);
|
||||
// }else{
|
||||
// $("#menu_data").removeClass("hidden");
|
||||
// }
|
||||
window.location.href = '/origami/addorders/' + dining_id;
|
||||
});
|
||||
|
||||
|
||||
@@ -463,11 +463,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_doemal_new_order"></div>
|
||||
<!-- <div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_doemal_new_order"></div>
|
||||
<div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_new_order"></div>
|
||||
<div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_order_send_to_kitchen"></div>
|
||||
<div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_order_ready_to_delivery"></div>
|
||||
<div id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_order_ready_to_delivery"></div> -->
|
||||
</div>
|
||||
|
||||
<p id="ref_no" class="hidden"></p>
|
||||
@@ -584,7 +583,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="modal fade text-center" id="<%= @shop.shop_code ? @shop.shop_code : '' %>_doemal_new_order" tabindex="-1" role="dialog">
|
||||
<div class="modal fade text-center" id="<%= @shop.shop_code ? @shop.shop_code : '' %>_doemal_new_order" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog modal-md" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
@@ -598,7 +597,7 @@
|
||||
<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-blue waves-effect new_order_close" data-value="<%= @shop.shop_code ? @shop.shop_code : '' %>" data-dismiss="modal">CLOSE</button>
|
||||
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-blue new_order_close" data-value="<%= @shop.shop_code ? @shop.shop_code : '' %>" data-dismiss="modal">CLOSE</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -606,7 +605,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade text-center" id="notify_new_order" tabindex="-1" role="dialog">
|
||||
<div class="modal fade text-center" id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_new_order" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog modal-md" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
@@ -620,7 +619,7 @@
|
||||
<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-blue waves-effect" data-dismiss="modal">CLOSE</button>
|
||||
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-blue notify_new_close" data-value="<%= @shop.shop_code ? @shop.shop_code : '' %>" data-dismiss="modal">CLOSE</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -628,7 +627,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade text-center" id="notify_order_send_to_kitchen" tabindex="-1" role="dialog">
|
||||
<div class="modal fade text-center" id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_order_send_to_kitchen" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog modal-md" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
@@ -642,7 +641,7 @@
|
||||
<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-blue waves-effect" data-dismiss="modal">CLOSE</button>
|
||||
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-blue notify_order_send_close" data-value="<%= @shop.shop_code ? @shop.shop_code : '' %>" data-dismiss="modal">CLOSE</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -650,7 +649,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade text-center" id="notify_order_ready_to_delivery" tabindex="-1" role="dialog">
|
||||
<div class="modal fade text-center" id="<%= @shop.shop_code ? @shop.shop_code : '' %>_notify_order_ready_to_delivery" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog modal-md" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
@@ -664,11 +663,11 @@
|
||||
<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-blue waves-effect" data-dismiss="modal">CLOSE</button>
|
||||
<button type="button" class="btn btn-link p-t-5 p-b-5 bg-blue notify_order_ready_close" data-value="<%= @shop.shop_code ? @shop.shop_code : '' %>" data-dismiss="modal">CLOSE</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
|
||||
@@ -633,33 +633,33 @@ var customer_name = "<%= @customer.name %>";
|
||||
|
||||
$('#pay').click(function() {
|
||||
sub_total = $('#sub-total').text();
|
||||
if (payment_type == 'MPU' && $('.mpu').text() == 0 && sub_total != 0.0) {
|
||||
if (parseInt(jQuery.inArray("MPU", payment_type)) != -1 && $('.mpu').text() == 0 && sub_total != 0.0) {
|
||||
swal("Oops","Please Pay with MPU Payment","warning");
|
||||
}else if(payment_type == "Redeem" && $('#ppamount').text()==0 && sub_total != 0.0){
|
||||
}else if(parseInt(jQuery.inArray("Redeem", payment_type)) != -1 && $('#ppamount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Redeem Payment","warning");
|
||||
}else if(payment_type == "VISA" && $('#visacount').text()==0 && sub_total != 0.0){
|
||||
}else if(parseInt(jQuery.inArray("VISA", payment_type)) != -1 && $('#visacount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Visa Payment","warning");
|
||||
|
||||
}else if(payment_type == "JCB" && $('#jcbcount').text()==0 && sub_total != 0.0){
|
||||
}else if(parseInt(jQuery.inArray("JCB", payment_type)) != -1 && $('#jcbcount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with jcb Payment","warning");
|
||||
}
|
||||
else if(payment_type == "Master" && $('#mastercount').text()==0 && sub_total != 0.0){
|
||||
else if(parseInt(jQuery.inArray("Master", payment_type)) != -1 && $('#mastercount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Master Payment","warning");
|
||||
}
|
||||
else if(payment_type == "UNIONPAY" && $('#unionpaycount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with UNIONPAY Payment","warning");
|
||||
}
|
||||
else if(payment_type == "Alipay" && $('#alipaycount').text()==0 && sub_total != 0.0){
|
||||
else if(parseInt(jQuery.inArray("Alipay", payment_type)) != -1 && $('#alipaycount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Alipay Payment","warning");
|
||||
}
|
||||
else if(payment_type == "JUNCTIONPAY" && $('#junctionpaycount').text()==0 && sub_total != 0.0){
|
||||
else if(parseInt(jQuery.inArray("JUNCTIONPAY", payment_type)) != -1 != -1 && $('#junctionpaycount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with JUNCTIONPAY Payment","warning");
|
||||
}
|
||||
else if(payment_type == "Credit" && $('#credit').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Credit Payment","warning");
|
||||
}else if(payment_type == "PAYMAL" && $('#paymalcount').text()==0 && sub_total != 0.0){
|
||||
}else if(parseInt(jQuery.inArray("PAYMAL", payment_type)) != -1 && $('#paymalcount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Paymal Payment","warning");
|
||||
}else if(payment_type == "DINGA" && $('#dingacount').text()==0 && sub_total != 0.0){
|
||||
}else if(parseInt(jQuery.inArray("DINGA", payment_type)) != -1 && $('#dingacount').text()==0 && sub_total != 0.0){
|
||||
swal("Oops","Please Pay with Dinga Payment","warning");
|
||||
}else{
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
<span style='font-size:20px;'><b><%= t :closing_balance %></b></span>
|
||||
</div>
|
||||
<div class='col-md-6'>
|
||||
<span style='font-size:20px;'><b><input type='text' class="form-control" id='closing_balance_amount' value=''></b></span>
|
||||
<span style='font-size:20px;'><b><input type='number' class="form-control" id='closing_balance_amount' value='' onkeypress="return isNumberKey(event);" onkeyup="notNegative(this.value);"></b></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -58,6 +58,20 @@
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
function isNumberKey(evt) {
|
||||
var charCode = (evt.which) ? evt.which : event.keyCode;
|
||||
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function greaterThanOne(val){
|
||||
if(parseInt(val)==0) $("#closing_balance_amount").val(1);
|
||||
}
|
||||
|
||||
var cashier_type = '<%= @cashier_type %>';
|
||||
$('#close_cashier').on('click',function(){
|
||||
var amount = $('#closing_balance_amount').val();
|
||||
|
||||
@@ -59,16 +59,18 @@
|
||||
<% unless @sale_data.blank? %>
|
||||
<% @sale_data.each do |sale| %>
|
||||
<!-- all total qty sum -->
|
||||
<!--
|
||||
|
||||
<% if sale.status_type != "Discount" && sale.status_type != "foc"
|
||||
total_qty += sale.total_item
|
||||
end %>
|
||||
<% if sale.status_type == "foc" && sale.price > 0
|
||||
total_qty += sale.total_item
|
||||
end %>
|
||||
-->
|
||||
<% if sale.status_type == "Discount"
|
||||
total_qty += sale.total_item*(-1)
|
||||
end %>
|
||||
<!-- end all total qty -->
|
||||
<!--
|
||||
|
||||
<% if sale.status_type == "foc" && sale.grand_total < 0
|
||||
total_item_foc += sale.grand_total*(-1)
|
||||
end %>
|
||||
@@ -76,7 +78,7 @@
|
||||
<% if sale.status_type == "Discount" && sale.grand_total < 0
|
||||
total_item_dis += sale.grand_total*(-1)
|
||||
end %>
|
||||
-->
|
||||
|
||||
<% if !acc_arr.include?(sale.account_id) %>
|
||||
<tr>
|
||||
<td><b><%= sale.account_name %></b></td>
|
||||
@@ -103,7 +105,12 @@
|
||||
<% end %>
|
||||
<td><%= sale.item_code rescue '-' %></td>
|
||||
<td><%= sale.product_name rescue '-' %></td>
|
||||
<% if sale.status_type != "Discount" %>
|
||||
<td><%= sale.total_item rescue '-' %></td>
|
||||
<%else%>
|
||||
<td><%= sale.total_item*(-1) rescue '-' %></td>
|
||||
<% end %>
|
||||
|
||||
<td><%= number_with_precision(sale.unit_price , precision:precision.to_i,delimiter:delimiter) rescue '-'%></td>
|
||||
<td><%= number_with_precision(sale.grand_total , precision:precision.to_i,delimiter:delimiter) rescue '-'%></td>
|
||||
</tr>
|
||||
@@ -114,10 +121,12 @@
|
||||
<% count = count + 1 %>
|
||||
<% sub_total += sale.grand_total %>
|
||||
<% #sub_qty += sale.total_item %>
|
||||
<% if sale.status_type!="Discount" && (!sale.product_name.include? "FOC")
|
||||
<% if sale.status_type !="Discount" && (!sale.product_name.include? "FOC")
|
||||
sub_qty += sale.total_item
|
||||
end %>
|
||||
|
||||
<% if sale.status_type =="Discount"
|
||||
sub_qty += sale.total_item*(-1)
|
||||
end %>
|
||||
<% if count == value %>
|
||||
<tr>
|
||||
<td colspan="3"> </td>
|
||||
|
||||
@@ -150,13 +150,13 @@
|
||||
<th></th>
|
||||
<td style="text-align: right;">JCB Payment </td>
|
||||
<td><%=other.master_amount.round(2) rescue 0.0 %></td>
|
||||
<% @total_amount = @total_amount+other.master_amount rescue 0.0 %>
|
||||
<% @total_amount = @total_amount+other.jcb_amount rescue 0.0 %>
|
||||
</tr>
|
||||
<tr>
|
||||
<th></th>
|
||||
<td style="text-align: right;">Master Payment </td>
|
||||
<td><%=other.jcb_amount.round(2) rescue 0.0 %></td>
|
||||
<% @total_amount = @total_amount+other.jcb_amount rescue 0.0 %>
|
||||
<% @total_amount = @total_amount+other.master_amount rescue 0.0 %>
|
||||
</tr>
|
||||
<tr>
|
||||
<th></th>
|
||||
|
||||
@@ -55,5 +55,5 @@ Rails.application.configure do
|
||||
config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
||||
|
||||
# Set Cable URL
|
||||
config.action_cable.url = "ws://192.168.1.196:3002/cable"
|
||||
# config.action_cable.url = "ws://192.168.1.196:3002/cable"
|
||||
end
|
||||
|
||||
@@ -4,7 +4,7 @@ class CreateOrderReservations < ActiveRecord::Migration[5.1]
|
||||
t.string :order_reservation_id, :limit => 16, :primary_key => true
|
||||
t.string :order_reservation_type, :null => false
|
||||
t.string :customer_id, :null => false
|
||||
t.datetime :requested_time, :null => false
|
||||
t.string :requested_time, :null => false
|
||||
t.string :callback_url, :null => false
|
||||
t.string :transaction_ref, :null => false
|
||||
t.string :sale_id
|
||||
@@ -21,7 +21,7 @@ class CreateOrderReservations < ActiveRecord::Migration[5.1]
|
||||
t.decimal :grand_total, :precision => 10, :scale => 2, :null => false, :default => 0.00
|
||||
t.string :status, :null => false, :default => "new"
|
||||
t.string :order_remark
|
||||
t.string :reservation_remark
|
||||
t.string :remark
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
|
||||
BIN
public/AC-beep.mp3
Normal file
BIN
public/AC-beep.mp3
Normal file
Binary file not shown.
Reference in New Issue
Block a user