6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
# File 'app/services/spree_cm_commissioner/guests/update_seat.rb', line 6
def call(line_item:, guest:, block_id:, updated_by:)
validate_params(line_item, guest, block_id, updated_by)
ApplicationRecord.transaction do
old_block_id = guest.block_id
update_reserved_block(guest, block_id, updated_by)
guest.update!(block_id: block_id) if old_block_id != block_id && block_id.present?
update_order_preload_blocks(line_item.order, old_block_id, block_id)
success(guest: guest, line_item: line_item)
end
rescue StandardError => e
failure(nil, e.message)
end
|