Class: ScheduleWorkers::EventDriven::ExpirationEvents::ExpiredPricingAdjustmentWorker
- Inherits:
-
ApplicationWorker
- Object
- ApplicationWorker
- ScheduleWorkers::EventDriven::ExpirationEvents::ExpiredPricingAdjustmentWorker
- Defined in:
- app/workers/schedule_workers/event_driven/expiration_events/expired_pricing_adjustment_worker.rb
Instance Method Summary collapse
-
#perform ⇒ Object
Performs the expiration event handling for ticket groups and restaurant packages.
Methods inherited from ApplicationWorker
Instance Method Details
#perform ⇒ Object
Performs the expiration event handling for ticket groups and restaurant packages.
This method is responsible for processing expired ticket groups and restaurant packages by checking their expiration dates against the previous day's date in the 'Asia/Bangkok' time zone. This worker runs every day at 00:00 (midnight) It retrieves the expired records and processes each one accordingly.
Logs any errors that occur during the processing of expired ticket groups and restaurant packages to Rollbar.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/workers/schedule_workers/event_driven/expiration_events/expired_pricing_adjustment_worker.rb', line 18 def perform yesterday = Time.use_zone('Asia/Bangkok') { Time.zone.yesterday } # handle expiration of ticket groups (voucher in marketplace) expired_ticket_groups = TicketGroup.where('selling_end_date = ?', yesterday) expired_ticket_groups.each do |expired_tg| process_expired_ticket_group(expired_tg) end # handle expiration of restaurant packages expired_restaurant_packages = HhPackage::RestaurantPackage.where('end_date = ?', yesterday) expired_restaurant_packages.each do |expired_rp| process_expired_restaurant_package(expired_rp) end rescue StandardError => e APMErrorHandler.report(e) end |