update db index

This commit is contained in:
Aung Myo
2018-07-04 18:08:15 +06:30
parent bdd20f727e
commit 4f9a4e2984
7 changed files with 49 additions and 47 deletions

View File

@@ -8,7 +8,7 @@ class Origami::HomeController < BaseOrigamiController
@rooms = Room.unscoped.all.active.order('status desc') @rooms = Room.unscoped.all.active.order('status desc')
@complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d'))
@orders = Order.includes("sale_orders").where("DATE_FORMAT(date,'%Y-%m-%d') = ? and status != 'billed' and source != 'quick_service'",DateTime.now.strftime('%Y-%m-%d')).order('date desc') @orders = Order.includes("sale_orders").where("DATE_FORMAT(date,'%Y-%m-%d') = ? and status != 'billed' and source != 'quick_service'",DateTime.now.strftime('%Y-%m-%d')).order('date desc')
@shop = Shop.first @shop = shop_detail
# @shift = ShiftSale.current_open_shift(current_user.id) # @shift = ShiftSale.current_open_shift(current_user.id)
end end
@@ -26,7 +26,7 @@ class Origami::HomeController < BaseOrigamiController
@status_sale = "" @status_sale = ""
@sale_array = Array.new @sale_array = Array.new
@shop = Shop.first @shop = shop_detail
@membership = MembershipSetting::MembershipSetting @membership = MembershipSetting::MembershipSetting
@payment_methods = PaymentMethodSetting.all @payment_methods = PaymentMethodSetting.all
@dining_booking = @dining.bookings.active.where("DATE_FORMAT(created_at,'%Y-%m-%d') = '#{DateTime.now.strftime('%Y-%m-%d')}' OR DATE_FORMAT(created_at,'%Y-%m-%d') = '#{Date.today.prev_day}' ") @dining_booking = @dining.bookings.active.where("DATE_FORMAT(created_at,'%Y-%m-%d') = '#{DateTime.now.strftime('%Y-%m-%d')}' OR DATE_FORMAT(created_at,'%Y-%m-%d') = '#{Date.today.prev_day}' ")

View File

