// This is a manifest file that'll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path. // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // compiled file. JavaScript code in this file should be added after the last require_* statement. // // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details // about supported directives. // //= require jquery //= require tether //= require bootstrap/js/popper.min //= require bootstrap/js/bootstrap-material-design.min //= require jquery_ujs //= require turbolinks //= require cable //= require jquery-slimscroll/jquery.slimscroll.js //= require node-waves/waves.js //= require sweetalert/sweetalert.min.js //= require BSBMaterial/turbolink_admin.js //= require BSBMaterial/demo.js //= require custom.js $(document).on('turbolinks:load', function() { var oqs_id = ""; $(".nav-completed").on("click", function(){ $("#completed").removeClass('hide') $(".oqs_append").addClass('hide') }); $(".tables").on("click", function(){ var table_id = $(this).val(); $('#table_id').val(table_id); oqs_id = $("#oqs_id").val(); if (table_id){ var table = table_id }else{ var table = null } if (oqs_id > 0) { $(".oqs_click").removeClass('oqs_active'); $(".queue_station").removeClass('queue_station_box'); $("#completed").addClass('hide'); $(".oqs_append").removeClass('hide'); $("#oqs_active").addClass('oqs_active'); $(".queue_station").addClass('queue_station_box'); // oqs_id = $(this).find(".oqs-id").text(); $("#oqs_active").attr('data-id',oqs_id); var url = 'oqs/get_items/'+oqs_id; show_details(url,table); }else{ $("#completed").removeClass('hide') $(".oqs_append").addClass('hide') } }); $(".oqs_click").on("click", function(){ oqs_id = $(this).val(); var table_id = $('#table_id').val(); if (table_id){ var table = table_id }else{ var table = null } if (oqs_id > 0) { $(".oqs_click").removeClass('oqs_active'); $(".queue_station").removeClass('queue_station_box'); $("#completed").addClass('hide'); $(".oqs_append").removeClass('hide'); $("#oqs_active").addClass('oqs_active'); $(".queue_station").addClass('queue_station_box'); // oqs_id = $(this).find(".oqs-id").text(); $("#oqs_active").attr('data-id',oqs_id); var url = 'oqs/get_items/'+oqs_id; show_details(url,table); }else{ $("#completed").removeClass('hide') $(".oqs_append").addClass('hide') } }); //End Click function show_details(url,table_id){ var oqs_append = $('.oqs_append'); oqs_append.empty(); var filter = $('.filter').text(); console.log(table_id) //Start Ajax $.ajax({ type: "GET", url: url, data: {'filter':filter,'table_id':table_id}, dataType: "json", success: function(data) { for(var field in data) { var price = parseFloat(data[field].price).toFixed(2); if (data[field]["options"] == "[]" || data[field]["options"] == "") { var options = ""; }else{ var options = data[field]["options"]; } var date = new Date(data[field]["created_at"]); // var show_date = date.getDate() + "-" + (date.getMonth()+1) + "-" + date.getFullYear() + ' ' + date.getHours()+ ':' + date.getMinutes(); var show_date =date.getHours()+ ':' + date.getMinutes() +' '+(date.getHours() >= 12 ? 'PM' : 'AM'); var set_menu_items = data[field]["set_menu_items"]; var set_instance_items = ""; if(set_menu_items!=null){ if(set_menu_items.length > 0){ $.each(set_menu_items, function(k,val){ set_instance_items += '
'+val+''; }); } } var table_type = ''; if (data[field]["table_type"]!=null) { table_type = data[field]["table_type"] +'-'+data[field]["zone"] }else{ table_type = "No Table" } row ='
' +'
' +'
' +''+table_type +'' +'' +''+data[field]["order_id"]+'' +'
' +'

' +''+ data[field]["item_name"] +'- ' +' [x'+ data[field]["qty"] +'] ' +set_instance_items +'

' +'

'+ options +'

