7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'app/jobs/auctify/bidding_closer_job.rb', line 7
def perform(auction_id:)
return if auction_id.blank?
begin
auction = Auctify::Sale::Auction.find(auction_id)
rescue ActiveRecord::RecordNotFound
return
end
if Time.current < auction.currently_ends_at
Rails.logger.info("Too soon for closing of auction #{auction_label(auction)}.")
else
Rails.logger.info("Closing auction #{auction_label(auction)} NOW!")
Auctify::Sale::Auction.with_advisory_lock("closing_auction_#{auction_id}") do
auction.close_bidding! if auction.reload.in_sale?
end
end
end
|