@@ -44,11 +44,11 @@ class Origami::PaymentsController < BaseOrigamiController
end end
#shop detail #shop detail
shop_details = Shop.first ## shop_detail = Shop.first
# customer= Customer.where('customer_id=' +.customer_id) # customer= Customer.where('customer_id=' +.customer_id)
customer = Customer.find(sale_data.customer_id) customer = Customer.find(sale_data.customer_id)
# rounding adjustment # rounding adjustment
if shop_details.is_rounding_adj if shop_detail.is_rounding_adj
a = sale_data.grand_total % 25 # Modulus a = sale_data.grand_total % 25 # Modulus
b = sale_data.grand_total / 25 # Division b = sale_data.grand_total / 25 # Division
#not calculate rounding if modulus is 0 and division is even #not calculate rounding if modulus is 0 and division is even
@@ -79,7 +79,7 @@ class Origami::PaymentsController < BaseOrigamiController
printer = Printer::ReceiptPrinter.new(print_settings) printer = Printer::ReceiptPrinter.new(print_settings)
filename, receipt_no, cashier_printer = printer.print_receipt_bill(print_settings,cashier_terminal,sale_items,sale_data,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info, shop_details, "Frt",current_balance,nil) filename, receipt_no, cashier_printer = printer.print_receipt_bill(print_settings,cashier_terminal,sale_items,sale_data,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info, shop_detail, "Frt",current_balance,nil)
result = { result = {
:filepath => filename, :filepath => filename,
@@ -102,9 +102,9 @@ class Origami::PaymentsController < BaseOrigamiController
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_details = Shop.first #shop_detail = Shop.first
# rounding adjustment # rounding adjustment
if shop_details.is_rounding_adj if shop_detail.is_rounding_adj
a = saleObj.grand_total % 25 # Modulus a = saleObj.grand_total % 25 # Modulus
b = saleObj.grand_total / 25 # Division b = saleObj.grand_total / 25 # Division
#not calculate rounding if modulus is 0 and division is even #not calculate rounding if modulus is 0 and division is even
@@ -123,16 +123,10 @@ class Origami::PaymentsController < BaseOrigamiController
rebate_amount = nil rebate_amount = nil
# For Cashier by Zone # For Cashier by Zone
bookings = Booking.where("sale_id='#{sale_id}'") # bookings = Booking.where("sale_id='#{sale_id}'")
# if bookings.count > 1 bookings = Booking.find_by_sale_id(sale_id)
# # for Multiple Booking if bookings.dining_facility_id.to_i > 0
# table = DiningFacility.find(bookings[0].dining_facility_id) table = DiningFacility.find(bookings.dining_facility_id)
# else
# table = DiningFacility.find(bookings[0].dining_facility_id)
# end
if bookings[0].dining_facility_id.to_i > 0
table = DiningFacility.find(bookings[0].dining_facility_id)
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)
@@ -216,7 +210,7 @@ class Origami::PaymentsController < BaseOrigamiController
discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items) discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items)
printer = Printer::ReceiptPrinter.new(print_settings) printer = Printer::ReceiptPrinter.new(print_settings)
filename, sale_receipt_no, printer_name = printer.print_receipt_bill(print_settings,cashier_terminal,sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "Paid",current_balance,card_data) filename, sale_receipt_no, printer_name = printer.print_receipt_bill(print_settings,cashier_terminal,sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_detail, "Paid",current_balance,card_data)
render json: JSON.generate({:status => saleObj.rebate_status, :message => "Can't Rebate coz of Sever Error ", :filename => filename, :receipt_no => sale_receipt_no, :printer_name => printer_name}) render json: JSON.generate({:status => saleObj.rebate_status, :message => "Can't Rebate coz of Sever Error ", :filename => filename, :receipt_no => sale_receipt_no, :printer_name => printer_name})
@@ -255,7 +249,7 @@ class Origami::PaymentsController < BaseOrigamiController
if !@lookup_pdf.nil? if !@lookup_pdf.nil?
@pdf_view = @lookup_pdf.value @pdf_view = @lookup_pdf.value
end end
@shop = Shop.first #show shop info @shop = shop_detail #show shop info
@customer_lists = Customer.where("customer_id = 'CUS-000000000001' or customer_id = 'CUS-000000000002'") @customer_lists = Customer.where("customer_id = 'CUS-000000000001' or customer_id = 'CUS-000000000002'")
@@ -435,7 +429,7 @@ class Origami::PaymentsController < BaseOrigamiController
customer= Customer.find(saleObj.customer_id) customer= Customer.find(saleObj.customer_id)
#shop detail #shop detail
shop_details = Shop.first #shop_detail = Shop.first
# get member information # get member information
rebate = MembershipSetting.find_by_rebate(1) rebate = MembershipSetting.find_by_rebate(1)
if customer.membership_id != nil && rebate if customer.membership_id != nil && rebate
@@ -464,7 +458,7 @@ class Origami::PaymentsController < BaseOrigamiController
discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items) discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items)
printer = Printer::ReceiptPrinter.new(print_settings) printer = Printer::ReceiptPrinter.new(print_settings)
filename, receipt_no, cashier_printer = printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "Re-print",current_balance,card_data) filename, receipt_no, cashier_printer = printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_detail, "Re-print",current_balance,card_data)
result = { result = {
:status => true, :status => true,
@@ -539,7 +533,7 @@ class Origami::PaymentsController < BaseOrigamiController
customer= Customer.find(saleObj.customer_id) customer= Customer.find(saleObj.customer_id)
#shop detail #shop detail
shop_details = Shop.first #shop_detail = Shop.first
# get printer info # get printer info
print_settings=PrintSetting.find_by_unique_code(unique_code) print_settings=PrintSetting.find_by_unique_code(unique_code)
@@ -549,7 +543,7 @@ class Origami::PaymentsController < BaseOrigamiController
printer = Printer::ReceiptPrinter.new(print_settings) printer = Printer::ReceiptPrinter.new(print_settings)
filename, sale_receipt_no, printer_name = printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "FOC",nil,nil) filename, sale_receipt_no, printer_name = printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_detail, "FOC",nil,nil)
result = { result = {
:status => true, :status => true,
:filepath => filename, :filepath => filename,
@@ -579,7 +573,7 @@ class Origami::PaymentsController < BaseOrigamiController
def rounding_adj def rounding_adj
saleObj = Sale.find(params[:sale_id]) saleObj = Sale.find(params[:sale_id])
@shop = Shop.find_by_id(1) @shop = shop_detail
if @shop.is_rounding_adj if @shop.is_rounding_adj
a = saleObj.grand_total % 25 # Modulus a = saleObj.grand_total % 25 # Modulus

View File

@@ -53,12 +53,15 @@ class Origami::ShiftsController < BaseOrigamiController
cashier_terminal.save cashier_terminal.save
#add shift_sale_id to card_settle_trans #add shift_sale_id to card_settle_trans
card_settle_trans = CardSettleTran.select('id').where(['shift_sale_id IS NULL and status IS NOT NULL']) bank_integration = Lookup.find_by_lookup_type('bank_integration')
if !bank_integration.nil?
card_settle_trans = CardSettleTran.select('id').where(['shift_sale_id IS NULL and status IS NOT NULL'])
card_settle_trans.each do |data| card_settle_trans.each do |data|
card_sett_trans = CardSettleTran.find(data.id) card_sett_trans = CardSettleTran.find(data.id)
card_sett_trans.shift_sale_id = @shift.id card_sett_trans.shift_sale_id = @shift.id
card_sett_trans.save() card_sett_trans.save()
end
end end
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
@@ -77,7 +80,7 @@ class Origami::ShiftsController < BaseOrigamiController
end end
end end
end end
shop_details = Shop.find(1) shop_details = shop_detail
#get tax #get tax
shift_obj = ShiftSale.where('id =?',@shift.id) shift_obj = ShiftSale.where('id =?',@shift.id)
@sale_taxes = Sale.get_separate_tax(shift_obj,from=nil,to=nil,type='') @sale_taxes = Sale.get_separate_tax(shift_obj,from=nil,to=nil,type='')

View File

@@ -190,16 +190,18 @@ class Order < ApplicationRecord
def update_items_status_to_billed(items) def update_items_status_to_billed(items)
if (items.nil?) if (items.nil?)
OrderItem.where({ order_items_id: '#{self.order_items.pluck(:order_items_id)}'}).update_all(order_item_status: "billed")
##Update the order status to ensure that reflect the stage ##Update the order status to ensure that reflect the stage
self.order_items.each do |item| # self.order_items.each do |item|
item.order_item_status = "billed" # item.order_item_status = "billed"
item.save # item.save
end # end
else else
items.each do |item| OrderItem.where({ order_items_id: '#{items.pluck(:order_items_id)}'}).update_all(order_item_status: "billed")
item.order_item_status = "billed" # items.each do |item|
item.save # item.order_item_status = "billed"
end # item.save
# end
end end
end end

View File

@@ -412,7 +412,7 @@ class Sale < ApplicationRecord
# Tax Re-Calculte # Tax Re-Calculte
def compute_tax(sale, total_taxable, total_discount = 0, order_source = nil, tax_type=nil) def compute_tax(sale, total_taxable, total_discount = 0, order_source = nil, tax_type=nil)
shop = Shop.first(); shop = Shop.first
#if tax is not apply create new record #if tax is not apply create new record
SaleTax.where("sale_id='#{sale.sale_id}'").find_each do |existing_tax| SaleTax.where("sale_id='#{sale.sale_id}'").find_each do |existing_tax|
@@ -495,7 +495,7 @@ class Sale < ApplicationRecord
# Tax Calculate # Tax Calculate
def apply_tax(total_taxable, order_source = nil) def apply_tax(total_taxable, order_source = nil)
shop = Shop.first(); shop = Shop.first
#if tax is not apply create new record #if tax is not apply create new record
SaleTax.where("sale_id='#{self.sale_id}'").find_each do |existing_tax| SaleTax.where("sale_id='#{self.sale_id}'").find_each do |existing_tax|

View File

@@ -71,10 +71,12 @@ class SalePayment < ApplicationRecord
# update complete order items in oqs # update complete order items in oqs
booking = Booking.find_by_sale_id(sale_id) booking = Booking.find_by_sale_id(sale_id)
booking.booking_orders.each do |sodr| booking.booking_orders.each do |sodr|
AssignedOrderItem.where("order_id = '#{ sodr.order_id }'").find_each do |aoi| assigned =AssignedOrderItem.where("order_id = '#{ sodr.order_id }'").pluck(:assigned_order_item_id)
aoi.delivery_status = 1 AssignedOrderItem.where({ order_id: '#{assigned}'}).update_all(print_status: true)
aoi.save # AssignedOrderItem.where("order_id = '#{ sodr.order_id }'").find_each do |aoi|
end # aoi.delivery_status = 1
# aoi.save
# end
end end
return true, self.save,membership_data return true, self.save,membership_data
@@ -616,8 +618,9 @@ class SalePayment < ApplicationRecord
end end
end end
if status && sale_count == 0 if status && sale_count == 0
table.status = "available" table.update_attributes(status: "available")
table.save # table.status = "available"
# table.save
end end
# type = 'payment' # type = 'payment'

View File

@@ -199,9 +199,9 @@ class ReceiptBillPdf < Prawn::Document
move_down line_move move_down line_move
sub_total = 0.0 sub_total = 0.0
total_qty = 0.0 total_qty = 0.0
show_price = Lookup.find_by_lookup_type("show_price")
sale_items.each do |item| sale_items.each do |item|
# check for item not to show # check for item not to show
show_price = Lookup.find_by_lookup_type("show_price")
if item.status != 'Discount' && item.qty > 0 if item.status != 'Discount' && item.qty > 0
if !show_price.nil? && show_price.value.to_i > 0 && item.price == 0 if !show_price.nil? && show_price.value.to_i > 0 && item.price == 0