392 lines
14 KiB
Plaintext
Executable File
392 lines
14 KiB
Plaintext
Executable File
|
|
<div class="container-fluid"><div class="row">
|
|
<!-- Column One -->
|
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
|
|
|
<!-- Nav tabs -->
|
|
<ul class="nav nav-tabs tab-col-teal" role="tablist" id="mytab">
|
|
<li class="nav-item">
|
|
<a class="nav-link " data-toggle="tab" href="#completed" role="tab"><%= t :competed %></a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link " data-toggle="tab" href="#tables" role="tab"><%= t :tables %></a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" data-toggle="tab" href="#rooms" role="tab"><%= t :rooms %></a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link active" data-toggle="tab" href="#orders" role="tab"><%= t :orders %></a>
|
|
</li>
|
|
<li class="nav-item credit_items">
|
|
<a class="nav-link" data-toggle="tab" href="#credits" role="tab"><%= t :credits %></a>
|
|
</li>
|
|
</ul>
|
|
<!-- Nav tabs - End -->
|
|
<div id="custom-slimscroll">
|
|
<div class="tab-content">
|
|
<!--- Panel 0 - Completed Orders -->
|
|
<div class="tab-pane " id="completed" role="tabpanel" style="">
|
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
|
<% @complete.each do |sale| %>
|
|
<div class="card sales red text-white" data-id = "<%= sale.sale_id %>">
|
|
<div class="card-block">
|
|
<%= sale.receipt_no %><span style="font-size:12px;float:right;line-height:inherit;"><%= sale.sale_status %></span>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
|
|
<!--- Panel 1 - Table Orders -->
|
|
<div class="tab-pane " id="tables" role="tabpanel" style="">
|
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
|
<% @tables.each do |table| %>
|
|
<% if table.status == 'occupied' %>
|
|
<% if table.get_booking.nil? %>
|
|
<% if table.get_checkout_booking.nil? %>
|
|
<div class="card tables red text-white table_<%= table.id %>" data-id="<%= table.id %>">
|
|
<% else %>
|
|
<div class="card tables orange text-white table_<%= table.id %>" data-id="<%= table.id %>">
|
|
<% end %>
|
|
<div class="card-block">
|
|
<%= table.name %> <br>
|
|
<%= table.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= table.id %>"> billed</span>
|
|
<div style="font-size:12px;"></div>
|
|
</div>
|
|
</div>
|
|
<% else %>
|
|
<% if table.get_checkout_booking.nil? %>
|
|
<div class="card tables blue text-white table_<%= table.id %>" data-id="<%= table.id %>">
|
|
<% else %>
|
|
<div class="card tables orange text-white table_<%= table.id %>" data-id="<%= table.id %>">
|
|
<% end %>
|
|
<div class="card-block">
|
|
<%= table.name %> <br>
|
|
<%= table.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= table.id %>"> new</span>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
<% else %>
|
|
<div class="card tables green text-white table_<%= table.id %>" data-id="<%= table.id %>">
|
|
<div class="card-block">
|
|
<%= table.name %> <br>
|
|
<%= table.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= table.id %> hide"> new</span>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
|
|
<!--- Panel 2 - Room Orders -->
|
|
<div class="tab-pane" id="rooms" role="tabpanel" style="">
|
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
|
<% @rooms.each do |room| %>
|
|
<% if room.status == 'occupied' %>
|
|
<% if room.get_booking.nil? %>
|
|
<div class="card rooms red text-white table_<%= room.id %>" data-id="<%= room.id %>">
|
|
<div class="card-block">
|
|
<%= room.name %> <br>
|
|
<%= room.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= room.id %>"> billed</span>
|
|
</div>
|
|
</div>
|
|
<% else %>
|
|
<div class="card rooms blue text-white table_<%= room.id %>" data-id="<%= room.id %>">
|
|
<div class="card-block">
|
|
<%= room.name %> <br>
|
|
<%= room.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= room.id %>"> new</span>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
<% else %>
|
|
<div class="card rooms green text-white table_<%= room.id %>" data-id="<%= room.id %>">
|
|
<div class="card-block">
|
|
<%= room.name %> <br>
|
|
<%= room.zone.name %>
|
|
<span class="float-right font-12 new_text_<%= room.id %> hide">
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
|
|
<!--- Panel 3 - Orders -->
|
|
<div class="tab-pane active" id="orders" role="tabpanel" style="">
|
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
|
<% @orders.each do |order| %>
|
|
<div class="card orders <%=(order.status=="new") ? 'blue' : 'red'%> text-white" data-id = "<%= order.order_id %>">
|
|
<div class="card-block">
|
|
<%
|
|
order_status = ""
|
|
sale_order = SaleOrder.find_by_order_id(order)
|
|
if sale_order
|
|
unless sale_order.sale_id.nil?
|
|
sale = Sale.find(sale_order.sale_id)
|
|
order_status = sale.sale_status
|
|
if order_status == 'new'
|
|
order_status = order.status
|
|
end
|
|
end
|
|
else
|
|
order_status = order.status
|
|
end
|
|
%>
|
|
<%= order.order_id %> <% if !order_status.empty? %>| <%= order_status %> <% end %>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Credit Item Lists-->
|
|
<div class="tab-pane dining" id="credits" role="tabpanel">
|
|
<div class="card-block">
|
|
<div class="row m-t-10 m-l-10 clearfix">
|
|
<div class="col-lg-4 col-md-4 col-sm-4 col-xs-12">
|
|
<input type="text" name="filter" id="filter" style="height: 32px;" placeholder="Receipt No." class="form-control" onchange="getCreditData('cashier');">
|
|
</div>
|
|
<div class="col-lg-4 col-md-4 col-sm-4 col-xs-12">
|
|
<select class="form-control" id="sel_customer" name="sel_customer" placeholder="Select Customer" onchange="getCreditData('cashier');" >
|
|
<option value="">-- Select Customer --</option>
|
|
<% if !@customers.empty? %>
|
|
<% @customers.each do |cus| %>
|
|
<option value="<%= cus[0] %>"><%= cus[1] %></option>
|
|
<% end %>
|
|
<% end %>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="row clearfix m-t-20 m-l-10">
|
|
<table class="table table-responsive tbl_credit_lists">
|
|
<thead>
|
|
<th><%= t :credit %> <%= t :sale %> <%= t("views.right_panel.detail.date") %></th>
|
|
<th><%= t("views.right_panel.detail.receipt_no") %></th>
|
|
<th> <%= t :cashier %></th>
|
|
<th> <%= t :customer %></th>
|
|
<th> <%= t("views.right_panel.detail.credit_amount") %> </th>
|
|
</thead>
|
|
<tbody class="tbd_credit_lists"></tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<!-- tabs - End -->
|
|
</div>
|
|
<!-- Column One -->
|
|
<!-- Column Two -->
|
|
<div class="col-lg-5 col-md-5 col-sm-5">
|
|
<div class="card" >
|
|
<div class="card-header">
|
|
<div><strong id="order-title">ORDERS DETAILS </strong></div>
|
|
</div>
|
|
<div class="card-block">
|
|
<div class="card-title row p-l-5 p-r-5">
|
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
|
Order No: <span id="receipt_no"> <%= @order.order_id %>
|
|
</span>
|
|
</div>
|
|
<div class="col-lg-6 col-md-6 col-sm-6 text-right">
|
|
Date: <span id="receipt_date"><%= @order.created_at.utc.getlocal.getlocal.strftime("%d/%m/%Y - %I:%M %p") rescue '-'%></span>
|
|
</div>
|
|
</div>
|
|
<div class="card-title row customer_detail hide">
|
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
|
Customer : <span id="customer_name"></span>
|
|
</div>
|
|
|
|
</div>
|
|
<div id="order-detail-slimscroll" data-height="<%= @status_sale=="sale" ? 200 : 160%>">
|
|
<div class="card-text" style="">
|
|
<table class="table table-striped" id="order-items-table">
|
|
<thead>
|
|
<tr>
|
|
<th class="item-name">Items</th>
|
|
<th class="item-attr">QTY</th>
|
|
<th class="item-attr">Price</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<%
|
|
sub_total = 0
|
|
@order.order_items.each do |sale_item|
|
|
sub_total = sub_total + sale_item.price
|
|
%>
|
|
<% unless sale_item.price <= 0 %>
|
|
<tr>
|
|
<td class='item-name'>
|
|
<%= sale_item.item_name %>
|
|
<% if !sale_item.set_menu_items.nil?
|
|
sale_item.set_menu_items.each do |item_instance| %>
|
|
<br><span class="font-13"><%= item_instance %></span>
|
|
<% end
|
|
end %>
|
|
</td>
|
|
<td class='item-attr'><%= sale_item.qty %></td>
|
|
<td class='item-attr'><%= sale_item.price %></td>
|
|
</tr>
|
|
<%
|
|
end
|
|
end
|
|
%>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="card-footer ">
|
|
<table class="table" id="order-charges-table" border="0">
|
|
<tr>
|
|
<td class="charges-name"><strong>Sub Total:</strong></td>
|
|
<td class="item-attr"><strong id="order-sub-total"><%= sub_total %></strong></td>
|
|
</tr>
|
|
<tr>
|
|
|
|
<td class="charges-name"><strong>Discount:</strong></td>
|
|
|
|
<td class="item-attr"><strong id="order-discount">(<%=@selected_item.total_discount rescue 0%>)</strong></td>
|
|
</tr>
|
|
<tr class="rebate_amount"></tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Column Three -->
|
|
<div class="col-lg-1 col-md-1 col-sm-1">
|
|
<button type="button" class="btn bg-default btn-block waves-effect" id='back'><i class="material-icons">reply</i>Back</button>
|
|
<% if !@split_bill.nil? && @split_bill == '1' %>
|
|
<button type="button" class="btn bg-blue btn-block waves-effect" id='by_order'>By Order</button>
|
|
<% end %>
|
|
<% if @sale_status != 'completed' %>
|
|
<!-- <button type="button" class="btn bg-blue btn-block" id='move'>MOVE</button> -->
|
|
<% end %>
|
|
<!-- <button type="button" id="re-print" class="btn btn-primary btn-block">Re.Print</button> -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- script data for credit lists -->
|
|
<script type="text/html" id="html_credit_items">
|
|
<tr class="row_{key} credit_detail" data-id="{sale_id}" data-type="{cashier_type}">
|
|
<td>{receipt_date}</td>
|
|
<td>{receipt_no}</td>
|
|
<td>{cashier_name}</td>
|
|
<td>{customer_name}</td>
|
|
<td>{credit_amount}</td>
|
|
</tr>
|
|
</script>
|
|
<!-- script data for credit lists -->
|
|
|
|
<script>
|
|
$(document).ready(function(){
|
|
/* check webview loaded*/
|
|
var webview = <%= @webview %>;
|
|
showHideNavbar(webview);
|
|
getCreditSales("","","cashier"); //credit sales script data binding
|
|
$(".tables").on('click', function(){
|
|
var dining_id = $(this).attr("data-id");
|
|
window.location.href = '/origami/table/' + dining_id;
|
|
})
|
|
$(".sales").on('click',function(){
|
|
var sale_id = $(this).attr("data-id");
|
|
window.location.href = '/origami/sale/' + sale_id;
|
|
})
|
|
$(".rooms").on('click', function(){
|
|
var dining_id = $(this).attr("data-id");
|
|
window.location.href = '/origami/room/' + dining_id;
|
|
})
|
|
$(".orders").on('click',function(){
|
|
var order_id = $(this).attr("data-id");
|
|
window.location.href = '/origami/order/' + order_id;
|
|
})
|
|
});
|
|
$('#pay').on('click',function() {
|
|
var sale_id = $('#sale_id').val();
|
|
var url = '/origami/sale/'+ sale_id + "/rounding_adj" ;
|
|
alert(url)
|
|
$.ajax({
|
|
type: "POST",
|
|
url: '/origami/sale/'+ sale_id + "/rounding_adj",
|
|
success:function(result){
|
|
window.location.href = '/origami/sale/'+ sale_id + "/payment";
|
|
}
|
|
});
|
|
|
|
});
|
|
$('#back').on('click',function(){
|
|
window.location.href = '/origami/';
|
|
})
|
|
$('#move').on('click',function(){
|
|
|
|
});
|
|
|
|
//order_split
|
|
$('#by_order').on('click',function () {
|
|
swal({
|
|
title: "Alert",
|
|
text: "Are you sure, you want to Split?",
|
|
type: "warning",
|
|
showCancelButton: true,
|
|
confirmButtonColor: "#DD6B55",
|
|
confirmButtonText: "Yes, split it!",
|
|
closeOnConfirm: false
|
|
}, function (isConfirm) {
|
|
if(isConfirm){
|
|
orderSplitBillProcess();
|
|
}
|
|
});
|
|
});
|
|
|
|
/* function for order items split bill process */
|
|
function orderSplitBillProcess(){
|
|
var booking = JSON.parse('<%= @booking.to_json.html_safe %>');
|
|
var orders = JSON.parse('<%= @orders.to_json.html_safe %>');
|
|
var order = JSON.parse('<%= @order.to_json.html_safe %>');
|
|
var arr_order = [];
|
|
arr_order.push({id : order.order_id});
|
|
|
|
var dining_id = booking[0].dining_facility_id || 0;
|
|
var type = booking[0].type || '';
|
|
var customer_id = order.customer_id || '';
|
|
var booking_id = "";
|
|
if(orders.length == 1){
|
|
booking_id = booking[0].booking_id;
|
|
}
|
|
var cashier_type = "cashier";
|
|
|
|
var ajax_url = "/origami/split_bills";
|
|
$.ajax({
|
|
type: "POST",
|
|
url: ajax_url,
|
|
dataType: 'JSON',
|
|
data: {'cashier_type':cashier_type,'dining_id' : dining_id, 'type': type, 'customer_id' : customer_id, 'booking_id' : booking_id, 'order_ids' : [], 'order_items' : '', 'orders' : JSON.stringify(arr_order)},
|
|
success: function (result) {
|
|
if (!result.status) {
|
|
swal("Information!", result.error_message);
|
|
}
|
|
else{
|
|
if (dining_id == 0) {
|
|
window.location.href = '/origami';
|
|
}else{
|
|
if(type=='Table'){
|
|
window.location.href = '/origami/table/' + dining_id;
|
|
}else{
|
|
window.location.href = '/origami/room/' + dining_id;
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
});
|
|
}
|
|
</script>
|