add menu api

This commit is contained in:
Yan
2017-08-17 18:55:13 +06:30
parent f2829fab0f
commit 29b3f94573
26 changed files with 84 additions and 168 deletions

View File

@@ -0,0 +1,6 @@
json.array! @item_sets do |set|
json.name set.name
json.alt_name set.alt_name
json.min_selectable_qty set.min_selectable_qty
json.max_selectable_qty set.max_selectable_qty
end

View File

@@ -5,13 +5,14 @@ json.valid_time_from menu.valid_time_from.strftime("%H:%M")
json.valid_time_to menu.valid_time_to.strftime("%H:%M")
if (menu.menu_categories)
json.menu_categories menu.menu_categories do |category|
json.categories menu.menu_categories do |category|
json.id category.id
json.name category.name
json.alt_name category.alt_name
json.is_available category.is_available
if category.menu_items
json.menu_items category.menu_items do |item|
json.items category.menu_items do |item|
json.partial! 'api/restaurant/menu/menu_item', item: item
end
end

View File

@@ -1,40 +1,46 @@
#Menu Item Information
json.item_code item.item_code
json.name item.name
json.alt_name item.alt_name
json.type item.type
json.min_qty item.min_qty
json.min_selectable_item item.min_selectable_item
json.max_selectable_item item.max_selectable_item
json.id item.id
json.item_code item.item_code
json.name item.name
json.alt_name item.alt_name
json.image item.image_path.url
json.description item.description
json.Information item.information
json.type item.type
json.account_id item.account_id
json.min_qty item.min_qty
json.is_available item.is_available
json.is_sub_item item.is_sub_item
json.attributes item.item_attributes
json.options item.item_options
# json.min_selectable_item item.min_selectable_item
# json.max_selectable_item item.max_selectable_item
#Item instance
if item.menu_item_instances.count == 1 then
# if item.menu_item_instances.count == 1 then
# item_instance = item.menu_item_instances[0]
# json.price = item_instance.price
# json.is_available = item_instance.is_available
# json.is_on_promotion = item_instance.is_on_promotion
# json.promotion_price = item_instance.promotion_price
# json.item_attributes = item_instance.item_attributes
item_instance = item.menu_item_instances[0]
json.price = item_instance.price
json.is_available = item_instance.is_available
json.is_on_promotion = item_instance.is_on_promotion
json.promotion_price = item_instance.promotion_price
json.item_attributes = item_instance.item_attributes
elsif item.menu_item_instances.count > 1 then
json.item_instances item.menu_item_instances do |is|
json.item_instance_item_code = is.item_instance_code
json.item_instance_name = is.item_instance_name
# elsif item.menu_item_instances.count > 1 then
json.instances item.menu_item_instances do |is|
json.code = is.item_instance_code
json.name = is.item_instance_name
json.price = is.price
json.is_available = is.is_available
json.is_on_promotion = is.is_on_promotion
json.promotion_price = is.promotion_price
json.item_attributes = is.item_attributes
end
# end
end
#Child Menu items
if (item.children) then
json.set_items item.children.each do |item|
json.partial! 'api/restaurant/menu/menu_item', item: item
end
end
# if (item.children) then
# json.set_items item.children.each do |item|
# json.partial! 'api/restaurant/menu/menu_item', item: item
# end
# end

View File

@@ -4,9 +4,11 @@ json.array! @menus do |menu|
json.valid_days menu.valid_days
json.valid_time_from menu.valid_time_from.strftime("%H:%M")
json.valid_time_to menu.valid_time_to.strftime("%H:%M")
if (@current_menu)
json.current_menu do
json.partial! 'api/restaurant/menu/menu', menu: @current_menu
end
end
json.partial! 'api/restaurant/menu/menu', menu: menu
# if (@current_menu)
# json.current_menu do
# json.partial! 'api/restaurant/menu/menu', menu: @current_menu
# end
# end
end

View File

@@ -31,7 +31,7 @@
<hr class="hr_advance" />
<li><%= link_to "Accounts", settings_accounts_path, :tabindex =>"-1" %></li>
<hr class="hr_advance" />
<li><%= link_to "Promotion", settings_promotions_path, :tabindex =>"-1" %></li>]
<li><%= link_to "Promotion", settings_promotions_path, :tabindex =>"-1" %></li>
<li><%= link_to "Products", settings_products_path, :tabindex =>"-1" %></li>
</ul>
</li>

View File

