Setting Instances Update

This commit is contained in:
PhyoTheingi
2017-06-03 11:59:29 +06:30
parent f89a4237df
commit 2716b913f2
12 changed files with 152 additions and 109 deletions

View File

@@ -1,6 +1,6 @@
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]
before_action :set_settings_menu_item, only: [ :show, :edit, :new, :update]
# GET /settings/menu_item_instances
# GET /settings/menu_item_instances.json
@@ -11,29 +11,51 @@ class Settings::MenuItemInstancesController < ApplicationController
# GET /settings/menu_item_instances/1
# GET /settings/menu_item_instances/1.json
def show
@category = MenuCategory.find(@item.menu_category_id)
end
# GET /settings/menu_item_instances/new
def new
@settings_menu_item_instance = MenuItemInstance.new
if params[:simple_menu_item_id]
@aa = MenuItem.find(params[:simple_menu_item_id])
else
@aa = MenuItem.find(params[:set_menu_item_id])
end
@category = MenuCategory.find(@item.menu_category_id)
@settings_menu_item_instances = MenuItemInstance.new
end
# GET /settings/menu_item_instances/1/edit
def edit
if params[:simple_menu_item_id]
@aa = MenuItem.find(params[:simple_menu_item_id])
else
@aa = MenuItem.find(params[:set_menu_item_id])
end
@category = MenuCategory.find(@item.menu_category_id)
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)
@settings_menu_item_instances = MenuItemInstance.new(settings_menu_item_instance_params)
if params[:simple_menu_item_id]
@settings_menu_item_instances.menu_item_id = params[:simple_menu_item_id]
catID = MenuItem.find(params[:simple_menu_item_id])
else
@settings_menu_item_instances.menu_item_id = params[:set_menu_item_id]
catID = MenuItem.find(params[:set_menu_item_id])
end
category = MenuCategory.find(catID.menu_category_id)
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 }
if @settings_menu_item_instances.save
format.html { redirect_to settings_menu_category_simple_menu_item_path(category,catID), notice: 'Menu item instance was successfully created.' }
format.json { render :show, status: :created, location: @settings_menu_item_instances }
else
format.html { render :new }
format.json { render json: @settings_menu_item_instance.errors, status: :unprocessable_entity }
format.json { render json: @settings_menu_item_instances.errors, status: :unprocessable_entity }
end
end
end
@@ -41,13 +63,19 @@ class Settings::MenuItemInstancesController < ApplicationController
# PATCH/PUT /settings/menu_item_instances/1
# PATCH/PUT /settings/menu_item_instances/1.json
def update
if params[:simple_menu_item_id]
catID = MenuItem.find(params[:simple_menu_item_id])
else
catID = MenuItem.find(params[:set_menu_item_id])
end
category = MenuCategory.find(catID.menu_category_id)
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 }
if @settings_menu_item_instances.update(settings_menu_item_instance_params)
format.html { redirect_to settings_menu_category_simple_menu_item_path(category,catID), notice: 'Menu item instance was successfully updated.' }
format.json { render :show, status: :ok, location: @settings_menu_item_instances }
else
format.html { render :edit }
format.json { render json: @settings_menu_item_instance.errors, status: :unprocessable_entity }
format.json { render json: @settings_menu_item_instances.errors, status: :unprocessable_entity }
end
end
end
@@ -55,9 +83,15 @@ class Settings::MenuItemInstancesController < ApplicationController
# DELETE /settings/menu_item_instances/1
# DELETE /settings/menu_item_instances/1.json
def destroy
# @settings_menu_item_instance.destroy
@settings_menu_item_instances.destroy
if params[:simple_menu_item_id]
catID = MenuItem.find(params[:simple_menu_item_id])
else
catID = MenuItem.find(params[:set_menu_item_id])
end
category = MenuCategory.find(catID.menu_category_id)
respond_to do |format|
format.html { redirect_to settings_menu_item_instances_path, notice: 'Menu item instance was successfully destroyed.' }
format.html { redirect_to settings_menu_category_simple_menu_item_path(category,catID), notice: 'Menu item instance was successfully destroyed.' }
format.json { head :no_content }
end
end
@@ -65,15 +99,19 @@ class Settings::MenuItemInstancesController < ApplicationController
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])
@settings_menu_item_instances = MenuItemInstance.find(params[:id])
end
def set_settings_menu_item
@item = MenuItem.find(params[:menu_item_id])
if params[:simple_menu_item_id]
@item = MenuItem.find(params[:simple_menu_item_id])
else
@item = MenuItem.find(params[:set_menu_item_id])
end
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)
params.require(:menu_item_instance).permit(:item_instance_code, :item_instance_name, :price, :is_on_promotion, :promotion_price, :is_available,:menu_category_id,:menu_item_id)
end
end

