update shift only if sales completed

This commit is contained in:
Thein Lin Kyaw
2020-07-12 18:20:21 +06:30
parent 161a509aba
commit 82ee0697c7
5 changed files with 66 additions and 115 deletions

View File

@@ -17,16 +17,7 @@ class Foodcourt::PaymentsController < BaseFoodcourtController
if(Sale.exists?(sale_id)) if(Sale.exists?(sale_id))
saleObj = Sale.find(sale_id) saleObj = Sale.find(sale_id)
sale_items = SaleItem.get_all_sale_items(sale_id) sale_items = SaleItem.get_all_sale_items(sale_id)
#shop_detail = Shop.first
# rounding adjustment
if !path.include? ("credit_payment")
if current_shop.is_rounding_adj
new_total = Sale.get_rounding_adjustment(saleObj.grand_total)
rounding_adj = new_total - saleObj.grand_total
saleObj.update_attributes(grand_total: new_total,old_grand_total: saleObj.grand_total,rounding_adjustment:rounding_adj) if rounding_adj > 0
end
end
#end rounding adjustment
sp = SalePayment.where('sale_id=? and payment_method=? and payment_status=?', sale_id, 'kbzpay', 'paid').last sp = SalePayment.where('sale_id=? and payment_method=? and payment_status=?', sale_id, 'kbzpay', 'paid').last
if is_kbz == 'false' if is_kbz == 'false'
Rails.logger.info '################ CASH PAYMENT #################' Rails.logger.info '################ CASH PAYMENT #################'
@@ -36,8 +27,6 @@ class Foodcourt::PaymentsController < BaseFoodcourtController
sp.kbz_edit_sale_payment(sp.received_amount.to_f, current_user) sp.kbz_edit_sale_payment(sp.received_amount.to_f, current_user)
end end
# end
if !path.include? ("credit_payment") if !path.include? ("credit_payment")
rebate_amount = nil rebate_amount = nil
# For Cashier by Zone # For Cashier by Zone

View File

@@ -6,6 +6,7 @@ class Foodcourt::VoidController < BaseFoodcourtController
remark = params[:remark] remark = params[:remark]
order_source = params[:type] #tax profile source order_source = params[:type] #tax profile source
access_code = params[:access_code] access_code = params[:access_code]
if Sale.exists?(sale_id) if Sale.exists?(sale_id)
sale = Sale.find_by_sale_id(sale_id) sale = Sale.find_by_sale_id(sale_id)
# update count for shift sale # update count for shift sale
@@ -55,21 +56,11 @@ class Foodcourt::VoidController < BaseFoodcourtController
Rails.logger.debug membership_response.to_json Rails.logger.debug membership_response.to_json
end end
# For Print # For Print
member_info = nil member_info = nil
rebate_amount = nil rebate_amount = nil
current_balance = nil current_balance = nil
# For Cashier by Zone
bookings = Booking.where("sale_id='#{sale_id}'")
if bookings.count > 1
# for Multiple Booking
if bookings[0].dining_facility_id.to_i>0
table = DiningFacility.find(bookings[0].dining_facility_id)
end
end
if bookings[0].dining_facility_id.to_i > 0 if bookings[0].dining_facility_id.to_i > 0
cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id) cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id)
cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id) cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id)

View File

@@ -34,15 +34,6 @@ class Origami::VoidController < BaseOrigamiController
sale.sale_status = 'void' sale.sale_status = 'void'
sale.save sale.save
# No Need
# bookings = sale.bookings
# bookings.each do |booking|
# orders = booking.orders
# orders.each do |order|
# # order.status = 'void'
# end
# end
if table = sale.booking.dining_facility if table = sale.booking.dining_facility
unless table.current_bookings.exists? unless table.current_bookings.exists?
table.update_attributes(status: 'available') table.update_attributes(status: 'available')
@@ -59,20 +50,10 @@ class Origami::VoidController < BaseOrigamiController
sale_audit = SaleAudit.record_audit_for_edit(sale_id,current_user.name, action_by,remark,"SALEVOID" ) sale_audit = SaleAudit.record_audit_for_edit(sale_id,current_user.name, action_by,remark,"SALEVOID" )
# For Print # For Print
member_info = nil member_info = nil
rebate_amount = nil rebate_amount = nil
current_balance = nil current_balance = nil
# For Cashier by Zone
bookings = Booking.where("sale_id='#{sale_id}'")
if bookings.count > 1
# for Multiple Booking
if bookings[0].dining_facility_id.to_i>0
table = DiningFacility.find(bookings[0].dining_facility_id)
end
end
if bookings[0].dining_facility_id.to_i > 0 if bookings[0].dining_facility_id.to_i > 0
cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id) cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id)
cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id) cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id)
@@ -81,17 +62,6 @@ class Origami::VoidController < BaseOrigamiController
cashier_terminal = CashierTerminal.find(shift.cashier_terminal_id) cashier_terminal = CashierTerminal.find(shift.cashier_terminal_id)
end end
# if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
# get printer info
# print_settings = PrintSetting.find_by_unique_code('ReceiptBillPdf') # SaleItemsPdf
#
# if !print_settings.nil?
# unique_code = 'ReceiptBillPdf'
# elsif
# unique_code = 'ReceiptBillStarPdf'
# end
customer= Customer.find(sale.customer_id) customer= Customer.find(sale.customer_id)
#shop detail #shop detail

View File

@@ -553,7 +553,6 @@ class SalePayment < ApplicationRecord
payment_status = self.save! payment_status = self.save!
# SalePayment.where(:sale_payment_id => self.sale_payment_id).update_all(:payment_status => 'paid') # SalePayment.where(:sale_payment_id => self.sale_payment_id).update_all(:payment_status => 'paid')
sale_update_payment_status(self.received_amount.to_f) sale_update_payment_status(self.received_amount.to_f)
else else
sale_update_payment_status(0) sale_update_payment_status(0)
end end
@@ -603,7 +602,6 @@ class SalePayment < ApplicationRecord
payment_status = self.save! payment_status = self.save!
SalePayment.where(:sale_payment_id => self.sale_payment_id).update_all(:payment_status => 'paid') SalePayment.where(:sale_payment_id => self.sale_payment_id).update_all(:payment_status => 'paid')
sale_update_payment_status(self.received_amount.to_f) sale_update_payment_status(self.received_amount.to_f)
else else
sale_update_payment_status(0) sale_update_payment_status(0)
end end
@@ -677,9 +675,12 @@ class SalePayment < ApplicationRecord
end end
end end
sale.save! sale.save!
if sale.sale_status == 'completed'
table_update_status(sale) table_update_status(sale)
update_shift update_shift
end end
end
# update for cashier shift # update for cashier shift
def update_shift def update_shift