From 2e48c1529ee7c9048a312ea8e1cbf209ef4a2475 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Tue, 29 Aug 2017 17:58:34 +0630 Subject: [PATCH] update addorder --- app/assets/javascripts/addorder.js | 181 +++++++++++++----- app/assets/stylesheets/addorder.scss | 22 ++- .../menu_item_instances_controller.rb | 6 + app/views/origami/addorders/detail.html.erb | 57 +++++- .../get_instance.json.jbuilder | 13 ++ config/routes.rb | 1 + 6 files changed, 220 insertions(+), 60 deletions(-) create mode 100644 app/views/settings/menu_item_instances/get_instance.json.jbuilder diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index b9219c52..54b1c7b6 100644 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -30,61 +30,132 @@ $(function(){ menu_items = data.menu_items; for(var field in menu_items) { - instances = menu_items[field].instances ; - $(instances).each(function(i){ - if (instances[i].is_default === true) { - code = instances[i].code; - name = instances[i].name; - price = parseFloat(instances[i].price).toFixed(2); - is_available = instances[i].is_available ; - is_on_promotion = instances[i].is_on_promotion; - item_attributes = instances[i].values; - promotion_price = instances[i].promotion_price; - code = instances[i].code; - } - }); + if (menu_items[field].is_sub_item == false) { + instances = menu_items[field].instances ; + $(instances).each(function(i){ + if (instances[i].is_default === true) { + code = instances[i].code; + name = instances[i].name; + price = parseFloat(instances[i].price).toFixed(2); + is_available = instances[i].is_available ; + is_on_promotion = instances[i].is_on_promotion; + item_attributes = instances[i].values; + promotion_price = instances[i].promotion_price; + code = instances[i].code; + } + }); + + qty = 1; + options = []; - qty = 1; - options = []; + if (JSON.stringify(menu_items[field].item_sets)!='[]') { + fa_plus = ''; + menu_item_box = 'set_item_box'; + data_target = 'sx_item_set_detailModal'; + }else{ + fa_plus = 'fa-plus'; + menu_item_box = 'menu_item_box'; + data_target = 'sx_item_detailModal' + } - row = '
' - +'
' - +''+ menu_items[field].name +'' - +"
" - +'' - +'
' - +'
' + row = '
' + +'
' + +''+ menu_items[field].name +'' + +"
" + +"' + +'
' + +'
' - +"'; + $('.menu_items_list').append(row); + } } } }); //end Ajax } //end show list function + //click item row for add order + $(document).on('click', '.set_item_box', function(event){ + $(".instance-list").empty(); + data = $(this).parent().children().children('.add_icon'); + item_options = $(this).data('option'); + for(var field in item_options) { + value = item_options[field]["values"]; + type = item_options[field]["type"]; + row = "

"+type+"

" + $(value).each(function(i){ + row +=""; + }); + $(".opt-list").append(row); + } + + instances = $(this).data('instance'); + item_sets = $(this).data('item-sets'); + + for(var field in item_sets) { + value = item_sets[field]["instances"]; + $(value).each(function(i){ + $.ajax({ + type: "GET", + url: '../../settings/menu_item_instances/get_instance/'+value[i]["id"], + data: {id:value[i]}, + success:function(result){ + // var image_path = "" + console.log(result) + row = '
' + +'
' + +'
' + +''+result["name"]+'' + +'
' + +'
' + +'' + +'
' + +'' + +'
' + +'
' + + $(".instance-list").append(row); + } + }); + }); + + } + + $('#change_qty').val(1); + $('#item_instances').text(instances); + $('#title_name').text(data.attr('data-name')); + $('#item_code').text(data.attr('data-item-code')); + $('#total_price').text(data.attr('data-price')); + $('#unit_price').text(data.attr('data-price')); + }); //click item row for add order $(document).on('click', '.menu_item_box', function(event){ $('.attributes-list').empty(); @@ -162,10 +233,19 @@ $(function(){ value = $(this).data('value'); type = $(this).data('type'); instances = $(this).data('instances'); - if ($(".attribute_btn").attr("data-type")==type){ - $('.'+type).removeClass("selected-attribute"); - } + + attributes = $(".attribute_btn"); + $(attributes).each(function(i){ + if ($(attributes[i]).attr('data-type')==type){ + $('.'+type).removeClass("selected-attribute"); + } + }); $(this).addClass('selected-attribute'); + + // if ($(".attribute_btn").attr("data-type")==type){ + // $('.'+type).removeClass("selected-attribute"); + // } + // $(this).addClass('selected-attribute'); var selected_attr = get_selected_attributes('selected-attribute'); @@ -191,9 +271,12 @@ $(function(){ $(document).on('click', '.option_btn', function(event){ value = $(this).data('value'); type = $(this).data('type'); - if ($(".option_btn").attr("data-type")==type){ - $('.'+type).removeClass("selected-option"); - } + options = $(".option_btn"); + $(options).each(function(i){ + if ($(options[i]).attr('data-type')==type){ + $('.'+type).removeClass("selected-option"); + } + }); $(this).addClass('selected-option'); }); //End selecct attribute buttom @@ -228,7 +311,7 @@ $(function(){ calculate_sub_total(); }); //End Add Icon Click - + // click plus icon for add $(document).on('click', '.add_icon', function(event){ var item_data = $(this); diff --git a/app/assets/stylesheets/addorder.scss b/app/assets/stylesheets/addorder.scss index 01e01e15..29ca7156 100644 --- a/app/assets/stylesheets/addorder.scss +++ b/app/assets/stylesheets/addorder.scss @@ -10,7 +10,10 @@ padding:5px; color :#fff; } - .card-block { + .instance_box{ + margin-bottom:10px; + } + .card-block { padding: 0.3rem !important; } @media (min-width: 34em) { @@ -68,7 +71,12 @@ left:auto; right: auto; width: 100%; - padding-top: 200px; + +} +element.style { + padding-top: 0px !important; +} +.item-modal{ } .selected-attribute { @@ -93,10 +101,18 @@ /*width: 80px;*/ margin-bottom: 5px; margin-right: 5px; -} +} #logo{ margin: auto; width: 50%; border: 1px solid #54A5AF; padding: 10px; +} + +#instance_img{ + margin: auto; + width: 80px; + height: 80px; + border: 1px solid #54A5AF; + padding: 10px; } \ No newline at end of file diff --git a/app/controllers/settings/menu_item_instances_controller.rb b/app/controllers/settings/menu_item_instances_controller.rb index fbe1b672..6b5f8652 100644 --- a/app/controllers/settings/menu_item_instances_controller.rb +++ b/app/controllers/settings/menu_item_instances_controller.rb @@ -24,6 +24,12 @@ class Settings::MenuItemInstancesController < ApplicationController @item_sets = ItemSet.all end + def get_instance + @id = MenuItemInstance.find(params[:id]) + puts "iddddddddd" + puts @id.to_json + end + # GET /settings/menu_item_instances/1/edit def edit id = MenuItemInstance.findParentCategory(@item) diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index a8534f94..b7f0cf1d 100644 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -56,7 +56,7 @@
-