2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'app/workers/vendors/suppliers_memo_sync_worker.rb', line 2
def perform
VendorReservation.where(supplier_memo_payment_status: :pending).where.not(inventory_source_id: 1).
includes(reservation: :vendor_reservation).where('reservations.date >= ?', Date.today).
references(:reservation).find_in_batches(batch_size: 100) do |batch|
batch.each do |v_res|
reservation = v_res.reservation
next if reservation.blank?
begin
VendorsService::UpdateMemoService.new(reservation).execute
rescue StandardError => e
BUSINESS_LOGGER.error("Update Payment Memo failed for Reservation #{reservation&.id}", error: e.message)
APMErrorHandler.report(e, vendor_reservation_id: v_res.id, reservation_id: reservation&.id)
end
end
end
rescue StandardError => e
BUSINESS_LOGGER.error('Fatal error in SuppliersMemoWorker', error: e.message)
APMErrorHandler.report(e)
end
|