diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Travel/Routing/DE/DBRIS/Connection/Segment.pm | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/Travel/Routing/DE/DBRIS/Connection/Segment.pm b/lib/Travel/Routing/DE/DBRIS/Connection/Segment.pm index 840edba..8523f03 100644 --- a/lib/Travel/Routing/DE/DBRIS/Connection/Segment.pm +++ b/lib/Travel/Routing/DE/DBRIS/Connection/Segment.pm @@ -18,6 +18,7 @@ Travel::Routing::DE::DBRIS::Connection::Segment->mk_ro_accessors( sched_dep rt_dep dep dep_platform sched_arr rt_arr arr arr_platform sched_duration rt_duration duration duration_percent + arr_delay dep_delay delay journey_id occupancy occupancy_first occupancy_second is_transfer is_walk walk_name distance_m @@ -59,6 +60,20 @@ sub new { } $ref->{arr} = $ref->{rt_arr} // $ref->{sched_arr}; + if ( $ref->{sched_dep} and $ref->{rt_dep} ) { + $ref->{dep_delay} + = $ref->{rt_dep}->subtract_datetime( $ref->{sched_dep} ) + ->in_units('minutes'); + } + + if ( $ref->{sched_arr} and $ref->{rt_arr} ) { + $ref->{arr_delay} + = $ref->{rt_arr}->subtract_datetime( $ref->{sched_arr} ) + ->in_units('minutes'); + } + + $ref->{delay} = $ref->{arr_delay} // $ref->{dep_delay}; + # PUBLICTRANSPORT uses abschnittsDauerInSeconds; WALK uses abschnittsDauer if ( my $d = $json->{abschnittsDauerInSeconds} // $json->{abschnittsDauer} ) { |