diff --git a/app/controllers/settings/menu_item_instances_controller.rb b/app/controllers/settings/menu_item_instances_controller.rb new file mode 100644 index 00000000..fecc3cd7 --- /dev/null +++ b/app/controllers/settings/menu_item_instances_controller.rb @@ -0,0 +1,79 @@ +class Settings::MenuItemInstancesController < ApplicationController + before_action :set_settings_menu_item_instance, only: [:show, :edit, :update, :destroy] + before_action :set_settings_menu_item, only: [:index, :show, :edit, :new, :update] + + # GET /settings/menu_item_instances + # GET /settings/menu_item_instances.json + def index + @settings_menu_item_instances = MenuItemInstance.all + end + + # GET /settings/menu_item_instances/1 + # GET /settings/menu_item_instances/1.json + def show + end + + # GET /settings/menu_item_instances/new + def new + @settings_menu_item_instance = MenuItemInstance.new + end + + # GET /settings/menu_item_instances/1/edit + def edit + end + + # POST /settings/menu_item_instances + # POST /settings/menu_item_instances.json + def create + @settings_menu_item_instance = MenuItemInstance.new(settings_menu_item_instance_params) + + respond_to do |format| + if @settings_menu_item_instance.save + format.html { redirect_to settings_menu_item_instances_path, notice: 'Menu item instance was successfully created.' } + format.json { render :show, status: :created, location: @settings_menu_item_instance } + else + format.html { render :new } + format.json { render json: @settings_menu_item_instance.errors, status: :unprocessable_entity } + end + end + end + + # PATCH/PUT /settings/menu_item_instances/1 + # PATCH/PUT /settings/menu_item_instances/1.json + def update + respond_to do |format| + if @settings_menu_item_instance.update(settings_menu_item_instance_params) + format.html { redirect_to settings_menu_item_instance_path(@settings_menu_item_instance), notice: 'Menu item instance was successfully updated.' } + format.json { render :show, status: :ok, location: @settings_menu_item_instance } + else + format.html { render :edit } + format.json { render json: @settings_menu_item_instance.errors, status: :unprocessable_entity } + end + end + end + + # DELETE /settings/menu_item_instances/1 + # DELETE /settings/menu_item_instances/1.json + def destroy + # @settings_menu_item_instance.destroy + respond_to do |format| + format.html { redirect_to settings_menu_item_instances_path, notice: 'Menu item instance was successfully destroyed.' } + format.json { head :no_content } + end + end + + private + # Use callbacks to share common setup or constraints between actions. + def set_settings_menu_item_instance + @set_settings_menu_item_instances = MenuItemInstance.find(params[:id]) + end + + def set_settings_menu_item + @item = MenuItem.find(params[:menu_item_id]) + end + + # Never trust parameters from the scary internet, only allow the white list through. + def settings_menu_item_instance_params + params.require(:menu_item_instance).permit(:name, :value) + end +end diff --git a/app/controllers/settings/simple_menu_items_controller.rb b/app/controllers/settings/simple_menu_items_controller.rb index 2a391d8f..d2083e59 100644 --- a/app/controllers/settings/simple_menu_items_controller.rb +++ b/app/controllers/settings/simple_menu_items_controller.rb @@ -11,6 +11,7 @@ class Settings::SimpleMenuItemsController < ApplicationController # GET /settings/menu_items/1.json def show @sub_menu = MenuItem.where("menu_item_id=?",params[:id]).page(params[:page]).per(10) + @menu_item_instance = MenuItemInstance.where("menu_item_id=?",params[:id]).page(params[:page]).per(10) end # GET /settings/menu_items/new diff --git a/app/views/settings/menu_item_instances/_form.html.erb b/app/views/settings/menu_item_instances/_form.html.erb new file mode 100644 index 00000000..b369a1d3 --- /dev/null +++ b/app/views/settings/menu_item_instances/_form.html.erb @@ -0,0 +1,18 @@ +<%= simple_form_for([:settings,:menu_item, @settings_menu_item_instance]) do |f| %> + <%= f.error_notification %> + +
+ <%= f.input :item_instance_code %> + <%= f.input :item_instance_name %> + <%= f.input :price %> + + + <%= f.input :is_on_promotion %> + <%= f.input :promotion_price %> + <%= f.input :is_available %> +
+ +
+ <%= f.button :submit %> +
+<% end %> diff --git a/app/views/settings/menu_item_instances/_settings_menu_item.json.jbuilder b/app/views/settings/menu_item_instances/_settings_menu_item.json.jbuilder new file mode 100644 index 00000000..781e4a34 --- /dev/null +++ b/app/views/settings/menu_item_instances/_settings_menu_item.json.jbuilder @@ -0,0 +1,2 @@ +json.extract! settings_menu_item, :id, :item_code, :name, :alt_name, :type, :menu_category_id, :menu_item_id, :min_qty, :min_selectable_item, :max_selectable_item, :created_by, :created_at, :updated_at +json.url settings_menu_item_url(settings_menu_item, format: :json) diff --git a/app/views/settings/menu_item_instances/edit.html.erb b/app/views/settings/menu_item_instances/edit.html.erb new file mode 100644 index 00000000..158b7c1c --- /dev/null +++ b/app/views/settings/menu_item_instances/edit.html.erb @@ -0,0 +1,12 @@ + + +
+ + <%= render 'form', settings_set_menu_item: @settings_menu_item %> +
diff --git a/app/views/settings/menu_item_instances/index.html.erb b/app/views/settings/menu_item_instances/index.html.erb new file mode 100644 index 00000000..bfe6a99f --- /dev/null +++ b/app/views/settings/menu_item_instances/index.html.erb @@ -0,0 +1,93 @@ + +
+
+