' +'' +'Order at - ' +''+ show_date +'
' +'Order By - '+ data[field]["item_order_by"] +' ' +'
' +'
' +' ' +' ' +'
' +'' +'
'; $('.oqs_append').append(row); } } }); //end Ajax } $(document).on('click', '.queue_station', function(event){ var orderNo = $(this).attr('data-order-no'); var orderZone=$(this).children().children().children('.order-zone').text().trim(); var orderZoneType=$(this).children().children().children('.order-zone-type').text().trim(); // var orderItem=$(this).children().children().children('.order-item').text(); var assigned_item_id = $(this).children().find(".assigned-order-item").text(); var orderQty = $(this).children().children().children('.order-qty').text(); var orderBy = $(this).children().children().children().children('.order-by').text(); var orderAt = $(this).children().children().children().children('.order-at').text(); var orderCustomer = $(this).children().children('.order-customer').text(); var order_status = $(this).children().children('.order-status').text(); $('.cus_name').removeClass('hidden'); $('#order-title').text("ORDER DETAILS - " + orderZoneType); $('#order-by').text(orderBy); $('#order-at').text(orderAt); $('#order-customer').text(orderCustomer); $('#order-from').text(orderZone); // clear order items $("#oqs-order-details-table").children("tbody").empty(); // Call get_order_items() for Order Items by dining $.ajax({ type: 'GET', url: '/oqs/' + orderNo, data: { 'status' : order_status }, success: function(res){ // console.log(res); for (i = 0; i < res["items"].length; i++) { var data = JSON.stringify(res["items"][i]); var parse_data = JSON.parse(data); var assigned_order_items = []; var assigned_order_item_id = ''; if(res["assigned_order_items"]!= undefined && res["assigned_order_items"]!=''){ assigned_order_items = JSON.parse(JSON.stringify(res["assigned_order_items"])); $.each(assigned_order_items,function(key,value){ if(value[parse_data.order_items_id] != undefined){ assigned_order_item_id = value[parse_data.order_items_id]; } }); } // console.log(assigned_order_item_id); var set_menu_items = parse_data.set_menu_items; var set_instance_items = ""; if(set_menu_items!=null){ if(set_menu_items.length > 0){ $.each(set_menu_items, function(k,val){ set_instance_items += '
'+val+''; }); } } if (oqs_id > 0){ if(assigned_order_item_id != ''){ var order_item_row = "" + "" + parse_data.item_name + set_instance_items + "" + "" + parse_data.qty + "" + ""; }else{ var order_item_row = "" + "" + parse_data.item_name + set_instance_items + "" + "" + parse_data.qty + "" + ""; } }else{ var order_item_row = "" + "" + parse_data.item_name + set_instance_items + "" + "" + parse_data.qty + "" + ""; } $("#oqs-order-details-table").children("tbody").append(order_item_row); } } }) // $('#order-items').text(orderItem); // $('#order-qty').text(orderQty); $('.queue_station').removeClass('selected-item'); $(this).addClass('selected-item'); }); $(document).on('click', '.order-item-edit', function(event){ var _self = $(this); // To know in ajax return var assigned_item_id=$(this).attr('id').substr(5); window.location.href = '/oqs/'+ assigned_item_id + "/edit/oqs"; }); // complete for queue item $(document).on('click', '.order-complete', function(event){ //e.preventDefault(); var _self = $(this); // To know in ajax return var assigned_item_id=$(this).attr('id').substr(15); var params = { 'id':assigned_item_id }; // Call update_delivery_status() for changed delivery and move to delivery $.ajax({ type: 'POST', url: '/oqs/update_delivery', data: params, dataType: 'json', success: function(data){ for (i = 0; i < data.length; i++) { var queue_station = $('#assigned_queue_' + data[i]).parent().parent(".queue_station"); var station = queue_station.parent().parent().attr('id'); // Remove a queue card from current station queue_station.remove(); // Remove a queue card from current station queue_station.children('.card-footer').remove(); // Add removed queue card from station to completed $("#completed").children('.card-columns').append(queue_station); // update queue item count in each station var station_count=parseInt($("#"+station+"_count").text()) - 1; $("#"+station+"_count").text(station_count); } // update queue item count in completed station $("#completed_count").text(parseInt($("#completed_count").text()) + data.length); swal({ title: "Information !", text: 'Order has been successfully created', confirmButtonColor: "green", confirmButtonText: "Yes!", closeOnConfirm: false, }, function () { if(table_type == "Table"){ window.location.href = "/origami/table/" + table_id } else { window.location.href = "/origami/room/" + table_id } }); // Page reload location.reload(); } }); }); // Print Order Item $(document).on('click', '#print_order_item', function(event){ var assigned_item_id = $('.selected-item').children('.card-block').children('.assigned-order-item').text(); var options = $('.selected-item').children('.card-block').find('.item-options').text(); var params = { 'options':options }; $.ajax({ type: 'POST', url: '/oqs/print/print/'+assigned_item_id, data: params, success: function(data){ } }); }); // Print Order Summary // $('#print_order_summary').on('click',function(){ $(document).on('click', '#print_order_summary', function(event){ var orderNo = $('.selected-item').attr('data-order-no'); var table_name=$('.selected-item').children().children().children('.order-zone').text().trim(); var assigned_item_id=$('.selected-item').children('.card-block').children('.assigned-order-item').text(); var params = { 'table_name':table_name }; $.ajax({ type: 'GET', url: '/oqs/print/print_order_summary/'+assigned_item_id, data: params, success: function(data){ } }); }); });