update queue

This commit is contained in:
Aung Myo
2017-06-29 14:33:05 +06:30
parent 524edfc3b0
commit f60c145c00
4 changed files with 84 additions and 17 deletions

View File

@@ -13,7 +13,7 @@
.selected-item { .selected-item {
color: #fff !important; color: #fff !important;
background-color: #54A5AF !important; background-color: #7a62d3 !important;
} }
.assign { .assign {
@@ -23,6 +23,14 @@
.assign .text-muted{ .assign .text-muted{
color: #fff !important; color: #fff !important;
} }
.normal{
color: #fff !important;
background-color: #54A5AF;
}
.cancel {
color: #fff !important;
background-color: #FF0000;
}
.red{ .red{
color: #fff !important; color: #fff !important;
background-color: red; background-color: red;
@@ -39,9 +47,9 @@
} }
.card-columns { .card-columns {
@include media-breakpoint-only(lg) { @include media-breakpoint-only(lg) {
column-count: 6; column-count: 5;
} }
@include media-breakpoint-only(xl) { @include media-breakpoint-only(xl) {
column-count: 6; column-count: 5;
} }
} }

View File

@@ -96,6 +96,17 @@ class Crm::DiningQueuesController < BaseCrmController
end end
end end
def cancel_queue
queue = DiningQueue.find(params[:id])
status = queue.update_attributes(id: params[:id],status:"Cancel")
if status == true
render json: JSON.generate({:status => true , notice: 'Dining queue was successfully canceled .'})
else
render json: JSON.generate({:status => false, :error_message => "Record not found"})
end
end
private private
# Use callbacks to share common setup or constraints between actions. # Use callbacks to share common setup or constraints between actions.

View File

@@ -18,19 +18,25 @@
<div class="active" role="tabpanel"> <div class="active" role="tabpanel">
<div class="tab-pane" role="tabpanel"> <div class="tab-pane" role="tabpanel">
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;"> <div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
<% @i =0 %>
<% @dining_queues.each do |queue| %> <% @dining_queues.each do |queue| %>
<div class="card select-queue <%= !queue.status.nil? ? "assign" : ""%>" data-id="<%= queue.id %>" style="width: 17.5rem;"> <% if queue.status == "Assign"
@bg_color = "assign"
elsif queue.status == "Cancel"
@bg_color = "cancel"
else
@bg_color = "normal"
end
%>
<div class="card select-queue <%= @bg_color %>" data-id="<%= queue.id %>" style="width: 21.5rem;">
<div class="card-block"> <div class="card-block">
<p class="hidden queue-id"><%= queue.id %></p> <p class="hidden queue-id"><%= queue.id %></p>
<p class="hidden queue-status"><%= queue.status %></p> <p class="hidden queue-status"><%= queue.status %></p>
<span class="card-title"> <span class="card-title"><strong> Queue No : <%= queue.queue_no %></strong></span>
<%= @i += 1 %> . Queue No </span> <span class="card-title pull-right"><strong> Seater : <%= queue.seater %></strong></span><br>
<span class="card-title pull-right">Seater : <%= queue.seater %> </span> <span class="card-title"> Name : <%= queue.name %></span><br>
<p style="font-size: 30px ;text-align: center;"> <span class="card-title"> Contact No : <%= queue.contact_no %></span>
<strong><%= queue.queue_no %></strong> <span class="card-title"> Remark : <%= queue.remark %></span>
</p>
</div> </div>
</div> </div>
@@ -43,7 +49,7 @@
</div> </div>
<div class="col-lg-1 col-md-1 col-sm-1"> <div class="col-lg-1 col-md-1 col-sm-1">
<button type="button" id="assign" class="btn btn-primary btn-lg btn-block" disabled>Assign</button> <button type="button" id="assign" class="btn btn-primary btn-lg btn-block" disabled>Assign</button>
<button type="button" id="cancel" class="btn btn-warning btn-lg btn-block" disabled>Cancel</button>
</div> </div>
</div> </div>
<script type="text/javascript"> <script type="text/javascript">
@@ -53,20 +59,61 @@ $(function(){
$('.select-queue').removeClass('selected-item'); $('.select-queue').removeClass('selected-item');
$(this).addClass('selected-item'); $(this).addClass('selected-item');
var status = $(this).find(".queue-status").text(); var status = $(this).find(".queue-status").text();
if(status != "Assign"){ if(status != "Assign" && status != "Cancel"){
$("#assign").removeAttr("disabled"); $("#assign").removeAttr("disabled");
$("#cancel").removeAttr("disabled");
}else{ }else{
$("#assign").attr("disabled","disabled"); $("#assign").attr("disabled","disabled");
$("#cancel").attr("disabled","disabled");
} }
$("#assign").val($(this).find(".queue-id").text()); $("#assign").val($(this).find(".queue-id").text());
$("#cancel").val($(this).find(".queue-id").text());
}); //End Click }); //End Click
}); });
$('#assign').click(function() { $('#assign').click(function() {
var id = $(this).val(); var id = $(this).val();
window.location.href = "dining_queues/"+id + "/assign" window.location.href = "dining_queues/"+id + "/assign"
});
}); $('#cancel').click(function() {
var id = $(this).val();
url = '<%= crm_cancel_queue_path %>';
cancel_queue(id,url);
});
function cancel_queue(id,url) {
$.confirm({
title: 'Confirm!',
content: 'Are You Sure to cancel this Queue!',
buttons: {
cancel: function () {
},
confirm: {
text: 'Confirm',
btnClass: 'btn-green',
keys: ['enter', 'shift'],
action: function(){
$.ajax({
type: "POST",
url: url ,
data: {id:id},
dataType: "json",
success: function(data) {
if(data.status == true)
{
location.reload();
}
}
});
}
}
}
});
}
</script> </script>

View File

@@ -150,6 +150,7 @@ Rails.application.routes.draw do
get "/dining_queues/:id/assign" =>"dining_queues#assign", :as => "assign" get "/dining_queues/:id/assign" =>"dining_queues#assign", :as => "assign"
post "/dining_queues/assign_table" =>"dining_queues#assign_table", :as => "assign_table" post "/dining_queues/assign_table" =>"dining_queues#assign_table", :as => "assign_table"
post "/dining_queues/cancel_queue" =>"dining_queues#cancel_queue", :as => "cancel_queue"
end end