From ae2144cca98e718505646b79112083ec4a31b110 Mon Sep 17 00:00:00 2001 From: Myat Zin Wai Maw Date: Fri, 21 Jun 2019 15:33:34 +0630 Subject: [PATCH] Inventory Issue --- app/models/inventory_definition.rb | 4 +--- app/models/sale.rb | 11 ++++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/app/models/inventory_definition.rb b/app/models/inventory_definition.rb index 644f1e4e..f56de536 100755 --- a/app/models/inventory_definition.rb +++ b/app/models/inventory_definition.rb @@ -4,8 +4,6 @@ class InventoryDefinition < ApplicationRecord def self.calculate_product_count(saleObj=nil,saleobj_after_req_bill=nil) if !saleObj.nil? - Rails.logger.debug "Hello count" - Rails.logger.debug saleObj.sale_items.count saleObj.sale_items.each do |item| found, inventory_definition = find_product_in_inventory(item) if found @@ -37,7 +35,7 @@ class InventoryDefinition < ApplicationRecord end def self.check_balance(item,inventory_definition) # item => saleItemOBj - stock = StockJournal.where('item_code=?', item.item_instance_code).last + stock = StockJournal.where('item_code=?', item.item_instance_code).order("id DESC").first unless stock.nil? modify_balance(item, stock, inventory_definition) else diff --git a/app/models/sale.rb b/app/models/sale.rb index a00361aa..ad8cdba2 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -63,6 +63,7 @@ class Sale < ApplicationRecord end end def generate_invoice_from_booking(booking_id, requested_by, cashier, order_source = nil, current_checkin_induties_count) + saleObj ='' booking = Booking.find(booking_id) status = false Rails.logger.debug "Booking -> " + booking.id.to_s @@ -71,13 +72,17 @@ class Sale < ApplicationRecord #get all order attached to this booking and combine into 1 invoice booking.booking_orders.each do |order| + # puts "Hello order" if booking.sale_id - status, sale_id = generate_invoice_from_order(order.order_id, nil, booking, requested_by, cashier, order_source) + status, sale_id = generate_invoice_from_order(order.order_id, nil, booking, requested_by, cashier, order_source) else - status, sale_id = generate_invoice_from_order(order.order_id, booking.sale_id, booking, requested_by, cashier, order_source) + status, sale_id = generate_invoice_from_order(order.order_id, booking.sale_id, booking, requested_by, cashier, order_source) end booking.sale_id = sale_id + saleObj = Sale.find(sale_id) end + # InventoryJob.perform_now(self.id) + InventoryDefinition.calculate_product_count(saleObj) order = booking.booking_orders.take.order link_order_sale(order.id) @@ -225,7 +230,7 @@ class Sale < ApplicationRecord # InventoryJob.perform_now(self.id) saleObj = Sale.find(self.id) - InventoryDefinition.calculate_product_count(saleObj) + # InventoryDefinition.calculate_product_count(saleObj) return true, self.id end