diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 344e663b..8b9c4e01 100755 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -1373,7 +1373,7 @@ $(function() { if (JSON.stringify(menu_items[field].item_sets)!='[]') { fa_plus = ''; add = ''; - menu_item_box = 'add_icon'; + menu_item_box = 'set_add_icon'; data_target = 'sx_item_set_detailModal'; data_modal = 'modal' add_icon = "set_item_box" diff --git a/app/assets/stylesheets/addorder.scss b/app/assets/stylesheets/addorder.scss index ba1089d2..d9b62131 100755 --- a/app/assets/stylesheets/addorder.scss +++ b/app/assets/stylesheets/addorder.scss @@ -270,4 +270,8 @@ i.logout_icon{ .border-left{ border-left:1px solid #fff; +} + +.set_add_icon{ + display:none; } \ No newline at end of file diff --git a/app/controllers/origami/addorders_controller.rb b/app/controllers/origami/addorders_controller.rb index b7c9b1b6..63cb8736 100755 --- a/app/controllers/origami/addorders_controller.rb +++ b/app/controllers/origami/addorders_controller.rb @@ -67,6 +67,8 @@ class Origami::AddordersController < BaseOrigamiController end def get_menu() + puts "sssssssssssssss" +puts params[:id] if (params[:id]) #Pull this menu @menu = Menu.find_by_id(params[:id]) diff --git a/app/models/menu.rb b/app/models/menu.rb index 60200aeb..a9b88a85 100755 --- a/app/models/menu.rb +++ b/app/models/menu.rb @@ -155,24 +155,28 @@ class Menu < ApplicationRecord # Menu Item Attributes item_attrs = [] - attributes = row["Attributes"].split(',') - attributes.each do |attr| - attribute = MenuItemAttribute.find_by_name(attr) - if attribute.nil? - attribute = MenuItemAttribute.create({ attribute_type:"any", name: attr.capitalize, value: attr.downcase }) + if !row["Attributes"].nil? + attributes = row["Attributes"].split(',') + attributes.each do |attr| + attribute = MenuItemAttribute.find_by_name(attr) + if attribute.nil? + attribute = MenuItemAttribute.create({ attribute_type:"any", name: attr.capitalize, value: attr.downcase }) + end + item_attrs.push(attribute.id) end - item_attrs.push(attribute.id) end # Menu Item Options item_opts = [] + if !row["Options"].nil? options = row["Options"].split(',') - options.each do |opt| - option = MenuItemOption.find_by_name(opt) - if option.nil? - option = MenuItemOption.create({ option_type:"any", name: opt.capitalize, value: opt.downcase }) + options.each do |opt| + option = MenuItemOption.find_by_name(opt) + if option.nil? + option = MenuItemOption.create({ option_type:"any", name: opt.capitalize, value: opt.downcase }) + end + item_opts.push(option.id) end - item_opts.push(option.id) end menu_itm = MenuItem.find_by_item_code(row["Item Code"]) @@ -189,7 +193,11 @@ class Menu < ApplicationRecord menu_inst = MenuItemInstance.find_by_item_instance_code(row["Instance Code"]) if !menu_inst - imported_instance = MenuItemInstance.create(menu_item_id: menu_itm.id, item_instance_code: row["Instance Code"], item_instance_name: row["Instance Name"], item_attributes: [], price: row["Price"], is_on_promotion: false, promotion_price: 0, is_available: true, is_default: row["Is Default"]) + instance_name = '' + if !row["Instance Name"].nil? + instance_name = row["Instance Name"] + end + imported_instance = MenuItemInstance.create(menu_item_id: menu_itm.id, item_instance_code: row["Instance Code"], item_instance_name: instance_name, item_attributes: [], price: row["Price"], is_on_promotion: false, promotion_price: 0, is_available: true, is_default: row["Is Default"]) # else # status = status + "Instance Code already exists for " + row["Instance Name"] + "." end diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index 62bbf3a4..65ea665b 100644 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -17,7 +17,7 @@ <%if @menu.present? %> - <%=menu[0].name%> + <%=@menus[0].name%> <% end%> @@ -650,11 +650,58 @@ $(document).on('click', '.menu_click', function(event){ var menu_id = $(this).attr("data-id"); var name = $(this).attr("data-name"); - var url = "get_menu/"+menu_id; - show_menu_cat_list(name, url); + var menus = JSON.parse(localStorage.getItem("menus")); + if (menus != null) { + menu_click_cache_append(name,menus,menu_id); + }else{ + var url = "get_menu/"+menu_id; + show_menu_cat_list(name, url); + } }); //End menu category Click + function menu_click_cache_append(name,menus,menu_id) { + var menu_list = $('.menu_items_list'); + menu_list.empty(); + + var menu_cat = $('.category_list'); + menu_cat.empty(); + + $(".main_menu").text(name); + for(var i in menus) { + console.log(menus) + console.log(menus[i]["id"]); + console.log(menus[i]["is_active"]); + console.log(menu_id); + if (menu_id == menus[i]["id"] && menus[i]["is_active"] == true) { + // menu_list_template(menus[i]); + var category = menus[i]["categories"]; + + for(var ii in category) { + if (category[ii]["is_available"]== true){ + if (category[ii]["valid_time"]== true){ + if (category[ii]["parent_id"] == null ){ + if(type){ + if (category[ii]["code"].includes("SPL") != true) { + category_list_template(category[ii]); + } + }else{ + if ($("#table_get_current").text()) { + if (category[ii]["code"].includes("SPL") != true) { + category_list_template(category[ii]); + }else { + category_list_template(category[ii]); + } + } + } + } + } + } + } + } + } + } + //show menu item list when click menu category function show_menu_cat_list(name, url_item){ var menu_list = $('.menu_items_list'); @@ -663,15 +710,18 @@ var menu_cat = $('.category_list'); menu_cat.empty(); - $(".main_menu").text(name) - if (modify_order=="true" && type =="true") { + $(".main_menu").text(name); + cashier_type = window.location.href.indexOf("quick_service"); + modify_order = window.location.href.indexOf("modify_order"); + if (cashier_type != -1 && modify_order != -1) { url_item = '../../../addorders/'+url_item; - }if(modify_order=="false" && type =="true"){ - url_item = 'addorders/'+url_item - }else{ - url_item = url_item; } - + if(modify_order == -1 && cashier_type != -1){ + url_item = 'addorders/'+url_item + } + if (cashier_type ==-1 && modify_order == -1){ + url_item = url_item; + } //Start Ajax $.ajax({ type: "GET", @@ -679,10 +729,8 @@ data: {}, dataType: "json", success: function(data) { - for(var i in data) { if (data[i].is_available == true) { - row = '