From 114c4ee14ddfe232fb09db3fafbec3cdc5597cb3 Mon Sep 17 00:00:00 2001
From: Yan " +
+ " ";
+
+ $("#order-items-table").children("tbody").append(order_items_rows);
+ }
+ }
+ });
+ // End AJAX Call
+
+ $('.orders').removeClass('selected-item');
+ $(this).addClass('selected-item');
+ });
+
+ // Bill Request
+ $('#request_bills').click(function() {
+ var order_id=$(".selected-item").find(".orders-id").text();
+ window.location.href = '/origami/request_bills/'+ order_id
+ return false;
+ });
+
+ // Payment for Bill
+ $('#pay').click(function() {
+ var sale_id=$(".selected-item").find(".orders-id").text();
+ window.location.href = '/origami/sale/'+ sale_id + "/payment"
+ return false;
+ });
+});
+
+
+
diff --git a/app/assets/stylesheets/orgiami.scss b/app/assets/stylesheets/orgiami.scss
index 327c5897..392f7700 100644
--- a/app/assets/stylesheets/orgiami.scss
+++ b/app/assets/stylesheets/orgiami.scss
@@ -19,13 +19,45 @@
color:white;
cursor:pointer;
}
+
.cashier_number:hover{
background:#A9F5F2;
}
+
.long{
width:100%
}
+.sold {
+ background-color: red;
+}
+
+.selected-item {
+ background-color: blue;
+}
+
+/* Reciept Style */
+#order-charges-table td {
+ border-top: none !important;
+}
+
+.charges-name {
+ width: 80%;
+ text-align: left;
+}
+
+.item-name {
+ width: 60%;
+ text-align: left;
+}
+
+.item-attr {
+ width: 20%;
+ text-align: right;
+}
+
+
+/* Colors */
.purple {
background-color:#7a62d3;
}
diff --git a/app/controllers/origami/home_controller.rb b/app/controllers/origami/home_controller.rb
index 480e9204..9733e488 100644
--- a/app/controllers/origami/home_controller.rb
+++ b/app/controllers/origami/home_controller.rb
@@ -7,16 +7,18 @@ class Origami::HomeController < BaseOrigamiController
def show
str = []
+ type=params[:id].split('-')[0];
-
- if !params[:sale_id].nil?
- @order_details = SaleItem.get_order_items_details(params[:sale_id])
+ # Sale
+ if type == "SAL"
+ @order_details = SaleItem.get_order_items_details(params[:id])
@order_details.each do |ord_detail|
str.push(ord_detail)
end
render :json => str.to_json
+ # Booking
else
- @order_details = OrderItem.get_order_items_details(params[:order_id])
+ @order_details = OrderItem.get_order_items_details(params[:id])
@order_details.each do |ord_detail|
str.push(ord_detail)
end
diff --git a/app/controllers/origami/request_bills_controller.rb b/app/controllers/origami/request_bills_controller.rb
index cb2f1b83..62289c89 100644
--- a/app/controllers/origami/request_bills_controller.rb
+++ b/app/controllers/origami/request_bills_controller.rb
@@ -2,6 +2,7 @@ class Origami::RequestBillsController < BaseOrigamiController
def print
@sale = Sale.new
+ sale_order=SaleOrder.new
booking_id = params[:id]
check_booking = Booking.find_by_booking_id(booking_id)
@@ -9,7 +10,7 @@ class Origami::RequestBillsController < BaseOrigamiController
# Create Sale if it doesn't exist
@status, @sale_id = @sale.generate_invoice_from_booking(check_booking.id,current_login_employee.name)
@sale_data = Sale.find_by_sale_id(@sale_id)
- @sale_items = SaleItem.where("sale_id=?",@sale_id)
+ @sale_items = SaleItem.where("sale_id=?",@sale_id)
else
@sale_data = Sale.find_by_sale_id(check_booking.sale_id)
@sale_items = SaleItem.where("sale_id=?",@sale_id)
@@ -22,6 +23,6 @@ class Origami::RequestBillsController < BaseOrigamiController
printer = Printer::ReceiptPrinter.new(print_settings)
printer.print_receipt_bill(print_settings,@sale_items,@sale_data,customer_name)
-
+ redirect_to origami_root_path
end
end
diff --git a/app/models/order.rb b/app/models/order.rb
index 036f9006..16d22d57 100644
--- a/app/models/order.rb
+++ b/app/models/order.rb
@@ -223,12 +223,11 @@ class Order < ApplicationRecord
def self.get_booking_order_table
booking_orders = Booking.select("sales.receipt_no,orders.status as order_status,
- bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name")
+ bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name")
.joins("left join booking_orders on booking_orders.booking_id = bookings.booking_id")
.joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id")
- .joins("left join orders on orders.order_id = booking_orders.order_id")
- .joins("left join sale_orders on sale_orders.order_id = orders.order_id")
- .joins("left join sales on sales.sale_id = sale_orders.sale_id")
+ .joins("left join orders on orders.order_id = booking_orders.order_id")
+ .joins("left join sales on sales.sale_id = bookings.sale_id")
.where("booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::TABLE_TYPE,true)
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status")
@@ -236,7 +235,8 @@ class Order < ApplicationRecord
#Origami: Cashier : to view order type Room
def self.get_booking_order_rooms
- booking_rooms = Booking.select("sales.receipt_no,orders.status as order_status,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as room_name")
+ booking_rooms = Booking.select("sales.receipt_no,orders.status as order_status,bookings.booking_id,
+ sales.sale_id as sale_id,dining_facilities.name as room_name")
.joins("left join booking_orders on booking_orders.booking_id = bookings.booking_id")
.joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id")
.joins("left join orders on orders.order_id = booking_orders.order_id")
@@ -249,7 +249,7 @@ class Order < ApplicationRecord
#Origami: Cashier : to view order type Room
def self.get_order_rooms
order_rooms = Order.select("orders.order_id as order_id,sum(order_items.qty*order_items.price) as total_price,
- order_items.id as order_items_id,dining_facilities.name as room_name")
+ order_items.id as order_items_id,dining_facilities.name as room_name")
.joins("left join booking_orders on booking_orders.order_id = orders.order_id
left join bookings on bookings.booking_id = booking_orders.order_id
left join dining_facilities on dining_facilities.id = bookings.dining_facility_id
@@ -263,7 +263,8 @@ class Order < ApplicationRecord
def self.get_orders
from = Time.now.beginning_of_day.utc
to = Time.now.end_of_day.utc
- orders = Order.select("orders.order_id as order_id,sales.receipt_no,orders.status as order_status,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name")
+ orders = Order.select("orders.order_id as order_id,sales.receipt_no,orders.status as order_status,
+ bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name")
.joins("left join booking_orders on booking_orders.order_id = orders.order_id
left join bookings on bookings.booking_id = booking_orders.order_id
left join dining_facilities on dining_facilities.id = bookings.dining_facility_id
diff --git a/app/models/sale.rb b/app/models/sale.rb
index db1eedcf..1a9c9a28 100644
--- a/app/models/sale.rb
+++ b/app/models/sale.rb
@@ -76,7 +76,8 @@ class Sale < ApplicationRecord
self.save!
- #compute summary
+
+ #compute sales summary
compute
#Update the order items that is billed
@@ -218,6 +219,7 @@ class Sale < ApplicationRecord
private
+
def product_get_unit_price(item_code)
menu_item_hash =MenuItem.search_by_item_code(item_code)
if (menu_instance_code)
diff --git a/app/models/sale_item.rb b/app/models/sale_item.rb
index 52ab480b..1ebd1632 100644
--- a/app/models/sale_item.rb
+++ b/app/models/sale_item.rb
@@ -12,17 +12,22 @@ class SaleItem < ApplicationRecord
def self.get_order_items_details(sale_id)
- sale_orders = SaleOrder.where("sale_id=?",sale_id)
- if sale_orders
- sale_orders.each do |sale_order|
- order_details = SaleItem.select("sales.total_discount as discount_amount,DATE_FORMAT(sales.receipt_date,'%Y-%m-%d %h:%m') as receipt_date,sales.cashier_name,sales.receipt_no,sale_items.product_name as item_name,sale_items.qty,sale_items.price,sale_items.unit_price as total_price")
- .joins("left join sales on sales.id = sale_items.sale_id")
- .where("sale_items.sale_id=?",sale_order.sale_id)
- return order_details
- end
- else
- return false
- end
+ order_details = SaleItem.select("sales.total_discount as discount_amount,DATE_FORMAT(sales.receipt_date,'%Y-%m-%d %h:%m') as receipt_date,
+ sales.cashier_name,sales.receipt_no,sale_items.product_name as item_name,sale_items.qty,sale_items.price,sale_items.unit_price as total_price")
+ .joins("left join sales on sales.sale_id = sale_items.sale_id")
+ .where("sale_items.sale_id=?",sale_id)
+
+ # sale_orders = SaleOrder.where("sale_id=?",sale_id)
+ # if sale_orders
+ # sale_orders.each do |sale_order|
+ # order_details = SaleItem.select("sales.total_discount as discount_amount,DATE_FORMAT(sales.receipt_date,'%Y-%m-%d %h:%m') as receipt_date,sales.cashier_name,sales.receipt_no,sale_items.product_name as item_name,sale_items.qty,sale_items.price,sale_items.unit_price as total_price")
+ # .joins("left join sales on sales.id = sale_items.sale_id")
+ # .where("sale_items.sale_id=?",sale_order.sale_id)
+ # return order_details
+ # end
+ # else
+ # return false
+ # end
end
private
diff --git a/app/views/oqs/home/index.html.erb b/app/views/oqs/home/index.html.erb
index 47d80f38..f2120cde 100644
--- a/app/views/oqs/home/index.html.erb
+++ b/app/views/oqs/home/index.html.erb
@@ -61,11 +61,8 @@
" + parse_data.item_name + " " +
+ "" + parse_data.qty + " " +
+ "" + parse_data.qty*parse_data.price + " " +
+ "
<%= qid.customer_name %>
-<%= qid.assigned_order_item_id %>
+<%= qid.assigned_order_item_id %>
- <% end diff --git a/app/views/origami/home/index.html.erb b/app/views/origami/home/index.html.erb index ac8c7678..45bfe596 100644 --- a/app/views/origami/home/index.html.erb +++ b/app/views/origami/home/index.html.erb @@ -1,6 +1,6 @@<%= unique_id %>
++ Receipt No : + + <%= bko.receipt_no %> + +
++ Order Status : + + <%= bko.order_status %> + + +
+<%= unique_id %>
++ Receipt No : + + <%= rmo.receipt_no %> + +
++ Order Status : + + <%= rmo.order_status %> + + +
+<%= unique_id %>
++ Receipt No : + + <%= odr.receipt_no %> + +
++ Order Status : + + <%= odr.order_status %> + + +
+| Items | +QTY + | Price + |
|---|
| - - | -- - | -- - | -
| Items | +QTY + | Price + |
|---|
| + + | ++ + | ++ + | +