Menu Category

+ + + + + + + + + + + + + + + + + + + + + + +
MenuNameAlt nameOrder byParent
<%= @category.menu.name %><%= @category.name %><%= @category.alt_name %><%= @category.order_by %><%= @category.parent.name rescue "-" %><%= link_to 'Edit', edit_settings_menu_category_path(@category) %>
+
+
+
+
+
+

Menu Items + + <%= link_to "New Simple Menu Item",new_settings_menu_category_simple_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %> + <%= link_to "New Set Menu Item",new_settings_menu_category_set_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %> + + +

+ + + + + + + + + + + + + + + + + <% @settings_menu_items.each do |settings_menu_item| %> + + + + + + + + + + <% if settings_menu_item.type == "SimpleMenuItem" %> + + + + <% else %> + + + + <% end %> + + <% end %> + +
Item codeNameAlt nameTypeParent ItemCreated byCreated at
<%= settings_menu_item.item_code %><%= settings_menu_item.name %><%= settings_menu_item.alt_name %><%= settings_menu_item.type %><%= settings_menu_item.parent.name rescue "-" %><%= settings_menu_item.created_by %><%=l settings_menu_item.created_at, :format => :short %><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@category, settings_menu_item) %><%= link_to 'Destroy', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %><%= link_to 'Show', settings_menu_category_set_menu_item_path(@category, settings_menu_item ) %><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, settings_menu_item) %><%= link_to 'Destroy', settings_menu_category_set_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %>
+ +
+ +
+ <%= paginate @settings_menu_items, param_name: :page, :outer_window => 3 %> diff --git a/app/views/settings/menu_item_instances/index.json.jbuilder b/app/views/settings/menu_item_instances/index.json.jbuilder new file mode 100644 index 00000000..9b0a47fa --- /dev/null +++ b/app/views/settings/menu_item_instances/index.json.jbuilder @@ -0,0 +1 @@ +json.array! @settings_menu_items, partial: 'settings_menu_items/settings_menu_item', as: :settings_menu_item diff --git a/app/views/settings/menu_item_instances/new.html.erb b/app/views/settings/menu_item_instances/new.html.erb new file mode 100644 index 00000000..9fae5b34 --- /dev/null +++ b/app/views/settings/menu_item_instances/new.html.erb @@ -0,0 +1,17 @@ + + + +
+ + <%= render 'form', settings_set_menu_instance: @settings_menu_item_instance %> +
diff --git a/app/views/settings/menu_item_instances/show.html.erb b/app/views/settings/menu_item_instances/show.html.erb new file mode 100644 index 00000000..238fa038 --- /dev/null +++ b/app/views/settings/menu_item_instances/show.html.erb @@ -0,0 +1,96 @@ + + + +
+
+

