update addorder available and max qty

This commit is contained in:
Aung Myo
2017-09-27 11:26:13 +06:30
parent dd9e8fe908
commit ddf466d3fe
6 changed files with 265 additions and 27 deletions

View File

@@ -10,6 +10,7 @@ $(function(){
//show menu item list when click menu category
function show_menu_item_list(url_item){
var menu_list = $('.menu_items_list');
menu_list.empty();
//Start Ajax
@@ -22,6 +23,7 @@ $(function(){
var menu_items_list = $('.menu_items_list');
menu_items_list.empty();
menu_items = data.menu_items;
console.log(url_item);
for(var field in menu_items) {
if (menu_items[field].is_sub_item == false) {
instances = menu_items[field].instances ;
@@ -110,6 +112,7 @@ $(function(){
for(var field in item_sets) {
value = item_sets[field]["instances"];
$(value).each(function(i){
console.log(value);
$.ajax({
type: "GET",
url: '../../api/restaurant/menu_item_instances/'+value[i]["id"],
@@ -121,6 +124,8 @@ $(function(){
+"' data-code='"+result["code"]
+"' data-price='"+result["price"]
+"' data-option='"+JSON.stringify(result["options"])
+"' data-min-qty='"+item_sets[field]["min_selectable_qty"]
+"' data-max-qty='"+item_sets[field]["max_selectable_qty"]
+"'>"
+'<div class="custom-card-head card-head" style="line-height:14px;">'
+'<small class="">'+result["name"]+'</small>'
@@ -157,6 +162,8 @@ $(function(){
$(".options-list").empty();
item_options = $(this).data('option');
min_qty = $(this).data('min-qty');
max_qty = $(this).data('max-qty');
code = $(this).data('code');
for(var field in item_options) {
@@ -171,31 +178,35 @@ $(function(){
$(".options-list").append(row);
}
if($(this).hasClass('selected-instance') == true){
sub_total = $('#set_total_price').text();
name = $(this).data('name');
price = $(this).data('price');
// qty = $('#set_change_qty').val();
qty = document.getElementById("set_count").value;
total = qty*price;
var total_price = +sub_total - +total;
$(this).removeClass('selected-instance');
$(".options-list").empty();
$(this).removeAttr('data-options');
$('#instance_option').text('')
}else {
console.log($('.selected-instance').length)
sub_total = $('#set_total_price').text();
name = $(this).data('name');
price = $(this).data('price');
// qty = $('#set_change_qty').val();
qty = document.getElementById("set_count").value;
total = qty*price;
var total_price = +sub_total + +total;
$(this).addClass('selected-instance');
}
$('#set_unit_price').text(price);
$('#set_total_price').text(total_price);
if($(this).hasClass('selected-instance') == true){
sub_total = $('#set_total_price').text();
name = $(this).data('name');
price = $(this).data('price');
// qty = $('#set_change_qty').val();
qty = document.getElementById("set_count").value;
total = qty*price;
var total_price = +sub_total - +total;
$(this).removeClass('selected-instance');
$(".options-list").empty();
$(this).removeAttr('data-options');
$('#instance_option').text('')
}else {
if ($('.selected-instance').length+1 <= max_qty) {
sub_total = $('#set_total_price').text();
name = $(this).data('name');
price = $(this).data('price');
// qty = $('#set_change_qty').val();
qty = document.getElementById("set_count").value;
total = qty*price;
var total_price = +sub_total + +total;
$(this).addClass('selected-instance');
}
}
$('#set_unit_price').text(price);
$('#set_total_price').text(total_price);
}); //End selecct attribute buttom
// click add order

View File

@@ -0,0 +1,223 @@
/*!
* Start Bootstrap - Simple Sidebar (http://startbootstrap.com/template-overviews/simple-sidebar)
* Copyright 2013-2017 Start Bootstrap
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-simple-sidebar/blob/master/LICENSE)
*/
/**/
#wrapper {
padding-left: 0;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}
#wrapper.toggled {
padding-left: 200px;
}
#sidebar-wrapper {
/* z-index: 1000;*/
/*position: fixed;*/
z-index: 1;
position: ;
left: 200px;
width: 0;
height: 100%;
margin-left: -224px;
margin-top:-20px;
overflow-x: ;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}
#wrapper.toggled #sidebar-wrapper {
width: 216px;
}
#page-content-wrapper {
width: 100%;
position: absolute;
padding: 0px;
}
#wrapper.toggled #page-content-wrapper {
position: absolute;
margin-right: -200px;
}
/* Sidebar Styles */
.sidebar-nav {
position: absolute;
background: #222d32;
top: 0;
width: 200px;
margin: 0;
padding: 0;
list-style: none;
}
.sidebar-nav li {
text-indent: 20px;
line-height: 40px;
}
.sidebar-nav>li.header {
color: #4b646f;
background-color: #1a2226;
line-height: 35px !important;
}
.main-nav {
/* background-color: #161926 !important;*/
}
/*.main-nav a {
color: #fff !important;
}
*/
.sidebar-nav li a {
display: block;
text-decoration: none;
color: #999999;
}
.sidebar-nav li a:hover {
text-decoration: none;
color: #fff;
background: rgba(255, 255, 255, 0.2);
}
.sidebar-nav li a:active,
.sidebar-nav li a:focus {
text-decoration: none;
}
.sidebar-nav > .sidebar-brand {
height: 65px;
font-size: 18px;
line-height: 60px;
}
.sidebar-nav > .sidebar-brand a {
color: #999999;
}
.sidebar-nav > .sidebar-brand a:hover {
color: #fff;
background: none;
}
@media(min-width:768px) {
#wrapper {
padding-left: 0;
}
#wrapper.toggled {
padding-left: 210px;
}
#sidebar-wrapper {
width: 0;
}
#wrapper.toggled #sidebar-wrapper {
width: 216px;
}
#page-content-wrapper {
padding: 0px;
position: relative;
}
#wrapper.toggled #page-content-wrapper {
position: relative;
margin-right: 0;
}
}
.accordion {
width: 200px;
list-style: none;
font-size: 14px;
color: #999999 ;
padding: 0px !important;
margin: 0px !important;
}
.accordion .link {
cursor: pointer;
display: block;
/* padding: 15px 15px 15px 42px;
color: #4D4D4D;*/
/* font-size: 14px;
font-weight: 700;*/
/*border-bottom: 1px solid #CCC;*/
position: relative;
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
}
/*.accordion li:last-child .link { border-bottom: 0; }*/
.accordion li i {
position: absolute;
top: 13px;
left: 12px;
font-size: 16px;
color: #999999;
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
}
.accordion li i.fa-chevron-down {
right: 12px;
left: auto;
font-size: 16px;
}
.accordion li .link:hover {
background: rgba(255, 255, 255, 0.2);
color: #FFF;
}
.accordion li.open .link { color: #fff; }
.accordion li.open .link > .submenu { display: block;overflow: hidden;}
.accordion li.open i { color: #fff; }
.accordion li.open i.fa-chevron-down {
-webkit-transform: rotateX(180deg);
-ms-transform: rotateX(180deg);
-o-transform: rotateX(180deg);
transform: rotateX(180deg);
}
.submenu {
display: none;
list-style: none;
margin-left: ;
background: #161926;
font-size: 14px;
}
.submenu li {
margin-left: -38px;
}
.submenu a {
display: block;
text-decoration: none;
color: #d9d9d9;
padding-left:20px;
-webkit-transition: all 0.25s ease;
-o-transition: all 0.25s ease;
transition: all 0.25s ease;
}
.submenu a:hover {
background: #b63b4d;
color: #FFF;
}

View File

@@ -9,7 +9,7 @@ class Origami::AddordersController < BaseOrigamiController
end
def detail
@menu = MenuCategory.all
@menu = MenuCategory.all.active
@table_id = params[:id]
@table = DiningFacility.find(@table_id)
@booking = @table.get_booking

View File

@@ -9,6 +9,7 @@ class MenuCategory < ApplicationRecord
validates_presence_of :name, :menu, :order_by
default_scope { order('order_by asc') }
scope :active, -> {where("is_available = 1")}
def self.destroyCategory(menu_category)
# find the sub menu item of current item

View File

@@ -197,7 +197,7 @@
<p class="hidden" id="set_item_instances"></p>
<p class="hidden" id="set_item_code"></p>
<p></p>
<br><br><br><br>
<div class="options-list">
</div>

View File

@@ -1,5 +1,8 @@
if @menu.menu_items
json.menu_items @menu.menu_items do |item|
json.partial! 'origami/addorders/menu_item', item: item
if item.is_available
json.partial! 'origami/addorders/menu_item', item: item
end
end
end