added sale order

This commit is contained in:
Nweni
2017-06-06 16:47:43 +06:30
parent 2318d83adf
commit 1c5c5e194c

View File

@@ -1,6 +1,6 @@
class Sale < ApplicationRecord class Sale < ApplicationRecord
self.primary_key = "sale_id" self.primary_key = "sale_id"
#primary key - need to be unique generated for multiple shops #primary key - need to be unique generated for multiple shops
before_create :generate_custom_id before_create :generate_custom_id
@@ -17,6 +17,7 @@ class Sale < ApplicationRecord
scope :open_invoices, -> { where("sale_status = 'new' and receipt_date BETWEEN '#{DateTime.now.utc.end_of_day}' AND '#{DateTime.now.utc.beginning_of_day}'") } scope :open_invoices, -> { where("sale_status = 'new' and receipt_date BETWEEN '#{DateTime.now.utc.end_of_day}' AND '#{DateTime.now.utc.beginning_of_day}'") }
def generate_invoice_from_booking(booking_id, requested_by) def generate_invoice_from_booking(booking_id, requested_by)
puts "get invoice from booking"
booking = Booking.find(booking_id) booking = Booking.find(booking_id)
status = false status = false
Rails.logger.debug "Booking -> " + booking.id.to_s Rails.logger.debug "Booking -> " + booking.id.to_s
@@ -32,6 +33,7 @@ class Sale < ApplicationRecord
booking.sale_id = sale_id booking.sale_id = sale_id
end end
order = booking.booking_orders.take.order order = booking.booking_orders.take.order
puts "add sale order"
link_order_sale(order.id) link_order_sale(order.id)
return status return status
end end
@@ -68,8 +70,8 @@ class Sale < ApplicationRecord
add_item(item) add_item(item)
end end
link_order_sale(order.id) link_order_sale(order.id)
end end
@@ -226,9 +228,14 @@ class Sale < ApplicationRecord
def link_order_sale(order_id) def link_order_sale(order_id)
#create if it doesn't exist #create if it doesn't exist
if (SaleOrder.where("sale_id = #{self.id} and order_id=#{order_id}").nil?) saleOrder = SaleOrder.where("sale_id=? and order_id=?", self.id, order_id).take
if saleOrder.nil?
SaleOrder.create(:sale_id => self.id, :order_id => order_id) SaleOrder.create(:sale_id => self.id, :order_id => order_id)
end end
# if (SaleOrder.where("sale_id = #{self.id} and order_id=#{order_id}").nil?)
# SaleOrder.create(:sale_id => self.id, :order_id => order_id)
# end
#dosomrting here #dosomrting here
#puts Time.now.format(":short") #puts Time.now.format(":short")
end end