6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'app/interactors/spree_cm_commissioner/trip_clone_creator.rb', line 6
def call
ActiveRecord::Base.transaction do
cloned_product = create_cloned_product(original_trip.product)
cloned_trip = create_cloned_trip(original_trip, cloned_product)
departure_time_from_stops(cloned_trip)
calculate_trip_duration(cloned_trip)
cloned_trip.save!
context.cloned_trip = cloned_trip
clone_variants(original_trip, cloned_trip)
end
rescue StandardError => e
context.fail!(message: e.message)
end
|