origin pull master
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -41,3 +41,7 @@ config/deploy/config/*
|
|||||||
|
|
||||||
# Ignore Byebug command history file.
|
# Ignore Byebug command history file.
|
||||||
.byebug_history
|
.byebug_history
|
||||||
|
|
||||||
|
# Gem files
|
||||||
|
#Gemfile
|
||||||
|
#Gemfile.lock
|
||||||
|
|||||||
10
Gemfile
10
Gemfile
@@ -10,7 +10,13 @@ end
|
|||||||
gem 'rails', '~> 5.1.0'
|
gem 'rails', '~> 5.1.0'
|
||||||
# Use mysql as the database for Active Record
|
# Use mysql as the database for Active Record
|
||||||
gem 'mysql2', '>= 0.3.18', '< 0.5'
|
gem 'mysql2', '>= 0.3.18', '< 0.5'
|
||||||
#gem 'pg'
|
|
||||||
|
#Use PosgreSQL
|
||||||
|
gem 'pg'
|
||||||
|
|
||||||
|
# redis server for cable
|
||||||
|
# gem 'redis', '~> 3.0'
|
||||||
|
|
||||||
# Use Puma as the app server
|
# Use Puma as the app server
|
||||||
gem 'puma', '~> 3.0'
|
gem 'puma', '~> 3.0'
|
||||||
# Use SCSS for stylesheets
|
# Use SCSS for stylesheets
|
||||||
@@ -37,6 +43,8 @@ gem 'to_xls-rails'
|
|||||||
#Reporting gem
|
#Reporting gem
|
||||||
#gem 'compendium'
|
#gem 'compendium'
|
||||||
|
|
||||||
|
# Pagination
|
||||||
|
gem 'kaminari', :git => "git://github.com/amatsuda/kaminari.git", :branch => 'master'
|
||||||
|
|
||||||
# Use jquery as the JavaScript library
|
# Use jquery as the JavaScript library
|
||||||
gem 'jquery-rails'
|
gem 'jquery-rails'
|
||||||
|
|||||||
21
Gemfile.lock
21
Gemfile.lock
@@ -1,3 +1,21 @@
|
|||||||
|
GIT
|
||||||
|
remote: git://github.com/amatsuda/kaminari.git
|
||||||
|
revision: c3c853a944cd2bff072ae05e48c563b2c9a29597
|
||||||
|
branch: master
|
||||||
|
specs:
|
||||||
|
kaminari (1.0.1)
|
||||||
|
activesupport (>= 4.1.0)
|
||||||
|
kaminari-actionview (= 1.0.1)
|
||||||
|
kaminari-activerecord (= 1.0.1)
|
||||||
|
kaminari-core (= 1.0.1)
|
||||||
|
kaminari-actionview (1.0.1)
|
||||||
|
actionview
|
||||||
|
kaminari-core (= 1.0.1)
|
||||||
|
kaminari-activerecord (1.0.1)
|
||||||
|
activerecord
|
||||||
|
kaminari-core (= 1.0.1)
|
||||||
|
kaminari-core (1.0.1)
|
||||||
|
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
@@ -231,6 +249,7 @@ DEPENDENCIES
|
|||||||
font-awesome-rails
|
font-awesome-rails
|
||||||
jbuilder (~> 2.5)
|
jbuilder (~> 2.5)
|
||||||
jquery-rails
|
jquery-rails
|
||||||
|
kaminari!
|
||||||
listen (~> 3.0.5)
|
listen (~> 3.0.5)
|
||||||
mysql2 (>= 0.3.18, < 0.5)
|
mysql2 (>= 0.3.18, < 0.5)
|
||||||
prawn
|
prawn
|
||||||
@@ -255,4 +274,4 @@ DEPENDENCIES
|
|||||||
web-console (>= 3.3.0)
|
web-console (>= 3.3.0)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
1.14.6
|
1.15.0
|
||||||
|
|||||||
@@ -15,3 +15,69 @@
|
|||||||
//= require jquery_ujs
|
//= require jquery_ujs
|
||||||
//= require turbolinks
|
//= require turbolinks
|
||||||
//= require cable
|
//= require cable
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
$('.queue_station').on('click',function(){
|
||||||
|
var orderZone=$(this).children().children().children('.order-zone').text();
|
||||||
|
var orderItem=$(this).children().children().children('.order-item').text();
|
||||||
|
var orderQty=$(this).children().children().children('.order-qty').text();
|
||||||
|
var orderBy=$(this).children().children().children().children('.order-by').text();
|
||||||
|
var orderAt=$(this).children().children().children().children('.order-at').text();
|
||||||
|
var orderCustomer=$(this).children().children('.order-customer').text();
|
||||||
|
|
||||||
|
$('#order-title').text("ORDER DETAILS - " + orderZone);
|
||||||
|
$('#order-by').text(orderBy);
|
||||||
|
$('#order-at').text(orderAt);
|
||||||
|
$('#order-customer').text(orderCustomer);
|
||||||
|
$('#order-from').text(orderZone);
|
||||||
|
|
||||||
|
$('#order-items').text(orderItem);
|
||||||
|
$('#order-qty').text(orderQty);
|
||||||
|
|
||||||
|
$('.queue_station').removeClass('selected-item');
|
||||||
|
$(this).addClass('selected-item');
|
||||||
|
});
|
||||||
|
|
||||||
|
// complete for queue item
|
||||||
|
$('.order-complete').on('click',function(){
|
||||||
|
var _self= $(this);
|
||||||
|
var assigned_item_id=$(this).attr('id').substr(15);
|
||||||
|
var params = { 'id':assigned_item_id };
|
||||||
|
var station=$(this).parent().parent(".queue_station").parent().parent().attr('id');
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: '/oqs/update_delivery',
|
||||||
|
data: params,
|
||||||
|
dataType: 'json',
|
||||||
|
success: function(data){
|
||||||
|
var queue_station=_self.parent().parent(".queue_station");
|
||||||
|
|
||||||
|
// Remove a queue card from current station
|
||||||
|
queue_station.remove();
|
||||||
|
|
||||||
|
// Remove a queue card from current station
|
||||||
|
queue_station.children('.card-footer').remove();
|
||||||
|
|
||||||
|
// Add removed queue card from station to completed
|
||||||
|
$("#completed").children('.card-columns').append(queue_station);
|
||||||
|
|
||||||
|
// update queue item count in station
|
||||||
|
$("#"+station+"_count").text(parseInt($("#"+station+"_count").text())-1);
|
||||||
|
$("#completed_count").text(parseInt($("#completed_count").text())+1);
|
||||||
|
|
||||||
|
alert("updated!");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#print_order_item').on('click',function(){
|
||||||
|
var assigned_item_id=$('.selected-item').children('.card-block').children('.assigned-order-item').text();
|
||||||
|
var params = { 'id':assigned_item_id };
|
||||||
|
$.ajax({
|
||||||
|
type: 'GET',
|
||||||
|
url: '/oqs/print/print/'+assigned_item_id,
|
||||||
|
success: function(data){ }
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// Action Cable provides the framework to deal with WebSockets in Rails.
|
// Action Cable provides the framework to deal with WebSockets in Rails.
|
||||||
// You can generate new channels where WebSocket features live using the rails generate channel command.
|
// You can generate new channels where WebSocket features live using the `rails generate channel` command.
|
||||||
//
|
//
|
||||||
//= require action_cable
|
//= require action_cable
|
||||||
//= require_self
|
//= require_self
|
||||||
|
|||||||
24
app/assets/javascripts/channels/order_queue_station.js
Normal file
24
app/assets/javascripts/channels/order_queue_station.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
App.order_queue_station = App.cable.subscriptions.create("OrderQueueStationChannel", {
|
||||||
|
connected: function() {},
|
||||||
|
|
||||||
|
disconnected: function() {},
|
||||||
|
|
||||||
|
received: function(message) {
|
||||||
|
alert(message);
|
||||||
|
},
|
||||||
|
|
||||||
|
order: function(message) {
|
||||||
|
return this.perform('order', {
|
||||||
|
message: message
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// $(function(){
|
||||||
|
// $("#submit_order").on('click', function(event) {
|
||||||
|
// var orderData=$("#new_order").serializeObject();
|
||||||
|
// App.order_station.order(orderData);
|
||||||
|
// //orderData='';
|
||||||
|
// return event.preventDefault();
|
||||||
|
// });
|
||||||
|
// });
|
||||||
3
app/assets/javascripts/print_settings.coffee
Normal file
3
app/assets/javascripts/print_settings.coffee
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Place all the behaviors and hooks related to the matching controller here.
|
||||||
|
# All this logic will automatically be available in application.js.
|
||||||
|
# You can use CoffeeScript in this file: http://coffeescript.org/
|
||||||
3
app/assets/javascripts/transactions/sales.coffee
Normal file
3
app/assets/javascripts/transactions/sales.coffee
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Place all the behaviors and hooks related to the matching controller here.
|
||||||
|
# All this logic will automatically be available in application.js.
|
||||||
|
# You can use CoffeeScript in this file: http://coffeescript.org/
|
||||||
@@ -14,3 +14,7 @@
|
|||||||
.order-void {
|
.order-void {
|
||||||
background-color: #FFCCDD;
|
background-color: #FFCCDD;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.selected-item {
|
||||||
|
background-color: blue;
|
||||||
|
}
|
||||||
|
|||||||
3
app/assets/stylesheets/print_settings.scss
Normal file
3
app/assets/stylesheets/print_settings.scss
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
// Place all the styles related to the print_settings controller here.
|
||||||
|
// They will automatically be included in application.css.
|
||||||
|
// You can use Sass (SCSS) here: http://sass-lang.com/
|
||||||
32
app/assets/stylesheets/settings.scss
Normal file
32
app/assets/stylesheets/settings.scss
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
@import "bootstrap";
|
||||||
|
@import "font-awesome";
|
||||||
|
@import "theme";
|
||||||
|
|
||||||
|
/* Show it is fixed to the top */
|
||||||
|
// body {
|
||||||
|
// min-height: 75rem;
|
||||||
|
// padding-top: 4.5rem;
|
||||||
|
// }
|
||||||
|
|
||||||
|
.setting_nav{
|
||||||
|
background-color: #2f5663;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.navbar-nav li a{
|
||||||
|
text-decoration :none;
|
||||||
|
color :#e6e6e6;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.dropdown-menu li a{
|
||||||
|
text-decoration :none;
|
||||||
|
color :#525252;
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting_breadcrumb{
|
||||||
|
background-color: transparent !important;
|
||||||
|
margin-bottom: 0px !important;
|
||||||
|
}
|
||||||
|
.page-header{
|
||||||
|
border-bottom :0px solid #000 !important;
|
||||||
|
margin :0px !important;
|
||||||
|
}
|
||||||
3
app/assets/stylesheets/transactions/sales.scss
Normal file
3
app/assets/stylesheets/transactions/sales.scss
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
// Place all the styles related to the transactions/Sales controller here.
|
||||||
|
// They will automatically be included in application.css.
|
||||||
|
// You can use Sass (SCSS) here: http://sass-lang.com/
|
||||||
@@ -1,4 +1,14 @@
|
|||||||
module ApplicationCable
|
module ApplicationCable
|
||||||
class Channel < ActionCable::Channel::Base
|
class Channel < ActionCable::Channel::Base
|
||||||
end
|
end
|
||||||
|
# Order Queue Station Channel
|
||||||
|
class OrderChannel < ActionCable::Channel::Base
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
# Order Queue Station Channel
|
||||||
|
class OQSChannel < ActionCable::Channel::Base
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
13
app/channels/order_queue_station_channel.rb
Normal file
13
app/channels/order_queue_station_channel.rb
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
class OrderQueueStationChannel < ApplicationCable::Channel
|
||||||
|
def subscribed
|
||||||
|
stream_from "order_queue_station_channel"
|
||||||
|
end
|
||||||
|
|
||||||
|
def unsubscribed
|
||||||
|
# Any cleanup needed when channel is unsubscribed
|
||||||
|
end
|
||||||
|
|
||||||
|
def order(message)
|
||||||
|
# ToDo
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -39,8 +39,8 @@ class Api::OrdersController < Api::ApiController
|
|||||||
|
|
||||||
#Create Table Booking or Room Booking
|
#Create Table Booking or Room Booking
|
||||||
if !params["booking_id"].nil? && params[:booking_id].to_i > 0
|
if !params["booking_id"].nil? && params[:booking_id].to_i > 0
|
||||||
@order.new_booking = false
|
#@order.new_booking = false
|
||||||
# @order.new_booking = true
|
@order.new_booking = true
|
||||||
@order.booking_id = params[:booking_id]
|
@order.booking_id = params[:booking_id]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,50 @@
|
|||||||
class Oqs::HomeController < BaseOqsController
|
class Oqs::HomeController < BaseOqsController
|
||||||
def index
|
def index
|
||||||
|
queue_stations=OrderQueueStation.all
|
||||||
|
|
||||||
|
@queue_items_details = queue_items_query(0)
|
||||||
|
|
||||||
|
@queue_completed_item = queue_items_query(1)
|
||||||
|
|
||||||
|
@queue_stations_items=Array.new
|
||||||
|
|
||||||
|
# Calculate Count for each station tab
|
||||||
|
queue_stations.each do |que|
|
||||||
|
i=0
|
||||||
|
@queue_items_details.each do |qid|
|
||||||
|
if qid.station_name == que.station_name
|
||||||
|
i=i+1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
@queue_stations_items.push({:station_name => que.station_name, :is_active => que.is_active ,:item_count => i })
|
||||||
|
end
|
||||||
|
|
||||||
|
@queue_stations_items
|
||||||
end
|
end
|
||||||
|
|
||||||
def show
|
def show
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# update delivery status when complete click
|
||||||
|
def update_delivery_status
|
||||||
|
assigned_item_id = params[:id]
|
||||||
|
assigned_item=AssignedOrderItem.find(assigned_item_id)
|
||||||
|
assigned_item.delivery_status=true
|
||||||
|
assigned_item.save
|
||||||
|
end
|
||||||
|
|
||||||
|
# Query for OQS with status
|
||||||
|
def queue_items_query(status)
|
||||||
|
AssignedOrderItem.select("assigned_order_items.id, oqs.station_name, oqs.is_active, df.name as zone, odt.item_code, odt.item_name, odt.price, odt.qty, odt.item_order_by, cus.name as customer_name, odt.created_at")
|
||||||
|
.joins("join order_queue_process_by_zones as oqpz ON oqpz.order_queue_station_id = assigned_order_items.order_queue_station_id
|
||||||
|
left join dining_facilities as df on df.zone_id = oqpz.zone_id
|
||||||
|
left join order_queue_stations as oqs ON oqs.id = assigned_order_items.order_queue_station_id
|
||||||
|
left join orders as od ON od.id = assigned_order_items.order_id
|
||||||
|
left join order_items as odt ON odt.item_code = assigned_order_items.item_code
|
||||||
|
left join customers as cus ON cus.id = od.customer_id")
|
||||||
|
.where("assigned_order_items.delivery_status = #{status}")
|
||||||
|
.group("assigned_order_items.id")
|
||||||
|
.order("odt.item_name DESC")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
16
app/controllers/oqs/print_controller.rb
Normal file
16
app/controllers/oqs/print_controller.rb
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
class Oqs::PrintController < ApplicationController
|
||||||
|
def print
|
||||||
|
unique_code="OrderItemPdf"
|
||||||
|
assigned_item_id=params[:id]
|
||||||
|
assigned_order_item=AssignedOrderItem.select("order_id, item_code").where('id='+assigned_item_id)
|
||||||
|
|
||||||
|
print_settings=PrintSetting.find_by_unique_code(unique_code)
|
||||||
|
order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
|
||||||
|
order_queue_printer.print_order_item(print_settings,assigned_order_item[0].order_id, assigned_order_item[0].item_code )
|
||||||
|
|
||||||
|
# update print status when complete click
|
||||||
|
assigned_item=AssignedOrderItem.find(assigned_item_id)
|
||||||
|
assigned_item.print_status=true
|
||||||
|
assigned_item.save
|
||||||
|
end
|
||||||
|
end
|
||||||
74
app/controllers/print_settings_controller.rb
Normal file
74
app/controllers/print_settings_controller.rb
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
class PrintSettingsController < ApplicationController
|
||||||
|
before_action :set_print_setting, only: [:show, :edit, :update, :destroy]
|
||||||
|
|
||||||
|
# GET /print_settings
|
||||||
|
# GET /print_settings.json
|
||||||
|
def index
|
||||||
|
@print_settings = PrintSetting.all
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /print_settings/1
|
||||||
|
# GET /print_settings/1.json
|
||||||
|
def show
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /print_settings/new
|
||||||
|
def new
|
||||||
|
@print_setting = PrintSetting.new
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /print_settings/1/edit
|
||||||
|
def edit
|
||||||
|
end
|
||||||
|
|
||||||
|
# POST /print_settings
|
||||||
|
# POST /print_settings.json
|
||||||
|
def create
|
||||||
|
@print_setting = PrintSetting.new(print_setting_params)
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
if @print_setting.save
|
||||||
|
format.html { redirect_to @print_setting, notice: 'Print setting was successfully created.' }
|
||||||
|
format.json { render :show, status: :created, location: @print_setting }
|
||||||
|
else
|
||||||
|
format.html { render :new }
|
||||||
|
format.json { render json: @print_setting.errors, status: :unprocessable_entity }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# PATCH/PUT /print_settings/1
|
||||||
|
# PATCH/PUT /print_settings/1.json
|
||||||
|
def update
|
||||||
|
respond_to do |format|
|
||||||
|
if @print_setting.update(print_setting_params)
|
||||||
|
format.html { redirect_to @print_setting, notice: 'Print setting was successfully updated.' }
|
||||||
|
format.json { render :show, status: :ok, location: @print_setting }
|
||||||
|
else
|
||||||
|
format.html { render :edit }
|
||||||
|
format.json { render json: @print_setting.errors, status: :unprocessable_entity }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# DELETE /print_settings/1
|
||||||
|
# DELETE /print_settings/1.json
|
||||||
|
def destroy
|
||||||
|
@print_setting.destroy
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { redirect_to print_settings_url, notice: 'Print setting was successfully destroyed.' }
|
||||||
|
format.json { head :no_content }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
# Use callbacks to share common setup or constraints between actions.
|
||||||
|
def set_print_setting
|
||||||
|
@print_setting = PrintSetting.find(params[:id])
|
||||||
|
end
|
||||||
|
|
||||||
|
# Never trust parameters from the scary internet, only allow the white list through.
|
||||||
|
def print_setting_params
|
||||||
|
params.require(:print_setting).permit(:name, :unique_code, :template, :db_name, :db_type, :db_username, :db_password, :printer_name, :api_settings, :page_width, :page_height, :print_copies)
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -5,7 +5,7 @@ class Settings::MenuCategoriesController < ApplicationController
|
|||||||
# GET /settings/menu_categories
|
# GET /settings/menu_categories
|
||||||
# GET /settings/menu_categories.json
|
# GET /settings/menu_categories.json
|
||||||
def index
|
def index
|
||||||
@settings_menu_categories = MenuCategory.all
|
@settings_menu_categories = MenuCategory.all.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menu_categories/1
|
# GET /settings/menu_categories/1
|
||||||
@@ -63,7 +63,7 @@ class Settings::MenuCategoriesController < ApplicationController
|
|||||||
# DELETE /settings/menu_categories/1
|
# DELETE /settings/menu_categories/1
|
||||||
# DELETE /settings/menu_categories/1.json
|
# DELETE /settings/menu_categories/1.json
|
||||||
def destroy
|
def destroy
|
||||||
@settings_menu_category.destroy
|
# @settings_menu_category.destroy
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to settings_menu_categories_path, notice: 'Menu category was successfully destroyed.' }
|
format.html { redirect_to settings_menu_categories_path, notice: 'Menu category was successfully destroyed.' }
|
||||||
format.json { head :no_content }
|
format.json { head :no_content }
|
||||||
|
|||||||
79
app/controllers/settings/menu_item_instances_controller.rb
Normal file
79
app/controllers/settings/menu_item_instances_controller.rb
Normal file
@@ -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(:item_instance_code, :item_instance_name, :price, :is_on_promotion, :promotion_price, :is_available)
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -4,12 +4,13 @@ class Settings::MenusController < ApplicationController
|
|||||||
# GET /settings/menus
|
# GET /settings/menus
|
||||||
# GET /settings/menus.json
|
# GET /settings/menus.json
|
||||||
def index
|
def index
|
||||||
@settings_menus = Menu.all
|
@settings_menus = Menu.all.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menus/1
|
# GET /settings/menus/1
|
||||||
# GET /settings/menus/1.json
|
# GET /settings/menus/1.json
|
||||||
def show
|
def show
|
||||||
|
@settings_menu_categories = @settings_menu.menu_categories.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menus/new
|
# GET /settings/menus/new
|
||||||
@@ -25,7 +26,7 @@ class Settings::MenusController < ApplicationController
|
|||||||
# POST /settings/menus.json
|
# POST /settings/menus.json
|
||||||
def create
|
def create
|
||||||
@settings_menu = Menu.new(settings_menu_params)
|
@settings_menu = Menu.new(settings_menu_params)
|
||||||
|
@settings_menu.created_by = current_login_employee.name
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu.save
|
if @settings_menu.save
|
||||||
format.html { redirect_to settings_menus_path, notice: 'Menu was successfully created.' }
|
format.html { redirect_to settings_menus_path, notice: 'Menu was successfully created.' }
|
||||||
@@ -42,7 +43,7 @@ class Settings::MenusController < ApplicationController
|
|||||||
def update
|
def update
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu.update(settings_menu_params)
|
if @settings_menu.update(settings_menu_params)
|
||||||
format.html { redirect_to settings_menu_path(@settings_menu), notice: 'Menu was successfully updated.' }
|
format.html { redirect_to settings_menus_path, notice: 'Menu was successfully updated.' }
|
||||||
format.json { render :show, status: :ok, location: @settings_menu }
|
format.json { render :show, status: :ok, location: @settings_menu }
|
||||||
else
|
else
|
||||||
format.html { render :edit }
|
format.html { render :edit }
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class Settings::OrderQueueStationsController < ApplicationController
|
class Settings::OrderQueueStationsController < ApplicationController
|
||||||
before_action :set_settings_order_queue_station, only: [:show, :edit,:new, :update, :destroy]
|
before_action :set_settings_order_queue_station, only: [:show, :edit, :update, :destroy]
|
||||||
|
|
||||||
# GET /settings/order_queue_stations
|
# GET /settings/order_queue_stations
|
||||||
# GET /settings/order_queue_stations.json
|
# GET /settings/order_queue_stations.json
|
||||||
@@ -25,10 +25,10 @@ class Settings::OrderQueueStationsController < ApplicationController
|
|||||||
# POST /settings/order_queue_stations.json
|
# POST /settings/order_queue_stations.json
|
||||||
def create
|
def create
|
||||||
@settings_order_queue_station = OrderQueueStation.new(settings_order_queue_station_params)
|
@settings_order_queue_station = OrderQueueStation.new(settings_order_queue_station_params)
|
||||||
|
@settings_order_queue_station.created_by = current_login_employee.name
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_order_queue_station.save
|
if @settings_order_queue_station.save
|
||||||
format.html { redirect_to @settings_order_queue_station, notice: 'Order queue station was successfully created.' }
|
format.html { redirect_to settings_order_queue_stations_path, notice: 'Order queue station was successfully created.' }
|
||||||
format.json { render :show, status: :created, location: @settings_order_queue_station }
|
format.json { render :show, status: :created, location: @settings_order_queue_station }
|
||||||
else
|
else
|
||||||
format.html { render :new }
|
format.html { render :new }
|
||||||
|
|||||||
@@ -1,20 +1,22 @@
|
|||||||
class Settings::SetMenuItemsController < ApplicationController
|
class Settings::SetMenuItemsController < ApplicationController
|
||||||
before_action :set_settings_menu_item, only: [:show, :edit, :update, :destroy]
|
before_action :set_settings_menu_item, only: [:show, :edit, :update, :destroy]
|
||||||
before_action :set_settings_menu_category, only: [:index, :show, :edit, :new]
|
before_action :set_settings_menu_category, only: [:index, :show, :edit, :new, :update]
|
||||||
# GET /settings/menu_items
|
# GET /settings/menu_items
|
||||||
# GET /settings/menu_items.json
|
# GET /settings/menu_items.json
|
||||||
def index
|
def index
|
||||||
@settings_menu_items = @category.menu_items
|
@settings_menu_items = @category.menu_items.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menu_items/1
|
# GET /settings/menu_items/1
|
||||||
# GET /settings/menu_items/1.json
|
# GET /settings/menu_items/1.json
|
||||||
def show
|
def show
|
||||||
|
@sub_menu = MenuItem.where("menu_item_id=?",params[:id]).page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menu_items/new
|
# GET /settings/menu_items/new
|
||||||
def new
|
def new
|
||||||
@settings_menu_item = MenuItem.new
|
@settings_menu_item = MenuItem.new
|
||||||
|
@settings_menu_item.type = "SetMenuItem"
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menu_items/1/edit
|
# GET /settings/menu_items/1/edit
|
||||||
@@ -25,10 +27,13 @@ class Settings::SetMenuItemsController < ApplicationController
|
|||||||
# POST /settings/menu_items.json
|
# POST /settings/menu_items.json
|
||||||
def create
|
def create
|
||||||
@settings_menu_item = MenuItem.new(settings_menu_item_params)
|
@settings_menu_item = MenuItem.new(settings_menu_item_params)
|
||||||
|
if params[:simple_menu_item][:menu_item_id] == ''
|
||||||
|
@settings_menu_item.menu_category_id = params[:menu_category_id]
|
||||||
|
end
|
||||||
|
@settings_menu_item.created_by = current_login_employee.name
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu_item.save
|
if @settings_menu_item.save
|
||||||
format.html { redirect_to settings_menu_items_path, notice: 'Menu item was successfully created.' }
|
format.html { redirect_to settings_menu_category_set_menu_items_path, notice: 'Menu item was successfully created.' }
|
||||||
format.json { render :show, status: :created, location: @settings_menu_item }
|
format.json { render :show, status: :created, location: @settings_menu_item }
|
||||||
else
|
else
|
||||||
format.html { render :new }
|
format.html { render :new }
|
||||||
@@ -42,7 +47,7 @@ class Settings::SetMenuItemsController < ApplicationController
|
|||||||
def update
|
def update
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu_item.update(settings_menu_item_params)
|
if @settings_menu_item.update(settings_menu_item_params)
|
||||||
format.html { redirect_to settings_menu_item_path(@settings_menu_item), notice: 'Menu item was successfully updated.' }
|
format.html { redirect_to settings_menu_category_set_menu_items_path, notice: 'Menu item was successfully updated.' }
|
||||||
format.json { render :show, status: :ok, location: @settings_menu_item }
|
format.json { render :show, status: :ok, location: @settings_menu_item }
|
||||||
else
|
else
|
||||||
format.html { render :edit }
|
format.html { render :edit }
|
||||||
@@ -54,9 +59,9 @@ class Settings::SetMenuItemsController < ApplicationController
|
|||||||
# DELETE /settings/menu_items/1
|
# DELETE /settings/menu_items/1
|
||||||
# DELETE /settings/menu_items/1.json
|
# DELETE /settings/menu_items/1.json
|
||||||
def destroy
|
def destroy
|
||||||
@settings_menu_item.destroy
|
# @settings_menu_item.destroy
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to settings_menu_items_path, notice: 'Menu item was successfully destroyed.' }
|
format.html { redirect_to settings_menu_category_set_menu_items_path, notice: 'Menu item was successfully destroyed.' }
|
||||||
format.json { head :no_content }
|
format.json { head :no_content }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -73,6 +78,6 @@ class Settings::SetMenuItemsController < ApplicationController
|
|||||||
|
|
||||||
# Never trust parameters from the scary internet, only allow the white list through.
|
# Never trust parameters from the scary internet, only allow the white list through.
|
||||||
def settings_menu_item_params
|
def settings_menu_item_params
|
||||||
params.require(:menu_item).permit(:item_code, :name, :alt_name, :type, :menu_category_id, :menu_item_id, :min_qty, :min_selectable_item, :max_selectable_item, :created_by)
|
params.require(:set_menu_item).permit(:item_code, :name, :alt_name, :type, :menu_category_id, :menu_item_id, :min_qty, :min_selectable_item, :max_selectable_item, :created_by)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,15 +1,17 @@
|
|||||||
class Settings::SimpleMenuItemsController < ApplicationController
|
class Settings::SimpleMenuItemsController < ApplicationController
|
||||||
before_action :set_settings_menu_item, only: [:show, :edit, :update, :destroy]
|
before_action :set_settings_menu_item, only: [:show, :edit, :update, :destroy ]
|
||||||
before_action :set_settings_menu_category, only: [:index, :show, :edit, :new]
|
before_action :set_settings_menu_category, only: [:index, :show, :edit, :new, :update ,:create]
|
||||||
# GET /settings/menu_items
|
# GET /settings/menu_items
|
||||||
# GET /settings/menu_items.json
|
# GET /settings/menu_items.json
|
||||||
def index
|
def index
|
||||||
@settings_menu_items = @category.menu_items
|
@settings_menu_items = @category.menu_items.page(params[:page]).per(10)
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /settings/menu_items/1
|
# GET /settings/menu_items/1
|
||||||
# GET /settings/menu_items/1.json
|
# GET /settings/menu_items/1.json
|
||||||
def show
|
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
|
end
|
||||||
|
|
||||||
# GET /settings/menu_items/new
|
# GET /settings/menu_items/new
|
||||||
@@ -25,10 +27,13 @@ class Settings::SimpleMenuItemsController < ApplicationController
|
|||||||
# POST /settings/menu_items.json
|
# POST /settings/menu_items.json
|
||||||
def create
|
def create
|
||||||
@settings_menu_item = MenuItem.new(settings_menu_item_params)
|
@settings_menu_item = MenuItem.new(settings_menu_item_params)
|
||||||
|
if params[:simple_menu_item][:menu_item_id] == ''
|
||||||
|
@settings_menu_item.menu_category_id = params[:menu_category_id]
|
||||||
|
end
|
||||||
|
@settings_menu_item.created_by = current_login_employee.name
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu_item.save
|
if @settings_menu_item.save
|
||||||
format.html { redirect_to settings_menu_items_path, notice: 'Menu item was successfully created.' }
|
format.html { redirect_to settings_menu_category_simple_menu_items_path, notice: 'Menu item was successfully created.' }
|
||||||
format.json { render :show, status: :created, location: @settings_menu_item }
|
format.json { render :show, status: :created, location: @settings_menu_item }
|
||||||
else
|
else
|
||||||
format.html { render :new }
|
format.html { render :new }
|
||||||
@@ -42,7 +47,7 @@ class Settings::SimpleMenuItemsController < ApplicationController
|
|||||||
def update
|
def update
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @settings_menu_item.update(settings_menu_item_params)
|
if @settings_menu_item.update(settings_menu_item_params)
|
||||||
format.html { redirect_to settings_menu_item_path(@settings_menu_item), notice: 'Menu item was successfully updated.' }
|
format.html { redirect_to settings_menu_category_simple_menu_items_path, notice: 'Menu item was successfully updated.' }
|
||||||
format.json { render :show, status: :ok, location: @settings_menu_item }
|
format.json { render :show, status: :ok, location: @settings_menu_item }
|
||||||
else
|
else
|
||||||
format.html { render :edit }
|
format.html { render :edit }
|
||||||
@@ -54,9 +59,9 @@ class Settings::SimpleMenuItemsController < ApplicationController
|
|||||||
# DELETE /settings/menu_items/1
|
# DELETE /settings/menu_items/1
|
||||||
# DELETE /settings/menu_items/1.json
|
# DELETE /settings/menu_items/1.json
|
||||||
def destroy
|
def destroy
|
||||||
@settings_menu_item.destroy
|
# @settings_menu_item.destroy
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to settings_menu_items_path, notice: 'Menu item was successfully destroyed.' }
|
format.html { redirect_to settings_menu_category_simple_menu_items_path, notice: 'Menu item was successfully destroyed.' }
|
||||||
format.json { head :no_content }
|
format.json { head :no_content }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
74
app/controllers/transactions/sales_controller.rb
Normal file
74
app/controllers/transactions/sales_controller.rb
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
class Transactions::SalesController < ApplicationController
|
||||||
|
before_action :set_transactions_sale, only: [:show, :edit, :update, :destroy]
|
||||||
|
|
||||||
|
# GET /transactions/sales
|
||||||
|
# GET /transactions/sales.json
|
||||||
|
def index
|
||||||
|
@transactions_sales = Sale.all
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /transactions/sales/1
|
||||||
|
# GET /transactions/sales/1.json
|
||||||
|
def show
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /transactions/sales/new
|
||||||
|
def new
|
||||||
|
@transactions_sale = Sale.new
|
||||||
|
end
|
||||||
|
|
||||||
|
# GET /transactions/sales/1/edit
|
||||||
|
def edit
|
||||||
|
end
|
||||||
|
|
||||||
|
# POST /transactions/sales
|
||||||
|
# POST /transactions/sales.json
|
||||||
|
def create
|
||||||
|
@transactions_sale = Sale.new(transactions_sale_params)
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
if @transactions_sale.save
|
||||||
|
format.html { redirect_to @transactions_sale, notice: 'Sale was successfully created.' }
|
||||||
|
format.json { render :show, status: :created, location: @transactions_sale }
|
||||||
|
else
|
||||||
|
format.html { render :new }
|
||||||
|
format.json { render json: @transactions_sale.errors, status: :unprocessable_entity }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# PATCH/PUT /transactions/sales/1
|
||||||
|
# PATCH/PUT /transactions/sales/1.json
|
||||||
|
def update
|
||||||
|
respond_to do |format|
|
||||||
|
if @transactions_sale.update(transactions_sale_params)
|
||||||
|
format.html { redirect_to @transactions_sale, notice: 'Sale was successfully updated.' }
|
||||||
|
format.json { render :show, status: :ok, location: @transactions_sale }
|
||||||
|
else
|
||||||
|
format.html { render :edit }
|
||||||
|
format.json { render json: @transactions_sale.errors, status: :unprocessable_entity }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# DELETE /transactions/sales/1
|
||||||
|
# DELETE /transactions/sales/1.json
|
||||||
|
def destroy
|
||||||
|
@transactions_sale.destroy
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { redirect_to transactions_sales_url, notice: 'Sale was successfully destroyed.' }
|
||||||
|
format.json { head :no_content }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
# Use callbacks to share common setup or constraints between actions.
|
||||||
|
def set_transactions_sale
|
||||||
|
@transactions_sale = Sale.find(params[:id])
|
||||||
|
end
|
||||||
|
|
||||||
|
# Never trust parameters from the scary internet, only allow the white list through.
|
||||||
|
def transactions_sale_params
|
||||||
|
params.require(:transactions_sale).permit(:cashier_id, :cashier_name, :requested_by, :requested_at, :receipt_no, :receipt_date, :customer_id, :payment_status, :sale_status, :total_amount, :total_discount, :total_tax, :tax_type, :grand_total, :rounding_adjustment, :amount_received, :amount_changed)
|
||||||
|
end
|
||||||
|
end
|
||||||
2
app/helpers/oqs/print_helper.rb
Normal file
2
app/helpers/oqs/print_helper.rb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
module Oqs::PrintHelper
|
||||||
|
end
|
||||||
2
app/helpers/print_settings_helper.rb
Normal file
2
app/helpers/print_settings_helper.rb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
module PrintSettingsHelper
|
||||||
|
end
|
||||||
2
app/helpers/transactions/sales_helper.rb
Normal file
2
app/helpers/transactions/sales_helper.rb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
module Transactions::SalesHelper
|
||||||
|
end
|
||||||
8
app/jobs/order_broadcast_job.rb
Normal file
8
app/jobs/order_broadcast_job.rb
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
class OrderBroadcastJob < ApplicationJob
|
||||||
|
queue_as :default
|
||||||
|
|
||||||
|
def perform(message)
|
||||||
|
order = Order.find(message) # message come as order_id
|
||||||
|
ApplicationCable.server.broadcast "order_queue_station_channel", order: order
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -5,6 +5,7 @@ class OrderQueueProcessorJob < ApplicationJob
|
|||||||
# Do something later
|
# Do something later
|
||||||
#Order ID
|
#Order ID
|
||||||
order = Order.find(order_id)
|
order = Order.find(order_id)
|
||||||
|
|
||||||
#Loop through the order stations and process the items
|
#Loop through the order stations and process the items
|
||||||
#Execute orders and send to order stations
|
#Execute orders and send to order stations
|
||||||
if order
|
if order
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
class Menu < ApplicationRecord
|
class Menu < ApplicationRecord
|
||||||
has_many :menu_categories, dependent: :destroy
|
has_many :menu_categories, dependent: :destroy
|
||||||
|
|
||||||
validates_presence_of :name, :is_active, :valid_days, :valid_time_from, :valid_time_to
|
validates_presence_of :name, :valid_days, :valid_time_from, :valid_time_to
|
||||||
|
validates_format_of :valid_days, :with => /\A([0-7]{1}(,[0-7]{1})*)?\Z/i
|
||||||
#Default Scope to pull the active version only
|
#Default Scope to pull the active version only
|
||||||
default_scope { where(is_active: true).order("created_at desc") }
|
default_scope { where(is_active: true).order("created_at desc") }
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
class MenuItem < ApplicationRecord
|
class MenuItem < ApplicationRecord
|
||||||
|
belongs_to :account
|
||||||
belongs_to :menu_category, :optional => true
|
belongs_to :menu_category, :optional => true
|
||||||
has_many :menu_item_instances
|
has_many :menu_item_instances
|
||||||
belongs_to :parent, :class_name => "MenuItem", foreign_key: "menu_item_id", :optional => true
|
belongs_to :parent, :class_name => "MenuItem", foreign_key: "menu_item_id", :optional => true
|
||||||
has_many :children, :class_name => "MenuItem", foreign_key: "menu_item_id"
|
has_many :children, :class_name => "MenuItem", foreign_key: "menu_item_id"
|
||||||
belongs_to :account
|
|
||||||
|
validates_presence_of :item_code, :type, :min_qty, :taxable, :min_selectable_item, :max_selectable_item
|
||||||
|
|
||||||
default_scope { order('item_code asc') }
|
default_scope { order('item_code asc') }
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ class Order < ApplicationRecord
|
|||||||
#internal references attributes for business logic control
|
#internal references attributes for business logic control
|
||||||
attr_accessor :items, :guest, :table_id, :new_booking, :booking_type, :employee_name, :booking_id
|
attr_accessor :items, :guest, :table_id, :new_booking, :booking_type, :employee_name, :booking_id
|
||||||
|
|
||||||
|
|
||||||
#Main Controller method to create new order - validate all inputs and generate new order
|
#Main Controller method to create new order - validate all inputs and generate new order
|
||||||
# order_item : {
|
# order_item : {
|
||||||
# order_item_code : "",
|
# order_item_code : "",
|
||||||
@@ -17,6 +16,7 @@ class Order < ApplicationRecord
|
|||||||
# option_values : [],
|
# option_values : [],
|
||||||
# sub_order_items : [],
|
# sub_order_items : [],
|
||||||
# }
|
# }
|
||||||
|
|
||||||
def generate
|
def generate
|
||||||
booking = nil
|
booking = nil
|
||||||
|
|
||||||
@@ -43,6 +43,9 @@ class Order < ApplicationRecord
|
|||||||
#Send order to queue one it done!
|
#Send order to queue one it done!
|
||||||
process_order_queue
|
process_order_queue
|
||||||
|
|
||||||
|
#send order to broadcast job
|
||||||
|
send_order_broadcast
|
||||||
|
|
||||||
return true, booking
|
return true, booking
|
||||||
|
|
||||||
end
|
end
|
||||||
@@ -202,6 +205,13 @@ class Order < ApplicationRecord
|
|||||||
OrderQueueProcessorJob.perform_later(self.id)
|
OrderQueueProcessorJob.perform_later(self.id)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
#send order items and send to order queue
|
||||||
|
def send_order_broadcast
|
||||||
|
#Send to background job for processing
|
||||||
|
OrderBroadcastJob.perform_later(self.id)
|
||||||
|
end
|
||||||
|
|
||||||
#Origami: Cashier : to view order type Table
|
#Origami: Cashier : to view order type Table
|
||||||
def self.get_order_table
|
def self.get_order_table
|
||||||
order_table = Order.select("orders.id as order_id,sum(order_items.qty*order_items.price) as total_price,
|
order_table = Order.select("orders.id as order_id,sum(order_items.qty*order_items.price) as total_price,
|
||||||
|
|||||||
2
app/models/print_setting.rb
Normal file
2
app/models/print_setting.rb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
class PrintSetting < ApplicationRecord
|
||||||
|
end
|
||||||
@@ -1,22 +1,46 @@
|
|||||||
class Printer::OrderQueuePrinter < Printer::PrinterWorker
|
class Printer::OrderQueuePrinter < Printer::PrinterWorker
|
||||||
|
|
||||||
def print_order_item(order_queue_id)
|
def print_order_item(printer_settings,order_id, item_code)
|
||||||
#Use CUPS service
|
#Use CUPS service
|
||||||
#Generate PDF
|
#Generate PDF
|
||||||
#Print
|
#Print
|
||||||
pdf = OrderItemPdf.new
|
order_item= print_query('order_item', item_code) #OrderItem.find_by_item_code(item_code)
|
||||||
pdf.render_file "tmp/order_item_queue_#{order_id}_#{order_item_id}" + ".pdf"
|
pdf = OrderItemPdf.new(order_item[0],printer_settings)
|
||||||
|
pdf.render_file "tmp/receipt.pdf"
|
||||||
self.print("tmp/receipt.pdf")
|
self.print("tmp/receipt.pdf")
|
||||||
end
|
end
|
||||||
|
|
||||||
def print_order_summary(booking_id)
|
def print_order_summary(printer_settings,booking_id)
|
||||||
#Use CUPS service
|
#Use CUPS service
|
||||||
#Generate PDF
|
#Generate PDF
|
||||||
#Print
|
#Print
|
||||||
|
order=print_query('booking',booking_id)
|
||||||
filename = "tmp/order_summary_#{booking_id}" + ".pdf"
|
filename = "tmp/order_summary_#{booking_id}" + ".pdf"
|
||||||
pdf = OrderSummaryPdf.new
|
pdf = OrderSummaryPdf.new(order,printer_settings)
|
||||||
pdf.render_file filename
|
pdf.render_file filename
|
||||||
|
|
||||||
self.print(filename)
|
self.print(filename)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Query for OQS with status
|
||||||
|
def print_query(type, code)
|
||||||
|
if type == 'order_item'
|
||||||
|
OrderItem.select("order_items.item_code, order_items.item_name,order_items.item_order_by as order_by, order_items.created_at as order_at, cus.name as customer, df.name as dining")
|
||||||
|
.joins("left join orders ON orders.id = order_items.order_id
|
||||||
|
left join booking_orders AS bo ON bo.order_id=order_items.order_id
|
||||||
|
left join bookings AS b ON b.id = bo.booking_id
|
||||||
|
left join dining_facilities AS df ON df.id = b.dining_facility_id
|
||||||
|
left join customers as cus ON cus.id = orders.customer_id")
|
||||||
|
.where("order_items.item_code=" + code)
|
||||||
|
.group("order_items.item_code")
|
||||||
|
else
|
||||||
|
OrderItem.select("order_items.item_code, order_items.item_name, df.name as dining")
|
||||||
|
.joins("left join orders ON orders.id = order_items.order_id
|
||||||
|
left join booking_orders AS bo ON bo.order_id=order_items.order_id
|
||||||
|
left join bookings AS b ON b.id = bo.booking_id
|
||||||
|
left join dining_facilities AS df ON df.id = b.dining_facility_id")
|
||||||
|
.where("booking.id=" + code)
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
class SaleDiscount < ApplicationRecord
|
|
||||||
belongs_to :sale
|
|
||||||
end
|
|
||||||
2
app/models/test.rb
Normal file
2
app/models/test.rb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
class Test < ApplicationRecord
|
||||||
|
end
|
||||||
5
app/models/transactions.rb
Normal file
5
app/models/transactions.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
module Transactions
|
||||||
|
def self.table_name_prefix
|
||||||
|
'transactions_'
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -6,13 +6,26 @@ class OrderItemPdf < Prawn::Document
|
|||||||
# font "public/fonts/#{font_name}".to_s + ".ttf".to_s
|
# font "public/fonts/#{font_name}".to_s + ".ttf".to_s
|
||||||
# font "public/fonts/Zawgyi-One.ttf"
|
# font "public/fonts/Zawgyi-One.ttf"
|
||||||
# font "public/fonts/padauk.ttf"
|
# font "public/fonts/padauk.ttf"
|
||||||
|
|
||||||
|
|
||||||
font_size 9
|
font_size 9
|
||||||
text "#{"table_name"}", :size => 15
|
text "#{order_item.dining}", :size => 15
|
||||||
stroke_horizontal_rule
|
stroke_horizontal_rule
|
||||||
move_down 5
|
move_down 5
|
||||||
|
|
||||||
|
cashier_info(order_item.order_by,order_item.order_at, order_item.customer)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def cashier_info(order_by, order_at, customer)
|
||||||
|
move_down 5
|
||||||
|
y_position = cursor
|
||||||
|
|
||||||
|
bounding_box([0,y_position], :width =>200, :height => 20) do
|
||||||
|
text "OrderBy:#{order_by} Customer:#{customer} Date:#{order_at.strftime("%Y %m %d")}", :size => 7,:align => :left
|
||||||
|
end
|
||||||
|
|
||||||
|
stroke_horizontal_rule
|
||||||
|
|
||||||
|
move_down 5
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<nav class="navbar navbar-toggleable-md fixed-top navbar-light">
|
<nav class="navbar navbar-toggleable-md fixed-top navbar-light setting_nav">
|
||||||
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
|
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
|
||||||
<span class="navbar-toggler-icon"></span>
|
<span class="navbar-toggler-icon"></span>
|
||||||
</button>
|
</button>
|
||||||
<a class="navbar-brand" href="#">H</a>
|
<a class="navbar-brand" href="#" style="color: rgba(67, 185, 220, 0.9)">E-menu</a>
|
||||||
<div class="collapse navbar-collapse" id="navbarCollapse">
|
<div class="collapse navbar-collapse" id="navbarCollapse">
|
||||||
<ul class="navbar-nav mr-auto">
|
<ul class="navbar-nav mr-auto">
|
||||||
<li class="navbar-nav mr-auto dropdown">
|
<li class="navbar-nav mr-auto dropdown">
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="navbar-nav mr-auto dropdown">
|
<li class="navbar-nav mr-auto dropdown">
|
||||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Transactions</a>
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> Transactions</a>
|
||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li><%= link_to "Orders ", origami_root_path, :tabindex =>"-1" %></li>
|
<li><%= link_to "Orders ", origami_root_path, :tabindex =>"-1" %></li>
|
||||||
<li><%= link_to "Sales ", crm_root_path, :tabindex =>"-1" %></li>
|
<li><%= link_to "Sales ", crm_root_path, :tabindex =>"-1" %></li>
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
<% if current_login_employee %>
|
<% if current_login_employee %>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
<ul class="navbar-nav mr-auto">
|
<ul class="navbar-nav mr-auto">
|
||||||
<li><%= current_login_employee.name %> </li>
|
<li style="color: #959595"><%= current_login_employee.name %> </li>
|
||||||
<li style="padding-right:10px;padding-left:10px"> | </li>
|
<li style="padding-right:10px;padding-left:10px"> | </li>
|
||||||
<li ><%= link_to 'Logout', logout_path, method: :delete, data: { confirm: 'Are you sure?' } %>
|
<li ><%= link_to 'Logout', logout_path, method: :delete, data: { confirm: 'Are you sure?' } %>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
<%= csrf_meta_tags %>
|
<%= csrf_meta_tags %>
|
||||||
|
|
||||||
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
|
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
|
||||||
|
<%= stylesheet_link_tag 'settings', media: 'all', 'data-turbolinks-track': 'reload' %>
|
||||||
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
|
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|||||||
@@ -1,315 +1,142 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
|
<!-- Column One -->
|
||||||
<div class="col-lg-8 col-md-8 col-sm-8">
|
<div class="col-lg-8 col-md-8 col-sm-8">
|
||||||
<!-- Column One -->
|
|
||||||
|
|
||||||
<!-- Nav tabs -->
|
<!-- Nav tabs -->
|
||||||
<ul class="nav nav-tabs" role="tablist">
|
<ul class="nav nav-tabs" role="tablist">
|
||||||
|
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" data-toggle="tab" href="#completed" role="tab">Processed <span class="badge badge-pill badge-default">2000</span></a>
|
<a class="nav-link active" data-toggle="tab" href="#completed" role="tab">Processed <span class="badge badge-pill badge-default" id="completed_count"><%= @queue_completed_item.length %></span></a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<%
|
||||||
|
# For Tab Disable for Station is inactive
|
||||||
|
status=""
|
||||||
|
@queue_stations_items.each do |qsi|
|
||||||
|
if qsi[:is_active] == false
|
||||||
|
status="disabled"
|
||||||
|
end
|
||||||
|
%>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link active" data-toggle="tab" href="#tables" role="tab">Queue 1 <span class="badge badge-pill badge-default">18</span></a>
|
<a class="nav-link" data-toggle="tab" href=<%= '#' + qsi[:station_name].gsub(' ', '_') %> role="tab" <%= status %>>
|
||||||
</li>
|
<%= qsi[:station_name] %>
|
||||||
<li class="nav-item">
|
<span class="badge badge-pill badge-default" id=<%= qsi[:station_name].gsub(' ', '_') + '_count' %>>
|
||||||
<a class="nav-link" data-toggle="tab" href="#rooms" role="tab">Queue 2</a>
|
<%= qsi[:item_count] %>
|
||||||
</li>
|
</span>
|
||||||
<li class="nav-item">
|
</a>
|
||||||
<a class="nav-link" data-toggle="tab" href="#orders" role="tab">Queue 3</a>
|
|
||||||
</li>
|
</li>
|
||||||
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
<!-- Nav tabs - End -->
|
<!-- Nav tabs - End -->
|
||||||
|
|
||||||
<div class="tab-content" style="min-height:670px; max-height:670px; overflow-y:scroll">
|
<div class="tab-content" style="min-height:670px; max-height:670px; overflow:auto">
|
||||||
<!--- Panel 0 - Completed -->
|
<!--- Panel 0 - Completed -->
|
||||||
<div class="tab-pane" id="completed" role="tabpanel" style="min-height:670px; max-height:670px; overflow-y:scroll">
|
<div class="tab-pane active" id="completed" role="tabpanel">
|
||||||
<div class="card-columns" style="padding-top:10px">
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
||||||
<div class="card">
|
<%
|
||||||
<div class="card-block order-completed">
|
@queue_completed_item.each do |qid|
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
%>
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
<div class="card queue_station">
|
||||||
<p class="card-text">
|
<div class="card-block">
|
||||||
<small class="text-muted">Order at 12:23, Kyaw Lwin</small> |
|
<h4 class="card-title">
|
||||||
<small class="text-muted">Printed at 12:23</small> |
|
<span class="order-zone">
|
||||||
<small class="text-muted">Completed at 12:43</small>
|
<%= qid.zone %>
|
||||||
</p>
|
</span> -
|
||||||
|
<span class="order-item">
|
||||||
|
<%= qid.item_name %>
|
||||||
</div>
|
</span> [x
|
||||||
</div>
|
<span class="order-qty">
|
||||||
<div class="card">
|
<%= qid.qty %>
|
||||||
<div class="card-block order-void">
|
</span> ]
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
</h4>
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
<p class="card-text">Medium, Fries, Salad</p>
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
<p class="card-text">
|
||||||
</div>
|
<small class="text-muted">Order at
|
||||||
</div>
|
<span class="order-at">
|
||||||
<div class="card">
|
<%= qid.created_at.strftime("%Y %m %d") %>
|
||||||
<div class="card-block">
|
</span> -
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
<span class="order-by">
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
<%= qid.item_order_by %>
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
</span>
|
||||||
</div>
|
</small>
|
||||||
</div>
|
</p>
|
||||||
</div>
|
<p class="hidden order-customer"><%= qid.customer_name %></p>
|
||||||
|
<p class="hidden assigned-order-item"><%= qid.id %></p>
|
||||||
</div>
|
</div>
|
||||||
<!-- Panel 1 - Tables -->
|
<!-- <div class="card-footer">
|
||||||
<div class="tab-pane active" id="tables" role="tabpanel">
|
<button id=<%= 'assigned_queue_' + qid.id.to_s %> class="btn btn-primary btn-lg btn-block order-complete">COMPLETE</button>
|
||||||
<!--- Booking Items -->
|
</div> -->
|
||||||
<div class="card-columns" style="padding-top:10px">
|
</div>
|
||||||
<div class="card">
|
<%
|
||||||
<div class="card-block">
|
end
|
||||||
<h4 class="card-title">1. Table 4 - Beef Steak [x1]</h4>
|
%>
|
||||||
<p class="card-text">Medium, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">2. Table 4 - Beef Steak [x1]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">3. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">4. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">5. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">6. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">7. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">8. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
<div class="card-footer">
|
|
||||||
<button id="#id" class="btn btn-primary btn-lg btn-block">COMPLETE</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">9. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">10. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">11. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">12. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">13. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">14. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">15. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">16. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">17. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">18. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">19. Table 4 - Beef Steak [x3]</h4>
|
|
||||||
<p class="card-text">Well Done, Fries, Salad</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Order at 12:23, Kyaw Lwin</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--- end of Items-->
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- Panel 1 - Tables - End -->
|
<!-- End Panel 0 - Completed -->
|
||||||
<!-- Panel 2 - Rooms -->
|
|
||||||
<div class="tab-pane" id="rooms" role="tabpanel" style="min-height:670px; max-height:670px; overflow-y:scroll">
|
<!-- Order Item for Queue Station -->
|
||||||
<!--- Booking Items -->
|
<%
|
||||||
<div class="card-columns" style="padding-top:10px">
|
@queue_stations_items.each do |qsi|
|
||||||
<div class="card">
|
%>
|
||||||
<div class="card-block">
|
<!-- Generated Pane -->
|
||||||
<h4 class="card-title">Card title that wraps to a new line</h4>
|
<div class="tab-pane" id=<%= qsi[:station_name].gsub(' ', '_') %> role="tabpanel">
|
||||||
<p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
|
<!--- Order Items -->
|
||||||
|
<div class="card-columns" style="padding-top:10px; column-gap: 1.2rem;">
|
||||||
|
<%
|
||||||
|
@queue_items_details.each do |qid|
|
||||||
|
if qid.station_name == qsi[:station_name]
|
||||||
|
%>
|
||||||
|
<div class="card queue_station">
|
||||||
|
<div class="card-block">
|
||||||
|
<h4 class="card-title">
|
||||||
|
<span class="order-zone">
|
||||||
|
<%= qid.zone %>
|
||||||
|
</span> -
|
||||||
|
<span class="order-item">
|
||||||
|
<%= qid.item_name %>
|
||||||
|
</span> [x
|
||||||
|
<span class="order-qty">
|
||||||
|
<%= qid.qty %>
|
||||||
|
</span> ]
|
||||||
|
</h4>
|
||||||
|
<p class="card-text">Medium, Fries, Salad</p>
|
||||||
|
<p class="card-text">
|
||||||
|
<small class="text-muted">Order at
|
||||||
|
<span class="order-at">
|
||||||
|
<%= qid.created_at.strftime("%Y %m %d") %>
|
||||||
|
</span> -
|
||||||
|
<span class="order-by">
|
||||||
|
<%= qid.item_order_by %>
|
||||||
|
</span>
|
||||||
|
</small>
|
||||||
|
</p>
|
||||||
|
<!-- Hidden Fields for Items -->
|
||||||
|
<p class="hidden order-customer"><%= qid.customer_name %></p>
|
||||||
|
<p class="hidden assigned-order-item"><%= qid.id %></p>
|
||||||
|
</div>
|
||||||
|
<div class="card-footer">
|
||||||
|
<button id=<%= 'assigned_queue_' + qid.id.to_s %> class="btn btn-primary btn-lg btn-block order-complete">COMPLETE</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<%
|
||||||
|
end
|
||||||
|
end
|
||||||
|
%>
|
||||||
|
|
||||||
|
<!--- end of Items-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card p-3">
|
<!-- end of Pane -->
|
||||||
<blockquote class="card-block card-blockquote">
|
<% end %>
|
||||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
|
<!-- End Order Item for Queue Station -->
|
||||||
<footer>
|
|
||||||
<small class="text-muted">
|
|
||||||
Someone famous in <cite title="Source Title">Source Title</cite>
|
|
||||||
</small>
|
|
||||||
</footer>
|
|
||||||
</blockquote>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">Card title</h4>
|
|
||||||
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card card-inverse card-primary p-3 text-center">
|
|
||||||
<blockquote class="card-blockquote">
|
|
||||||
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.</p>
|
|
||||||
<footer>
|
|
||||||
<small>
|
|
||||||
Someone famous in <cite title="Source Title">Source Title</cite>
|
|
||||||
</small>
|
|
||||||
</footer>
|
|
||||||
</blockquote>
|
|
||||||
</div>
|
|
||||||
<div class="card text-center">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">Card title</h4>
|
|
||||||
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<!-- Panel 2 - Rooms - End -->
|
|
||||||
<!-- Panel 3 - Orders -->
|
|
||||||
<div class="tab-pane" id="orders" role="tabpanel" style="min-height:670px; max-height:670px; overflow-y:scroll">
|
|
||||||
|
|
||||||
<!--- Booking Items -->
|
|
||||||
<div class="card-columns" style="padding-top:10px">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">Card title that wraps to a new line</h4>
|
|
||||||
<p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">Card title</h4>
|
|
||||||
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card text-center">
|
|
||||||
<div class="card-block">
|
|
||||||
<h4 class="card-title">Card title</h4>
|
|
||||||
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
|
|
||||||
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<!-- Panel 3 - Orders - End -->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Column Two -->
|
<!-- Column Two -->
|
||||||
<div class="col-lg-3 col-md-3 col-sm-3">
|
<div class="col-lg-3 col-md-3 col-sm-3">
|
||||||
<div class="card" >
|
<div class="card" >
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<div id="order-title"><strong>ORDER DETAILS</strong> - Table 4</div>
|
<div><strong id="order-title">ORDER DETAILS -</strong></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<div class="card-title">
|
<div class="card-title">
|
||||||
@@ -323,35 +150,33 @@
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="width:33%; text-align:left">Kyaw Lwin</td>
|
<td id="order-by" style="width:33%; text-align:left"></td>
|
||||||
<td style="width:33%; text-align:right">20/04/17 9:30PM</td>
|
<td id="order-at" style="width:33%; text-align:right"></td>
|
||||||
<td style="width:33%; text-align:right">John Smith</td>
|
<td id="order-customer" style="width:33%; text-align:right"></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><strong>Table/Room</strong></td>
|
<td><strong>Table/Room</strong></td>
|
||||||
<td colspan="2">Table 4</td>
|
<td id="order-from" colspan="2"></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="card-text" style="min-height:400px; max-height:400px; overflow:auto">
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th style="width:80%; text-align:left">Items</th>
|
<th style="width:80%; text-align:left">Items</th>
|
||||||
<th style="width:20%; text-align:right">QTY</td>
|
<th style="width:20%; text-align:right">QTY</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div class="card-text" style="min-height:400px; max-height:400px; overflow-x:scroll">
|
|
||||||
<table class="table">
|
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="width:80%; text-align:left">
|
<td id="order-items" style="width:80%; text-align:left">
|
||||||
Menu Items Name <br/>
|
<!-- Menu Items Name <br/>
|
||||||
Less Sweet, No MSG
|
Less Sweet, No MSG -->
|
||||||
</td>
|
</td>
|
||||||
<td style="width:20%; text-align:right">
|
<td id="order-qty" style="width:20%; text-align:right">
|
||||||
5
|
<!-- 5 -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@@ -363,11 +188,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Column Three--->
|
<!-- Column Three--->
|
||||||
<div class="col-lg-1 col-md-1 col-sm-1">
|
<div class="col-lg-1 col-md-1 col-sm-1">
|
||||||
<!-- OQS Buttons -->
|
<!-- OQS Buttons -->
|
||||||
<button type="button" class="btn btn-primary btn-lg btn-block" disabled>Print</button>
|
<button type="button" title="Print Order Item" id="print_order_item" class="btn btn-primary btn-lg btn-block">Print</a>
|
||||||
<button type="button" class="btn btn-primary btn-lg btn-block" disabled>Print <br/>Order<br/>Summary</button>
|
<button type="button" class="btn btn-primary btn-lg btn-block" id="print_order_item" disabled>Print <br/>Order<br/>Summary</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
2
app/views/oqs/print/print.html.erb
Normal file
2
app/views/oqs/print/print.html.erb
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<h1>Oqs::Print#print</h1>
|
||||||
|
<p>Find me in app/views/oqs/print/print.html.erb</p>
|
||||||
22
app/views/print_settings/_form.html.erb
Normal file
22
app/views/print_settings/_form.html.erb
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<%= simple_form_for(@print_setting) do |f| %>
|
||||||
|
<%= f.error_notification %>
|
||||||
|
|
||||||
|
<div class="form-inputs">
|
||||||
|
<%= f.input :name %>
|
||||||
|
<%= f.input :unique_code %>
|
||||||
|
<%= f.input :template %>
|
||||||
|
<%= f.input :db_name %>
|
||||||
|
<%= f.input :db_type %>
|
||||||
|
<%= f.input :db_username %>
|
||||||
|
<%= f.input :db_password %>
|
||||||
|
<%= f.input :printer_name %>
|
||||||
|
<%= f.input :api_settings %>
|
||||||
|
<%= f.input :page_width %>
|
||||||
|
<%= f.input :page_height %>
|
||||||
|
<%= f.input :print_copies %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<%= f.button :submit %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
2
app/views/print_settings/_print_setting.json.jbuilder
Normal file
2
app/views/print_settings/_print_setting.json.jbuilder
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
json.extract! print_setting, :id, :name,, :unique_code,, :template,, :db_name,, :db_type,, :db_username,, :db_password,, :printer_name,, :api_settings,, :page_width, :page_height, :print_copies, :created_at, :updated_at
|
||||||
|
json.url print_setting_url(print_setting, format: :json)
|
||||||
6
app/views/print_settings/edit.html.erb
Normal file
6
app/views/print_settings/edit.html.erb
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<h1>Editing Print Setting</h1>
|
||||||
|
|
||||||
|
<%= render 'form', print_setting: @print_setting %>
|
||||||
|
|
||||||
|
<%= link_to 'Show', @print_setting %> |
|
||||||
|
<%= link_to 'Back', print_settings_path %>
|
||||||
49
app/views/print_settings/index.html.erb
Normal file
49
app/views/print_settings/index.html.erb
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<p id="notice"><%= notice %></p>
|
||||||
|
|
||||||
|
<h1>Print Settings</h1>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Unique code</th>
|
||||||
|
<th>Template</th>
|
||||||
|
<th>Db name</th>
|
||||||
|
<th>Db type</th>
|
||||||
|
<th>Db username</th>
|
||||||
|
<th>Db password</th>
|
||||||
|
<th>Printer name</th>
|
||||||
|
<th>Api settings</th>
|
||||||
|
<th>Page width</th>
|
||||||
|
<th>Page height</th>
|
||||||
|
<th>Print copies</th>
|
||||||
|
<th colspan="3"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
<% @print_settings.each do |print_setting| %>
|
||||||
|
<tr>
|
||||||
|
<td><%= print_setting.name %></td>
|
||||||
|
<td><%= print_setting.unique_code %></td>
|
||||||
|
<td><%= print_setting.template %></td>
|
||||||
|
<td><%= print_setting.db_name %></td>
|
||||||
|
<td><%= print_setting.db_type %></td>
|
||||||
|
<td><%= print_setting.db_username %></td>
|
||||||
|
<td><%= print_setting.db_password %></td>
|
||||||
|
<td><%= print_setting.printer_name %></td>
|
||||||
|
<td><%= print_setting.api_settings %></td>
|
||||||
|
<td><%= print_setting.page_width %></td>
|
||||||
|
<td><%= print_setting.page_height %></td>
|
||||||
|
<td><%= print_setting.print_copies %></td>
|
||||||
|
<td><%= link_to 'Show', print_setting %></td>
|
||||||
|
<td><%= link_to 'Edit', edit_print_setting_path(print_setting) %></td>
|
||||||
|
<td><%= link_to 'Destroy', print_setting, method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
||||||
|
</tr>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<%= link_to 'New Print Setting', new_print_setting_path %>
|
||||||
1
app/views/print_settings/index.json.jbuilder
Normal file
1
app/views/print_settings/index.json.jbuilder
Normal file
@@ -0,0 +1 @@
|
|||||||
|
json.array! @print_settings, partial: 'print_settings/print_setting', as: :print_setting
|
||||||
5
app/views/print_settings/new.html.erb
Normal file
5
app/views/print_settings/new.html.erb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<h1>New Print Setting</h1>
|
||||||
|
|
||||||
|
<%= render 'form', print_setting: @print_setting %>
|
||||||
|
|
||||||
|
<%= link_to 'Back', print_settings_path %>
|
||||||
64
app/views/print_settings/show.html.erb
Normal file
64
app/views/print_settings/show.html.erb
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
<p id="notice"><%= notice %></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Name:</strong>
|
||||||
|
<%= @print_setting.name %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Unique code:</strong>
|
||||||
|
<%= @print_setting.unique_code %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Template:</strong>
|
||||||
|
<%= @print_setting.template %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Db name:</strong>
|
||||||
|
<%= @print_setting.db_name %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Db type:</strong>
|
||||||
|
<%= @print_setting.db_type %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Db username:</strong>
|
||||||
|
<%= @print_setting.db_username %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Db password:</strong>
|
||||||
|
<%= @print_setting.db_password %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Printer name:</strong>
|
||||||
|
<%= @print_setting.printer_name %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Api settings:</strong>
|
||||||
|
<%= @print_setting.api_settings %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Page width:</strong>
|
||||||
|
<%= @print_setting.page_width %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Page height:</strong>
|
||||||
|
<%= @print_setting.page_height %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Print copies:</strong>
|
||||||
|
<%= @print_setting.print_copies %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<%= link_to 'Edit', edit_print_setting_path(@print_setting) %> |
|
||||||
|
<%= link_to 'Back', print_settings_path %>
|
||||||
1
app/views/print_settings/show.json.jbuilder
Normal file
1
app/views/print_settings/show.json.jbuilder
Normal file
@@ -0,0 +1 @@
|
|||||||
|
json.partial! "print_settings/print_setting", print_setting: @print_setting
|
||||||
@@ -40,3 +40,4 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
<%= paginate @settings_menu_categories, param_name: :page, :outer_window => 3 %>
|
||||||
|
|||||||
@@ -1,15 +1,12 @@
|
|||||||
|
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_categories_path %>">Menus Categories</a></li>
|
||||||
<li>Menu category</li>
|
<li>Details</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br/>
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Menu Category</h4>
|
<h4 class="card-title">Menu Category</h4>
|
||||||
@@ -47,20 +44,46 @@
|
|||||||
<%= link_to "New Simple Menu Item",new_settings_menu_category_simple_menu_item_path(@settings_menu_category),:class => 'btn btn-primary btn-sm' %>
|
<%= link_to "New Simple Menu Item",new_settings_menu_category_simple_menu_item_path(@settings_menu_category),:class => 'btn btn-primary btn-sm' %>
|
||||||
<%= link_to "New Set Menu Item",new_settings_menu_category_set_menu_item_path(@settings_menu_category),:class => 'btn btn-primary btn-sm' %>
|
<%= link_to "New Set Menu Item",new_settings_menu_category_set_menu_item_path(@settings_menu_category),:class => 'btn btn-primary btn-sm' %>
|
||||||
|
|
||||||
</span>
|
</span></h4>
|
||||||
|
|
||||||
</h4>
|
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
<th>Item code</th>
|
||||||
<th>Name</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>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
<% settings_menu_items = @settings_menu_category.menu_items %>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
<% settings_menu_items.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(@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>
|
||||||
|
<td><%= link_to 'Destroy', settings_menu_category_simple_menu_item_path(@settings_menu_category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
||||||
|
<% else %>
|
||||||
|
<td><%= link_to 'Show', settings_menu_category_set_menu_item_path(@settings_menu_category, settings_menu_item ) %></td>
|
||||||
|
<td><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@settings_menu_category, settings_menu_item) %></td>
|
||||||
|
<td><%= link_to 'Destroy', settings_menu_category_set_menu_item_path(@settings_menu_category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
||||||
|
<% end %>
|
||||||
|
</tr>
|
||||||
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_item_attributes_path %>">Menu Item Attributes</a></li>
|
||||||
<li>Menu Item Attribute</li>
|
<li>Menu Item Attribute</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
</span>
|
</span>
|
||||||
|
|||||||
18
app/views/settings/menu_item_instances/_form.html.erb
Normal file
18
app/views/settings/menu_item_instances/_form.html.erb
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<%= simple_form_for([:settings,:menu_item, @settings_menu_item_instance]) do |f| %>
|
||||||
|
<%= f.error_notification %>
|
||||||
|
|
||||||
|
<div class="form-inputs">
|
||||||
|
<%= 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 %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<%= f.button :submit %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
@@ -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)
|
||||||
12
app/views/settings/menu_item_instances/edit.html.erb
Normal file
12
app/views/settings/menu_item_instances/edit.html.erb
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<!-- <h1>Editing Settings Menu Item</h1>-->
|
||||||
|
|
||||||
|
<div class="span12">
|
||||||
|
<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>Edit</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<%= render 'form', settings_set_menu_item: @settings_menu_item %>
|
||||||
|
</div>
|
||||||
93
app/views/settings/menu_item_instances/index.html.erb
Normal file
93
app/views/settings/menu_item_instances/index.html.erb
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
<div class="page-header">
|
||||||
|
<ul class="breadcrumb">
|
||||||
|
<li><a href="<%= %>">Home</a></li>
|
||||||
|
<li><a href="<%= settings_menu_categories_path %>">Menus Categories</a></li>
|
||||||
|
|
||||||
|
<li>Menu Items</li>
|
||||||
|
<span style="float: right">
|
||||||
|
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_category_set_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %>
|
||||||
|
</span>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-block">
|
||||||
|
<h4 class="card-title">Menu Category</h4>
|
||||||
|
<table class="table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Menu</th>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Alt name</th>
|
||||||
|
<th>Order by</th>
|
||||||
|
<th>Parent</th>
|
||||||
|
<th colspan="3"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td><%= @category.menu.name %></td>
|
||||||
|
<td><%= @category.name %></td>
|
||||||
|
<td><%= @category.alt_name %></td>
|
||||||
|
<td><%= @category.order_by %></td>
|
||||||
|
<td><%= @category.parent.name rescue "-" %></td>
|
||||||
|
<td><%= link_to 'Edit', edit_settings_menu_category_path(@category) %></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-block">
|
||||||
|
<h4 class="card-title">Menu Items
|
||||||
|
<span style="float: right">
|
||||||
|
<%= 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' %>
|
||||||
|
|
||||||
|
</span>
|
||||||
|
</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>
|
||||||
|
<% @settings_menu_items.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 @settings_menu_items, param_name: :page, :outer_window => 3 %>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
json.array! @settings_menu_items, partial: 'settings_menu_items/settings_menu_item', as: :settings_menu_item
|
||||||
17
app/views/settings/menu_item_instances/new.html.erb
Normal file
17
app/views/settings/menu_item_instances/new.html.erb
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<!-- <h1>New Settings Menu Item</h1>
|
||||||
|
|
||||||
|
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
||||||
|
|
||||||
|
<%= link_to 'Back', settings_menu_items_path %> -->
|
||||||
|
|
||||||
|
|
||||||
|
<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>New Menu Item Instance</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<%= render 'form', settings_set_menu_instance: @settings_menu_item_instance %>
|
||||||
|
</div>
|
||||||
96
app/views/settings/menu_item_instances/show.html.erb
Normal file
96
app/views/settings/menu_item_instances/show.html.erb
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
|
||||||
|
<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>Menu Item</li>
|
||||||
|
<span style="float: right">
|
||||||
|
</span>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-block">
|
||||||
|
<h4 class="card-title">Menu Item </h4>
|
||||||
|
<table class="table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Item 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>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>
|
||||||
|
</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>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
json.partial! "settings_menu_items/settings_menu_item", settings_menu_item: @settings_menu_item
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= root_path %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li><a href="<%= settings_menu_items_path %>">Menu Item Options</a></li>
|
<li><a href="<%= settings_menu_item_options_path %>">Menu Item Options</a></li>
|
||||||
<li>Edit</li>
|
<li>Edit</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -2,9 +2,8 @@
|
|||||||
|
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li>Menus</li>
|
||||||
<li>Menu</li>
|
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_path,:class => 'btn btn-primary btn-sm' %>
|
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_path,:class => 'btn btn-primary btn-sm' %>
|
||||||
</span>
|
</span>
|
||||||
@@ -35,10 +34,12 @@
|
|||||||
<td><%= settings_menu.valid_time_from.strftime("%H:%M") rescue "-" %></td>
|
<td><%= settings_menu.valid_time_from.strftime("%H:%M") rescue "-" %></td>
|
||||||
<td><%= settings_menu.valid_time_to.strftime("%H:%M") rescue "-" %></td>
|
<td><%= settings_menu.valid_time_to.strftime("%H:%M") rescue "-" %></td>
|
||||||
<td><%= settings_menu.created_by %></td>
|
<td><%= settings_menu.created_by %></td>
|
||||||
<td><%=l settings_menu.created_at, format: :short %></td>
|
<!-- <td><%=l settings_menu.created_at, format: :short %></td> -->
|
||||||
|
<td><%= settings_menu.created_at.utc.getlocal.strftime("%Y-%m-%d/%I:%M %p") %></td>
|
||||||
<td><%= link_to 'Edit', edit_settings_menu_path(settings_menu) %></td>
|
<td><%= link_to 'Edit', edit_settings_menu_path(settings_menu) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
<%= paginate @settings_menus, param_name: :page, :outer_window => 3 %>
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menus_path %>">Menus</a></li>
|
||||||
<li>Menu</li>
|
<li>Details</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -62,13 +62,13 @@
|
|||||||
</thead>
|
</thead>
|
||||||
|
|
||||||
<tbody>
|
<tbody>
|
||||||
<% @settings_menu.menu_categories.each do |category|%>
|
<% @settings_menu_categories.each do |category|%>
|
||||||
<tr>
|
<tr>
|
||||||
<td><%= link_to category.name, settings_menu_category_path(category) %></td>
|
<td><%= link_to category.name, settings_menu_category_path(category) %></td>
|
||||||
<td><%= category.children.count rescue "-" %></td>
|
<td><%= category.children.count rescue "-" %></td>
|
||||||
<td><%= category.menu_items.count %></td>
|
<td><%= category.menu_items.count %></td>
|
||||||
<td><%= category.order_by %></td>
|
<td><%= category.order_by %></td>
|
||||||
<td><%=l category.created_at, format: :short %></td>
|
<td><%= 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) %></td>
|
<td><%= link_to 'Edit', edit_settings_menu_menu_category_path(@settings_menu, category) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
@@ -76,3 +76,4 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<%= paginate @settings_menu_categories, param_name: :page, :outer_window => 3 %>
|
||||||
|
|||||||
@@ -1,6 +1,14 @@
|
|||||||
<h1>Editing Settings Order Queue Station</h1>
|
<!-- <h1>Editing Settings Order Queue Station</h1>
|
||||||
|
|
||||||
<%= render 'form', settings_order_queue_station: @settings_order_queue_station %>
|
<%= render 'form', settings_order_queue_station: @settings_order_queue_station %> -->
|
||||||
|
|
||||||
<%= link_to 'Show', @settings_order_queue_station %> |
|
<div class="span12">
|
||||||
<%= link_to 'Back', settings_order_queue_stations_path %>
|
<div class="page-header">
|
||||||
|
<ul class="breadcrumb">
|
||||||
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
|
<li><a href="<%= settings_order_queue_stations_path %>">Order Queue Stations</a></li>
|
||||||
|
<li>Edit</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<%= render 'form', settings_order_queue_station: @settings_order_queue_station %>
|
||||||
|
</div>
|
||||||
@@ -1,3 +1,11 @@
|
|||||||
|
<div class="page-header">
|
||||||
|
<ul class="breadcrumb">
|
||||||
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
|
<li><a href="<%= settings_order_queue_stations_path %>">Order Queue Stations</a></li>
|
||||||
|
<li>Order Queue Station</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p id="notice"><%= notice %></p>
|
<p id="notice"><%= notice %></p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|||||||
@@ -29,7 +29,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
<br>
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
<%= f.button :submit, label: "Add Menu Items to Queue Station" %>
|
<%= f.button :submit, label: "Add Menu Items to Queue Station" %>
|
||||||
</div>
|
</div>
|
||||||
|
<br>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<%= simple_form_for([:setting, @settings_menu_item]) do |f| %>
|
<%= simple_form_for([:settings,@category, @settings_menu_item]) do |f| %>
|
||||||
<%= f.error_notification %>
|
<%= f.error_notification %>
|
||||||
|
|
||||||
<div class="form-inputs">
|
<div class="form-inputs">
|
||||||
@@ -6,12 +6,11 @@
|
|||||||
<%= f.input :name %>
|
<%= f.input :name %>
|
||||||
<%= f.input :alt_name %>
|
<%= f.input :alt_name %>
|
||||||
<%= f.input :type %>
|
<%= f.input :type %>
|
||||||
<%= f.association :menu_category %>
|
<%= f.input :menu_item_id, :label => "Parent Menu Item", :collection => MenuItem.collection %>
|
||||||
<%= f.association :menu_item %>
|
|
||||||
<%= f.input :min_qty %>
|
<%= f.input :min_qty %>
|
||||||
<%= f.input :min_selectable_item %>
|
<%= f.input :min_selectable_item %>
|
||||||
<%= f.input :max_selectable_item %>
|
<%= f.input :max_selectable_item %>
|
||||||
<%= f.input :created_by %>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
|
|||||||
@@ -1,17 +1,12 @@
|
|||||||
<!-- <h1>Editing Settings Menu Item</h1>
|
<!-- <h1>Editing Settings Menu Item</h1>-->
|
||||||
|
|
||||||
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
|
||||||
|
|
||||||
<%= link_to 'Show', @settings_menu_item %> |
|
|
||||||
<%= link_to 'Back', settings_menu_items_path %> -->
|
|
||||||
|
|
||||||
<div class="span12">
|
<div class="span12">
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= root_path %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li><a href="<%= settings_menu_items_path %>">Menu Items</a></li>
|
<li><a href="<%= settings_menu_category_set_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>Edit</li>
|
<li>Edit</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
<%= render 'form', settings_set_menu_item: @settings_menu_item %>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_categories_path %>">Menus Categories</a></li>
|
||||||
|
|
||||||
<li>Menu Items</li>
|
<li>Menu Items</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_category_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %>
|
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_category_set_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %>
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -40,7 +40,13 @@
|
|||||||
<br/>
|
<br/>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Menu Items</h4>
|
<h4 class="card-title">Menu Items
|
||||||
|
<span style="float: right">
|
||||||
|
<%= 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' %>
|
||||||
|
|
||||||
|
</span>
|
||||||
|
</h4>
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -67,9 +73,15 @@
|
|||||||
<td><%= settings_menu_item.created_by %></td>
|
<td><%= settings_menu_item.created_by %></td>
|
||||||
<td><%=l settings_menu_item.created_at, :format => :short %></td>
|
<td><%=l settings_menu_item.created_at, :format => :short %></td>
|
||||||
|
|
||||||
<td><%= link_to 'Show', settings_menu_category_menu_item_path(@category, settings_menu_item ) %></td>
|
<% if settings_menu_item.type == "SimpleMenuItem" %>
|
||||||
<td><%= link_to 'Edit', edit_settings_menu_category_menu_item_path(@category, settings_menu_item) %></td>
|
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>
|
||||||
<td><%= link_to 'Destroy', settings_menu_category_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></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>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -78,3 +90,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<%= paginate @settings_menu_items, param_name: :page, :outer_window => 3 %>
|
||||||
|
|||||||
@@ -9,9 +9,9 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= root_path %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li><a href="<%= settings_menu_items_path %>">Menu Items</a></li>
|
<li><a href="<%= settings_menu_category_set_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>New</li>
|
<li>New</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
<%= render 'form', settings_set_menu_item: @settings_menu_item %>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -2,14 +2,13 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_category_set_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>Menu Item Option</li>
|
<li>Menu Item</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br/>
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Menu Item </h4>
|
<h4 class="card-title">Menu Item </h4>
|
||||||
@@ -36,17 +35,62 @@
|
|||||||
<td><%= @settings_menu_item.name rescue "-" %></td>
|
<td><%= @settings_menu_item.name rescue "-" %></td>
|
||||||
<td><%= @settings_menu_item.alt_name %></td>
|
<td><%= @settings_menu_item.alt_name %></td>
|
||||||
<td><%= @settings_menu_item.type %></td>
|
<td><%= @settings_menu_item.type %></td>
|
||||||
<td><%= @settings_menu_item.menu_category %></td>
|
<td><%= @settings_menu_item.menu_category_id %></td>
|
||||||
<td><%= @settings_menu_item.menu_item %></td>
|
<td><%= @settings_menu_item.menu_item_id %></td>
|
||||||
<td><%= @settings_menu_item.menu_qty %></td>
|
<td><%= @settings_menu_item.min_qty %></td>
|
||||||
<td><%= @settings_menu_item.min_selectable_item %></td>
|
<td><%= @settings_menu_item.min_selectable_item %></td>
|
||||||
<td><%= @settings_menu_item.max_selectable_item %></td>
|
<td><%= @settings_menu_item.max_selectable_item %></td>
|
||||||
<td><%=l @settings_menu_item.created_at, format: :short %></td>
|
<td><%=l @settings_menu_item.created_at, format: :short %></td>
|
||||||
<td><%= link_to 'Edit', edit_settings_menu_menu_item_path(@settings_menu_category, @settings_menu_category) %></td>
|
<td><%= link_to 'Edit', edit_settings_menu_category_set_menu_item_path(@category, @settings_menu_item) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</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>
|
</div>
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
<%= simple_form_for([:settings,:menu_category, @settings_menu_item]) do |f| %>
|
<%= simple_form_for([:settings,@category, @settings_menu_item]) do |f| %>
|
||||||
<%= f.error_notification %>
|
<%= f.error_notification %>
|
||||||
|
|
||||||
<div class="form-inputs">
|
<div class="form-inputs">
|
||||||
<%= f.input :item_code %>
|
<%= f.input :item_code %>
|
||||||
<%= f.input :name %>
|
<%= f.input :name %>
|
||||||
<%= f.input :alt_name %>
|
<%= f.input :alt_name %>
|
||||||
|
<%= f.input :type %>
|
||||||
<%= f.input :menu_item_id, :label => "Parent Menu Item", :collection => MenuItem.collection %>
|
<%= f.input :menu_item_id, :label => "Parent Menu Item", :collection => MenuItem.collection %>
|
||||||
<%= f.input :min_qty %>
|
<%= f.input :min_qty %>
|
||||||
<%= f.input :min_selectable_item %>
|
<%= f.input :min_selectable_item %>
|
||||||
|
|||||||
@@ -1,17 +1,14 @@
|
|||||||
<!-- <h1>Editing Settings Menu Item</h1>
|
<!-- <h1>Editing Settings Menu Item</h1>
|
||||||
|
|
||||||
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
<%= render 'form', settings_menu_item: @settings_menu_item %>-->
|
||||||
|
|
||||||
<%= link_to 'Show', @settings_menu_item %> |
|
|
||||||
<%= link_to 'Back', settings_menu_items_path %> -->
|
|
||||||
|
|
||||||
<div class="span12">
|
<div class="span12">
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= root_path %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li><a href="<%= settings_menu_items_path %>">Menu Items</a></li>
|
<li><a href="<%= settings_menu_category_simple_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>Edit</li>
|
<li>Edit</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<%= render 'form', settings_menu_item: @settings_menu_item %>
|
<%= render 'form', settings_simple_menu_item: @settings_menu_item %>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_categories_path %>">Menus Categories</a></li>
|
||||||
|
|
||||||
<li>Menu Items</li>
|
<li>Menu Items</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_category_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %>
|
<%= link_to t('.new', :default => t("helpers.links.new")),new_settings_menu_category_simple_menu_item_path(@category),:class => 'btn btn-primary btn-sm' %>
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -40,7 +40,12 @@
|
|||||||
<br/>
|
<br/>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Menu Items</h4>
|
<h4 class="card-title">Menu Items
|
||||||
|
<span style="float: right">
|
||||||
|
<%= 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' %>
|
||||||
|
|
||||||
|
</span></h4>
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -67,9 +72,15 @@
|
|||||||
<td><%= settings_menu_item.created_by %></td>
|
<td><%= settings_menu_item.created_by %></td>
|
||||||
<td><%=l settings_menu_item.created_at, :format => :short %></td>
|
<td><%=l settings_menu_item.created_at, :format => :short %></td>
|
||||||
|
|
||||||
<td><%= link_to 'Show', settings_menu_category_menu_item_path(@category, settings_menu_item ) %></td>
|
<% if settings_menu_item.type == "SimpleMenuItem" %>
|
||||||
<td><%= link_to 'Edit', edit_settings_menu_category_menu_item_path(@category, settings_menu_item) %></td>
|
<td><%= link_to 'Show', settings_menu_category_simple_menu_item_path(@category, settings_menu_item ) %></td>
|
||||||
<td><%= link_to 'Destroy', settings_menu_category_menu_item_path(@category, settings_menu_item ), method: :delete, data: { confirm: 'Are you sure?' } %></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>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -78,3 +89,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<%= paginate @settings_menu_items, param_name: :page, :outer_window => 3 %>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= root_path %>">Home</a></li>
|
<li><a href="<%= root_path %>">Home</a></li>
|
||||||
<li><!-- <a href="<%= settings_menu_items_path %>"> -->Menu Items<!-- </a> --></li>
|
<li><a href="<%= settings_menu_category_simple_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>New</li>
|
<li>New</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -2,14 +2,13 @@
|
|||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<ul class="breadcrumb">
|
<ul class="breadcrumb">
|
||||||
<li><a href="<%= %>">Home</a></li>
|
<li><a href="<%= %>">Home</a></li>
|
||||||
<li>Settings</li>
|
<li><a href="<%= settings_menu_category_simple_menu_items_path(@category) %>">Menu Category</a></li>
|
||||||
<li>Menu Item Option</li>
|
<li>Menu Item Option</li>
|
||||||
<span style="float: right">
|
<span style="float: right">
|
||||||
</span>
|
</span>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br/>
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Menu Item </h4>
|
<h4 class="card-title">Menu Item </h4>
|
||||||
@@ -36,17 +35,103 @@
|
|||||||
<td><%= @settings_menu_item.name rescue "-" %></td>
|
<td><%= @settings_menu_item.name rescue "-" %></td>
|
||||||
<td><%= @settings_menu_item.alt_name %></td>
|
<td><%= @settings_menu_item.alt_name %></td>
|
||||||
<td><%= @settings_menu_item.type %></td>
|
<td><%= @settings_menu_item.type %></td>
|
||||||
<td><%= @settings_menu_item.menu_category %></td>
|
<td><%= @settings_menu_item.menu_category_id %></td>
|
||||||
<td><%= @settings_menu_item.menu_item %></td>
|
<td><%= @settings_menu_item.menu_item_id %></td>
|
||||||
<td><%= @settings_menu_item.menu_qty %></td>
|
<td><%= @settings_menu_item.min_qty %></td>
|
||||||
<td><%= @settings_menu_item.min_selectable_item %></td>
|
<td><%= @settings_menu_item.min_selectable_item %></td>
|
||||||
<td><%= @settings_menu_item.max_selectable_item %></td>
|
<td><%= @settings_menu_item.max_selectable_item %></td>
|
||||||
<td><%=l @settings_menu_item.created_at, format: :short %></td>
|
<td><%=l @settings_menu_item.created_at, format: :short %></td>
|
||||||
<td><%= link_to 'Edit', edit_settings_menu_menu_item_path(@settings_menu_category, @settings_menu_category) %></td>
|
<td><%= link_to 'Edit', edit_settings_menu_category_simple_menu_item_path(@category, @settings_menu_item) %></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</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 %>
|
||||||
|
|
||||||
|
<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><%=l settings_menu_item.created_at, :format => :short %></td>
|
||||||
|
</tr>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
27
app/views/transactions/sales/_form.html.erb
Normal file
27
app/views/transactions/sales/_form.html.erb
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<%= simple_form_for(@transactions_sale) do |f| %>
|
||||||
|
<%= f.error_notification %>
|
||||||
|
|
||||||
|
<div class="form-inputs">
|
||||||
|
<%= f.association :cashier %>
|
||||||
|
<%= f.input :cashier_name %>
|
||||||
|
<%= f.input :requested_by %>
|
||||||
|
<%= f.input :requested_at %>
|
||||||
|
<%= f.input :receipt_no %>
|
||||||
|
<%= f.input :receipt_date %>
|
||||||
|
<%= f.association :customer %>
|
||||||
|
<%= f.input :payment_status %>
|
||||||
|
<%= f.input :sale_status %>
|
||||||
|
<%= f.input :total_amount %>
|
||||||
|
<%= f.input :total_discount %>
|
||||||
|
<%= f.input :total_tax %>
|
||||||
|
<%= f.input :tax_type %>
|
||||||
|
<%= f.input :grand_total %>
|
||||||
|
<%= f.input :rounding_adjustment %>
|
||||||
|
<%= f.input :amount_received %>
|
||||||
|
<%= f.input :amount_changed %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-actions">
|
||||||
|
<%= f.button :submit %>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
json.extract! transactions_sale, :id, :cashier_id, :cashier_name, :requested_by, :requested_at, :receipt_no, :receipt_date, :customer_id, :payment_status, :sale_status, :total_amount, :total_discount, :total_tax, :tax_type, :grand_total, :rounding_adjustment, :amount_received, :amount_changed, :created_at, :updated_at
|
||||||
|
json.url transactions_sale_url(transactions_sale, format: :json)
|
||||||
6
app/views/transactions/sales/edit.html.erb
Normal file
6
app/views/transactions/sales/edit.html.erb
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<h1>Editing Transactions Sale</h1>
|
||||||
|
|
||||||
|
<%= render 'form', transactions_sale: @transactions_sale %>
|
||||||
|
|
||||||
|
<%= link_to 'Show', @transactions_sale %> |
|
||||||
|
<%= link_to 'Back', transactions_sales_path %>
|
||||||
59
app/views/transactions/sales/index.html.erb
Normal file
59
app/views/transactions/sales/index.html.erb
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
<p id="notice"><%= notice %></p>
|
||||||
|
|
||||||
|
<h1>Transactions Sales</h1>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Cashier</th>
|
||||||
|
<th>Cashier name</th>
|
||||||
|
<th>Requested by</th>
|
||||||
|
<th>Requested at</th>
|
||||||
|
<th>Receipt no</th>
|
||||||
|
<th>Receipt date</th>
|
||||||
|
<th>Customer</th>
|
||||||
|
<th>Payment status</th>
|
||||||
|
<th>Sale status</th>
|
||||||
|
<th>Total amount</th>
|
||||||
|
<th>Total discount</th>
|
||||||
|
<th>Total tax</th>
|
||||||
|
<th>Tax type</th>
|
||||||
|
<th>Grand total</th>
|
||||||
|
<th>Rounding adjustment</th>
|
||||||
|
<th>Amount received</th>
|
||||||
|
<th>Amount changed</th>
|
||||||
|
<th colspan="3"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
<% @transactions_sales.each do |transactions_sale| %>
|
||||||
|
<tr>
|
||||||
|
<td><%= transactions_sale.cashier %></td>
|
||||||
|
<td><%= transactions_sale.cashier_name %></td>
|
||||||
|
<td><%= transactions_sale.requested_by %></td>
|
||||||
|
<td><%= transactions_sale.requested_at %></td>
|
||||||
|
<td><%= transactions_sale.receipt_no %></td>
|
||||||
|
<td><%= transactions_sale.receipt_date %></td>
|
||||||
|
<td><%= transactions_sale.customer %></td>
|
||||||
|
<td><%= transactions_sale.payment_status %></td>
|
||||||
|
<td><%= transactions_sale.sale_status %></td>
|
||||||
|
<td><%= transactions_sale.total_amount %></td>
|
||||||
|
<td><%= transactions_sale.total_discount %></td>
|
||||||
|
<td><%= transactions_sale.total_tax %></td>
|
||||||
|
<td><%= transactions_sale.tax_type %></td>
|
||||||
|
<td><%= transactions_sale.grand_total %></td>
|
||||||
|
<td><%= transactions_sale.rounding_adjustment %></td>
|
||||||
|
<td><%= transactions_sale.amount_received %></td>
|
||||||
|
<td><%= transactions_sale.amount_changed %></td>
|
||||||
|
<td><%= link_to 'Show', transactions_sale %></td>
|
||||||
|
<td><%= link_to 'Edit', edit_transactions_sale_path(transactions_sale) %></td>
|
||||||
|
<td><%= link_to 'Destroy', transactions_sale, method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
||||||
|
</tr>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<%= link_to 'New Transactions Sale', new_transactions_sale_path %>
|
||||||
1
app/views/transactions/sales/index.json.jbuilder
Normal file
1
app/views/transactions/sales/index.json.jbuilder
Normal file
@@ -0,0 +1 @@
|
|||||||
|
json.array! @transactions_sales, partial: 'transactions_sales/transactions_sale', as: :transactions_sale
|
||||||
5
app/views/transactions/sales/new.html.erb
Normal file
5
app/views/transactions/sales/new.html.erb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<h1>New Transactions Sale</h1>
|
||||||
|
|
||||||
|
<%= render 'form', transactions_sale: @transactions_sale %>
|
||||||
|
|
||||||
|
<%= link_to 'Back', transactions_sales_path %>
|
||||||
89
app/views/transactions/sales/show.html.erb
Normal file
89
app/views/transactions/sales/show.html.erb
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
<p id="notice"><%= notice %></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Cashier:</strong>
|
||||||
|
<%= @transactions_sale.cashier %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Cashier name:</strong>
|
||||||
|
<%= @transactions_sale.cashier_name %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Requested by:</strong>
|
||||||
|
<%= @transactions_sale.requested_by %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Requested at:</strong>
|
||||||
|
<%= @transactions_sale.requested_at %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Receipt no:</strong>
|
||||||
|
<%= @transactions_sale.receipt_no %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Receipt date:</strong>
|
||||||
|
<%= @transactions_sale.receipt_date %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Customer:</strong>
|
||||||
|
<%= @transactions_sale.customer %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Payment status:</strong>
|
||||||
|
<%= @transactions_sale.payment_status %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Sale status:</strong>
|
||||||
|
<%= @transactions_sale.sale_status %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Total amount:</strong>
|
||||||
|
<%= @transactions_sale.total_amount %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Total discount:</strong>
|
||||||
|
<%= @transactions_sale.total_discount %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Total tax:</strong>
|
||||||
|
<%= @transactions_sale.total_tax %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Tax type:</strong>
|
||||||
|
<%= @transactions_sale.tax_type %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Grand total:</strong>
|
||||||
|
<%= @transactions_sale.grand_total %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Rounding adjustment:</strong>
|
||||||
|
<%= @transactions_sale.rounding_adjustment %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Amount received:</strong>
|
||||||
|
<%= @transactions_sale.amount_received %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong>Amount changed:</strong>
|
||||||
|
<%= @transactions_sale.amount_changed %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<%= link_to 'Edit', edit_transactions_sale_path(@transactions_sale) %> |
|
||||||
|
<%= link_to 'Back', transactions_sales_path %>
|
||||||
1
app/views/transactions/sales/show.json.jbuilder
Normal file
1
app/views/transactions/sales/show.json.jbuilder
Normal file
@@ -0,0 +1 @@
|
|||||||
|
json.partial! "transactions_sales/transactions_sale", transactions_sale: @transactions_sale
|
||||||
@@ -51,4 +51,7 @@ Rails.application.configure do
|
|||||||
# Use an evented file watcher to asynchronously detect changes in source code,
|
# Use an evented file watcher to asynchronously detect changes in source code,
|
||||||
# routes, locales, etc. This feature depends on the listen gem.
|
# routes, locales, etc. This feature depends on the listen gem.
|
||||||
config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
||||||
|
|
||||||
|
# Set Cable URL
|
||||||
|
config.action_cable.url = "ws://192.168.1.140:3002/cable"
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -16,3 +16,5 @@ Rails.application.config.assets.precompile += %w( orgiami.js )
|
|||||||
# -- Order Queue Station -----
|
# -- Order Queue Station -----
|
||||||
Rails.application.config.assets.precompile += %w( OQS.css )
|
Rails.application.config.assets.precompile += %w( OQS.css )
|
||||||
Rails.application.config.assets.precompile += %w( OQS.js )
|
Rails.application.config.assets.precompile += %w( OQS.js )
|
||||||
|
|
||||||
|
Rails.application.config.assets.precompile += %w( settings.css )
|
||||||
|
|||||||
@@ -2,13 +2,12 @@ require 'sidekiq/web'
|
|||||||
|
|
||||||
Rails.application.routes.draw do
|
Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :origami do
|
|
||||||
get 'request_bills/show'
|
|
||||||
end
|
|
||||||
|
|
||||||
root 'home#index'
|
root 'home#index'
|
||||||
mount Sidekiq::Web => '/kiq'
|
mount Sidekiq::Web => '/kiq'
|
||||||
|
|
||||||
|
# Action Cable Creation
|
||||||
|
mount ActionCable.server => "/cable"
|
||||||
|
|
||||||
#--------- SmartSales Installation ------------#
|
#--------- SmartSales Installation ------------#
|
||||||
get 'install' => 'install#index'
|
get 'install' => 'install#index'
|
||||||
post 'install' => 'install#create'
|
post 'install' => 'install#create'
|
||||||
@@ -76,8 +75,6 @@ Rails.application.routes.draw do
|
|||||||
resources :request_bills, only: [:show]
|
resources :request_bills, only: [:show]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#--------- Waiter/Ordering Station ------------#
|
#--------- Waiter/Ordering Station ------------#
|
||||||
namespace :oishi do
|
namespace :oishi do
|
||||||
#zones
|
#zones
|
||||||
@@ -99,6 +96,10 @@ Rails.application.routes.draw do
|
|||||||
#--------- Order Queue Station ------------#
|
#--------- Order Queue Station ------------#
|
||||||
namespace :oqs do
|
namespace :oqs do
|
||||||
root "home#index"
|
root "home#index"
|
||||||
|
|
||||||
|
post 'update_delivery', to: "home#update_delivery_status"
|
||||||
|
|
||||||
|
get 'print/print/:id', to: "print#print"
|
||||||
#dashboard
|
#dashboard
|
||||||
#
|
#
|
||||||
end
|
end
|
||||||
@@ -155,7 +156,12 @@ Rails.application.routes.draw do
|
|||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
#--------- Transactions Sections ------------#
|
||||||
|
namespace :transactions do
|
||||||
|
resources :sales
|
||||||
|
end
|
||||||
|
|
||||||
|
#--------- Reports Controller Sections ------------#
|
||||||
namespace :reports do
|
namespace :reports do
|
||||||
resources :sales, :only => [:index, :show]
|
resources :sales, :only => [:index, :show]
|
||||||
resources :orders, :only => [:index, :show]
|
resources :orders, :only => [:index, :show]
|
||||||
@@ -179,7 +185,8 @@ Rails.application.routes.draw do
|
|||||||
# end
|
# end
|
||||||
# end
|
# end
|
||||||
|
|
||||||
|
#----------- Print Setup --------#
|
||||||
|
resources :print_settings
|
||||||
|
|
||||||
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
|
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
class CreateSaleDiscounts < ActiveRecord::Migration[5.0]
|
|
||||||
def change
|
|
||||||
create_table :sale_discounts do |t|
|
|
||||||
t.references :sale, foreign_key: true
|
|
||||||
t.string :discount_type, :null => false
|
|
||||||
t.decimal :discount_value, :precision => 10, :scale => 2, :null => false, :default => 0.00
|
|
||||||
t.decimal :discount_amount, :precision => 10, :scale => 2, :null => false, :default => 0.00
|
|
||||||
t.string :discount_code
|
|
||||||
|
|
||||||
t.timestamps
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
20
db/migrate/20170602093159_create_print_settings.rb
Normal file
20
db/migrate/20170602093159_create_print_settings.rb
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
class CreatePrintSettings < ActiveRecord::Migration[5.1]
|
||||||
|
def change
|
||||||
|
create_table :print_settings do |t|
|
||||||
|
t.string :name, :null => false
|
||||||
|
t.string :unique_code, :null => false
|
||||||
|
t.string :template, :null => false
|
||||||
|
t.string :db_name, :null => false
|
||||||
|
t.string :db_type, :null => false
|
||||||
|
t.string :db_username, :null => false
|
||||||
|
t.string :db_password
|
||||||
|
t.string :printer_name, :null => false
|
||||||
|
t.string :api_settings
|
||||||
|
t.decimal :page_width, :null => false, :default => 200
|
||||||
|
t.decimal :page_height, :null => false, :default => 800
|
||||||
|
t.integer :print_copies, :null => false, :default => 1
|
||||||
|
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -20,3 +20,5 @@ rails generate scaffold Setup/TaxProfile name:string rate:decimal inclusive:bool
|
|||||||
rails generate scaffold_controller Setup/CashierTerminal name:string is_active:boolean is_currently_login:boolean auto_print_receipt:string printer_name:string header:json footer:json font:string font_size:string show_tax:boolean show_cashier:boolean show_guest_info:boolean --no-migration
|
rails generate scaffold_controller Setup/CashierTerminal name:string is_active:boolean is_currently_login:boolean auto_print_receipt:string printer_name:string header:json footer:json font:string font_size:string show_tax:boolean show_cashier:boolean show_guest_info:boolean --no-migration
|
||||||
|
|
||||||
rails generate scaffold_controller Settings/OrderQueueStation station_name:string is_active:boolean processing_items:json print_copy:boolean printer_name:string font_size:integer cut_per_item:boolean use_alternate_name:boolean created_by:string --no-migration
|
rails generate scaffold_controller Settings/OrderQueueStation station_name:string is_active:boolean processing_items:json print_copy:boolean printer_name:string font_size:integer cut_per_item:boolean use_alternate_name:boolean created_by:string --no-migration
|
||||||
|
|
||||||
|
rails generate scaffold_controller transactions/Sale cashier:references cashier_name:string requested_by:string requested_at:datetime receipt_no:string receipt_date:datetime customer:references payment_status:string sale_status:string total_amount:decimal total_discount:decimal total_tax:decimal tax_type:string grand_total:decimal rounding_adjustment:decimal amount_received:decimal amount_changed:decimal --no-migration
|
||||||
|
|||||||
12
spec/controllers/oqs/print_controller_spec.rb
Normal file
12
spec/controllers/oqs/print_controller_spec.rb
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe Oqs::PrintController, type: :controller do
|
||||||
|
|
||||||
|
describe "GET #print" do
|
||||||
|
it "returns http success" do
|
||||||
|
get :print
|
||||||
|
expect(response).to have_http_status(:success)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
141
spec/controllers/print_settings_controller_spec.rb
Normal file
141
spec/controllers/print_settings_controller_spec.rb
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
||||||
|
# It demonstrates how one might use RSpec to specify the controller code that
|
||||||
|
# was generated by Rails when you ran the scaffold generator.
|
||||||
|
#
|
||||||
|
# It assumes that the implementation code is generated by the rails scaffold
|
||||||
|
# generator. If you are using any extension libraries to generate different
|
||||||
|
# controller code, this generated spec may or may not pass.
|
||||||
|
#
|
||||||
|
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
||||||
|
# of tools you can use to make these specs even more expressive, but we're
|
||||||
|
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
||||||
|
#
|
||||||
|
# Compared to earlier versions of this generator, there is very limited use of
|
||||||
|
# stubs and message expectations in this spec. Stubs are only used when there
|
||||||
|
# is no simpler way to get a handle on the object needed for the example.
|
||||||
|
# Message expectations are only used when there is no simpler way to specify
|
||||||
|
# that an instance is receiving a specific message.
|
||||||
|
#
|
||||||
|
# Also compared to earlier versions of this generator, there are no longer any
|
||||||
|
# expectations of assigns and templates rendered. These features have been
|
||||||
|
# removed from Rails core in Rails 5, but can be added back in via the
|
||||||
|
# `rails-controller-testing` gem.
|
||||||
|
|
||||||
|
RSpec.describe PrintSettingsController, type: :controller do
|
||||||
|
|
||||||
|
# This should return the minimal set of attributes required to create a valid
|
||||||
|
# PrintSetting. As you add validations to PrintSetting, be sure to
|
||||||
|
# adjust the attributes here as well.
|
||||||
|
let(:valid_attributes) {
|
||||||
|
skip("Add a hash of attributes valid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
let(:invalid_attributes) {
|
||||||
|
skip("Add a hash of attributes invalid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
# This should return the minimal set of values that should be in the session
|
||||||
|
# in order to pass any filters (e.g. authentication) defined in
|
||||||
|
# PrintSettingsController. Be sure to keep this updated too.
|
||||||
|
let(:valid_session) { {} }
|
||||||
|
|
||||||
|
describe "GET #index" do
|
||||||
|
it "returns a success response" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
get :index, params: {}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #show" do
|
||||||
|
it "returns a success response" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
get :show, params: {id: print_setting.to_param}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #new" do
|
||||||
|
it "returns a success response" do
|
||||||
|
get :new, params: {}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #edit" do
|
||||||
|
it "returns a success response" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
get :edit, params: {id: print_setting.to_param}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "POST #create" do
|
||||||
|
context "with valid params" do
|
||||||
|
it "creates a new PrintSetting" do
|
||||||
|
expect {
|
||||||
|
post :create, params: {print_setting: valid_attributes}, session: valid_session
|
||||||
|
}.to change(PrintSetting, :count).by(1)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the created print_setting" do
|
||||||
|
post :create, params: {print_setting: valid_attributes}, session: valid_session
|
||||||
|
expect(response).to redirect_to(PrintSetting.last)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context "with invalid params" do
|
||||||
|
it "returns a success response (i.e. to display the 'new' template)" do
|
||||||
|
post :create, params: {print_setting: invalid_attributes}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "PUT #update" do
|
||||||
|
context "with valid params" do
|
||||||
|
let(:new_attributes) {
|
||||||
|
skip("Add a hash of attributes valid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
it "updates the requested print_setting" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
put :update, params: {id: print_setting.to_param, print_setting: new_attributes}, session: valid_session
|
||||||
|
print_setting.reload
|
||||||
|
skip("Add assertions for updated state")
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the print_setting" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
put :update, params: {id: print_setting.to_param, print_setting: valid_attributes}, session: valid_session
|
||||||
|
expect(response).to redirect_to(print_setting)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context "with invalid params" do
|
||||||
|
it "returns a success response (i.e. to display the 'edit' template)" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
put :update, params: {id: print_setting.to_param, print_setting: invalid_attributes}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "DELETE #destroy" do
|
||||||
|
it "destroys the requested print_setting" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
expect {
|
||||||
|
delete :destroy, params: {id: print_setting.to_param}, session: valid_session
|
||||||
|
}.to change(PrintSetting, :count).by(-1)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the print_settings list" do
|
||||||
|
print_setting = PrintSetting.create! valid_attributes
|
||||||
|
delete :destroy, params: {id: print_setting.to_param}, session: valid_session
|
||||||
|
expect(response).to redirect_to(print_settings_url)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
141
spec/controllers/transactions/sales_controller_spec.rb
Normal file
141
spec/controllers/transactions/sales_controller_spec.rb
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
||||||
|
# It demonstrates how one might use RSpec to specify the controller code that
|
||||||
|
# was generated by Rails when you ran the scaffold generator.
|
||||||
|
#
|
||||||
|
# It assumes that the implementation code is generated by the rails scaffold
|
||||||
|
# generator. If you are using any extension libraries to generate different
|
||||||
|
# controller code, this generated spec may or may not pass.
|
||||||
|
#
|
||||||
|
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
||||||
|
# of tools you can use to make these specs even more expressive, but we're
|
||||||
|
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
||||||
|
#
|
||||||
|
# Compared to earlier versions of this generator, there is very limited use of
|
||||||
|
# stubs and message expectations in this spec. Stubs are only used when there
|
||||||
|
# is no simpler way to get a handle on the object needed for the example.
|
||||||
|
# Message expectations are only used when there is no simpler way to specify
|
||||||
|
# that an instance is receiving a specific message.
|
||||||
|
#
|
||||||
|
# Also compared to earlier versions of this generator, there are no longer any
|
||||||
|
# expectations of assigns and templates rendered. These features have been
|
||||||
|
# removed from Rails core in Rails 5, but can be added back in via the
|
||||||
|
# `rails-controller-testing` gem.
|
||||||
|
|
||||||
|
RSpec.describe Transactions::SalesController, type: :controller do
|
||||||
|
|
||||||
|
# This should return the minimal set of attributes required to create a valid
|
||||||
|
# Transactions::Sale. As you add validations to Transactions::Sale, be sure to
|
||||||
|
# adjust the attributes here as well.
|
||||||
|
let(:valid_attributes) {
|
||||||
|
skip("Add a hash of attributes valid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
let(:invalid_attributes) {
|
||||||
|
skip("Add a hash of attributes invalid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
# This should return the minimal set of values that should be in the session
|
||||||
|
# in order to pass any filters (e.g. authentication) defined in
|
||||||
|
# Transactions::SalesController. Be sure to keep this updated too.
|
||||||
|
let(:valid_session) { {} }
|
||||||
|
|
||||||
|
describe "GET #index" do
|
||||||
|
it "returns a success response" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
get :index, params: {}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #show" do
|
||||||
|
it "returns a success response" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
get :show, params: {id: sale.to_param}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #new" do
|
||||||
|
it "returns a success response" do
|
||||||
|
get :new, params: {}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "GET #edit" do
|
||||||
|
it "returns a success response" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
get :edit, params: {id: sale.to_param}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "POST #create" do
|
||||||
|
context "with valid params" do
|
||||||
|
it "creates a new Transactions::Sale" do
|
||||||
|
expect {
|
||||||
|
post :create, params: {transactions_sale: valid_attributes}, session: valid_session
|
||||||
|
}.to change(Transactions::Sale, :count).by(1)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the created transactions_sale" do
|
||||||
|
post :create, params: {transactions_sale: valid_attributes}, session: valid_session
|
||||||
|
expect(response).to redirect_to(Transactions::Sale.last)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context "with invalid params" do
|
||||||
|
it "returns a success response (i.e. to display the 'new' template)" do
|
||||||
|
post :create, params: {transactions_sale: invalid_attributes}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "PUT #update" do
|
||||||
|
context "with valid params" do
|
||||||
|
let(:new_attributes) {
|
||||||
|
skip("Add a hash of attributes valid for your model")
|
||||||
|
}
|
||||||
|
|
||||||
|
it "updates the requested transactions_sale" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
put :update, params: {id: sale.to_param, transactions_sale: new_attributes}, session: valid_session
|
||||||
|
sale.reload
|
||||||
|
skip("Add assertions for updated state")
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the transactions_sale" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
put :update, params: {id: sale.to_param, transactions_sale: valid_attributes}, session: valid_session
|
||||||
|
expect(response).to redirect_to(sale)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context "with invalid params" do
|
||||||
|
it "returns a success response (i.e. to display the 'edit' template)" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
put :update, params: {id: sale.to_param, transactions_sale: invalid_attributes}, session: valid_session
|
||||||
|
expect(response).to be_success
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "DELETE #destroy" do
|
||||||
|
it "destroys the requested transactions_sale" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
expect {
|
||||||
|
delete :destroy, params: {id: sale.to_param}, session: valid_session
|
||||||
|
}.to change(Transactions::Sale, :count).by(-1)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "redirects to the transactions_sales list" do
|
||||||
|
sale = Transactions::Sale.create! valid_attributes
|
||||||
|
delete :destroy, params: {id: sale.to_param}, session: valid_session
|
||||||
|
expect(response).to redirect_to(transactions_sales_url)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
15
spec/helpers/oqs/print_helper_spec.rb
Normal file
15
spec/helpers/oqs/print_helper_spec.rb
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
# Specs in this file have access to a helper object that includes
|
||||||
|
# the Oqs::PrintHelper. For example:
|
||||||
|
#
|
||||||
|
# describe Oqs::PrintHelper do
|
||||||
|
# describe "string concat" do
|
||||||
|
# it "concats two strings with spaces" do
|
||||||
|
# expect(helper.concat_strings("this","that")).to eq("this that")
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
RSpec.describe Oqs::PrintHelper, type: :helper do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
||||||
15
spec/helpers/print_settings_helper_spec.rb
Normal file
15
spec/helpers/print_settings_helper_spec.rb
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
# Specs in this file have access to a helper object that includes
|
||||||
|
# the PrintSettingsHelper. For example:
|
||||||
|
#
|
||||||
|
# describe PrintSettingsHelper do
|
||||||
|
# describe "string concat" do
|
||||||
|
# it "concats two strings with spaces" do
|
||||||
|
# expect(helper.concat_strings("this","that")).to eq("this that")
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
RSpec.describe PrintSettingsHelper, type: :helper do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
||||||
15
spec/helpers/transactions/sales_helper_spec.rb
Normal file
15
spec/helpers/transactions/sales_helper_spec.rb
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
# Specs in this file have access to a helper object that includes
|
||||||
|
# the Transactions::SalesHelper. For example:
|
||||||
|
#
|
||||||
|
# describe Transactions::SalesHelper do
|
||||||
|
# describe "string concat" do
|
||||||
|
# it "concats two strings with spaces" do
|
||||||
|
# expect(helper.concat_strings("this","that")).to eq("this that")
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
RSpec.describe Transactions::SalesHelper, type: :helper do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
||||||
5
spec/jobs/order_broadcast_job_spec.rb
Normal file
5
spec/jobs/order_broadcast_job_spec.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe OrderBroadcastJob, type: :job do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user