View File

@@ -11,6 +11,7 @@ class Settings::SetMenuItemsController < 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

View File

@@ -28,7 +28,7 @@
<td><%= @settings_menu_category.name rescue "-" %></td>
<td><%= @settings_menu_category.alt_name %></td>
<td><%= @settings_menu_category.order_by %></td>
<td><%=l @settings_menu_category.created_at, format: :short %></td>
<td><%= @settings_menu_category.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<td><%= link_to 'Edit', edit_settings_menu_menu_category_path(@settings_menu_category, @settings_menu_category) %></td>
</tr>
</tbody>
@@ -37,6 +37,7 @@
</div>
<br>
<% if @settings_menu_category.menu_items.count > 0 %>
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Items
@@ -69,7 +70,7 @@
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@settings_menu_category, settings_menu_item ) %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@settings_menu_category, settings_menu_item) %></td>
@@ -85,5 +86,5 @@
</table>
</div>
<% end %>
</div>

View File

@@ -1,4 +1,4 @@
<%= simple_form_for([:settings,:menu_item, @settings_menu_item_instance]) do |f| %>
<%= simple_form_for([:settings, @item, @settings_menu_item_instances]) do |f| %>
<%= f.error_notification %>
<div class="form-inputs">

View File

@@ -4,9 +4,11 @@
<div class="page-header">
<ul class="breadcrumb">
<li><a href="<%= root_path %>">Home</a></li>
<li><a href="<%= settings_menu_category_set_menu_items_path(@category) %>">Menu Category</a></li>
<li><a href="<%= settings_menu_category_simple_menu_item_path(@category,@item) %>">Menu Category</a></li>
<li>Menu Item</li>
<li>Menu Item Instances</li>
<li>Edit</li>
</ul>
</div>
<%= render 'form', settings_set_menu_item: @settings_menu_item %>
<%= render 'form', settings_menu_item_menu_item_instances: @settings_menu_item_instances %>
</div>

View File

@@ -1,17 +1,16 @@
<!-- <h1>New Settings Menu Item</h1>
<%= render 'form', settings_menu_item: @settings_menu_item %>
<%= link_to 'Back', settings_menu_items_path %> -->
<%= render 'form', settings_menu_item: @settings_menu_item %>-->
<div class="span12">
<div class="page-header">
<ul class="breadcrumb">
<li><a href="<%= root_path %>">Home</a></li>
<li><a href="<%= %>">Menu Item</a></li>
<li><a href="<%= settings_menu_category_simple_menu_item_path(@category,@item) %>">Menu Category</a></li>
<li>Menu Item</li>
<li>New Menu Item Instance</li>
</ul>
</div>
<%= render 'form', settings_set_menu_instance: @settings_menu_item_instance %>
<%= render 'form', settings_simple_menu_item_menu_item_instances: @settings_menu_item_instances %>
</div>

View File

