something strange is happening. When I run the code below, I get the error
Input/output error @ io_write - <STDOUT>
As it's only occurring when I run this code I think it has to do with this part of the code, but please let me know if more information is needed.
model
def total_extra_guest_price(reservation)
sum_guest = 0
sum_amount_guests = 0
age_table_list = []
reservation.reservation_extra_guests.each do |guest|
sum_amount_guests += guest.extra_guest_quantity
end
# persons included vs persons reservation
#if more persons
if reservation.room.room_category.persons_included < sum_amount_guests
#count number of too many persons
extra_persons = sum_amount_guests - reservation.room.room_category.persons_included
# iterate to get res_guest.guest.age_table
reservation.reservation_extra_guests.each do |extra_guest_item|
age_table_list << extra_guest_item.extra_guest.age_table
end
#rank age_tables
age_table_list=age_table_list.sort_by{|item| item['rank']}.reverse!
#while number_to_many persons != 0
while extra_persons != 0
reservation.reservation_extra_guests.each do |res_extra_guest|
age_table_list.each do |age_table|
while res_extra_guest.extra_guest.age_table == age_table && res_extra_guest.extra_guest_quantity != 0
# binding.pry
# binding.pry
(reservation.arrival...reservation.departure).each do |date|
res_extra_guest.extra_guest.extra_guest_prices.each do |price|
if (price.start_date..price.end_date).include? date
sum_guest += price.price
end
end
end
res_extra_guest.extra_guest_quantity -= 1
extra_persons -= 1
end
end
end
end
end
end