update pending order
This commit is contained in:
15
app/controllers/origami/pending_order_controller.rb
Normal file
15
app/controllers/origami/pending_order_controller.rb
Normal file
@@ -0,0 +1,15 @@
|
||||
class Origami::PendingOrderController < BaseOrigamiController
|
||||
def index
|
||||
# @dining= DiningFacility.where("status = 'occupied'")
|
||||
# @order = Order.where("DATE_FORMAT(date,'%Y-%m-%d') = ? and status = 'billed' and source = 'quick_service'",DateTime.now.strftime('%Y-%m-%d'))
|
||||
@sale = Sale.pending_order
|
||||
end
|
||||
def show
|
||||
@sales = Sale.pending_order
|
||||
@sale = Sale.find(params[:sale_id])
|
||||
@order = SaleOrder.find_by_sale_id(@sale.sale_id).order_id
|
||||
@booking = BookingOrder.find_by_order_id(@order).booking_id
|
||||
@table_id = Booking.find(@booking).dining_facility_id
|
||||
@dining = DiningFacility.find(@table_id)
|
||||
end
|
||||
end
|
||||
@@ -14,6 +14,31 @@ class Origami::QuickServiceController < ApplicationController
|
||||
render "origami/addorders/detail"
|
||||
end
|
||||
|
||||
def modify_order
|
||||
@menu = MenuCategory.all.active
|
||||
@table_id = params[:id]
|
||||
@table = DiningFacility.find(@table_id)
|
||||
@booking = @table.get_booking
|
||||
if @booking
|
||||
@booking_id = @booking.booking_id
|
||||
@order_items = Array.new
|
||||
@booking.booking_orders.each do |booking_order|
|
||||
order = Order.find(booking_order.order_id)
|
||||
if (order.status == "new")
|
||||
@obj_order = order
|
||||
@customer = order.customer
|
||||
@date = order.created_at
|
||||
order.order_items.each do |item|
|
||||
@order_items.push(item)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
@booking = nil
|
||||
end
|
||||
render "origami/addorders/detail"
|
||||
end
|
||||
|
||||
def get_menu_category ()
|
||||
if (params[:id])
|
||||
puts params[:id]
|
||||
|
||||
@@ -1223,6 +1223,13 @@ end
|
||||
return query
|
||||
end
|
||||
|
||||
def self.pending_order
|
||||
query = Sale.all
|
||||
query = query.joins("join sale_orders as sale_orders on sale_orders.sale_id = sales.sale_id")
|
||||
.joins("join orders as orders on orders.order_id = sale_orders.order_id")
|
||||
query = query.where("sales.sale_status = 'new' AND orders.status = 'billed' AND orders.source =? ","quick_service")
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def generate_custom_id
|
||||
|
||||
@@ -66,17 +66,26 @@
|
||||
<i class="material-icons">reply</i>
|
||||
Back
|
||||
</button>
|
||||
<% if type %>
|
||||
<button type="button" class="btn btn-block btn-primary waves-effect" id='pending_order'>
|
||||
Pending Order
|
||||
</button>
|
||||
<% end%>
|
||||
<br>
|
||||
<div class="card-header" style="padding: 0.5rem 0.25rem">
|
||||
<% if type %>
|
||||
<div class="row clearfix">
|
||||
<div class="col-md-6 ">
|
||||
<div class="col-md-6 col-lg-6 col-sm-12">
|
||||
<strong id="order-title" class="font-14">ORDER DETAILS </strong>
|
||||
</div>
|
||||
<div class="col-md-3">Select</div>
|
||||
<div class="col-md-3 m-t--5">
|
||||
<a class="btn btn-block bg-blue waves-effect select_table" data-toggle="modal" data-target="#TableModal"> Select </a>
|
||||
<div class="col-md-2 col-lg-2 col-sm-6">Table</div>
|
||||
<div class="col-md-4 col-lg-4 col-sm-6 m-t--5">
|
||||
<a class="btn btn-block bg-blue waves-effect select_table" data-toggle="modal" data-target="#TableModal">Select</a>
|
||||
<input type="hidden" name="table_id" value="" id="table_id">
|
||||
<%if @booking_id %>
|
||||
<p class="hidden" id="booking_id"><%=@booking_id%></p>
|
||||
<p class="hidden" id="customer_id"><%=@customer ? @customer.customer_id : ''%></p>
|
||||
<%end%>
|
||||
</div>
|
||||
</div>
|
||||
<% else %>
|
||||
@@ -323,7 +332,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<% if type %>
|
||||
<div class="modal fade" id="TableModal" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
@@ -331,7 +341,7 @@
|
||||
<!-- <h4 class="modal-title" id="TableModalLabel">Select Table</h4> -->
|
||||
<button type="button" class="close" id="close" data-dismiss="modal" aria-hidden="true" style="font-size: 20px;">×</button>
|
||||
</div>
|
||||
<div class="modal-body" style="margin-top: -0.5rem;">
|
||||
<div class="modal-body" style="margin-top: -0.75rem;padding-top:5px">
|
||||
<h5>Table</h5>
|
||||
<div class="card-columns" style="column-count: 7;">
|
||||
<% @tables.each do |table| %>
|
||||
@@ -370,7 +380,7 @@
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<hr>
|
||||
<hr style="margin: 5px 20px">
|
||||
<h5>Room</h5>
|
||||
<div class="card-columns" style="column-count: 7;">
|
||||
<% @rooms.each do |table| %>
|
||||
@@ -418,8 +428,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<script>
|
||||
cashier_type = "cashier"
|
||||
$(document).ready(function () {
|
||||
$(".tables").on('click', function () {
|
||||
$('.tables').css('background-color','');
|
||||
@@ -439,5 +449,8 @@
|
||||
$('.select_table').text(name)
|
||||
|
||||
});
|
||||
$('#pending_order').on('click', function () {
|
||||
window.location.href = '/origami/quick_service/pending_order';
|
||||
});
|
||||
});
|
||||
</script>
|
||||
47
app/views/origami/pending_order/index.html.erb
Normal file
47
app/views/origami/pending_order/index.html.erb
Normal file
@@ -0,0 +1,47 @@
|
||||
<div class="container-fluid">
|
||||
<div class="row clearfix">
|
||||
<!-- Column One -->
|
||||
<div class="col-lg-10 col-md-10 col-sm-10">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<strong id="order-title"> PENDING ORDER </strong>
|
||||
</div>
|
||||
<div class="card-block">
|
||||
<div id="custom-slimscroll">
|
||||
<div class="card-columns">
|
||||
<% @sale.each do |sale| %>
|
||||
<div class="card sales bg-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>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Column Three -->
|
||||
<div class="col-lg-2 col-md-2 col-sm-2">
|
||||
<button type="button" class="btn btn-block btn-default waves-effect" id='back'>
|
||||
<i class="material-icons">reply</i>
|
||||
<%= t("views.btn.back") %>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
cashier_type = "quick_service"
|
||||
$(".sales").on('click',function(){
|
||||
var sale_id = $(this).attr("data-id");
|
||||
window.location.href = '/origami/quick_service/pending_order/' + sale_id;
|
||||
})
|
||||
$('#pay').on('click', function () {
|
||||
var sale_id = $('#sale_id').val();
|
||||
window.location.href = '/origami/sale/' + sale_id + "/quick_service/payment";
|
||||
});
|
||||
$('#back').on('click', function () {
|
||||
window.location.href = '/origami/quick_service';
|
||||
})
|
||||
</script>
|
||||
142
app/views/origami/pending_order/show.html.erb
Normal file
142
app/views/origami/pending_order/show.html.erb
Normal file
@@ -0,0 +1,142 @@
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<!-- Column One -->
|
||||
<div class="col-lg-6 col-md-6 col-sm-6">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<strong id="order-title"> PENDING ORDER </strong>
|
||||
</div>
|
||||
<div class="card-block">
|
||||
<div id="custom-slimscroll">
|
||||
<div class="card-columns">
|
||||
<% @sales.each do |sale| %>
|
||||
<div class="card sales bg-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>
|
||||
</div>
|
||||
</div>
|
||||
</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">INVOICE DETAILS </strong>| Table <%= @dining.name rescue "" %></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">
|
||||
Receipt No: <span id="receipt_no">
|
||||
<%= @sale.receipt_no rescue '' %>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-lg-6 col-md-6 col-sm-6 text-right">
|
||||
Date: <span id="receipt_date"><%= @sale.created_at.strftime("%d/%m/%Y - %I:%M %p") rescue '-'%> </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-title row customer_detail p-l-5 p-r-5">
|
||||
<div class="col-lg-6 col-md-6 col-sm-6">
|
||||
Customer : <%= @sale.customer.name rescue "-" %>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="order-detail-slimscroll" data-height="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
|
||||
@sale.sale_items.each do |sale_item|
|
||||
sub_total = sub_total + sale_item.price
|
||||
%>
|
||||
<input type="hidden" id="sale_id" value="<%= @sale.sale_id %>">
|
||||
<% #unless sale_item.price <= 0 %>
|
||||
<tr>
|
||||
<td class='item-name'><%= sale_item.product_name %></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>
|
||||
<%if @sale.discount_type == 'member_discount'%>
|
||||
<td class="charges-name"><strong>Member Discount:</strong></td>
|
||||
<%else%>
|
||||
<td class="charges-name"><strong>Discount:</strong></td>
|
||||
<%end%>
|
||||
<td class="item-attr"><strong id="order-discount">(<%= @sale.total_discount rescue 0%>)</strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="charges-name"><strong>Tax:</strong></td>
|
||||
<td class="item-attr"><strong id="order-Tax"><%= @sale.total_tax rescue 0%></strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="charges-name"><strong>Rounding Adj:</strong></td>
|
||||
<td class="item-attr"><strong id="order-round-adj"><%= @sale.rounding_adjustment rescue 0%></strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="charges-name"><strong>Grand Total:</strong></td>
|
||||
<td class="item-attr"><strong id="order-grand-total"><%= @sale.grand_total 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 btn-default btn-block" id='back'><i class="material-icons">reply</i>Back</button>
|
||||
<button type="button" id="addorder" class="btn bg-blue btn-block">Pay</button>
|
||||
<button type="button" id="pay" class="btn bg-blue btn-block">Pay</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
$(".sales").on('click',function(){
|
||||
var sale_id = $(this).attr("data-id");
|
||||
window.location.href = '/origami/quick_service/pending_order/' + sale_id;
|
||||
})
|
||||
$('#pay').on('click', function () {
|
||||
var sale_id = $('#sale_id').val();
|
||||
window.location.href = '/origami/sale/' + sale_id + "/quick_service/payment";
|
||||
});
|
||||
$('#back').on('click', function () {
|
||||
window.location.href = '/origami/quick_service';
|
||||
});
|
||||
$('#addorder').on('click', function () {
|
||||
var table_id = "<%=@table_id%>";
|
||||
window.location.href = '/origami/quick_service/modify_order/' + table_id;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -88,6 +88,10 @@ scope "(:locale)", locale: /en|mm/ do
|
||||
|
||||
get "quick_service" => "quick_service#index"
|
||||
|
||||
get "quick_service/pending_order" => "pending_order#index"
|
||||
get "quick_service/pending_order/:sale_id" => "pending_order#show"
|
||||
|
||||
get "quick_service/modify_order/:id" => "quick_service#modify_order"
|
||||
# post '/:quick_service/create' => "quick_service#create", :defaults => { :format => 'json' }
|
||||
|
||||
resources :cash_ins, only: [:new, :create]
|
||||
|
||||
Reference in New Issue
Block a user