From ad9d3a458dc62c716731ff333d0ed676d4caa471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gw=C3=A9na=C3=ABl=20Rault?= Date: Fri, 20 Dec 2024 09:50:24 +0100 Subject: [PATCH] Filter fake timewindows in solution --- models/solution/stop.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/models/solution/stop.rb b/models/solution/stop.rb index e326d079..2a4e4be2 100644 --- a/models/solution/stop.rb +++ b/models/solution/stop.rb @@ -52,7 +52,8 @@ def initialize(object, options = {}) when 'Hash' object # Allow direct loading of json solution else - raise 'Unknown stop class' + + raise "Unknown stop class: #{object.class.to_s} #{object.inspect}" end raise 'A route stop cannot be nil' unless parsed_object @@ -64,6 +65,7 @@ def vrp_result(options = {}) options[:apply] ||= [] options[:apply] << [:setup] end + filter_fake_timewindow hash = super(options) hash['original_service_id'] = id hash.merge!(info.vrp_result(options)) @@ -97,6 +99,12 @@ def build_skills skills_to_output end + def filter_fake_timewindow + return if activity.timewindows.size != 1 + + activity.timewindows = [] if activity.timewindows.first.start == 0 && activity.timewindows.first.end.nil? + end + def active_timewindow return nil if activity.timewindows.empty?