Class: RoomQuickRevisionWorker
Instance Attribute Summary
#broadcast_status_updates
Instance Method Summary
collapse
#at, #store, #total
Instance Method Details
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'app/workers/room_quick_revision_worker.rb', line 6
def perform(options = {})
options = options.with_indifferent_access
itemizable_klass = options[:itemizable_type].constantize
itemizable = itemizable_klass.find(options[:itemizable_id])
rooms_quick_reviser = MultiRoomModel::RoomsQuickReviser.new(itemizable, keep_plan: options[:keep_plan].to_b)
rooms_quick_reviser.quick_revise(room_configuration_ids: options[:room_configuration_ids]) do |num, reported_total, msg|
reported_total ||= 0
num ||= 0
total reported_total
at(num, msg)
end
if rooms_quick_reviser.errors.present?
store error_message: rooms_quick_reviser.errors.to_sentence.capitalize
else
store info_message: "Quick revision complete"
end
store redirect_to: options[:redirect_to] || polymorphic_path(itemizable)
end
|