@@ -1,9 +1,10 @@
<div class="page-header">
<ul class="breadcrumb">
<li><a href="<%= %>">Home</a></li>
<li><a href="<%= settings_menu_category_set_menu_items_path(@category) %>">Menu Category</a></li>
<li><a href="<%= root_path %>">Home</a></li>
<li><a href="<%= settings_menu_category_simple_menu_item_path(@category,@item) %>">Menu Category</a></li>
<li>Menu Item</li>
<li>Menu Item Instances</li>
<span style="float: right">
</span>
</ul>
@@ -11,86 +12,37 @@
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Item </h4>
<h4 class="card-title">Menu Item Instance</h4>
<table class="table">
<thead>
<tr>
<th>Item code</th>
<th>Item Instance code</th>
<th>Name</th>
<th>Alt name</th>
<th>Type</th>
<th>Menu category</th>
<th>Menu item</th>
<th>Min qty</th>
<th>Min selectable item</th>
<th>Max selectable item</th>
<th>Price</th>
<th>On Promotion</th>
<th>Promotion Price</th>
<th>Available</th>
<th>Created At</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><%= @settings_menu_item.item_code %></td>
<td><%= @settings_menu_item.name rescue "-" %></td>
<td><%= @settings_menu_item.alt_name %></td>
<td><%= @settings_menu_item.type %></td>
<td><%= @settings_menu_item.menu_category_id %></td>
<td><%= @settings_menu_item.menu_item_id %></td>
<td><%= @settings_menu_item.min_qty %></td>
<td><%= @settings_menu_item.min_selectable_item %></td>
<td><%= @settings_menu_item.max_selectable_item %></td>
<td><%=l @settings_menu_item.created_at, format: :short %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, @settings_menu_item) %></td>
<td><%= @settings_menu_item_instances.item_instance_code %></td>
<td><%= @settings_menu_item_instances.item_instance_name rescue "-" %></td>
<td><%= @settings_menu_item_instances.price %></td>
<td><%= @settings_menu_item_instances.is_on_promotion %></td>
<td><%= @settings_menu_item_instances.promotion_price %></td>
<td><%= @settings_menu_item_instances.is_available %></td>
<td><%=l @settings_menu_item_instances.created_at, format: :short %></td>
<% if params[:simple_menu_item_id] %>
<td><%= link_to 'Edit', edit_settings_simple_menu_item_menu_item_instance_path(@item,@settings_menu_item_instances) %></td>
<% else %>
<td><%= link_to 'Edit', edit_settings_simple_menu_item_menu_item_instance_path(@item,@settings_menu_item_instances) %></td>
<% end %>
</tr>
</tbody>
</table>
</div>
</div>
<br>
<div class="card">
<div class="card-block">
<h4 class="card-title">Sub Menu Items </h4>
<table class="table">
<thead>
<tr>
<th>Item code</th>
<th>Name</th>
<th>Alt name</th>
<th>Type</th>
<th>Parent Item</th>
<th>Created by</th>
<th>Created at</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% @sub_menu.each do |settings_menu_item| %>
<tr>
<td><%= settings_menu_item.item_code %></td>
<td><%= settings_menu_item.name %></td>
<td><%= settings_menu_item.alt_name %></td>
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@category, settings_menu_item) %></td>
<td><%= link_to 'Destroy', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></td>
<% else %>
<td><%= link_to 'Show', settings_menu_category_set_menu_item_path(@category, settings_menu_item ) %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, settings_menu_item) %></td>
<td><%= link_to 'Destroy', settings_menu_category_set_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></td>
<% end %>
</tr>
<% end %>
</tbody>
</table>
</div>
</div>
<%= paginate @sub_menu, param_name: :page, :outer_window => 3 %>
</div>

View File

@@ -71,7 +71,7 @@
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>

View File

