diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 1044bc6f..6235422d 100755 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -101,6 +101,14 @@ $(function() { var menu_id = $(this).attr("data-id"); var url = "get_menu_category/"+menu_id; show_menu_item_list(url); + + var sub_id = $(this).attr("data-sub-id"); + if (sub_id == "true") { + console.log("hhhhhhhhhhhhhhhhh") + var sub_url = "get_menu_sub_category/"+menu_id; + sub_category = $(this).find('.sub_category_list'); + show_sub_category_list(sub_url,sub_category); + } }); //End menu category Click @@ -457,9 +465,10 @@ $(function() { var items = $('.selected-set'); if (items.length >= min_qty) { - + if ($('#server_mode').val() != "cloud") { item = get_set_item(items); customer_display_view(item,"set_add"); + } var option = [] attribute_arr = [] @@ -786,8 +795,10 @@ $(function() { $('.add_to_order').attr('data-options',JSON.stringify(option_arr)); $('.add_to_order').attr('data-opt',JSON.stringify(option_arr)); var item_data = $(this); - item = get_item(item_data,"add_to_order"); - customer_display_view(item,"add"); + if ($('#server_mode').val() != "cloud") { + item = get_item(item_data,"add_to_order"); + customer_display_view(item,"add"); + } show_item_detail(item_data,"add_to_order"); calculate_sub_total(); @@ -796,8 +807,10 @@ $(function() { // click plus icon for add $(document).on('click', '.add_icon', function(event){ var item_data = $(this); - item = get_item(item_data,"add_icon"); - customer_display_view(item,"add"); + if ($('#server_mode').val() != "cloud") { + item = get_item(item_data,"add_icon"); + customer_display_view(item,"add"); + } show_item_detail(item_data,"add_icon"); calculate_sub_total(); }); //End Add Icon Click @@ -922,7 +935,9 @@ console.log(d_option) window.location.href = "/origami/room/" + table_id } } - customer_display_view(null,"reload"); + if ($('#server_mode').val() != "cloud") { + customer_display_view(null,"reload"); + } } }); // }else{ @@ -1225,7 +1240,7 @@ console.log(d_option) //click menu sidebar menu category - $(document).on('click', '.sub_click', function(event){ + $(document).on('click', '.sub_clickssss', function(event){ event.preventDefault(); var menu_id = $(this).attr("data-id"); var url = "get_menu_sub_category/"+menu_id; @@ -1260,11 +1275,11 @@ console.log(d_option) data = data.sub_category; if (data.length>0) { - if ((sub_category.hasClass('hidden'))) { + // if ((sub_category.hasClass('hidden'))) { $(sub_category).removeClass('hidden'); - }else{ - $(sub_category).addClass('hidden'); - } + // }else{ + // $(sub_category).addClass('hidden'); + // } for(var i in data) { diff --git a/app/assets/javascripts/channels/order_reservation.js b/app/assets/javascripts/channels/order_reservation.js index 84bf9285..d085f9ba 100644 --- a/app/assets/javascripts/channels/order_reservation.js +++ b/app/assets/javascripts/channels/order_reservation.js @@ -7,41 +7,37 @@ App.checkin = App.cable.subscriptions.create('OrderReservationChannel', { received: function(data) { var order = data.data; - var rowCount = $('.order_reserve_cable tbody tr').length+1; + if(order.length > 0){ + $('.order_reserve_cable tbody').html(""); + $.each(order, function(key,value){ + var rowCount = key+1; + var date = new Date(value.created_at); + + var isPM = date.getHours() >= 12; + var isMidday = date.getHours() == 12; + var time = [date.getHours() - (isPM && !isMidday ? 12 : 0), + date.getMinutes() || '00'].join(':') + + (isPM ? ' PM' : 'AM'); + var created_at = date.getFullYear() +'-'+ (date.getMonth() > 10? date.getMonth() : '0' + (date.getMonth() + 1)) +'-'+ date.getDate(); - var date = new Date(order.requested_time); - var requested_time = date.getHours()+ ':' + date.getMinutes()+ '-' + date.getMinutes(); - - var isPM = date.getHours() >= 12; - var isMidday = date.getHours() == 12; - var result = document.querySelector('#result'); - var time = [date.getHours() - (isPM && !isMidday ? 12 : 0), - date.getMinutes() || '00'].join(':') + - (isPM ? ' PM' : 'AM'); - var month = 0; - if(parseInt(newDate.getMonth()) > 10){ - month = parseInt(newDate.getMonth()) + 1; + row = '' + +''+rowCount + +'' + +''+created_at + +'' + +''+time + +'' + +''+value.grand_total + +'' + +'' + +''+ value.status +'' + +'' + +' ' + + $('.order_reserve_cable tbody').append(row); + }); } - else{ - month = '0' + (parseInt(newDate.getMonth()) + 1); - } - var requested_date = date.getFullYear() +'-'+ month +'-'+ date.getDate(); - - row = '' - +''+rowCount - +'' - +''+requested_date - +'' - +''+time - +'' - +''+order.grand_total - +'' - +'' - +''+ order.status +'' - +'' - +' ' - $('.order_reserve_cable tbody').append(row); } }); diff --git a/app/assets/javascripts/order_reservation.js b/app/assets/javascripts/order_reservation.js index 2c7b71e3..b33ea931 100644 --- a/app/assets/javascripts/order_reservation.js +++ b/app/assets/javascripts/order_reservation.js @@ -38,6 +38,7 @@ $(function() { }); function refreshDetailData(){ + $('#requested_date_time').text(""); $("#sr_number").text(""); $("#delivery_info").text(""); $("#contact_info").text(""); @@ -45,6 +46,7 @@ $(function() { $('#sub_total').text("0.00"); $('#delivery_fee').text("0.00"); $('#total_charges').text("0.00"); + $('#discount_amount').text("0.00"); $('#total_tax').text("0.00"); $('#grand_total').text("0.00"); } @@ -72,15 +74,7 @@ $(function() { var time = [newDate.getHours() - (isPM && !isMidday ? 12 : 0), newDate.getMinutes() || '00'].join(':') + (isPM ? ' PM' : 'AM'); - var month = 0; - if(parseInt(newDate.getMonth()) > 10){ - month = parseInt(newDate.getMonth()) + 1; - } - else{ - month = '0' + (parseInt(newDate.getMonth()) + 1); - } - - var requested_date = newDate.getFullYear() + '-' + month +'-'+ newDate.getDate() +' '+time; + var requested_date = newDate.getFullYear() + '-' + (newDate.getMonth() > 10? newDate.getMonth() : '0' + (newDate.getMonth() + 1)) +'-'+ newDate.getDate() +' '+time; item_list.empty(); @@ -103,14 +97,25 @@ $(function() { $('.summary-items').append(row); } + if(data.discount_amount > 0){ + $("#discount").show(); + } + $('#requested_date_time').text(requested_date); $('#sub_total').text(data.total_amount); - $('#delivery_fee').text(delivery.delivery_fee? delivery.delivery_fee : '0.0'); - $('#total_charges').text(data.convenience_charge?data.convenience_charge : '0.0'); + $('#delivery_fee').text((parseFloat(delivery.delivery_fee) > 0)? delivery.delivery_fee : '0.0'); + $('#total_charges').text((parseFloat(data.convenience_charge) > 0)? data.convenience_charge : '0.0'); + $('#discount_amount').text((parseFloat(data.discount_amount) > 0)? data.discount_amount : '0.0'); $('#total_tax').text(data.total_tax); $('#grand_total').text(data.grand_total); - var address = delivery.address +', ' +delivery.township+", (" +delivery.direction_address+")" + var address = delivery.address; + if(delivery.township != null && delivery.township!=""){ + address += ', ' +delivery.township; + }else if(delivery.direction_address!=null && delivery.direction_address!=""){ + address += ", (" +delivery.direction_address+")"; + } + $('#requested_time').text(requested_date); $('#customer_name').text(data.customer_name); $('#phone').text(data.phone); $('#address').text(address); @@ -122,8 +127,10 @@ $(function() { if(delivery.delivery_type == "service"){ $("#delivery_info").text("(DELIVERY)"); - }else if(delivery.delivery_type == "self_pick_up"){ + }else if(delivery.delivery_type == "pick_up"){ $("#delivery_info").text("(PICK-UP)"); + }else{ + $("#delivery_info").text("(DIRECT DELIVERY)"); } if(data.order_remark!=null && data.order_remark!=""){ @@ -131,7 +138,7 @@ $(function() { }else if(data.reservation_remark!=null && data.reservation_remark!=""){ $("#order_remark").text(data.reservation_remark); } - $("#sr_number").text("No."+sr_no); + $("#sr_number").text("NO."+sr_no); if (data["receipt_no"]) { $("#contact_info").text(data["receipt_no"]); }else{ diff --git a/app/assets/stylesheets/order_reservation.scss b/app/assets/stylesheets/order_reservation.scss index 204195fd..4a5c591a 100644 --- a/app/assets/stylesheets/order_reservation.scss +++ b/app/assets/stylesheets/order_reservation.scss @@ -88,4 +88,7 @@ } .div_order_margin { margin: 0px 0px 0px -5px !important +} +.div_card_order { + margin: 0px -5px !important } \ No newline at end of file diff --git a/app/controllers/api/order_reserve/order_reservation_controller.rb b/app/controllers/api/order_reserve/order_reservation_controller.rb index da5f6471..902e62e7 100644 --- a/app/controllers/api/order_reserve/order_reservation_controller.rb +++ b/app/controllers/api/order_reserve/order_reservation_controller.rb @@ -59,7 +59,7 @@ class Api::OrderReserve::OrderReservationController < Api::ApiController order_reservation = params order_reservation_id, flag = OrderReservation.addOrderReservationInfo(order_reservation) - order_reservation = OrderReservation.find(order_reservation_id) + order_reservation = OrderReservation.latest_order.where("status = 'new'") #find(order_reservation_id) if flag #&& ENV["SERVER_MODE"] != 'cloud' ActionCable.server.broadcast "order_reservation_channel",data: order_reservation end diff --git a/app/controllers/origami/addorders_controller.rb b/app/controllers/origami/addorders_controller.rb index 100635cd..0c149f0a 100755 --- a/app/controllers/origami/addorders_controller.rb +++ b/app/controllers/origami/addorders_controller.rb @@ -23,6 +23,8 @@ class Origami::AddordersController < BaseOrigamiController day = Date.today.wday @menus = Menu.all @menu = MenuCategory.active.where("menu_id =#{@menus[0].id}").order('order_by asc') + puts "ssssssssssssssssssssssss" + puts @menu.to_json @table_id = params[:id] @table = DiningFacility.find(@table_id) @booking = @table.get_booking diff --git a/app/controllers/origami/dinga_controller.rb b/app/controllers/origami/dinga_controller.rb index 586403f9..87caddfa 100644 --- a/app/controllers/origami/dinga_controller.rb +++ b/app/controllers/origami/dinga_controller.rb @@ -86,11 +86,12 @@ def create # saleObj = Sale.find(sale_id) sale_payment = SalePayment.new - status, @sale = sale_payment.process_payment(saleObj, @user, cash, "dinga",account_no) - if status == true + status, @sale,@membership_data = sale_payment.process_payment(saleObj, @user, cash, "dinga",account_no) + + if status == true && @membership_data["status"] == true @out = true, "Success!" else - @out =false, "Please try again payment!" + @out =false, @membership_data["message"] end end end diff --git a/app/controllers/origami/paymal_controller.rb b/app/controllers/origami/paymal_controller.rb index 1321cf87..e9d3cb6c 100644 --- a/app/controllers/origami/paymal_controller.rb +++ b/app/controllers/origami/paymal_controller.rb @@ -88,11 +88,11 @@ def create # saleObj = Sale.find(sale_id) sale_payment = SalePayment.new - status, @sale = sale_payment.process_payment(saleObj, @user, cash, "paymal",account_no) - if status == true + status, @sale,@membership_data = sale_payment.process_payment(saleObj, @user, cash, "paymal",account_no) + if status == true && @membership_data["status"] == true @out = true, "Success!" else - @out =false, "Please try again payment!" + @out =false, @membership_data["message"] end end end diff --git a/app/controllers/reports/receipt_no_controller.rb b/app/controllers/reports/receipt_no_controller.rb index cff7887c..a86fb9b2 100755 --- a/app/controllers/reports/receipt_no_controller.rb +++ b/app/controllers/reports/receipt_no_controller.rb @@ -20,7 +20,7 @@ authorize_resource :class => false payment_type = params[:payment_type] @sale_data = Sale.get_shift_sales_by_receipt_no(@shift_sale_range,@shift,from,to,payment_type) @sale_taxes = Sale.get_separate_tax(@shift_sale_range,@shift,from,to,payment_type) - @tax_profiles = TaxProfile.order('order_by asc') + @tax_profiles = TaxProfile.order('order_by asc').limit(2) @from = from @to = to # get printer info diff --git a/app/models/menu_category.rb b/app/models/menu_category.rb index 7fb23647..6440444a 100755 --- a/app/models/menu_category.rb +++ b/app/models/menu_category.rb @@ -78,6 +78,14 @@ class MenuCategory < ApplicationRecord end end + def get_sub_category + menu_category = MenuCategory.find_by_menu_category_id(self.id) + if menu_category + return true + end + return false + end + private # def generate_menu_category_code diff --git a/app/models/order_reservation.rb b/app/models/order_reservation.rb index 4337dcf6..7261ec98 100644 --- a/app/models/order_reservation.rb +++ b/app/models/order_reservation.rb @@ -5,9 +5,9 @@ class OrderReservation < ApplicationRecord before_create :generate_custom_id has_many :order_reservation_items - belongs_to :delivery + has_one :delivery - scope :latest_order, -> { order("order_reservation_id desc, requested_time asc") } + scope :latest_order, -> { order("order_reservation_id desc, created_at desc") } SEND_TO_KITCHEN = "send_to_kitchen" READY_TO_DELIVERY = "ready_to_deliver" @@ -21,7 +21,7 @@ class OrderReservation < ApplicationRecord order_reservation = OrderReservation.new order_reservation.order_reservation_type = order_reserve[:order_type] order_reservation.customer_id = order_reserve[:cus_info] - order_reservation.requested_time = DateTime.parse(order_reserve[:requested_time]).utc.strftime("%Y-%m-%d %H:%M:%S") + order_reservation.requested_time = DateTime.parse(order_reserve[:requested_time]).utc order_reservation.callback_url = order_reserve[:callback_url] order_reservation.transaction_ref = order_reserve[:reference] if order_reserve[:order_info] diff --git a/app/models/sale_payment.rb b/app/models/sale_payment.rb index 3dba0a9b..5f372581 100755 --- a/app/models/sale_payment.rb +++ b/app/models/sale_payment.rb @@ -23,6 +23,7 @@ class SalePayment < ApplicationRecord if (amount_due >= 0) payment_status = false + membership_data = nil #route to payment type case payment_method when "cash" @@ -52,11 +53,11 @@ class SalePayment < ApplicationRecord when "foc" payment_status = foc_payment when "paymal" - payment_status = paymal_payment + payment_status,membership_data = paymal_payment when "JunctionPay" payment_status = junction_pay_payment when "dinga" - payment_status = dinga_payment + payment_status,membership_data = dinga_payment else puts "it was something else" end @@ -73,7 +74,7 @@ class SalePayment < ApplicationRecord end end - return true, self.save + return true, self.save,membership_data else #record an payment in sale-audit # remark = "No outstanding Amount - Grand Total [#{invoice.grand_total}] | Due [#{amount_due}] | Paid [#{invoice.amount_received}]" @@ -430,7 +431,7 @@ class SalePayment < ApplicationRecord sale_update_payment_status(0) end - return payment_status + return payment_status,membership_data end def junction_pay_payment @@ -480,7 +481,7 @@ class SalePayment < ApplicationRecord sale_update_payment_status(0) end - return payment_status + return payment_status,membership_data end diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index 235e958a..fd823182 100755 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -46,7 +46,7 @@ <% if type %> <% if !menu.code.include? "SPL" %> -