From 1d1a913732ca944bdf2b4e8c5f31189c579576bd Mon Sep 17 00:00:00 2001 From: Yan Date: Mon, 12 Jun 2017 20:11:37 +0630 Subject: [PATCH] bug fix for order completed --- app/assets/javascripts/cable.js | 8 ++--- app/assets/javascripts/origami.js | 16 +++++----- .../origami/discounts_controller.rb | 8 +++-- app/models/order.rb | 31 +++++++++---------- app/views/origami/home/index.html.erb | 16 +++++++++- config/routes.rb | 2 +- 6 files changed, 49 insertions(+), 32 deletions(-) diff --git a/app/assets/javascripts/cable.js b/app/assets/javascripts/cable.js index ce5ac871..43efe3f2 100644 --- a/app/assets/javascripts/cable.js +++ b/app/assets/javascripts/cable.js @@ -6,9 +6,9 @@ //= require_tree ./channels // Temp Disable -// (function() { -// this.App || (this.App = {}); +(function() { + this.App || (this.App = {}); -// App.cable = ActionCable.createConsumer(); + App.cable = ActionCable.createConsumer(); -// }).call(this); +}).call(this); diff --git a/app/assets/javascripts/origami.js b/app/assets/javascripts/origami.js index 4af97d29..da768fb2 100644 --- a/app/assets/javascripts/origami.js +++ b/app/assets/javascripts/origami.js @@ -68,11 +68,12 @@ $(document).ready(function(){ // Receipt Header receipt_no = result[i].receipt_no; cashier = result[i].cashier_name; - receipt_date = result[i].receipt_date; + receipt_date = new Date(result[i].receipt_date); + show_date = receipt_date.getDate() + "-" + receipt_date.getMonth() + "-" + receipt_date.getFullYear() + ' ' + receipt_date.getHours()+ ':' + receipt_date.getMinutes() $("#receipt_no").text(receipt_no); $("#cashier").text(cashier == null ? "" : cashier); - $("#receipt_date").text(receipt_date); + $("#receipt_date").text(show_date); //Receipt Charges @@ -132,7 +133,8 @@ $(document).ready(function(){ }); // Pay Discount for Payment - $("#pay-discount").on('click', function(){ + $("#pay-discount").on('click', function(e){ + e.preventDefault(); var sale_id = $('#sale-id').text(); var sale_item_id = $('.selected-item').attr('id'); var sub_total = $('#order-sub-total').text(); @@ -140,10 +142,10 @@ $(document).ready(function(){ var discount_type = $('#discount-type').val(); var discount_value = $('#discount-amount').val(); var discount_amount = discount_value; + var ajax_url = "/origami/" + sale_id + "/discount"; - if(sale_item_id == null){ - alert('Please select item row to discount!'); - return; + if(sale_item_id != null){ + ajax_url = "/origami/" + sale_item_id + "/discount"; } // For Percentage Discount @@ -154,7 +156,7 @@ $(document).ready(function(){ var params = {'sale_id': sale_id, 'sale_item_id': sale_item_id, 'grand_total' : grand_total, 'discount_type':discount_type, 'discount_value':discount_value, 'discount_amount':discount_amount}; $.ajax({ type: "POST", - url: "/origami/" + sale_item_id + "/discount", + url: ajax_url, data: params, success:function(result){ } }); diff --git a/app/controllers/origami/discounts_controller.rb b/app/controllers/origami/discounts_controller.rb index e80ca348..fb981a80 100644 --- a/app/controllers/origami/discounts_controller.rb +++ b/app/controllers/origami/discounts_controller.rb @@ -30,13 +30,15 @@ class Origami::DiscountsController < BaseOrigamiController sale.save #save sale item for discount - origin_sale_item = SaleItem.find(sale_item_id) + if sale_item_id != nil + origin_sale_item = SaleItem.find(sale_item_id) + end sale_item = SaleItem.new #pull sale_item.sale_id = sale_id - sale_item.product_code = origin_sale_item.product_code - sale_item.product_name = origin_sale_item.product_name + " Discount" + sale_item.product_code = origin_sale_item != nil ? origin_sale_item.product_code : sale_id + sale_item.product_name = "Overall Discount" sale_item.remark = remark sale_item.qty = 1 diff --git a/app/models/order.rb b/app/models/order.rb index d3a3536d..0c00ea84 100644 --- a/app/models/order.rb +++ b/app/models/order.rb @@ -223,7 +223,7 @@ class Order < ApplicationRecord #Origami: Cashier : to view booking order Table def self.get_booking_order_table - booking_orders = Booking.select("sales.receipt_no,orders.status as order_status, + booking_orders = Booking.select("sales.receipt_no,orders.status as order_status, sales.sale_status as sale_status, orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id, 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") @@ -232,7 +232,6 @@ class Order < ApplicationRecord .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,orders.order_id") - end #Origami: Cashier : to view booking order Table @@ -248,20 +247,20 @@ class Order < ApplicationRecord end #Origami: Cashier : to view booking order Table - 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") - .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 sales on sales.sale_id = bookings.sale_id") - .where("sales.sale_status<>'completed' and 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,orders.customer_id,sales.customer_id,orders.order_id") - end + # 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") + # .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 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,orders.customer_id,sales.customer_id,orders.order_id") + # end #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, + booking_rooms = Booking.select("sales.receipt_no,orders.status as order_status, sales.sale_status as sale_status, orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id, bookings.booking_id,orders.customer_id as customer_id, sales.sale_id as sale_id,dining_facilities.name as room_name") @@ -270,7 +269,7 @@ class Order < ApplicationRecord .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") - .where("sales.sale_status<>'completed' and sales.sale_status<>'complete' and booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,true) + .where("booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,true) .group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.customer_id") end @@ -291,7 +290,7 @@ 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, + orders = Order.select("orders.order_id as order_id,sales.receipt_no,orders.status as order_status, sales.sale_status as sale_status, orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id ,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 @@ -300,7 +299,7 @@ class Order < ApplicationRecord left join order_items on order_items.order_id = orders.order_id left join sale_orders on sale_orders.order_id = orders.order_id left join sales on sales.sale_id = sale_orders.sale_id") - .where("sales.sale_status<>'completed' and dining_facilities.is_active=? and orders.date between ? and ?",true,from,to) + .where("dining_facilities.is_active=? and orders.date between ? and ?",true,from,to) .group("orders.order_id,order_items.order_items_id,dining_facilities.name,sales.receipt_no,bookings.booking_id,sales.sale_id,orders.customer_id") end diff --git a/app/views/origami/home/index.html.erb b/app/views/origami/home/index.html.erb index 0332fa12..77fb4df0 100644 --- a/app/views/origami/home/index.html.erb +++ b/app/views/origami/home/index.html.erb @@ -87,6 +87,11 @@
<% @booking_orders.each do |bko| + # No Show completed + if bko.sale_status == 'completed' + next + end + # Assigned Id for new Order? Sale? unique_id="" customer_id="" @@ -145,6 +150,11 @@
<% @booking_rooms.each do |rmo| + # No Show completed + if rmo.sale_status == 'completed' + next + end + # Assigned Id for new Order? Sale? unique_id="" customer_id="" @@ -204,6 +214,10 @@
<% @orders.each do |odr| + # No Show completed + if odr.sale_status == 'completed' + next + end # Assigned Id for new Order? Sale? unique_id="" customer_id="" @@ -319,7 +333,7 @@ sub_total = 0 if @selected_item_type == "Order" @selected_item.order_items.each do |order_item| - sub_total += order_item.qty*order_item.unit_price + sub_total += (order_item.qty*order_item.unit_price) %> <%= order_item.item_name %> diff --git a/config/routes.rb b/config/routes.rb index 3b15f5dd..76e1498c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -9,7 +9,7 @@ Rails.application.routes.draw do mount Sidekiq::Web => '/kiq' # Action Cable Creation - # mount ActionCable.server => "/cable" + mount ActionCable.server => "/cable" #--------- SmartSales Installation ------------# get 'install' => 'install#index'