diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 5cacee2e..0439efcb 100755 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -73,8 +73,9 @@ $(function() { } //end show list function //click menu sidebar menu category - $(".menu_category").on("click", function(){ - var menu_id = $(this).find(".menu-id").text(); + // $(".menu_category").on("click", function(){ + $(document).on('click', '.menu_category', function(event){ + var menu_id = $(this).attr("data-id"); var url = "get_menu_category/"+menu_id; show_menu_item_list(url); }); @@ -918,6 +919,47 @@ $(function() { } }); + //click menu sidebar menu category + + $(".sub_click").on("click", function(){ + var menu_id = $(this).attr("data-id"); + var url = "get_menu_sub_category/"+menu_id; + sub_category = $(this).find('.sub_category_list'); + show_sub_category_list(url,sub_category); + }); + //End menu category Click + + //show menu item list when click menu category + function show_sub_category_list(url,sub_category){ + + var menu_list = $('.sub_category_list'); + menu_list.empty(); + //Start Ajax + $.ajax({ + type: "GET", + url: url, + data: {}, + dataType: "json", + success: function(data) { + var sub_category_list = $('.sub_category_list'); + sub_category_list.empty(); + data = data.sub_category; + + if (data.length>0) { + $(sub_category).removeClass('hidden'); + for(var i in data) { + + row = '' ; + $(sub_category).append(row); + //end is_sub_item false + } + } + } + }); + //end Ajax + } /* $("input").keypress(function(){ $("span").text(i += 1); });*/ diff --git a/app/assets/stylesheets/addorder.scss b/app/assets/stylesheets/addorder.scss index 03a13c06..bf09f726 100755 --- a/app/assets/stylesheets/addorder.scss +++ b/app/assets/stylesheets/addorder.scss @@ -69,7 +69,17 @@ section .content{ font-weight: bold; border-color: #fff #fff #fff #54A5AF; } - +.sub_category_list{ + background:#fff; + margin-top:8px; +} +.sub_category_list > li{ + list-style:none; + margin-left:-40px; +} +.sub_category_list > li > a.nav-link{ + border-bottom:1px solid #eee; +} .custom-modal-dialog { left:auto; right: auto; diff --git a/app/controllers/origami/discounts_controller.rb b/app/controllers/origami/discounts_controller.rb index e0739e88..f580a92f 100755 --- a/app/controllers/origami/discounts_controller.rb +++ b/app/controllers/origami/discounts_controller.rb @@ -180,6 +180,7 @@ class Origami::DiscountsController < BaseOrigamiController end generic_customer_id = sale.customer.membership_id + account_no = sale.customer.paypar_account_no receipt_no = sale.receipt_no membership = MembershipSetting.find_by_membership_type("paypar_url") memberaction = MembershipAction.find_by_membership_type("member_discount") diff --git a/app/controllers/origami/payments_controller.rb b/app/controllers/origami/payments_controller.rb index d9ea5ec3..2c81cef6 100755 --- a/app/controllers/origami/payments_controller.rb +++ b/app/controllers/origami/payments_controller.rb @@ -230,6 +230,7 @@ class Origami::PaymentsController < BaseOrigamiController sub_total = params[:sub_total] member_info = nil rebate_amount = nil + current_balance = nil if(Sale.exists?(sale_id)) saleObj = Sale.find(sale_id) diff --git a/app/models/printer/receipt_printer.rb b/app/models/printer/receipt_printer.rb index f628c7f2..7a865bf4 100755 --- a/app/models/printer/receipt_printer.rb +++ b/app/models/printer/receipt_printer.rb @@ -65,12 +65,12 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker end #Bill Receipt Print - def print_receipt_bill(printer_settings,cashier_terminal,sale_items,sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info = nil,rebate_amount=nil,shop_details, printed_status) + def print_receipt_bill(printer_settings,cashier_terminal,sale_items,sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info = nil,rebate_amount=nil,shop_details, printed_status,balance) #Use CUPS service #Generate PDF #Print - pdf = ReceiptBillPdf.new(printer_settings, sale_items, sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details,printed_status) + pdf = ReceiptBillPdf.new(printer_settings, sale_items, sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details,printed_status,balance) # print as print copies in printer setting count = printer_settings.print_copies diff --git a/app/models/sale_audit.rb b/app/models/sale_audit.rb index 2a986807..55541851 100755 --- a/app/models/sale_audit.rb +++ b/app/models/sale_audit.rb @@ -89,6 +89,25 @@ class SaleAudit < ApplicationRecord sale_audit.save! end + def self.paymal_search(sale_id) + paymal = SaleAudit.where("sale_id =? and action = 'PAYMAL'",sale_id) + remark = paymal[0].remark.split("}") + response = "["+remark[0]+'}]' + response = JSON.parse(response) + puts response + if response[0]["status"] == true + if response[0]["current_rebate_amount"].present? + amount = response[0]["current_rebate_amount"] + else + amount = response[0]["current_balance_amount"] + end + else + amount = nil + end + return amount + + end + private def generate_custom_id self.sale_audit_id = SeedGenerator.generate_id(self.class.name, "SAI") diff --git a/app/models/sale_payment.rb b/app/models/sale_payment.rb index 40ec63ac..236606c6 100755 --- a/app/models/sale_payment.rb +++ b/app/models/sale_payment.rb @@ -327,7 +327,7 @@ class SalePayment < ApplicationRecord response = rebat(sObj) #record an payment in sale-audit - remark = "#{response} Redeem- for Customer #{self.sale.customer_id} | Sale Id [#{self.sale.sale_id}]| pay amount -> #{self.received_amount} " + remark = "#{response} Rebate- for Customer #{self.sale.customer_id} | Sale Id [#{self.sale.sale_id}]| pay amount -> #{self.received_amount} " sale_audit = SaleAudit.record_paymal(self.sale.sale_id, remark, "Cashier") if !response.nil? diff --git a/app/pdf/receipt_bill_pdf.rb b/app/pdf/receipt_bill_pdf.rb index c48dfa7f..dfd67d89 100755 --- a/app/pdf/receipt_bill_pdf.rb +++ b/app/pdf/receipt_bill_pdf.rb @@ -1,7 +1,7 @@ class ReceiptBillPdf < Prawn::Document include ActionView::Helpers::NumberHelper attr_accessor :label_width,:price_column_width,:page_width, :page_height, :margin, :price_width, :item_width, :header_font_size, :item_font_size,:item_height,:qty_width,:total_width,:item_description_width, :description_width, :price_num_width - def initialize(printer_settings, sale_items, sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info = nil,rebate_amount = nil,shop_details, printed_status) + def initialize(printer_settings, sale_items, sale_data, customer_name, item_price_by_accounts, discount_price_by_accounts, member_info = nil,rebate_amount = nil,shop_details, printed_status,current_balance) self.page_width = printer_settings.page_width self.page_height = printer_settings.page_height self.margin = 5 @@ -55,7 +55,7 @@ class ReceiptBillPdf < Prawn::Document if member_info != nil - member_info(member_info,customer_name,rebate_amount,sale_data,printer_settings.precision,delimiter) + member_info(member_info,customer_name,rebate_amount,sale_data,printer_settings.precision,delimiter,current_balance) end customer(customer_name) @@ -286,7 +286,7 @@ class ReceiptBillPdf < Prawn::Document end # show member information - def member_info(member_info,customer_name,rebate_amount,sale_data,precision,delimiter) + def member_info(member_info,customer_name,rebate_amount,sale_data,precision,delimiter,current_balance) if rebate_amount != nil if rebate_amount["status"] == true stroke_horizontal_rule @@ -342,22 +342,15 @@ class ReceiptBillPdf < Prawn::Document text "#{number_with_precision(redeem, :precision => precision.to_i, :delimiter => delimiter)}", :size => self.item_font_size,:align => :right end - - if redeem == 0 - old = total - rebate_balance - else - # if redeem_count == 0 - old = balance + redeem - # end - end - - move_down 5 + if current_balance != nil + move_down 5 y_position = cursor - bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do - text "Old Balance", :size => self.item_font_size,:align => :left - end - bounding_box([self.item_description_width,y_position], :width =>self.label_width) do - text "#{number_with_precision(old, :precision => precision.to_i, :delimiter => delimiter)}", :size => self.item_font_size,:align => :right + bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do + text "Old Balance", :size => self.item_font_size,:align => :left + end + bounding_box([self.item_description_width,y_position], :width =>self.label_width) do + text "#{number_with_precision(current_balance, :precision => precision.to_i, :delimiter => delimiter)}", :size => self.item_font_size,:align => :right + end end end @@ -371,7 +364,6 @@ class ReceiptBillPdf < Prawn::Document total_balance = total_balance + res["balance"] end - end move_down 5 y_position = cursor diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index 9021ecb5..25c1e1cc 100755 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -9,20 +9,15 @@