update booking with cancel and assign
This commit is contained in:
@@ -11,13 +11,17 @@ class Api::BookingsController < Api::ApiController
|
|||||||
end
|
end
|
||||||
|
|
||||||
def update_booking
|
def update_booking
|
||||||
|
booking = Booking.find(params[:booking_id])
|
||||||
|
status = booking.update_attributes(booking_status: params[:type])
|
||||||
|
|
||||||
|
if status
|
||||||
|
render json: JSON.generate({:status => true ,:type => params[:type]})
|
||||||
|
|
||||||
|
else
|
||||||
|
render json: JSON.generate({:status => false, :error_message => "Record not found"})
|
||||||
|
|
||||||
booking = Booking.find_by(id: params[:booking])
|
end
|
||||||
booking.update_all(booking_status: 'Dave')
|
end
|
||||||
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
# private
|
# private
|
||||||
# def Bookings_params
|
# def Bookings_params
|
||||||
|
|||||||
@@ -3,30 +3,32 @@
|
|||||||
|
|
||||||
<% @i = 0 %>
|
<% @i = 0 %>
|
||||||
<% @booking.each do |booking| %>
|
<% @booking.each do |booking| %>
|
||||||
<div class="card booking_click" data-ref="<%= api_booking_path booking.id%>" id="booking_block">
|
<% if booking.booking_status == "new" %>
|
||||||
<div class="card-block" id="card-block" style="width:100%;">
|
<div class="card booking_click" data-ref="<%= api_booking_path booking.id%>" id="booking_block">
|
||||||
<h4 class="card-title">
|
<div class="card-block" id="card-block" style="width:100%;">
|
||||||
<%= @i += 1 %> . <%= booking.dining_facility.name %>
|
<h4 class="card-title">
|
||||||
- <%= booking.id %>
|
<%= @i += 1 %> . <%= booking.dining_facility.name %>
|
||||||
</h4>
|
- <%= booking.id %>
|
||||||
<!-- <p class="card-text">Medium, Fries, Salad</p> -->
|
</h4>
|
||||||
<p class="card-text">
|
<!-- <p class="card-text">Medium, Fries, Salad</p> -->
|
||||||
<small class="text-muted">
|
<p class="card-text">
|
||||||
Order at <%= booking.checkin_at.strftime("%H,%m") %>, <%= booking.checkin_by %>
|
<small class="text-muted">
|
||||||
</small>
|
Order at <%= booking.checkin_at.strftime("%H,%m") %>, <%= booking.checkin_by %>
|
||||||
</p>
|
</small>
|
||||||
</div>
|
</p>
|
||||||
<div class="card-footer">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<button id="#id" class="btn btn-primary btn-sm btn-block">ASSIGN</button>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<button id="cancel" data-ref="<%= booking.id%>" class="btn btn-danger cancel btn-sm btn-block">CANCLE</button>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="card-footer">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<button id="assign" data-ref="<%= booking.id%>" data-type="complete" class="btn assign btn-primary btn-sm btn-block">ASSIGN</button>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<button id="cancel" data-ref="<%= booking.id%>" data-type="cancel" class="btn btn-danger cancel btn-sm btn-block">CANCLE</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<!--- end of Items-->
|
<!--- end of Items-->
|
||||||
</div>
|
</div>
|
||||||
@@ -39,73 +41,69 @@ $(function(){
|
|||||||
show_details(url);
|
show_details(url);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('.assign').click(function(e){
|
||||||
|
var booking_id = $('#assign').attr('data-ref');
|
||||||
|
var type = $('#assign').attr('data-type');
|
||||||
|
update_booking(booking_id,type)
|
||||||
|
});
|
||||||
|
|
||||||
$('.cancel').click(function(e){
|
$('.cancel').click(function(e){
|
||||||
var booking = $('#cancel').attr('data-booking-id');
|
var booking_id = $('#cancel').attr('data-ref');
|
||||||
|
var type = $('#cancel').attr('data-type');
|
||||||
$.ajax({
|
update_booking(booking_id,type)
|
||||||
type: "GET",
|
|
||||||
url: "api/update_booking",
|
|
||||||
data: {},
|
|
||||||
dataType: "json",
|
|
||||||
success: function(data) {
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
/*$.getJSON(update_booking_url,{booking: booking, type: "cancel"}, function(data) {
|
|
||||||
if(data.status == 'ok'){
|
|
||||||
|
|
||||||
|
|
||||||
showMessage('Order set has delivered!');
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
if(data.status == false){
|
|
||||||
clear_storage();
|
|
||||||
window.location.href = data.url;
|
|
||||||
}
|
|
||||||
showMessage('Order record not found');
|
|
||||||
}
|
|
||||||
});*/
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function show_details(url_item){
|
function show_details(url_item){
|
||||||
|
$.ajax({
|
||||||
$.ajax({
|
|
||||||
type: "GET",
|
type: "GET",
|
||||||
url: url_item,
|
url: url_item,
|
||||||
data: {},
|
data: {},
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
item_data = data.order_items;
|
item_data = data.order_items;
|
||||||
//console.log(item_data.length);
|
//console.log(item_data.length);
|
||||||
|
|
||||||
$("#table").text(data.table_name)
|
$("#table").text(data.table_name)
|
||||||
$("#order_at").text(data.checkin_at)
|
$("#order_at").text(data.checkin_at)
|
||||||
$("#order_by").text(data.checkin_by)
|
$("#order_by").text(data.checkin_by)
|
||||||
|
|
||||||
for(var field in item_data) {
|
for(var field in item_data) {
|
||||||
if (item_data[field].item_name){
|
if (item_data[field].item_name){
|
||||||
var price = parseFloat(item_data[field].price).toFixed(2);
|
var price = parseFloat(item_data[field].price).toFixed(2);
|
||||||
|
|
||||||
row = "<tr>"
|
row = "<tr>"
|
||||||
+'<td style="width:33%; text-align:left">' + item_data[field].item_name +'</td>'
|
+'<td style="width:33%; text-align:left">' + item_data[field].item_name +'</td>'
|
||||||
+'<td style="width:33%; text-align:center">' + item_data[field].qty + '</td>'
|
+'<td style="width:33%; text-align:center">' + item_data[field].qty + '</td>'
|
||||||
+'<td style="width:33%; text-align:right">' + price + '</td>'
|
+'<td style="width:33%; text-align:right">' + price + '</td>'
|
||||||
+'</tr>';
|
+'</tr>';
|
||||||
}
|
}
|
||||||
$(".summary-items tbody").append(row);
|
$(".summary-items tbody").append(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}
|
||||||
}
|
|
||||||
|
function update_booking(booking_id,type) {
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "api/update_booking/" ,
|
||||||
|
data: {booking_id:booking_id,type:type},
|
||||||
|
dataType: "json",
|
||||||
|
success: function(data) {
|
||||||
|
if(data.status == true && data.type == "cancel")
|
||||||
|
{
|
||||||
|
alert('Booking has canceled!');
|
||||||
|
}else{
|
||||||
|
alert('Booking has completed!');
|
||||||
|
}
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@@ -1,29 +1,47 @@
|
|||||||
<div class="card-columns" style="padding-top:10px">
|
<div class="card-columns" style="padding-top:10px">
|
||||||
<div class="card">
|
|
||||||
<div class="card-block order-completed">
|
<% @i = 0 %>
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
<% @booking.each do |booking| %>
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
<% if booking.booking_status == "complete" %>
|
||||||
<p class="card-text">
|
<div class="card booking_click" data-ref="<%= api_booking_path booking.id%>" id="booking_block">
|
||||||
<small class="text-muted">Order at 12:23, Kyaw Lwin</small> |
|
<div class="card-block" id="card-block" style="width:100%;">
|
||||||
<small class="text-muted">Printed at 12:23</small> |
|
<h4 class="card-title">
|
||||||
<small class="text-muted">Completed at 12:43</small>
|
<%= @i += 1 %> . <%= booking.dining_facility.name %>
|
||||||
</p>
|
- <%= booking.id %>
|
||||||
|
</h4>
|
||||||
|
<!-- <p class="card-text">Medium, Fries, Salad</p> -->
|
||||||
|
<p class="card-text">
|
||||||
|
<small class="text-muted">
|
||||||
|
Order at <%= booking.checkin_at.strftime("%H,%m") %>, <%= booking.checkin_by %>
|
||||||
|
</small>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="card-footer">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<button id="assign" data-ref="<%= booking.id%>" data-type="complete" class="btn assign btn-primary btn-sm btn-block">ASSIGN</button>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<button id="cancel" data-ref="<%= booking.id%>" data-type="cancel" class="btn btn-danger cancel btn-sm btn-block">CANCLE</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-block order-completed">
|
||||||
|
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
||||||
|
<p class="card-text">Well Done, Fries, Salad</p>
|
||||||
|
<p class="card-text">
|
||||||
|
<small class="text-muted">Order at 12:23, Kyaw Lwin</small> |
|
||||||
|
<small class="text-muted">Printed at 12:23</small> |
|
||||||
|
<small class="text-muted">Completed at 12:43</small>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block order-void">
|
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@@ -5,10 +5,10 @@
|
|||||||
<!-- Nav tabs -->
|
<!-- Nav tabs -->
|
||||||
<ul class="nav nav-tabs" role="tablist">
|
<ul class="nav nav-tabs" role="tablist">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" data-toggle="tab" href="#completed" role="tab">Queue <span class="badge badge-pill badge-default">2000</span></a>
|
<a class="nav-link" data-toggle="tab" href="#completed" role="tab">Queue <span class="badge badge-pill badge-default"><%= @booking.where("booking_status=?","complete").count %></span></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link active" data-toggle="tab" href="#tables" role="tab">Bookings <span class="badge badge-pill badge-default"><%= @booking.count %></span></a>
|
<a class="nav-link active" data-toggle="tab" href="#tables" role="tab">Bookings <span class="badge badge-pill badge-default"><%= @booking.where("booking_status=?","new").count %></span></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" data-toggle="tab" href="#rooms" role="tab">Customers</a>
|
<a class="nav-link" data-toggle="tab" href="#rooms" role="tab">Customers</a>
|
||||||
@@ -37,9 +37,6 @@
|
|||||||
<!-- Panel 3 - Orders -->
|
<!-- Panel 3 - Orders -->
|
||||||
<!-- Panel 3 - Orders - End -->
|
<!-- Panel 3 - Orders - End -->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<!-- Column Two -->
|
<!-- Column Two -->
|
||||||
<div class="col-lg-5 col-md-5 col-sm-5">
|
<div class="col-lg-5 col-md-5 col-sm-5">
|
||||||
@@ -67,10 +64,7 @@
|
|||||||
<tr id="">
|
<tr id="">
|
||||||
<td><strong>Table/Room</strong></td>
|
<td><strong>Table/Room</strong></td>
|
||||||
<td colspan="2" style="text-align:left" id="table"></td>
|
<td colspan="2" style="text-align:left" id="table"></td>
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<table class="table">
|
<table class="table">
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ Rails.application.routes.draw do
|
|||||||
resources :bookings, only: [:index, :show, :create, :update]
|
resources :bookings, only: [:index, :show, :create, :update]
|
||||||
resources :customers, only: [:index, :show, :create, :update]
|
resources :customers, only: [:index, :show, :create, :update]
|
||||||
|
|
||||||
get "update_booking" , to: "bookings#update_booking", as: "update_booking"
|
post "update_booking" , to: "bookings#update_booking", as: "update_booking"
|
||||||
|
|
||||||
#Generating Invoice and making payments - output render @sale
|
#Generating Invoice and making payments - output render @sale
|
||||||
resources :invoices, only: [:index, :show, :create, :update, :destroy ] do
|
resources :invoices, only: [:index, :show, :create, :update, :destroy ] do
|
||||||
|
|||||||
Reference in New Issue
Block a user