@@ -40,13 +40,14 @@
<td><%= @settings_menu_item.min_qty %></td>
<td><%= @settings_menu_item.min_selectable_item %></td>
<td><%= @settings_menu_item.max_selectable_item %></td>
<td><%=l @settings_menu_item.created_at, format: :short %></td>
<td><%= @settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, @settings_menu_item) %></td>
</tr>
</tbody>
</table>
</div>
</div>
<% if @sub_menu.count > 0 %>
<br>
<div class="card">
<div class="card-block">
@@ -75,7 +76,7 @@
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>
@@ -93,4 +94,45 @@
</div>
</div>
<%= paginate @sub_menu, param_name: :page, :outer_window => 3 %>
<% end %>
<br>
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Item Instances
<span style="float: right">
<%= 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' %>
</span>
</h4>
<table class="table">
<thead>
<tr>
<!-- <th>Menu Item Id</th> -->
<th>item_instance_code</th>
<th>item_attributes</th>
<th>price</th>
<th>is_on_promotion</th>
<th>promotion_price</th>
<th>Created at</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% @menu_item_instance.each do |settings_menu_item| %>
<tr>
<!-- <td><%= settings_menu_item.menu_item_id %></td> -->
<td><%= settings_menu_item.item_instance_code %></td>
<td><%= settings_menu_item.item_attributes %></td>
<td><%= settings_menu_item.price %></td>
<td><%= settings_menu_item.is_on_promotion %></td>
<td><%= settings_menu_item.promotion_price %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
</tr>
<% end %>
</tbody>
</table>
</div>
</div>
</div>

View File

@@ -70,7 +70,7 @@
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>

View File

@@ -40,13 +40,14 @@
<td><%= @settings_menu_item.min_qty %></td>
<td><%= @settings_menu_item.min_selectable_item %></td>
<td><%= @settings_menu_item.max_selectable_item %></td>
<td><%=l @settings_menu_item.created_at, format: :short %></td>
<td><%= @settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<td><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@category, @settings_menu_item) %></td>
</tr>
</tbody>
</table>
</div>
</div>
<% if @sub_menu.count > 0 %>
<br>
<div class="card">
<div class="card-block">
@@ -75,7 +76,7 @@
<td><%= settings_menu_item.type %></td>
<td><%= settings_menu_item.parent.name rescue "-" %></td>
<td><%= settings_menu_item.created_by %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<% if settings_menu_item.type == "SimpleMenuItem" %>
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>
@@ -93,20 +94,20 @@
</div>
</div>
<%= paginate @sub_menu, param_name: :page, :outer_window => 3 %>
<% end %>
<br>
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Item Instances
<span style="float: right">
<%= 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' %>
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_simple_menu_item_menu_item_instance_path(@settings_menu_item),:class => 'btn btn-primary btn-sm' %>
</span>
</h4>
<table class="table">
<thead>
<tr>
<th>Menu Item Id</th>
<!-- <th>Menu Item Id</th> -->
<th>item_instance_code</th>
<th>item_attributes</th>
<th>price</th>
@@ -121,13 +122,17 @@
<tbody>
<% @menu_item_instance.each do |settings_menu_item| %>
<tr>
<td><%= settings_menu_item.menu_item_id %></td>
<!-- <td><%= settings_menu_item.menu_item_id %></td> -->
<td><%= settings_menu_item.item_instance_code %></td>
<td><%= settings_menu_item.item_attributes %></td>
<td><%= settings_menu_item.price %></td>
<td><%= settings_menu_item.is_on_promotion %></td>
<td><%= settings_menu_item.promotion_price %></td>
<td><%=l settings_menu_item.created_at, :format => :short %></td>
<td><%= settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
<td><%= link_to 'Show', settings_simple_menu_item_menu_item_instance_path(@settings_menu_item, settings_menu_item ) %></td>
<td><%= link_to 'Edit', edit_settings_simple_menu_item_menu_item_instance_path(@settings_menu_item, settings_menu_item) %></td>
<td><%= link_to 'Destroy', settings_simple_menu_item_menu_item_instance_path(@settings_menu_item, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</tbody>

View File

@@ -105,12 +105,15 @@ Rails.application.routes.draw do
resources :menu_categories do
#menu_items
#resources :menu_items
# resources :menu_items
resources :simple_menu_items
resources :set_menu_items
end
resources :menu_items do
resources :simple_menu_items do
resources :menu_item_instances
end
resources :set_menu_items do
resources :menu_item_instances
end
#menu_item_attributes