sync records

This commit is contained in:
Zoey
2019-06-13 14:51:25 +06:30
parent 0980923cc7
commit a01a3b7835
5 changed files with 56 additions and 3 deletions

View File

@@ -11,6 +11,29 @@ class Booking < ApplicationRecord
scope :active, -> {where("booking_status != 'moved'")}
scope :today, -> {where("created_at >= #{Time.now.utc}")}
def self.sync_booking_records(bookings)
if !bookings.nil?
bookings.each do |b|
unless Booking.exists?(b['booking_id'])
booking = Booking.new
booking.booking_id = b['booking_id']
booking.dining_facility_id = b['dining_facility_id']
booking.checkin_at = b['checkin_at']
booking.checkin_by = b['checkin_by']
booking.checkout_at = b['checkout_at']
booking.checkout_by = b['checkout_by']
booking.reserved_at = b['reserved_at']
booking.reserved_by = b['reserved_by']
booking.booking_status = b['booking_status']
booking.sale_id = b['sale_id']
booking.customer_id = b['customer_id']
booking.save
puts '....... Booking has been created ......'
end
end
end
end
def self.update_dining_facility(booking_arr, newd, old)
table = DiningFacility.find(newd)
exist = table.get_booking
@@ -69,6 +92,12 @@ class Booking < ApplicationRecord
.joins('left join sale_orders on sale_orders.order_id = order_items.order_id')
.where('sale_orders.sale_id=?', sale_id)
@assigned_order_items = AssignedOrderItem.select('assigned_order_items.*')
.joins('left join sale_orders on sale_orders.order_id=assigned_order_items.order_id')
.where('sale_orders.sale_id=?', sale_id)
@bookings = Booking.where('sale_id=?', sale_id)
@sales = Sale.where("sale_id=?", sale_id)
@sale_items = SaleItem.where("sale_id=?", sale_id)
@@ -85,7 +114,7 @@ class Booking < ApplicationRecord
.joins('left join sales on sales.shift_sale_id = shift_sales.id')
.where('sales.sale_id=?', sale_id)
return @orders, @order_items, @sales, @sale_items, @sale_taxes, @sale_payments, @sale_orders, @sale_audits, @shift_sales
return @orders, @order_items, @sales, @sale_items, @sale_taxes, @sale_payments, @sale_orders, @sale_audits, @bookings, @assigned_order_items, @shift_sales
end
private