Menu Item

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Item codeNameAlt nameTypeMenu categoryMenu itemMin qtyMin selectable itemMax selectable itemCreated AtAction
<%= @settings_menu_item.item_code %><%= @settings_menu_item.name rescue "-" %><%= @settings_menu_item.alt_name %><%= @settings_menu_item.type %><%= @settings_menu_item.menu_category_id %><%= @settings_menu_item.menu_item_id %><%= @settings_menu_item.min_qty %><%= @settings_menu_item.min_selectable_item %><%= @settings_menu_item.max_selectable_item %><%=l @settings_menu_item.created_at, format: :short %><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, @settings_menu_item) %>
+
+
+
+
+
+

Sub Menu Items

+ + + + + + + + + + + + + + + + + <% @sub_menu.each do |settings_menu_item| %> + + + + + + + + + + <% if settings_menu_item.type == "SimpleMenuItem" %> + + + + <% else %> + + + + <% end %> + + <% end %> + +
Item codeNameAlt nameTypeParent ItemCreated byCreated at
<%= settings_menu_item.item_code %><%= settings_menu_item.name %><%= settings_menu_item.alt_name %><%= settings_menu_item.type %><%= settings_menu_item.parent.name rescue "-" %><%= settings_menu_item.created_by %><%=l settings_menu_item.created_at, :format => :short %><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@category, settings_menu_item) %><%= link_to 'Destroy', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %><%= link_to 'Show', settings_menu_category_set_menu_item_path(@category, settings_menu_item ) %><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, settings_menu_item) %><%= link_to 'Destroy', settings_menu_category_set_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %>
+
+
+ <%= paginate @sub_menu, param_name: :page, :outer_window => 3 %> + diff --git a/app/views/settings/menu_item_instances/show.json.jbuilder b/app/views/settings/menu_item_instances/show.json.jbuilder new file mode 100644 index 00000000..4a11737c --- /dev/null +++ b/app/views/settings/menu_item_instances/show.json.jbuilder @@ -0,0 +1 @@ +json.partial! "settings_menu_items/settings_menu_item", settings_menu_item: @settings_menu_item diff --git a/app/views/settings/processing_items/_form.html.erb b/app/views/settings/processing_items/_form.html.erb index 2038b0ea..60e493d8 100644 --- a/app/views/settings/processing_items/_form.html.erb +++ b/app/views/settings/processing_items/_form.html.erb @@ -29,7 +29,9 @@ <% end %> +
<%= f.button :submit, label: "Add Menu Items to Queue Station" %>
+
<% end %> diff --git a/app/views/settings/simple_menu_items/show.html.erb b/app/views/settings/simple_menu_items/show.html.erb index 97e12695..7f68c9aa 100644 --- a/app/views/settings/simple_menu_items/show.html.erb +++ b/app/views/settings/simple_menu_items/show.html.erb @@ -93,4 +93,45 @@ <%= paginate @sub_menu, param_name: :page, :outer_window => 3 %> + +
+
+
+

Menu Item Instances + + <%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_item_menu_item_instance_path(@settings_menu_item),:class => 'btn btn-primary btn-sm' %> + + +

+ + + + + + + + + + + + + + + + + <% @menu_item_instance.each do |settings_menu_item| %> + + + + + + + + + + <% end %> + +
Menu Item Iditem_instance_codeitem_attributespriceis_on_promotionpromotion_priceCreated at
<%= settings_menu_item.menu_item_id %><%= settings_menu_item.item_instance_code %><%= settings_menu_item.item_attributes %><%= settings_menu_item.price %><%= settings_menu_item.is_on_promotion %><%= settings_menu_item.promotion_price %><%=l settings_menu_item.created_at, :format => :short %>
+
+