@@ -3,6 +3,7 @@
<div class="form-inputs">
<%= f.input :name %>
<%= f.input :alt_name %>
<%= f.input :min_selectable_qty,input_html: {value: f.object.min_selectable_qty || '0'} %>
<%= f.input :max_selectable_qty,input_html: {value: f.object.max_selectable_qty || '0'} %>
</div>

View File

@@ -14,6 +14,7 @@
<thead>
<tr>
<th>Name</th>
<th>Alt Name</th>
<th>Min selectable qty</th>
<th>Max selectable qty</th>
<th>Action</th>
@@ -24,6 +25,7 @@
<% @settings_item_sets.each do |item| %>
<tr>
<td><%= item.name %></td>
<td><%= item.alt_name %></td>
<td><%= item.min_selectable_qty %></td>
<td><%= item.max_selectable_qty %></td>
<td><%= link_to 'Show', settings_item_set_path(item),:class=>'btn btn-sm btn-success' %>

View File

@@ -17,6 +17,10 @@
<td><strong>Name:</strong></td>
<td><%= @settings_item_set.name %></td>
</tr>
<tr>
<td><strong>Alt Name:</strong></td>
<td><%= @settings_item_set.alt_name %></td>
</tr>
<tr>
<td><strong>Min selectable qty:</strong></td>
<td> <%= @settings_item_set.min_selectable_qty %></td>

View File

@@ -2,13 +2,13 @@
<%= f.error_notification %>
<div class="form-inputs">
<%= f.input :menu_id, as: :hidden %>
<%= f.input :menu_id, as: :hidden %>
<%= f.input :code, label: "Category Code" %>
<%= f.input :name %>
<%= f.input :alt_name %>
<%= f.input :is_available %>
<%= f.input :order_by %>
<%= f.association :parent %>
</div>
<div class="form-actions">

View File

@@ -17,6 +17,7 @@
<th>Menu</th>
<th>Name</th>
<th>Alt name</th>
<th>Is Available</th>
<th>Order by</th>
<th>Parent</th>
<th></th>
@@ -31,6 +32,7 @@
<td><%= link_to settings_menu_category.name, settings_menu_category_path(settings_menu_category) %></td>
<td><%= settings_menu_category.alt_name rescue ''%></td>
<td><%= settings_menu_category.is_available rescue false%></td>
<td><%= settings_menu_category.order_by rescue ''%></td>
<td><%= settings_menu_category.parent.name rescue ''%></td>
<td><%= link_to 'Edit', edit_settings_menu_category_path(settings_menu_category) %> | <%= link_to 'Destroy', settings_menu_category_path(settings_menu_category), method: :delete, data: { confirm: 'Are you sure?' } %></td></td>

View File

@@ -16,6 +16,7 @@
<th>Menu</th>
<th>Name</th>
<th>Alt name</th>
<th>Is Available</th>
<th>Order by</th>
<th>Created At</th>
<th>Action</th>
@@ -27,6 +28,7 @@
<td><%= @settings_menu_category.menu.name %></td>
<td><%= @settings_menu_category.name rescue "-" %></td>
<td><%= @settings_menu_category.alt_name %></td>
<td><%= settings_menu_category.is_available rescue false%></td>
<td><%= @settings_menu_category.order_by %></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>

View File

@@ -21,10 +21,7 @@
<th>Type</th>
<th>Account 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>Created At</th>
<th>Action</th>
</tr>
@@ -38,10 +35,7 @@
<td><%= @settings_menu_item.type %></td>
<td><%= @settings_menu_item.account.title %></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><%= @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>
@@ -51,58 +45,7 @@
</div>
</div>
<% if @sub_menu.count > 0 %>
<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><%= 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>
<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 %>
<% end %>
<br>
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Item Instances

View File

@@ -23,10 +23,10 @@
<th>Type</th>
<th>Accout</th>
<th>Menu category</th>
<th>Menu item</th>
<!-- <th>Menu item</th> -->
<th>Min qty</th>
<th>Min selectable item</th>
<th>Max selectable item</th>
<!-- <th>Min selectable item</th>
<th>Max selectable item</th> -->
<th>Created At</th>
<th>Action</th>
</tr>
@@ -40,10 +40,7 @@
<td><%= @settings_menu_item.type %></td>
<td><%= @settings_menu_item.account.title %></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><%= @settings_menu_item.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
@@ -54,60 +51,7 @@
</div>
</div>
<% if @sub_menu.count > 0 %>
<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><%= 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>
<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 %>
<% end %>
<br>
<div class="card">
<div class="card-block">
<h4 class="card-title">Menu Item Instances