@golemio/pid 2.7.2 → 2.7.3-dev.875852526
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/02_pid_line_example_115.sql +8 -8
- package/db/example/03_ropidgtfs_dump.sql +7 -7
- package/db/example/05_vehicle_positions_dump.sql +25 -25
- package/db/example/08_update_delay_dump.sql +106 -106
- package/db/example/10_cancelledTrip_example.sql +2 -2
- package/db/example/12_metro_line_A_gtfs_trips.sql +12 -12
- package/db/example/13_http-propagate-delay.sql +12 -12
- package/db/example/14_nightDelays.sql +3 -3
- package/db/migrations/postgresql/20230517133728-replace-bigint-timestamps.js +53 -0
- package/db/migrations/postgresql/sqls/20230517133728-replace-bigint-timestamps-down.sql +264 -0
- package/db/migrations/postgresql/sqls/20230517133728-replace-bigint-timestamps-up.sql +264 -0
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js +5 -5
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.js +2 -2
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js +7 -8
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.d.ts +6 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +12 -12
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.js +5 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js +6 -7
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DPPUtils.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DPPUtils.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DPPUtils.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.d.ts +0 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.js +0 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js +29 -28
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ValidToCalculator.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ValidToCalculator.js +5 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ValidToCalculator.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/AbstractDelayAtStop.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/AbstractDelayAtStop.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/AbstractDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/TramDelayAtStop.js +4 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/TramDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/GTFSTripCommonRunManager.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/GTFSTripCommonRunManager.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/GTFSTripCommonRunManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IUpdateRunsGtfsTripInput.d.ts +10 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/{helpers/interfaces/IGtfsRtRecord.js → interfaces/IUpdateRunsGtfsTripInput.js} +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IUpdateRunsGtfsTripInput.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/TransformationInterfaces.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/VPInterfaces.d.ts +13 -13
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateRunsGtfsTripIdSchema.d.ts +3 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateRunsGtfsTripIdSchema.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateRunsGtfsTripIdTask.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateRunsGtfsTripIdTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PositionsTransformation.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PositionsTransformation.js +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PositionsTransformation.js.map +1 -1
- package/dist/output-gateway/pid/data-access/DeparturesRepository.js +1 -1
- package/dist/output-gateway/pid/data-access/DeparturesRepository.js.map +1 -1
- package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.d.ts +12 -6
- package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js.map +1 -1
- package/dist/output-gateway/shared/RopidRouterUtils.d.ts +1 -1
- package/dist/output-gateway/shared/RopidRouterUtils.js +3 -5
- package/dist/output-gateway/shared/RopidRouterUtils.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/DeparturesModel.d.ts +2 -2
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/DeparturesModel.js +4 -2
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/DeparturesModel.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/interfaces/IDeparturesModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/CommonRunsMessagesModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/CommonRunsMessagesModel.js +6 -4
- package/dist/schema-definitions/vehicle-positions/models/CommonRunsMessagesModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/PositionDto.d.ts +7 -7
- package/dist/schema-definitions/vehicle-positions/models/PositionDto.js +24 -14
- package/dist/schema-definitions/vehicle-positions/models/PositionDto.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +6 -4
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto.d.ts +6 -0
- package/dist/{integration-engine/vehicle-positions/workers/runs/interfaces/ICommonRunWithMessage.js → schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto.js} +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto.js.map +1 -0
- package/dist/schema-definitions/vehicle-positions/models/interfaces/ICommonRunsMessagesModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IGtfsRtTripDto.d.ts +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IPositionDto.d.ts +7 -7
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes.d.ts +9 -9
- package/docs/architecture/pid_architecture_overview.drawio +180 -0
- package/package.json +2 -2
- package/dist/integration-engine/vehicle-positions/workers/runs/interfaces/ICommonRunWithMessage.d.ts +0 -6
- package/dist/integration-engine/vehicle-positions/workers/runs/interfaces/ICommonRunWithMessage.js.map +0 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/interfaces/IGtfsRtRecord.d.ts +0 -34
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/interfaces/IGtfsRtRecord.js.map +0 -1
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
-- drop dependent views
|
|
2
|
+
drop view v_vehiclepositions_alerts_last_position;
|
|
3
|
+
drop view v_vehiclepositions_all_processed_positions;
|
|
4
|
+
drop view v_vehiclepositions_all_trips_with_last_position;
|
|
5
|
+
drop view v_vehiclepositions_stop_time_delay_prediction;
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
-- common run messages
|
|
9
|
+
alter table vehiclepositions_runs_messages alter column actual_stop_timestamp_real type timestamptz using to_timestamp(actual_stop_timestamp_real / 1000);
|
|
10
|
+
alter table vehiclepositions_runs_messages alter column actual_stop_timestamp_scheduled type timestamptz using to_timestamp(actual_stop_timestamp_scheduled / 1000);
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
-- vp trips (+ history)
|
|
14
|
+
alter table vehiclepositions_trips alter column end_timestamp type timestamptz using to_timestamp(end_timestamp / 1000);
|
|
15
|
+
alter table vehiclepositions_trips alter column start_timestamp type timestamptz using to_timestamp(start_timestamp / 1000);
|
|
16
|
+
alter table vehiclepositions_trips_history alter column end_timestamp type timestamptz using to_timestamp(end_timestamp / 1000);
|
|
17
|
+
alter table vehiclepositions_trips_history alter column start_timestamp type timestamptz using to_timestamp(start_timestamp / 1000);
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
-- vp positions (+ history)
|
|
21
|
+
alter table vehiclepositions_positions alter column last_stop_arrival_time type timestamptz using to_timestamp(last_stop_arrival_time / 1000);
|
|
22
|
+
alter table vehiclepositions_positions alter column last_stop_departure_time type timestamptz using to_timestamp(last_stop_departure_time / 1000);
|
|
23
|
+
alter table vehiclepositions_positions alter column next_stop_arrival_time type timestamptz using to_timestamp(next_stop_arrival_time / 1000);
|
|
24
|
+
alter table vehiclepositions_positions alter column next_stop_departure_time type timestamptz using to_timestamp(next_stop_departure_time / 1000);
|
|
25
|
+
alter table vehiclepositions_positions alter column origin_timestamp type timestamptz using to_timestamp(origin_timestamp / 1000);
|
|
26
|
+
alter table vehiclepositions_positions alter column scheduled_timestamp type timestamptz using to_timestamp(scheduled_timestamp / 1000);
|
|
27
|
+
alter table vehiclepositions_positions alter column valid_to type timestamptz using to_timestamp(valid_to / 1000);
|
|
28
|
+
alter table vehiclepositions_positions_history alter column last_stop_arrival_time type timestamptz using to_timestamp(last_stop_arrival_time / 1000);
|
|
29
|
+
alter table vehiclepositions_positions_history alter column last_stop_departure_time type timestamptz using to_timestamp(last_stop_departure_time / 1000);
|
|
30
|
+
alter table vehiclepositions_positions_history alter column next_stop_arrival_time type timestamptz using to_timestamp(next_stop_arrival_time / 1000);
|
|
31
|
+
alter table vehiclepositions_positions_history alter column next_stop_departure_time type timestamptz using to_timestamp(next_stop_departure_time / 1000);
|
|
32
|
+
alter table vehiclepositions_positions_history alter column origin_timestamp type timestamptz using to_timestamp(origin_timestamp / 1000);
|
|
33
|
+
alter table vehiclepositions_positions_history alter column scheduled_timestamp type timestamptz using to_timestamp(scheduled_timestamp / 1000);
|
|
34
|
+
alter table vehiclepositions_positions_history alter column valid_to type timestamptz using to_timestamp(valid_to / 1000);
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
-- functions
|
|
38
|
+
drop function convert_timestamp_ms_to_iso_string (bigint, varchar);
|
|
39
|
+
create function convert_timestamptz_to_iso_string(timestamp_tz timestamptz, target_timezone varchar DEFAULT 'Europe/Prague') RETURNS varchar AS $$
|
|
40
|
+
select to_char(timestamp_tz at time zone target_timezone, 'YYYY-MM-DD"T"HH24:MI:SS+' || to_char((select timestamp_tz at time zone target_timezone) - (select timestamp_tz at time zone 'UTC'), 'HH24":00"'))
|
|
41
|
+
$$ LANGUAGE SQL IMMUTABLE;
|
|
42
|
+
|
|
43
|
+
CREATE or replace PROCEDURE vehiclepositions_data_retention(inout numberOfRows int, in dataRetentionMinutes int)
|
|
44
|
+
LANGUAGE plpgsql
|
|
45
|
+
AS $procedure$
|
|
46
|
+
declare
|
|
47
|
+
idsForDelete varchar(255)[];
|
|
48
|
+
begin
|
|
49
|
+
select array_agg(t.id) from pid.vehiclepositions_trips t
|
|
50
|
+
left join pid.vehiclepositions_positions p on
|
|
51
|
+
p.id = t.last_position_id
|
|
52
|
+
where
|
|
53
|
+
p.valid_to < (NOW() - (dataRetentionMinutes || ' minutes')::interval)
|
|
54
|
+
or (gtfs_trip_id is null and p.created_at < NOW() - (dataRetentionMinutes || ' minutes')::interval) -- entries with valid to is null
|
|
55
|
+
into idsForDelete;
|
|
56
|
+
|
|
57
|
+
INSERT INTO pid.vehiclepositions_trips_history
|
|
58
|
+
select * from pid.vehiclepositions_trips where id = ANY(idsForDelete)
|
|
59
|
+
on conflict do nothing;
|
|
60
|
+
|
|
61
|
+
INSERT INTO pid.vehiclepositions_positions_history
|
|
62
|
+
select * from pid.vehiclepositions_positions where trips_id = ANY(idsForDelete)
|
|
63
|
+
on conflict do nothing;
|
|
64
|
+
|
|
65
|
+
delete from pid.vehiclepositions_positions where trips_id = ANY(idsForDelete);
|
|
66
|
+
delete from pid.vehiclepositions_trips where id = ANY(idsForDelete);
|
|
67
|
+
|
|
68
|
+
select array_length(idsForDelete,1) into numberOfRows;
|
|
69
|
+
end;
|
|
70
|
+
$procedure$;
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
-- recreate views
|
|
74
|
+
create view v_vehiclepositions_alerts_last_position as
|
|
75
|
+
SELECT t2.created_at,
|
|
76
|
+
t2.updated_at,
|
|
77
|
+
t2.delay,
|
|
78
|
+
t2.delay_stop_arrival,
|
|
79
|
+
t2.delay_stop_departure,
|
|
80
|
+
t2.next_stop_id,
|
|
81
|
+
t2.shape_dist_traveled,
|
|
82
|
+
t2.is_canceled,
|
|
83
|
+
t2.lat,
|
|
84
|
+
t2.lng,
|
|
85
|
+
t2.origin_time,
|
|
86
|
+
t2.origin_timestamp,
|
|
87
|
+
t2.tracking,
|
|
88
|
+
t2.trips_id,
|
|
89
|
+
t2.create_batch_id,
|
|
90
|
+
t2.created_by,
|
|
91
|
+
t2.update_batch_id,
|
|
92
|
+
t2.updated_by,
|
|
93
|
+
t2.id,
|
|
94
|
+
t2.bearing,
|
|
95
|
+
t2.cis_last_stop_id,
|
|
96
|
+
t2.cis_last_stop_sequence,
|
|
97
|
+
t2.last_stop_id,
|
|
98
|
+
t2.last_stop_sequence,
|
|
99
|
+
t2.next_stop_sequence,
|
|
100
|
+
t2.speed,
|
|
101
|
+
t2.last_stop_arrival_time,
|
|
102
|
+
t2.last_stop_departure_time,
|
|
103
|
+
t2.next_stop_arrival_time,
|
|
104
|
+
t2.next_stop_departure_time,
|
|
105
|
+
t2.asw_last_stop_id,
|
|
106
|
+
t1.gtfs_route_id,
|
|
107
|
+
t1.gtfs_route_short_name,
|
|
108
|
+
t1.gtfs_route_type,
|
|
109
|
+
t1.gtfs_trip_id,
|
|
110
|
+
t1.gtfs_trip_headsign,
|
|
111
|
+
t1.vehicle_type_id,
|
|
112
|
+
t1.wheelchair_accessible
|
|
113
|
+
FROM (vehiclepositions_trips t1
|
|
114
|
+
LEFT JOIN vehiclepositions_positions t2 ON ((t1.last_position_id = t2.id)))
|
|
115
|
+
WHERE ((t2.updated_at > (now() - '00:10:00'::interval)) AND ((t2.state_position)::text = ANY (ARRAY[('on_track'::character varying)::text, ('off_track'::character varying)::text, ('at_stop'::character varying)::text, ('before_track'::character varying)::text, ('after_track'::character varying)::text, ('canceled'::character varying)::text])))
|
|
116
|
+
ORDER BY t2.trips_id, t2.updated_at DESC;
|
|
117
|
+
|
|
118
|
+
comment on view v_vehiclepositions_alerts_last_position is '
|
|
119
|
+
Used only for alerting purposes.
|
|
120
|
+
';
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
create view v_vehiclepositions_all_processed_positions as
|
|
124
|
+
select
|
|
125
|
+
trips_id,
|
|
126
|
+
bearing,
|
|
127
|
+
"delay",
|
|
128
|
+
delay_stop_arrival,
|
|
129
|
+
delay_stop_departure,
|
|
130
|
+
vp.is_canceled,
|
|
131
|
+
convert_timestamptz_to_iso_string(last_stop_arrival_time) as last_stop_arrival_time_isostring,
|
|
132
|
+
convert_timestamptz_to_iso_string(last_stop_departure_time) as last_stop_departure_time_isostring,
|
|
133
|
+
last_stop_id,
|
|
134
|
+
last_stop_sequence,
|
|
135
|
+
lat,
|
|
136
|
+
lng,
|
|
137
|
+
convert_timestamptz_to_iso_string(next_stop_arrival_time) as next_stop_arrival_time_isostring,
|
|
138
|
+
convert_timestamptz_to_iso_string(next_stop_departure_time) as next_stop_departure_time_isostring,
|
|
139
|
+
next_stop_id,
|
|
140
|
+
next_stop_sequence,
|
|
141
|
+
convert_timestamptz_to_iso_string(origin_timestamp) as origin_timestamp_isostring,
|
|
142
|
+
shape_dist_traveled,
|
|
143
|
+
speed,
|
|
144
|
+
state_position
|
|
145
|
+
from
|
|
146
|
+
vehiclepositions_positions vp
|
|
147
|
+
where state_process = 'processed';
|
|
148
|
+
|
|
149
|
+
comment on view v_vehiclepositions_all_processed_positions is '
|
|
150
|
+
View of all processed positions. Used for enriching trips from v_vehiclepositions_all_trips_with_last_position with all positions.
|
|
151
|
+
';
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
create view v_vehiclepositions_all_trips_with_last_position as
|
|
155
|
+
select
|
|
156
|
+
vt.id,
|
|
157
|
+
vt.agency_name_real,
|
|
158
|
+
vt.agency_name_scheduled,
|
|
159
|
+
vt.cis_line_id,
|
|
160
|
+
vt.cis_trip_number,
|
|
161
|
+
vt.gtfs_route_id,
|
|
162
|
+
vt.gtfs_route_short_name,
|
|
163
|
+
vt.gtfs_route_type,
|
|
164
|
+
vt.gtfs_trip_headsign,
|
|
165
|
+
vt.gtfs_trip_short_name,
|
|
166
|
+
vt.gtfs_trip_id,
|
|
167
|
+
vt.origin_route_name,
|
|
168
|
+
vt.run_number,
|
|
169
|
+
vt.vehicle_registration_number,
|
|
170
|
+
vt.vehicle_type_id,
|
|
171
|
+
vt.wheelchair_accessible,
|
|
172
|
+
vt.updated_at,
|
|
173
|
+
convert_timestamptz_to_iso_string(vt.start_timestamp) as start_timestamp_isostring,
|
|
174
|
+
vp.bearing,
|
|
175
|
+
vp.delay,
|
|
176
|
+
vp.delay_stop_arrival,
|
|
177
|
+
vp.delay_stop_departure,
|
|
178
|
+
vp.is_canceled,
|
|
179
|
+
vp.last_stop_id,
|
|
180
|
+
vp.last_stop_sequence,
|
|
181
|
+
vp.last_stop_headsign,
|
|
182
|
+
vp.lat,
|
|
183
|
+
vp.lng,
|
|
184
|
+
vp.next_stop_id,
|
|
185
|
+
vp.next_stop_sequence,
|
|
186
|
+
vp.shape_dist_traveled,
|
|
187
|
+
vp.speed,
|
|
188
|
+
vp.state_position,
|
|
189
|
+
vp.tracking,
|
|
190
|
+
convert_timestamptz_to_iso_string(vp.last_stop_arrival_time) as last_stop_arrival_time_isostring,
|
|
191
|
+
convert_timestamptz_to_iso_string(vp.last_stop_departure_time) as last_stop_departure_time_isostring,
|
|
192
|
+
convert_timestamptz_to_iso_string(vp.next_stop_arrival_time) as next_stop_arrival_time_isostring,
|
|
193
|
+
convert_timestamptz_to_iso_string(vp.next_stop_departure_time) as next_stop_departure_time_isostring,
|
|
194
|
+
convert_timestamptz_to_iso_string(vp.origin_timestamp) as origin_timestamp_isostring
|
|
195
|
+
from
|
|
196
|
+
vehiclepositions_trips vt
|
|
197
|
+
inner join vehiclepositions_positions vp on
|
|
198
|
+
vt.last_position_id = vp.id
|
|
199
|
+
and (vp.valid_to is null
|
|
200
|
+
or vp.valid_to >= now())
|
|
201
|
+
and vp.state_process = 'processed';
|
|
202
|
+
|
|
203
|
+
comment on view v_vehiclepositions_all_trips_with_last_position is '
|
|
204
|
+
View of all trips with last processed position. Used for serving data to the vehiclepositions output API.
|
|
205
|
+
';
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
create view v_vehiclepositions_stop_time_delay_prediction as
|
|
209
|
+
with recursive stop_times as (
|
|
210
|
+
select
|
|
211
|
+
rst.trip_id,
|
|
212
|
+
vt.provider_source_type,
|
|
213
|
+
vp.delay,
|
|
214
|
+
coalesce(vp.last_stop_sequence, 1) as initial_stop_sequence,
|
|
215
|
+
vp.state_position,
|
|
216
|
+
rst.stop_sequence,
|
|
217
|
+
rst.stop_id,
|
|
218
|
+
rst.computed_dwell_time_seconds,
|
|
219
|
+
case when vp.last_stop_sequence is null
|
|
220
|
+
then vp.delay
|
|
221
|
+
else vp.delay_stop_arrival
|
|
222
|
+
end as arrival_delay_seconds,
|
|
223
|
+
case when vp.last_stop_sequence is null
|
|
224
|
+
then predict_delay_seconds(vp.delay, rst.computed_dwell_time_seconds, vt.provider_source_type)
|
|
225
|
+
when vp.state_position = 'at_stop'
|
|
226
|
+
then case when vt.provider_source_type = '1' then greatest(0, vp.delay) else vp.delay end
|
|
227
|
+
else vp.delay_stop_departure
|
|
228
|
+
end as departure_delay_seconds
|
|
229
|
+
from ropidgtfs_stop_times rst
|
|
230
|
+
inner join vehiclepositions_trips vt on vt.gtfs_trip_id = rst.trip_id
|
|
231
|
+
inner join vehiclepositions_positions vp on vp.id = vt.last_position_id
|
|
232
|
+
and (vp.valid_to is null or vp.valid_to >= now())
|
|
233
|
+
where
|
|
234
|
+
vt.gtfs_trip_id is not null
|
|
235
|
+
and rst.stop_sequence = coalesce(vp.last_stop_sequence, 1)
|
|
236
|
+
union all
|
|
237
|
+
select
|
|
238
|
+
rst.trip_id,
|
|
239
|
+
previous_row.provider_source_type,
|
|
240
|
+
previous_row.delay,
|
|
241
|
+
previous_row.initial_stop_sequence,
|
|
242
|
+
previous_row.state_position,
|
|
243
|
+
rst.stop_sequence,
|
|
244
|
+
rst.stop_id,
|
|
245
|
+
rst.computed_dwell_time_seconds,
|
|
246
|
+
case when rst.stop_sequence - previous_row.initial_stop_sequence = 1 and previous_row.state_position != 'at_stop'
|
|
247
|
+
then previous_row.delay
|
|
248
|
+
else previous_row.departure_delay_seconds
|
|
249
|
+
end as arrival_delay_seconds,
|
|
250
|
+
predict_delay_seconds(
|
|
251
|
+
case when rst.stop_sequence - previous_row.initial_stop_sequence = 1 and previous_row.state_position != 'at_stop' then previous_row.delay else previous_row.departure_delay_seconds end,
|
|
252
|
+
rst.computed_dwell_time_seconds,
|
|
253
|
+
previous_row.provider_source_type
|
|
254
|
+
) as departure_delay_seconds
|
|
255
|
+
from stop_times previous_row
|
|
256
|
+
inner join ropidgtfs_stop_times rst on rst.trip_id = previous_row.trip_id and rst.stop_sequence = previous_row.stop_sequence + 1
|
|
257
|
+
)
|
|
258
|
+
select trip_id, stop_sequence, stop_id, arrival_delay_seconds, departure_delay_seconds
|
|
259
|
+
from stop_times
|
|
260
|
+
order by trip_id, stop_sequence;
|
|
261
|
+
|
|
262
|
+
comment on view v_vehiclepositions_stop_time_delay_prediction is '
|
|
263
|
+
This view contains the predicted delay of a vehicle at each stop.
|
|
264
|
+
';
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.d.ts
CHANGED
|
@@ -10,8 +10,8 @@ export declare class GenerateFilesTask extends AbstractEmptyTask {
|
|
|
10
10
|
protected execute(): Promise<void>;
|
|
11
11
|
private createFeedHeader;
|
|
12
12
|
/**
|
|
13
|
-
* Parse UTC date from timestamp
|
|
13
|
+
* Parse UTC date from ISO timestamp
|
|
14
14
|
* @example 20230101
|
|
15
15
|
*/
|
|
16
|
-
private
|
|
16
|
+
private parseUTCDateFromISO;
|
|
17
17
|
}
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js
CHANGED
|
@@ -41,13 +41,13 @@ class GenerateFilesTask extends workers_1.AbstractEmptyTask {
|
|
|
41
41
|
scheduleRelationship: tripRecord.last_position.is_canceled
|
|
42
42
|
? ovapi_gtfs_realtime_bindings_1.transit_realtime.TripDescriptor.ScheduleRelationship.CANCELED
|
|
43
43
|
: ovapi_gtfs_realtime_bindings_1.transit_realtime.TripDescriptor.ScheduleRelationship.SCHEDULED,
|
|
44
|
-
startDate: this.
|
|
44
|
+
startDate: this.parseUTCDateFromISO(tripRecord.start_timestamp),
|
|
45
45
|
startTime: tripRecord.start_time,
|
|
46
46
|
tripId: tripRecord.gtfs_trip_id,
|
|
47
47
|
routeId: tripRecord.gtfs_route_id,
|
|
48
48
|
};
|
|
49
49
|
const vehicleDescriptor = this.vehicleDescriptor.getVehicleDescriptor(tripRecord);
|
|
50
|
-
const entityTimestamp = Math.round(
|
|
50
|
+
const entityTimestamp = Math.round(new Date(tripRecord.last_position.origin_timestamp).getTime() / 1000);
|
|
51
51
|
const stopTimeUpdates = [];
|
|
52
52
|
for (const stopTimeEvent of tripRecord.stop_times) {
|
|
53
53
|
stopTimeUpdates.push({
|
|
@@ -117,11 +117,11 @@ class GenerateFilesTask extends workers_1.AbstractEmptyTask {
|
|
|
117
117
|
return ovapi_gtfs_realtime_bindings_1.transit_realtime.FeedHeader.fromObject(header);
|
|
118
118
|
}
|
|
119
119
|
/**
|
|
120
|
-
* Parse UTC date from timestamp
|
|
120
|
+
* Parse UTC date from ISO timestamp
|
|
121
121
|
* @example 20230101
|
|
122
122
|
*/
|
|
123
|
-
|
|
124
|
-
const startTimestamp = new Date(
|
|
123
|
+
parseUTCDateFromISO(timestamp) {
|
|
124
|
+
const startTimestamp = new Date(timestamp);
|
|
125
125
|
const formattedDate = startTimestamp.getUTCFullYear() +
|
|
126
126
|
("0" + (startTimestamp.getUTCMonth() + 1)).slice(-2) +
|
|
127
127
|
("0" + startTimestamp.getUTCDate()).slice(-2);
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenerateFilesTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAkF;AAClF,yFAA8G;AAC9G,2EAAkF;AAClF,wFAAyF;AACzF,gFAA6E;AAC7E,gEAA6D;AAC7D,oEAAiE;AACjE,4CAA8C;AAG9C,MAAa,iBAAkB,SAAQ,2BAAiB;IASpD,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QATP,cAAS,GAAG,eAAe,CAAC;QAC5B,aAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;QAS/C,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,qBAAqB,GAAG,IAAI,6CAAqB,EAAE,CAAC;QAEzD,MAAM,oBAAoB,GAAG,IAAI,iCAAoB,EAAE,CAAC;QACxD,MAAM,oBAAoB,GAAG,IAAI,uCAA0B,EAAE,CAAC;QAC9D,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,oBAAoB,CAAC,CAAC;QACnH,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAiB,EAAE,CAAC;IACrD,CAAC;IAEe,OAAO;;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;YAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAG,+CAAY,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAC/E,MAAM,gBAAgB,GAAG,+CAAY,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAEjF,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE;gBAC/B,MAAM,cAAc,GAAoB;oBACpC,oBAAoB,EAAE,UAAU,CAAC,aAAa,CAAC,WAAW;wBACtD,CAAC,CAAC,+CAAY,CAAC,cAAc,CAAC,oBAAoB,CAAC,QAAQ;wBAC3D,CAAC,CAAC,+CAAY,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS;oBAChE,SAAS,EAAE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"GenerateFilesTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { IGtfsRunTripCache } from "../../../../ropid-gtfs/interfaces/IGtfsRunTripCache";
|
|
2
2
|
import { ICommonRunsModel } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/ICommonRunsModel";
|
|
3
|
+
import { ICommonRunWithMessageDto } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto";
|
|
3
4
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
4
5
|
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
5
6
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
6
|
-
import { ICommonRunWithMessage } from "../interfaces/ICommonRunWithMessage";
|
|
7
7
|
import { CommonRunsMessagesRepository } from "./CommonRunsMessagesRepository";
|
|
8
8
|
export declare class CommonRunsRepository extends PostgresModel implements IModel {
|
|
9
9
|
/** Model name */
|
|
@@ -22,8 +22,8 @@ export declare class CommonRunsRepository extends PostgresModel implements IMode
|
|
|
22
22
|
private tripScheduleRepository;
|
|
23
23
|
constructor();
|
|
24
24
|
getRunRecordForUpdate: (run: ICommonRunsModel) => Promise<ICommonRunsModel | null>;
|
|
25
|
-
createAndAssociate: ({ run, run_message }:
|
|
26
|
-
updateAndAssociate: ({ run, run_message }:
|
|
25
|
+
createAndAssociate: ({ run, run_message }: ICommonRunWithMessageDto) => Promise<ICommonRunWithMessageDto>;
|
|
26
|
+
updateAndAssociate: ({ run, run_message }: ICommonRunWithMessageDto, runId: string) => Promise<{
|
|
27
27
|
run: any;
|
|
28
28
|
run_message: any;
|
|
29
29
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommonRunsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gFAAgF;AAEhF,mEAAuC;AACvC,uFAAgE;
|
|
1
|
+
{"version":3,"file":"CommonRunsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gFAAgF;AAEhF,mEAAuC;AACvC,uFAAgE;AAGhE,iFAAqF;AACrF,yEAAqF;AACrF,6EAAuE;AACvE,mFAAkF;AAClF,iFAAoE;AACpE,iFAA8E;AAE9E,MAAa,oBAAqB,SAAQ,sBAAa;IAgBnD;QACI,KAAK,CACD,sBAAsB,EACtB;YACI,WAAW,EAAE,wBAAe,CAAC,UAAU;YACvC,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,wBAAe,CAAC,cAAc;YACzD,UAAU,EAAE,YAAY;YACxB,2BAA2B,EAAE;gBACzB,OAAO,EAAE;oBACL;wBACI,MAAM,EAAE,CAAC,IAAI,CAAC;wBACd,IAAI,EAAE,4BAA4B;qBACrC;oBACD;wBACI,MAAM,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,CAAC;wBAChF,IAAI,EAAE,2BAA2B;qBACpC;iBACJ;aACJ;SACJ,EACD,IAAI,uCAAmB,CAAC,+BAA+B,EAAE,wBAAe,CAAC,UAAU,CAAC,CACvF,CAAC;QAiBC,0BAAqB,GAAG,CAAC,GAAqB,EAAoC,EAAE;YACvF,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC/B,KAAK,EAAE;oBACH,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;oBAC5C,kBAAkB,EAAE;wBAChB,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,mBAAS,CAAC,OAAO,CAAC,4BAA4B,CAAC;qBAC3D;iBACJ;gBACD,KAAK,EAAE,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;gBACvC,GAAG,EAAE,IAAI;aACZ,CAAC,CAAC;QACP,CAAC,CAAC;QAEK,uBAAkB,GAAG,CAAO,EAAE,GAAG,EAAE,WAAW,EAA4B,EAAqC,EAAE;YACpH,MAAM,UAAU,GAAG,8BAAiB,CAAC,aAAa,EAAE,CAAC;YACrD,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;YACzC,IAAI;gBACA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,iCAEpC,GAAG,KACN,YAAY,EAAE,CAAC,WAAW,CAAC,KAE/B;oBACI,OAAO,EAAE;wBACL,EAAE,EAAE,cAAc;wBAClB,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC;qBACvD;oBACD,WAAW,EAAE,CAAC;iBACjB,CACJ,CAAC;gBACF,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,KAAmD,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAA9E,EAAE,YAAY,EAAE,gBAAgB,OAA8C,EAAzC,SAAS,cAA9C,gBAAgD,CAA8B,CAAC;gBACrF,OAAO;oBACH,GAAG,EAAE,SAAS;oBACd,WAAW,oBAAO,gBAAgB,CAAC,CAAC,CAAC,CAAE;iBAC1C,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,IAAI,4BAAW,CAAC,oDAAoD,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAC3G;QACL,CAAC,CAAA,CAAC;QAEK,uBAAkB,GAAG,CAAO,EAAE,GAAG,EAAE,WAAW,EAA4B,EAAE,KAAa,EAAE,EAAE;YAChG,MAAM,UAAU,GAAG,8BAAiB,CAAC,aAAa,EAAE,CAAC;YACrD,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;YACzC,IAAI;gBACA,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACxD,IAAI,CAAC,MAAM,CACP,EAAE,kBAAkB,EAAE,GAAG,CAAC,kBAAkB,EAAE,EAC9C,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CACzD;oBACD,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,MAAM,iCAAM,WAAW,KAAE,OAAO,EAAE,KAAK,IAAG;iBAC3F,CAAC,CAAC;gBACH,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO;oBACH,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;oBACnC,WAAW,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;iBACrD,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,IAAI,4BAAW,CAAC,oDAAoD,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAC3G;QACL,CAAC,CAAA,CAAC;QAEK,wBAAmB,GAAG,CAAO,KAAa,EAAmB,EAAE;YAClE,IAAI;gBACA,4DAA4D;gBAC5D,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,KAAK,EAAE;wBACH,kBAAkB,EAAE;4BAChB,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,mBAAS,CAAC,OAAO,CAAC,qBAAqB,KAAK,SAAS,CAAC;yBAClE;qBACJ;iBACJ,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,4BAAW,CAAC,8BAA8B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aACjG;QACL,CAAC,CAAA,CAAC;QAEK,sBAAiB,GAAG,CACvB,iBAAyB,EACzB,UAA2B,EAC3B,kBAA0B,EACE,EAAE;YAC9B,OAAO,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;gBACvC,UAAU,EAAE;oBACR,OAAO,EAAE;wBACL,CAAC,mBAAS,CAAC,IAAI,CAAC,mBAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC;wBAChF,CAAC,mBAAS,CAAC,IAAI,CAAC,mBAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,EAAE,eAAe,CAAC;qBAC/E;oBACD,OAAO,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,eAAe,CAAC;iBAC9D;gBACD,KAAK,EAAE;oBACH,iBAAiB;oBACjB,UAAU;oBACV,CAAC,mBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBACf,mBAAS,CAAC,OAAO,CAAC,WAAW,kBAAkB,SAAS,CAAC;wBACzD,mBAAS,CAAC,OAAO,CAAC,YAAY,kBAAkB,wCAAwC,CAAC;wBACzF,mBAAS,CAAC,OAAO,CAAC,YAAY,kBAAkB,wCAAwC,CAAC;qBAC5F;iBACJ;gBACD,KAAK,EAAE;oBACH,CAAC,MAAM,EAAE,KAAK,CAAC;oBACf,CAAC,eAAe,EAAE,KAAK,CAAC;iBAC3B;aACJ,CAAC,CAAC;QACP,CAAC,CAAC;QA3HE,IAAI,CAAC,sBAAsB,GAAG,IAAI,2DAA4B,EAAE,CAAC;QACjE,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE;YACzE,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,SAAS;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,EAAE;YACvE,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,SAAS;YACrB,EAAE,EAAE,cAAc;SACrB,CAAC,CAAC;QAEH,IAAI,CAAC,sBAAsB,GAAG,IAAI,oCAAsB,EAAE,CAAC;IAC/D,CAAC;CA+GJ;AApKD,oDAoKC"}
|
package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import { ICommonRunWithMessageDto } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto";
|
|
1
2
|
import { CommonRunsRepository } from "../data-access/CommonRunsRepository";
|
|
2
|
-
import { ICommonRunWithMessage } from "../interfaces/ICommonRunWithMessage";
|
|
3
3
|
export declare class CommonMessageProcessor {
|
|
4
4
|
private readonly runsRepository;
|
|
5
5
|
constructor(runsRepository: CommonRunsRepository);
|
|
6
6
|
/**
|
|
7
7
|
* Create/update and process transformed run
|
|
8
8
|
*/
|
|
9
|
-
processTransformedRun: (element:
|
|
9
|
+
processTransformedRun: (element: ICommonRunWithMessageDto) => Promise<void>;
|
|
10
10
|
}
|
package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js
CHANGED
|
@@ -10,9 +10,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.CommonMessageProcessor = void 0;
|
|
13
|
+
const vehicle_positions_1 = require("../../../../../schema-definitions/vehicle-positions");
|
|
13
14
|
const config_1 = require("@golemio/core/dist/integration-engine/config");
|
|
14
15
|
const queueprocessors_1 = require("@golemio/core/dist/integration-engine/queueprocessors");
|
|
15
|
-
const vehicle_positions_1 = require("../../../../../schema-definitions/vehicle-positions");
|
|
16
16
|
const const_1 = require("../../../../../const");
|
|
17
17
|
class CommonMessageProcessor {
|
|
18
18
|
constructor(runsRepository) {
|
package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommonMessageProcessor.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAAsE;AACtE,2FAAqF;
|
|
1
|
+
{"version":3,"file":"CommonMessageProcessor.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2FAA0D;AAE1D,yEAAsE;AACtE,2FAAqF;AACrF,gDAAyE;AAGzE,MAAa,sBAAsB;IAC/B,YAA6B,cAAoC;QAApC,mBAAc,GAAd,cAAc,CAAsB;QAEjE;;WAEG;QACI,0BAAqB,GAAG,CAAO,OAAiC,EAAiB,EAAE;YACtF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAE5E,IAAI,SAAmC,CAAC;YACxC,IAAI,MAAM,EAAE;gBACR,IACI,CAAC,OAAO,CAAC,WAAW,CAAC,+BAA+B;oBACpD,CAAC,yCAAiC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAC9E;oBACE,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACxG,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,+BAA+B;wBAAE,OAAO;oBACrF,OAAO,CAAC,WAAW,CAAC,+BAA+B,GAAG,iBAAiB,CAAC,+BAA+B,CAAC;iBAC3G;gBAED,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;aAChF;iBAAM;gBACH,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACrE;YAED,MAAM,8BAAY,CAAC,qBAAqB,CACpC,GAAG,eAAM,CAAC,oBAAoB,IAAI,oCAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,EACvE,sBAAsB,EACtB,SAAS,CACZ,CAAC;QACN,CAAC,CAAA,CAAC;IA7BkE,CAAC;CA8BxE;AA/BD,wDA+BC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import { ICommonRunWithMessageDto } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto";
|
|
1
2
|
import { BaseTransformation, ITransformation } from "@golemio/core/dist/integration-engine/transformations";
|
|
2
3
|
import { ICommonRunsInputData, ICommonRunsInputElement } from "../interfaces/CommonRunsMessageInterfaces";
|
|
3
|
-
import { ICommonRunWithMessage } from "../interfaces/ICommonRunWithMessage";
|
|
4
4
|
export declare class CommonRunsMessagesTransformation extends BaseTransformation implements ITransformation {
|
|
5
5
|
name: string;
|
|
6
6
|
/**
|
|
7
7
|
* Overrides BaseTransformation::transform
|
|
8
8
|
*/
|
|
9
|
-
transform: ({ data, timestamp }: ICommonRunsInputData, isTram?: boolean) => Promise<
|
|
10
|
-
protected transformElement: (element: ICommonRunsInputElement, isTram?: boolean) => Promise<
|
|
9
|
+
transform: ({ data, timestamp }: ICommonRunsInputData, isTram?: boolean) => Promise<ICommonRunWithMessageDto[]>;
|
|
10
|
+
protected transformElement: (element: ICommonRunsInputElement, isTram?: boolean) => Promise<ICommonRunWithMessageDto>;
|
|
11
11
|
}
|
|
@@ -48,7 +48,7 @@ class CommonRunsMessagesTransformation extends transformations_1.BaseTransformat
|
|
|
48
48
|
return Promise.reject();
|
|
49
49
|
if (!isTram && (!attributes.tjr || attributes.tjr === ""))
|
|
50
50
|
return Promise.reject();
|
|
51
|
-
const actualStopTimestampScheduled = attributes.tjr ?
|
|
51
|
+
const actualStopTimestampScheduled = attributes.tjr ? new Date(attributes.tjr + "Z") : undefined;
|
|
52
52
|
return {
|
|
53
53
|
run: {
|
|
54
54
|
id: uniqueKey,
|
|
@@ -66,7 +66,7 @@ class CommonRunsMessagesTransformation extends transformations_1.BaseTransformat
|
|
|
66
66
|
lat: +attributes.lat,
|
|
67
67
|
lng: +attributes.lng,
|
|
68
68
|
actual_stop_asw_id: attributes.akt,
|
|
69
|
-
actual_stop_timestamp_real:
|
|
69
|
+
actual_stop_timestamp_real: new Date(attributes.takt + "Z"),
|
|
70
70
|
actual_stop_timestamp_scheduled: actualStopTimestampScheduled,
|
|
71
71
|
last_stop_asw_id: attributes.konc,
|
|
72
72
|
packet_number: attributes.pkt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommonRunsMessagesTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"CommonRunsMessagesTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IGtfsRunTripCache } from "../../../../ropid-gtfs/interfaces/IGtfsRunTripCache";
|
|
2
|
-
import { ICommonRunWithMessage } from "../../runs/interfaces/ICommonRunWithMessage";
|
|
3
2
|
import { IMetroRunInputForProcessing } from "../../runs/interfaces/IMetroRunInputForProcessing";
|
|
4
3
|
import { VPTripsNonNullableModel } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel";
|
|
5
4
|
import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
|
|
6
5
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
7
6
|
import { IValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
8
7
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
8
|
+
import { IUpdateRunsGtfsTripInput } from "../interfaces/IUpdateRunsGtfsTripInput";
|
|
9
9
|
export interface ITripAttributes extends Pick<VPTripsNonNullableModel, "id" | "gtfs_trip_id" | "gtfs_route_type" | "start_timestamp" | "end_timestamp" | "agency_name_scheduled" | "start_cis_stop_id" | "last_position_context"> {
|
|
10
10
|
}
|
|
11
11
|
export interface ITripPositions extends ITripAttributes {
|
|
@@ -27,8 +27,8 @@ export declare class PositionsRepository extends PostgresModel implements IModel
|
|
|
27
27
|
constructor();
|
|
28
28
|
getPositionsForUpdateDelay: (tripIds: string[]) => Promise<ITripPositions[]>;
|
|
29
29
|
bulkUpdate: (data: any[]) => Promise<any>;
|
|
30
|
-
upsertCommonRunPosition: ({ run, run_message }:
|
|
30
|
+
upsertCommonRunPosition: ({ run, run_message }: IUpdateRunsGtfsTripInput, gtfsTrip: IGtfsRunTripCache, isCurrent?: boolean) => Promise<any>;
|
|
31
31
|
upsertMetroRunPosition: (runInput: IMetroRunInputForProcessing, gtfsTrip: IGtfsRunTripCache, isCurrent?: boolean) => Promise<any>;
|
|
32
32
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
33
|
-
createNotPublic: (input:
|
|
33
|
+
createNotPublic: (input: IUpdateRunsGtfsTripInput, id: string) => Promise<any>;
|
|
34
34
|
}
|
|
@@ -132,6 +132,7 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
132
132
|
// We return objects of positions grouped by trips_id
|
|
133
133
|
try {
|
|
134
134
|
return results.reduce((p, c) => {
|
|
135
|
+
var _a;
|
|
135
136
|
let pIndex = p.findIndex((e) => e.id === c.id);
|
|
136
137
|
if (pIndex === -1) {
|
|
137
138
|
p.push({
|
|
@@ -154,10 +155,8 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
154
155
|
lat: parseFloat(c["vehiclepositions_positions.lat"]),
|
|
155
156
|
lng: parseFloat(c["vehiclepositions_positions.lng"]),
|
|
156
157
|
origin_time: c["vehiclepositions_positions.origin_time"],
|
|
157
|
-
origin_timestamp:
|
|
158
|
-
scheduled_timestamp: c["vehiclepositions_positions.scheduled_timestamp"]
|
|
159
|
-
? parseInt(c["vehiclepositions_positions.scheduled_timestamp"])
|
|
160
|
-
: null,
|
|
158
|
+
origin_timestamp: c["vehiclepositions_positions.origin_timestamp"],
|
|
159
|
+
scheduled_timestamp: (_a = c["vehiclepositions_positions.scheduled_timestamp"]) !== null && _a !== void 0 ? _a : null,
|
|
161
160
|
shape_dist_traveled: parseFloat(c["vehiclepositions_positions.shape_dist_traveled"]) || null,
|
|
162
161
|
tracking: c["vehiclepositions_positions.tracking"],
|
|
163
162
|
is_canceled: c["vehiclepositions_positions.is_canceled"],
|
|
@@ -168,8 +167,8 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
168
167
|
this_stop_id: c["vehiclepositions_positions.this_stop_id"],
|
|
169
168
|
last_stop_sequence: c["vehiclepositions_positions.last_stop_sequence"],
|
|
170
169
|
last_stop_id: c["vehiclepositions_positions.last_stop_id"],
|
|
171
|
-
last_stop_arrival_time:
|
|
172
|
-
last_stop_departure_time:
|
|
170
|
+
last_stop_arrival_time: c["vehiclepositions_positions.last_stop_arrival_time"],
|
|
171
|
+
last_stop_departure_time: c["vehiclepositions_positions.last_stop_departure_time"],
|
|
173
172
|
});
|
|
174
173
|
return p;
|
|
175
174
|
}, []);
|
|
@@ -250,8 +249,8 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
250
249
|
asw_last_stop_id: input.run_message.last_stop_asw_id,
|
|
251
250
|
lat: input.run_message.lat,
|
|
252
251
|
lng: input.run_message.lng,
|
|
253
|
-
origin_time: (0, moment_timezone_1.default)(
|
|
254
|
-
origin_timestamp:
|
|
252
|
+
origin_time: (0, moment_timezone_1.default)(input.run_message.actual_stop_timestamp_real).tz("Europe/Prague").format("HH:mm:ss"),
|
|
253
|
+
origin_timestamp: new Date(input.run_message.actual_stop_timestamp_real),
|
|
255
254
|
state_position: const_2.StatePositionEnum.NOT_PUBLIC,
|
|
256
255
|
state_process: const_2.StateProcessEnum.PROCESSED,
|
|
257
256
|
this_stop_id: input.run_message.actual_stop_asw_id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PositionsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"PositionsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { IGtfsRunTripCache } from "../../../../ropid-gtfs/interfaces/IGtfsRunTripCache";
|
|
2
|
-
import { ICommonRunWithMessage } from "../../runs/interfaces/ICommonRunWithMessage";
|
|
3
2
|
import { IMetroRunInputForProcessing } from "../../runs/interfaces/IMetroRunInputForProcessing";
|
|
4
3
|
import { IGtfsRtTripDto } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IGtfsRtTripDto";
|
|
5
4
|
import { IVPTripsModel } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel";
|
|
@@ -7,6 +6,7 @@ import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/ve
|
|
|
7
6
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
8
7
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
9
8
|
import { StatePositionEnum } from "../../../../../const";
|
|
9
|
+
import { IUpdateRunsGtfsTripInput } from "../interfaces/IUpdateRunsGtfsTripInput";
|
|
10
10
|
import { IPropagateDelay } from "../interfaces/VPInterfaces";
|
|
11
11
|
export interface IUpdateDelayTripsIdsData {
|
|
12
12
|
id: string;
|
|
@@ -27,7 +27,7 @@ export interface IUpdateDelayRunTripsData extends IUpdateDelayTripsIdsData {
|
|
|
27
27
|
internal_run_number: number | null;
|
|
28
28
|
vehicle_registration_number: number;
|
|
29
29
|
}
|
|
30
|
-
export interface IUpdateGTFSTripIdData extends Partial<IVPTripsModel> {
|
|
30
|
+
export interface IUpdateGTFSTripIdData extends Omit<Partial<IVPTripsModel>, "start_timestamp"> {
|
|
31
31
|
id: string;
|
|
32
32
|
start_timestamp: string;
|
|
33
33
|
run_number: number | null;
|
|
@@ -55,7 +55,7 @@ export interface IBulkUpsertOutput {
|
|
|
55
55
|
id: string;
|
|
56
56
|
origin_route_name: string | null;
|
|
57
57
|
run_number: string | null;
|
|
58
|
-
start_timestamp:
|
|
58
|
+
start_timestamp: Date;
|
|
59
59
|
}>;
|
|
60
60
|
}
|
|
61
61
|
export interface IPropagatedDelayTripWithPosition {
|
|
@@ -63,7 +63,7 @@ export interface IPropagatedDelayTripWithPosition {
|
|
|
63
63
|
id: string;
|
|
64
64
|
delay: number;
|
|
65
65
|
state_position: StatePositionEnum;
|
|
66
|
-
origin_timestamp:
|
|
66
|
+
origin_timestamp: Date;
|
|
67
67
|
};
|
|
68
68
|
trip: {
|
|
69
69
|
id: string;
|
|
@@ -91,7 +91,7 @@ export declare class TripsRepository extends PostgresModel implements IModel {
|
|
|
91
91
|
findGTFSTripId: (trip: IUpdateGTFSTripIdData) => Promise<IUpdateDelayTripsIdsData | IUpdateDelayTripsIdsData[] | undefined>;
|
|
92
92
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
93
93
|
private deduceTimestamps;
|
|
94
|
-
upsertCommonRunTrip: ({ run }:
|
|
94
|
+
upsertCommonRunTrip: ({ run }: IUpdateRunsGtfsTripInput, gtfsTrip: IGtfsRunTripCache) => Promise<IUpdateDelayRunTripsData>;
|
|
95
95
|
upsertMetroRunTrip: (runInput: IMetroRunInputForProcessing, gtfsTrip: IGtfsRunTripCache) => Promise<IUpdateDelayRunTripsData>;
|
|
96
96
|
/**
|
|
97
97
|
* Updates before track positions with propagated delay and also updates last position context for parent trips
|
|
@@ -104,7 +104,7 @@ export declare class TripsRepository extends PostgresModel implements IModel {
|
|
|
104
104
|
findAll: (options: Sequelize.FindOptions<any> | undefined) => Promise<any>;
|
|
105
105
|
private findGTFSTripIdBasic;
|
|
106
106
|
private findGTFSTripIdsTrain;
|
|
107
|
-
upsertNotPublic: (input:
|
|
107
|
+
upsertNotPublic: (input: IUpdateRunsGtfsTripInput, id: string, lastPositionId: number) => Promise<any>;
|
|
108
108
|
/**
|
|
109
109
|
* Return all valid trips for GTFS Realtime feed
|
|
110
110
|
*
|