@golemio/pid 2.6.5-dev.834035052 → 2.6.6
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/00_clear_test_data.sql +4 -4
- package/db/example/03_ropidgtfs_dump.sql +1 -10
- package/db/example/14_nightDelays.sql +8 -16
- package/db/example/99_precomputed_tables.sql +169 -0
- package/db/migrations/postgresql/sqls/20220915123941-partitioned-departures-down.sql +0 -2
- package/db/migrations/postgresql/sqls/20230307124639-positions-internal-down.sql +1 -1
- package/dist/integration-engine/queueDefinitions.js +0 -10
- package/dist/integration-engine/queueDefinitions.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.d.ts +7 -13
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js +45 -50
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMinMaxSequencesModel.d.ts +19 -0
- package/dist/integration-engine/ropid-gtfs/{data-access/precomputed/MinMaxStopSequencesRepository.js → RopidGTFSMinMaxSequencesModel.js} +33 -34
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMinMaxSequencesModel.js.map +1 -0
- package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.d.ts +21 -0
- package/dist/integration-engine/ropid-gtfs/{data-access/precomputed/TripScheduleRepository.js → RopidGTFSScheduledTripsModel.js} +26 -27
- package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.js.map +1 -0
- package/dist/integration-engine/ropid-gtfs/RopidGTFSServicesFirst14daysModel.d.ts +19 -0
- package/dist/integration-engine/ropid-gtfs/RopidGTFSServicesFirst14daysModel.js +142 -0
- package/dist/integration-engine/ropid-gtfs/RopidGTFSServicesFirst14daysModel.js.map +1 -0
- package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.d.ts +3 -4
- package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js +18 -50
- package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/data-access/{precomputed/DeparturesRepository.d.ts → DeparturesRepository.d.ts} +1 -2
- package/dist/integration-engine/ropid-gtfs/data-access/DeparturesRepository.js +162 -0
- package/dist/integration-engine/ropid-gtfs/data-access/DeparturesRepository.js.map +1 -0
- package/dist/integration-engine/ropid-gtfs/data-access/index.d.ts +1 -0
- package/dist/integration-engine/ropid-gtfs/data-access/{precomputed/index.js → index.js} +0 -3
- package/dist/integration-engine/ropid-gtfs/data-access/index.js.map +1 -0
- package/dist/integration-engine/ropid-gtfs/index.d.ts +3 -0
- package/dist/integration-engine/ropid-gtfs/index.js +3 -0
- package/dist/integration-engine/ropid-gtfs/index.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/utils.js +4 -5
- package/dist/integration-engine/ropid-gtfs/utils.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.js +3 -3
- package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +18 -18
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
- package/dist/output-gateway/departure-boards/DepartureBoardsRouter.js +1 -1
- package/dist/output-gateway/pid/data-access/DeparturesRepository.js +6 -0
- package/dist/output-gateway/pid/data-access/DeparturesRepository.js.map +1 -1
- package/dist/output-gateway/pid/middleware/checkTimeFromMiddleware.js +2 -2
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.d.ts +3 -3
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js +15 -15
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/DeparturesModel.d.ts +1 -0
- package/dist/schema-definitions/ropid-gtfs/models/precomputed/DeparturesModel.js +18 -5
- 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 +1 -0
- package/docs/implementation_documentation.md +10 -30
- package/docs/openapi-output.yaml +1 -1
- package/package.json +3 -4
- package/db/migrations/postgresql/20230327121511-departure-view.js +0 -53
- package/db/migrations/postgresql/sqls/20230327121511-departure-view-down.sql +0 -81
- package/db/migrations/postgresql/sqls/20230327121511-departure-view-up.sql +0 -37
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js +0 -132
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/MinMaxStopSequencesRepository.d.ts +0 -9
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/MinMaxStopSequencesRepository.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/ServicesCalendarRepository.d.ts +0 -9
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/ServicesCalendarRepository.js +0 -135
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/ServicesCalendarRepository.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.d.ts +0 -11
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/index.d.ts +0 -4
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/index.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/helpers/SourceTableSuffixEnum.d.ts +0 -5
- package/dist/integration-engine/ropid-gtfs/helpers/SourceTableSuffixEnum.js +0 -10
- package/dist/integration-engine/ropid-gtfs/helpers/SourceTableSuffixEnum.js.map +0 -1
|
@@ -25,10 +25,10 @@ TRUNCATE
|
|
|
25
25
|
"vehiclepositions_metro_runs_messages",
|
|
26
26
|
"vehiclepositions_vehicle_descriptors",
|
|
27
27
|
"ropid_departures_directions",
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
28
|
+
"ropidgtfs_scheduled_trips_actual",
|
|
29
|
+
"ropidgtfs_services_first14days_actual",
|
|
30
|
+
"ropidgtfs_trips_minmaxsequences_actual",
|
|
31
|
+
"ropidgtfs_departures";
|
|
32
32
|
|
|
33
33
|
ALTER SEQUENCE ropid_departures_directions_id_seq RESTART;
|
|
34
34
|
ALTER SEQUENCE ropid_departures_presets_id_seq RESTART;
|
|
@@ -4,9 +4,7 @@ INSERT INTO ropidgtfs_agency_actual (agency_fare_url, agency_id, agency_lang, ag
|
|
|
4
4
|
|
|
5
5
|
WITH init_values AS (SELECT NOW()::DATE AS now_date)
|
|
6
6
|
INSERT INTO ropidgtfs_calendar_actual (end_date, friday, monday, saturday, service_id, start_date, sunday, thursday, tuesday, wednesday, create_batch_id, created_at, created_by, update_batch_id, updated_at, updated_by)
|
|
7
|
-
VALUES
|
|
8
|
-
(TO_CHAR((SELECT now_date FROM init_values)+INTERVAL '7 days','YYYYMMDD'), 1, 1, 1, '1111111-1', TO_CHAR((SELECT now_date FROM init_values)-INTERVAL '1 days','YYYYMMDD'), 1, 1, 1, 1, NULL, '2019-05-27 03:20:15.632+00', NULL, NULL, '2019-05-27 03:20:15.632+00', NULL),
|
|
9
|
-
(TO_CHAR((SELECT now_date FROM init_values)+INTERVAL '7 days','YYYYMMDD'), 1, 1, 1, '1111100-1', TO_CHAR((SELECT now_date FROM init_values)-INTERVAL '1 days','YYYYMMDD'), 1, 1, 1, 1, -1, '2022-10-24 10:18:51.362+02',NULL,-1,'2022-10-24 10:18:51.362+02',NULL);
|
|
7
|
+
VALUES (TO_CHAR((SELECT now_date FROM init_values)+INTERVAL '7 days','YYYYMMDD'), 1, 1, 1, '1111111-1', TO_CHAR((SELECT now_date FROM init_values)-INTERVAL '1 days','YYYYMMDD'), 1, 1, 1, 1, NULL, '2019-05-27 03:20:15.632+00', NULL, NULL, '2019-05-27 03:20:15.632+00', NULL);
|
|
10
8
|
|
|
11
9
|
INSERT INTO ropidgtfs_routes_actual (agency_id, is_night, is_regional, is_substitute_transport, route_color, route_desc, route_id, route_long_name, route_short_name, route_text_color, route_type, route_url, create_batch_id, created_at, created_by, update_batch_id, updated_at, updated_by)
|
|
12
10
|
VALUES ('99', '0', '0', '0', '00A562', NULL, 'L991', 'Nemocnice Motol - Petřiny - Skalka - Depo Hostivař', 'A', 'FFFFFF', '1', 'https://pid.cz/linka/A', NULL, '2019-05-27 03:20:15.738+00', NULL, NULL, '2019-05-27 03:20:15.738+00', NULL);
|
|
@@ -537,13 +535,6 @@ INSERT INTO "ropidgtfs_run_numbers_actual"("route_id","run_number","service_id",
|
|
|
537
535
|
VALUES
|
|
538
536
|
(E'L991',1,E'1111100-1',E'991_1_210419',3,E'2021-05-19 05:35:04.963+02',NULL,NULL,NULL,E'2021-05-19 05:35:04.963+02',NULL);
|
|
539
537
|
|
|
540
|
-
INSERT INTO ropidgtfs_trips_actual (trip_id,bikes_allowed,block_id,direction_id,exceptional,route_id,service_id,shape_id,trip_headsign,trip_operation_type,trip_short_name,wheelchair_accessible,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
541
|
-
('991_1_210419',1,NULL,0,0,'L991','0000001-1','L991V2','Nemocnice Motol',NULL,NULL,1,NULL,'2023-04-09 05:27:39.626',NULL,NULL,'2023-04-09 05:27:39.626',NULL);
|
|
542
|
-
|
|
543
|
-
INSERT INTO ropidgtfs_stop_times_actual (trip_id,stop_sequence,arrival_time,arrival_time_seconds,departure_time,departure_time_seconds,drop_off_type,pickup_type,shape_dist_traveled,stop_headsign,stop_id,timepoint,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
544
|
-
('991_1_210419',1,'22:45:10',NULL,'22:45:10',NULL,'0','0',0.0,NULL,'U476Z102P',NULL,NULL,'2023-04-09 05:27:39.626',NULL,NULL,'2023-04-09 05:27:39.626',NULL),
|
|
545
|
-
('991_1_210419',2,'22:46:20',NULL,'22:46:50',NULL,'0','0',0.80665,NULL,'U400Z102P',NULL,NULL,'2023-04-09 05:27:39.626',NULL,NULL,'2023-04-09 05:27:39.626',NULL);
|
|
546
|
-
|
|
547
538
|
-- <<<
|
|
548
539
|
|
|
549
540
|
|
|
@@ -4,26 +4,18 @@ update vehiclepositions_trips set gtfs_date = TO_TIMESTAMP(start_timestamp/1000)
|
|
|
4
4
|
/* test data for night delay */
|
|
5
5
|
INSERT INTO vehiclepositions_trips
|
|
6
6
|
(cis_line_id, cis_trip_number, run_number, cis_line_short_name, created_at, gtfs_route_id, gtfs_route_short_name, gtfs_trip_id, id, updated_at, start_cis_stop_id, start_cis_stop_platform_code, start_time, start_timestamp, vehicle_type_id, wheelchair_accessible, create_batch_id, created_by, update_batch_id, updated_by, agency_name_scheduled, origin_route_name, agency_name_real, vehicle_registration_number, gtfs_trip_headsign, start_asw_stop_id, gtfs_route_type, gtfs_block_id, last_position_id, is_canceled, end_timestamp, gtfs_trip_short_name, last_position_context, internal_run_number, internal_route_name,gtfs_date)
|
|
7
|
-
VALUES(NULL, NULL, 65, NULL, '2023-03-21 00:00:15.399', 'L94', '94', '94_979_230320', '2023-03-21T01:30:00+01:00_94_979_230320_8388', '2023-03-21 02:44:25.833', NULL, NULL, '01:30:00', 1679358600000, 6, false, NULL, NULL, NULL, NULL, 'DP PRAHA', '94', 'DP PRAHA', 8388, 'Sídliště Barrandov', NULL, 0, NULL, 554214346, NULL, 1679362800000, NULL, NULL, 65, '94',
|
|
7
|
+
VALUES(NULL, NULL, 65, NULL, '2023-03-21 00:00:15.399', 'L94', '94', '94_979_230320', '2023-03-21T01:30:00+01:00_94_979_230320_8388', '2023-03-21 02:44:25.833', NULL, NULL, '01:30:00', 1679358600000, 6, false, NULL, NULL, NULL, NULL, 'DP PRAHA', '94', 'DP PRAHA', 8388, 'Sídliště Barrandov', NULL, 0, NULL, 554214346, NULL, 1679362800000, NULL, NULL, 65, '94','2023-03-20');
|
|
8
8
|
|
|
9
9
|
INSERT INTO vehiclepositions_positions
|
|
10
10
|
(created_at, delay, delay_stop_arrival, delay_stop_departure, next_stop_id, shape_dist_traveled, is_canceled, lat, lng, origin_time, origin_timestamp, tracking, trips_id, create_batch_id, created_by, update_batch_id, updated_at, updated_by, id, bearing, cis_last_stop_id, cis_last_stop_sequence, last_stop_id, last_stop_sequence, next_stop_sequence, speed, last_stop_arrival_time, last_stop_departure_time, next_stop_arrival_time, next_stop_departure_time, asw_last_stop_id, state_process, state_position, this_stop_id, this_stop_sequence, tcp_event, last_stop_headsign, last_stop_name, next_stop_name, this_stop_name, valid_to, scheduled_timestamp)
|
|
11
|
-
VALUES('2023-03-21 02:44:25.787', 10, NULL, NULL, 'U1019Z2P', 22.263, NULL, 50.03141, 14.36749, '02:44:20', 1679363060000, 2, '2023-03-21T01:30:00+01:00_94_979_230320_8388', NULL, NULL, NULL, '2023-03-21 02:44:25.822', NULL, 554214346, 257, NULL, NULL, 'U1019Z2P', 8, 8, NULL, 1679362800000, 1679362800000, 1679362800000, 1679362800000, '10190002', 'processed', 'on_track', '10190002', NULL, 'V', NULL, 'Sídliště Barrandov', NULL, NULL,
|
|
11
|
+
VALUES('2023-03-21 02:44:25.787', 10, NULL, NULL, 'U1019Z2P', 22.263, NULL, 50.03141, 14.36749, '02:44:20', 1679363060000, 2, '2023-03-21T01:30:00+01:00_94_979_230320_8388', NULL, NULL, NULL, '2023-03-21 02:44:25.822', NULL, 554214346, 257, NULL, NULL, 'U1019Z2P', 8, 8, NULL, 1679362800000, 1679362800000, 1679362800000, 1679362800000, '10190002', 'processed', 'on_track', '10190002', NULL, 'V', NULL, 'Sídliště Barrandov', NULL, NULL, 1679363360000, 1679362800000);
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
INSERT INTO ropidgtfs_calendar_actual (end_date,friday,monday,saturday,service_id,start_date,sunday,thursday,tuesday,wednesday,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
15
|
-
(TO_CHAR((SELECT now_date FROM init_values)+INTERVAL '7 days','YYYYMMDD'),1,1,1,'1111111-3',TO_CHAR((SELECT now_date FROM init_values)-INTERVAL '1 days','YYYYMMDD'),1,1,1,1,-1,'2022-10-24 10:18:51.362+02',NULL,-1,'2022-10-24 10:18:51.362+02',NULL);
|
|
13
|
+
select departure_part('U873', split_part(current_setting('search_path'), ',', 1));
|
|
16
14
|
|
|
17
|
-
INSERT INTO
|
|
15
|
+
INSERT INTO ropidgtfs_departures
|
|
16
|
+
(stop_sequence, stop_headsign, pickup_type, drop_off_type, arrival_time, arrival_datetime, departure_time, departure_datetime, stop_id, stop_name, platform_code, wheelchair_boarding, min_stop_sequence, max_stop_sequence, trip_id, trip_headsign, trip_short_name, wheelchair_accessible, service_id, "date", route_short_name, route_type, route_id, is_night, is_regional, is_substitute_transport, next_stop_sequence, next_stop_id, last_stop_sequence, last_stop_id, part_index)
|
|
17
|
+
VALUES(8, NULL, '3', '3', '25:38:00', '2023-03-21 01:38:00.000', '25:38:00', '2023-03-21 01:38:00.000', 'U873Z1P', 'Poštovská', 'A', 1, 1, 47, '94_979_230320', 'Sídliště Barrandov', NULL, 2, '1111111-3', '2023-03-20', '94', '0', 'L94', '1', '0', '0', 9, 'U1052Z1P', 7, 'U75Z1P', 'U873');
|
|
18
|
+
|
|
19
|
+
INSERT INTO ropidgtfs_stops
|
|
18
20
|
(location_type, parent_station, platform_code, stop_id, stop_lat, stop_lon, stop_name, stop_url, wheelchair_boarding, zone_id, create_batch_id, created_at, created_by, update_batch_id, updated_at, updated_by, level_id, stop_code, stop_desc, stop_timezone, asw_node_id, asw_stop_id)
|
|
19
21
|
VALUES(0, NULL, 'A', 'U873Z1P', 50.110622, 14.508335, 'Poštovská', NULL, 1, 'P', NULL, '2023-03-21 05:47:11.042', NULL, NULL, '2023-03-21 05:47:11.042', NULL, NULL, NULL, NULL, NULL, 873, 1);
|
|
20
|
-
|
|
21
|
-
INSERT INTO ropidgtfs_stop_times_actual (arrival_time,arrival_time_seconds,departure_time,departure_time_seconds,drop_off_type,pickup_type,shape_dist_traveled,stop_headsign,stop_id,stop_sequence,timepoint,trip_id,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
22
|
-
('25:38:00',NULL,'25:38:00',NULL,'3','3',0.0,NULL,'U873Z1P',8,NULL,'94_979_230320',-1,'2022-10-24 10:21:13.104+02',NULL,-1,'2022-10-24 10:21:13.104+02',NULL),
|
|
23
|
-
('25:39:00',NULL,'25:39:00',NULL,'3','3',0.0,NULL,NULL,9,NULL,'94_979_230320',-1,'2022-10-24 10:21:13.104+02',NULL,-1,'2022-10-24 10:21:13.104+02',NULL);
|
|
24
|
-
|
|
25
|
-
INSERT INTO ropidgtfs_routes_actual (agency_id,is_night,is_regional,is_substitute_transport,route_color,route_desc,route_id,route_long_name,route_short_name,route_text_color,route_type,route_url,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
26
|
-
('99','0','0','0','00A562',NULL,'L94','Dummy','94','FFFFFF','1','',-1,'2022-10-24 10:18:51.722+02',NULL,-1,'2022-10-24 10:18:51.722+02',NULL);
|
|
27
|
-
|
|
28
|
-
INSERT INTO ropidgtfs_trips_actual (bikes_allowed,block_id,direction_id,exceptional,route_id,service_id,shape_id,trip_headsign,trip_id,trip_operation_type,trip_short_name,wheelchair_accessible,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by) VALUES
|
|
29
|
-
(1,NULL,1,0,'L94','1111111-3','L94VX','Sídliště Barrandov','94_979_230320',NULL,NULL,1,-1,'2022-10-24 10:22:47.459+02',NULL,-1,'2022-10-24 10:22:47.459+02',NULL);
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
INSERT INTO ropidgtfs_services_first14days_actual
|
|
2
|
+
SELECT dates.date,
|
|
3
|
+
(date_part('day'::text, ((dates.date)::timestamp without time zone - (to_char(timezone('Europe/Prague'::text, now()), 'YYYY-MM-DD'::text))::timestamp without time zone)))::integer AS day_diff,
|
|
4
|
+
ropidgtfs_calendar.service_id
|
|
5
|
+
FROM (( SELECT (date_trunc('day'::text, dd.dd))::date AS date
|
|
6
|
+
FROM generate_series(((( SELECT (CURRENT_TIMESTAMP - '1 day'::interval)))::date)::timestamp with time zone, ((( SELECT (CURRENT_TIMESTAMP + '12 days'::interval)))::date)::timestamp with time zone, '1 day'::interval) dd(dd)) dates
|
|
7
|
+
JOIN ropidgtfs_calendar ON ((1 = 1)))
|
|
8
|
+
WHERE (((dates.date >= (ropidgtfs_calendar.start_date)::date) AND (dates.date <= (ropidgtfs_calendar.end_date)::date) AND (((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'monday'::text) AND (ropidgtfs_calendar.monday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'tuesday'::text) AND (ropidgtfs_calendar.tuesday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'wednesday'::text) AND (ropidgtfs_calendar.wednesday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'thursday'::text) AND (ropidgtfs_calendar.thursday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'friday'::text) AND (ropidgtfs_calendar.friday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'saturday'::text) AND (ropidgtfs_calendar.saturday = 1)) OR ((btrim(to_char((dates.date)::timestamp with time zone, 'day'::text)) = 'sunday'::text) AND (ropidgtfs_calendar.sunday = 1))) AND (NOT ((ropidgtfs_calendar.service_id)::text IN ( SELECT ropidgtfs_calendar_dates.service_id
|
|
9
|
+
FROM ropidgtfs_calendar_dates
|
|
10
|
+
WHERE ((ropidgtfs_calendar_dates.exception_type = 2) AND (dates.date = (ropidgtfs_calendar_dates.date)::date)))))) OR ((ropidgtfs_calendar.service_id)::text IN ( SELECT ropidgtfs_calendar_dates.service_id
|
|
11
|
+
FROM ropidgtfs_calendar_dates
|
|
12
|
+
WHERE ((ropidgtfs_calendar_dates.exception_type = 1) AND (dates.date = (ropidgtfs_calendar_dates.date)::date)))))
|
|
13
|
+
ORDER BY dates.date;
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
INSERT INTO ropidgtfs_trips_minmaxsequences_actual
|
|
17
|
+
SELECT ropidgtfs_stop_times.trip_id,
|
|
18
|
+
max(ropidgtfs_stop_times.stop_sequence) AS max_stop_sequence,
|
|
19
|
+
min(ropidgtfs_stop_times.stop_sequence) AS min_stop_sequence,
|
|
20
|
+
(GREATEST(max((ropidgtfs_stop_times.arrival_time)::interval), max((ropidgtfs_stop_times.departure_time)::interval)))::text AS max_stop_time,
|
|
21
|
+
(LEAST(min((ropidgtfs_stop_times.arrival_time)::interval), min((ropidgtfs_stop_times.departure_time)::interval)))::text AS min_stop_time
|
|
22
|
+
FROM ropidgtfs_stop_times
|
|
23
|
+
GROUP BY ropidgtfs_stop_times.trip_id;
|
|
24
|
+
|
|
25
|
+
SELECT departure_part(part_index, split_part(current_setting('search_path'), ',', 1)) FROM
|
|
26
|
+
(SELECT DISTINCT left(stop_id, 4) part_index FROM ropidgtfs_stops) as parts;
|
|
27
|
+
|
|
28
|
+
INSERT INTO ropidgtfs_departures
|
|
29
|
+
SELECT t.stop_sequence,
|
|
30
|
+
t.stop_headsign,
|
|
31
|
+
t.pickup_type,
|
|
32
|
+
t.drop_off_type,
|
|
33
|
+
t.arrival_time,
|
|
34
|
+
CASE
|
|
35
|
+
WHEN (date_part('hour'::text, (t.arrival_time)::interval) > (23)::double precision) THEN make_timestamptz((date_part('year'::text, (t4.date + '1 day'::interval)))::integer, (date_part('month'::text, (t4.date + '1 day'::interval)))::integer, (date_part('day'::text, (t4.date + '1 day'::interval)))::integer, ((date_part('hour'::text, (t.arrival_time)::interval))::integer - 24), (date_part('minute'::text, (t.arrival_time)::interval))::integer, date_part('second'::text, (t.arrival_time)::interval), 'Europe/Prague'::text)
|
|
36
|
+
ELSE make_timestamptz((date_part('year'::text, t4.date))::integer, (date_part('month'::text, t4.date))::integer, (date_part('day'::text, t4.date))::integer, (date_part('hour'::text, (t.arrival_time)::interval))::integer, (date_part('minute'::text, (t.arrival_time)::interval))::integer, date_part('second'::text, (t.arrival_time)::interval), 'Europe/Prague'::text)
|
|
37
|
+
END AS arrival_datetime,
|
|
38
|
+
t.departure_time,
|
|
39
|
+
CASE
|
|
40
|
+
WHEN (date_part('hour'::text, (t.departure_time)::interval) > (23)::double precision) THEN make_timestamptz((date_part('year'::text, (t4.date + '1 day'::interval)))::integer, (date_part('month'::text, (t4.date + '1 day'::interval)))::integer, (date_part('day'::text, (t4.date + '1 day'::interval)))::integer, ((date_part('hour'::text, (t.departure_time)::interval))::integer - 24), (date_part('minute'::text, (t.departure_time)::interval))::integer, date_part('second'::text, (t.departure_time)::interval), 'Europe/Prague'::text)
|
|
41
|
+
ELSE make_timestamptz((date_part('year'::text, t4.date))::integer, (date_part('month'::text, t4.date))::integer, (date_part('day'::text, t4.date))::integer, (date_part('hour'::text, (t.departure_time)::interval))::integer, (date_part('minute'::text, (t.departure_time)::interval))::integer, date_part('second'::text, (t.departure_time)::interval), 'Europe/Prague'::text)
|
|
42
|
+
END AS departure_datetime,
|
|
43
|
+
t0.stop_id,
|
|
44
|
+
t0.stop_name,
|
|
45
|
+
t0.platform_code,
|
|
46
|
+
t0.wheelchair_boarding,
|
|
47
|
+
t1.min_stop_sequence,
|
|
48
|
+
t1.max_stop_sequence,
|
|
49
|
+
t2.trip_id,
|
|
50
|
+
t2.trip_headsign,
|
|
51
|
+
t2.trip_short_name,
|
|
52
|
+
t2.wheelchair_accessible,
|
|
53
|
+
t3.service_id,
|
|
54
|
+
t4.date,
|
|
55
|
+
t5.route_short_name,
|
|
56
|
+
t5.route_type,
|
|
57
|
+
t5.route_id,
|
|
58
|
+
t5.is_night,
|
|
59
|
+
t5.is_regional,
|
|
60
|
+
t5.is_substitute_transport,
|
|
61
|
+
t6.stop_sequence AS next_stop_sequence,
|
|
62
|
+
t6.stop_id AS next_stop_id,
|
|
63
|
+
t7.stop_sequence AS last_stop_sequence,
|
|
64
|
+
t7.stop_id AS last_stop_id,
|
|
65
|
+
left(t0.stop_id, 4) AS part_index
|
|
66
|
+
FROM ((((((((ropidgtfs_stop_times t
|
|
67
|
+
LEFT JOIN ropidgtfs_stops t0 ON (((t.stop_id)::text = (t0.stop_id)::text)))
|
|
68
|
+
LEFT JOIN ropidgtfs_trips t2 ON (((t.trip_id)::text = (t2.trip_id)::text)))
|
|
69
|
+
JOIN ropidgtfs_services_first14days t4 ON (((t2.service_id)::text = (t4.service_id)::text)))
|
|
70
|
+
LEFT JOIN ropidgtfs_trips_minmaxsequences t1 ON (((t.trip_id)::text = (t1.trip_id)::text)))
|
|
71
|
+
LEFT JOIN ropidgtfs_calendar t3 ON (((t2.service_id)::text = (t3.service_id)::text)))
|
|
72
|
+
LEFT JOIN ropidgtfs_routes t5 ON (((t2.route_id)::text = (t5.route_id)::text)))
|
|
73
|
+
LEFT JOIN ropidgtfs_stop_times t6 ON ((((t.trip_id)::text = (t6.trip_id)::text) AND (t6.stop_sequence = (t.stop_sequence + 1)))))
|
|
74
|
+
LEFT JOIN ropidgtfs_stop_times t7 ON ((((t.trip_id)::text = (t7.trip_id)::text) AND (t7.stop_sequence = (t.stop_sequence - 1)))))
|
|
75
|
+
WHERE t0.stop_id IS NOT NULL;
|
|
76
|
+
|
|
77
|
+
INSERT INTO ropidgtfs_scheduled_trips_actual
|
|
78
|
+
SELECT
|
|
79
|
+
t0.origin_route_id,
|
|
80
|
+
t0.trip_id,
|
|
81
|
+
t0.service_id,
|
|
82
|
+
t0.run_number,
|
|
83
|
+
t0.date,
|
|
84
|
+
t0.route_id,
|
|
85
|
+
t0.route_type,
|
|
86
|
+
t0.route_short_name,
|
|
87
|
+
t0.is_regional,
|
|
88
|
+
t0.is_substitute_transport,
|
|
89
|
+
t0.is_night,
|
|
90
|
+
t0.trip_headsign,
|
|
91
|
+
t0.trip_short_name,
|
|
92
|
+
t0.block_id,
|
|
93
|
+
t0.exceptional,
|
|
94
|
+
t0.min_stop_time,
|
|
95
|
+
t0.max_stop_time,
|
|
96
|
+
CASE
|
|
97
|
+
WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
|
|
98
|
+
THEN make_timestamptz(
|
|
99
|
+
DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
|
|
100
|
+
DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
|
|
101
|
+
DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
|
|
102
|
+
DATE_PART('hour', t0.min_stop_time)::INT - 24,
|
|
103
|
+
DATE_PART('minute', t0.min_stop_time)::INT,
|
|
104
|
+
DATE_PART('second', t0.min_stop_time),
|
|
105
|
+
'Europe/Prague'
|
|
106
|
+
)
|
|
107
|
+
ELSE make_timestamptz(
|
|
108
|
+
DATE_PART('year', t0.date)::INT,
|
|
109
|
+
DATE_PART('month', t0.date)::INT,
|
|
110
|
+
DATE_PART('day', t0.date)::INT,
|
|
111
|
+
DATE_PART('hour', t0.min_stop_time)::INT,
|
|
112
|
+
DATE_PART('minute', t0.min_stop_time)::INT,
|
|
113
|
+
DATE_PART('second', t0.min_stop_time),
|
|
114
|
+
'Europe/Prague'
|
|
115
|
+
)
|
|
116
|
+
END as start_timestamp,
|
|
117
|
+
CASE
|
|
118
|
+
WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
|
|
119
|
+
THEN make_timestamptz(
|
|
120
|
+
DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
|
|
121
|
+
DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
|
|
122
|
+
DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
|
|
123
|
+
DATE_PART('hour', t0.max_stop_time)::INT - 24,
|
|
124
|
+
DATE_PART('minute', t0.max_stop_time)::INT,
|
|
125
|
+
DATE_PART('second', t0.max_stop_time),
|
|
126
|
+
'Europe/Prague'
|
|
127
|
+
)
|
|
128
|
+
ELSE make_timestamptz(
|
|
129
|
+
DATE_PART('year', t0.date)::INT,
|
|
130
|
+
DATE_PART('month', t0.date)::INT,
|
|
131
|
+
DATE_PART('day', t0.date)::INT,
|
|
132
|
+
DATE_PART('hour', t0.max_stop_time)::INT,
|
|
133
|
+
DATE_PART('minute', t0.max_stop_time)::INT,
|
|
134
|
+
DATE_PART('second', t0.max_stop_time),
|
|
135
|
+
'Europe/Prague'
|
|
136
|
+
)
|
|
137
|
+
END as end_timestamp,
|
|
138
|
+
t0.first_stop_id,
|
|
139
|
+
t0.last_stop_id,
|
|
140
|
+
right(t0.origin_route_id, -1) as origin_route_name
|
|
141
|
+
FROM (
|
|
142
|
+
SELECT
|
|
143
|
+
t1.route_id AS origin_route_id,
|
|
144
|
+
t1.trip_id,
|
|
145
|
+
t1.service_id,
|
|
146
|
+
t1.run_number,
|
|
147
|
+
t3.date,
|
|
148
|
+
t7.route_id,
|
|
149
|
+
t7.route_type,
|
|
150
|
+
t7.route_short_name,
|
|
151
|
+
t7.is_regional,
|
|
152
|
+
t7.is_substitute_transport,
|
|
153
|
+
t7.is_night,
|
|
154
|
+
t8.trip_headsign,
|
|
155
|
+
t8.trip_short_name,
|
|
156
|
+
t8.block_id,
|
|
157
|
+
t8.exceptional,
|
|
158
|
+
LEAST(t5.arrival_time::INTERVAL, t5.departure_time::INTERVAL) AS min_stop_time,
|
|
159
|
+
GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time,
|
|
160
|
+
t5.stop_id AS first_stop_id,
|
|
161
|
+
t6.stop_id AS last_stop_id
|
|
162
|
+
FROM ropidgtfs_run_numbers t1
|
|
163
|
+
LEFT JOIN ropidgtfs_services_first14days t3 ON t1.service_id = t3.service_id
|
|
164
|
+
LEFT JOIN ropidgtfs_trips_minmaxsequences t4 ON t1.trip_id = t4.trip_id
|
|
165
|
+
LEFT OUTER JOIN ropidgtfs_stop_times t5 ON t1.trip_id = t5.trip_id AND t5.stop_sequence = t4.min_stop_sequence
|
|
166
|
+
LEFT OUTER JOIN ropidgtfs_stop_times t6 ON t1.trip_id = t6.trip_id AND t6.stop_sequence = t4.max_stop_sequence
|
|
167
|
+
LEFT JOIN ropidgtfs_trips t8 ON t1.trip_id = t8.trip_id
|
|
168
|
+
LEFT JOIN ropidgtfs_routes t7 ON t8.route_id = t7.route_id
|
|
169
|
+
) t0;
|
|
@@ -37,5 +37,3 @@ CREATE INDEX ropidgtfs_departures_stop_id_idx ON ropidgtfs_departures_actual USI
|
|
|
37
37
|
CREATE UNIQUE INDEX ropidgtfs_departures_unique_id ON ropidgtfs_departures_actual USING btree (service_id, date, trip_id, stop_sequence);
|
|
38
38
|
|
|
39
39
|
ALTER TABLE ropidgtfs_departures_actual INHERIT ropidgtfs_departures;
|
|
40
|
-
|
|
41
|
-
DROP FUNCTION departure_part (text, text, boolean);
|
|
@@ -53,16 +53,6 @@ const queueDefinitions = [
|
|
|
53
53
|
worker: RopidGTFSWorker_1.RopidGTFSWorker,
|
|
54
54
|
workerMethod: "checkSavedRowsAndReplaceTables",
|
|
55
55
|
},
|
|
56
|
-
{
|
|
57
|
-
name: "refreshPrecomputedTables",
|
|
58
|
-
options: {
|
|
59
|
-
deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
|
|
60
|
-
deadLetterRoutingKey: "dead",
|
|
61
|
-
messageTtl: 59 * 60 * 1000, // 59 minutes
|
|
62
|
-
},
|
|
63
|
-
worker: RopidGTFSWorker_1.RopidGTFSWorker,
|
|
64
|
-
workerMethod: "refreshPrecomputedTables",
|
|
65
|
-
},
|
|
66
56
|
{
|
|
67
57
|
name: "checkForNewDeparturesPresets",
|
|
68
58
|
options: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,kEAAiE;AACjE,iEAA4C;AAC5C,yEAAsE;AAGtE;;GAEG;AACH,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,gCAAgC;aACjD;YACD;gBACI,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,kEAAiE;AACjE,iEAA4C;AAC5C,yEAAsE;AAGtE;;GAEG;AACH,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,gCAAgC;aACjD;YACD;gBACI,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,8BAA8B;aAC/C;YACD;gBACI,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,2BAA2B;aAC5C;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
interface IMetadataTable {
|
|
4
|
-
key: string;
|
|
5
|
-
tn: string;
|
|
6
|
-
}
|
|
1
|
+
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
2
|
+
import { RopidMetadataModel, MetaStateEnum } from "../shared";
|
|
7
3
|
export declare enum DatasetEnum {
|
|
8
4
|
PID_GTFS = "PID_GTFS",
|
|
9
5
|
CIS_STOPS = "CIS_STOPS",
|
|
@@ -12,11 +8,11 @@ export declare enum DatasetEnum {
|
|
|
12
8
|
DEPARTURES_PRESETS = "DEPARTURES_PRESETS"
|
|
13
9
|
}
|
|
14
10
|
export declare class RopidGTFSMetadataModel extends RopidMetadataModel {
|
|
15
|
-
/** Precomputed data
|
|
11
|
+
/** Precomputed data models */
|
|
16
12
|
private departuresRepository;
|
|
17
|
-
private
|
|
18
|
-
private
|
|
19
|
-
private
|
|
13
|
+
private ropidGTFSMinMaxSequencesModel;
|
|
14
|
+
private ropidGTFSScheduledTripsModel;
|
|
15
|
+
private ropidGTFSServicesFirst14daysModel;
|
|
20
16
|
constructor();
|
|
21
17
|
checkSavedTmpTables: (dataset: string, version: number) => Promise<void>;
|
|
22
18
|
checkAllTablesHasSavedState: (datasets: Array<{
|
|
@@ -30,7 +26,5 @@ export declare class RopidGTFSMetadataModel extends RopidMetadataModel {
|
|
|
30
26
|
}>) => Promise<boolean>;
|
|
31
27
|
updateState: (dataset: string, name: string, state: MetaStateEnum, version: number) => Promise<any>;
|
|
32
28
|
getNumberOfDownloadRetries: (dataset: string, version: number) => Promise<number>;
|
|
33
|
-
|
|
34
|
-
replacePrecomputedTables: (t: Transaction) => Promise<void>;
|
|
29
|
+
replacePrecomputedTmpTables: (t: Sequelize.Transaction) => Promise<any>;
|
|
35
30
|
}
|
|
36
|
-
export {};
|
|
@@ -13,15 +13,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.RopidGTFSMetadataModel = exports.DatasetEnum = void 0;
|
|
16
|
-
const precomputed_1 = require("./data-access/precomputed");
|
|
17
|
-
const utils_1 = require("./utils");
|
|
18
|
-
const shared_1 = require("../shared");
|
|
19
|
-
const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
|
|
20
|
-
const connectors_1 = require("@golemio/core/dist/integration-engine/connectors");
|
|
21
|
-
const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
|
|
22
16
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
23
17
|
const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
|
|
24
|
-
const
|
|
18
|
+
const connectors_1 = require("@golemio/core/dist/integration-engine/connectors");
|
|
19
|
+
const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
|
|
20
|
+
const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
|
|
21
|
+
const shared_1 = require("../shared");
|
|
22
|
+
const data_access_1 = require("./data-access");
|
|
23
|
+
const RopidGTFSMinMaxSequencesModel_1 = require("./RopidGTFSMinMaxSequencesModel");
|
|
24
|
+
const RopidGTFSScheduledTripsModel_1 = require("./RopidGTFSScheduledTripsModel");
|
|
25
|
+
const RopidGTFSServicesFirst14daysModel_1 = require("./RopidGTFSServicesFirst14daysModel");
|
|
26
|
+
const utils_1 = require("./utils");
|
|
25
27
|
var DatasetEnum;
|
|
26
28
|
(function (DatasetEnum) {
|
|
27
29
|
DatasetEnum["PID_GTFS"] = "PID_GTFS";
|
|
@@ -45,7 +47,7 @@ class RopidGTFSMetadataModel extends shared_1.RopidMetadataModel {
|
|
|
45
47
|
});
|
|
46
48
|
const tablesArray = [];
|
|
47
49
|
tables.map((table) => {
|
|
48
|
-
tablesArray.push(`'${ropid_gtfs_1.RopidGTFS[table.dataValues.tn].pgTableName}
|
|
50
|
+
tablesArray.push(`'${ropid_gtfs_1.RopidGTFS[table.dataValues.tn].pgTableName}_tmp'`);
|
|
49
51
|
});
|
|
50
52
|
const result = yield this.sequelizeModel.sequelize.query(`
|
|
51
53
|
SELECT table_name AS name, count_rows(table_schema, table_name) AS total
|
|
@@ -101,8 +103,33 @@ class RopidGTFSMetadataModel extends shared_1.RopidMetadataModel {
|
|
|
101
103
|
})),
|
|
102
104
|
},
|
|
103
105
|
});
|
|
104
|
-
|
|
105
|
-
|
|
106
|
+
const promises = tables.map((table) => __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
const pgTableName = ropid_gtfs_1.RopidGTFS[table.dataValues.tn].pgTableName;
|
|
108
|
+
helpers_1.log.info(`Datasets: replacing table ${pgTableName}`);
|
|
109
|
+
const tableNameActual = pgTableName + "_actual";
|
|
110
|
+
const tableNameTmp = pgTableName + "_tmp";
|
|
111
|
+
const indexQuery = ropid_gtfs_1.RopidGTFS[table.dataValues.tn].modelIndexOptions
|
|
112
|
+
? (0, utils_1.buildAlterIndexQuery)(ropid_gtfs_1.RopidGTFS[table.dataValues.tn].modelIndexOptions)
|
|
113
|
+
: "";
|
|
114
|
+
return connection.query(`
|
|
115
|
+
LOCK "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName} IN EXCLUSIVE MODE;
|
|
116
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} NO INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
|
|
117
|
+
DROP TABLE IF EXISTS "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual};
|
|
118
|
+
${indexQuery}
|
|
119
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} RENAME TO ${tableNameActual};
|
|
120
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD create_batch_id int8 NULL;
|
|
121
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD COLUMN created_at timestamptz NULL DEFAULT now();
|
|
122
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD created_by varchar(150) NULL;
|
|
123
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD update_batch_id int8 NULL;
|
|
124
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD COLUMN updated_at timestamptz NULL DEFAULT now();
|
|
125
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} ADD updated_by varchar(150) NULL;
|
|
126
|
+
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
|
|
127
|
+
`, { transaction: t });
|
|
128
|
+
}));
|
|
129
|
+
yield Promise.all(promises);
|
|
130
|
+
helpers_1.log.info(`Datasets: replacing tmp tables finished`);
|
|
131
|
+
yield this.replacePrecomputedTmpTables(t);
|
|
132
|
+
helpers_1.log.info(`Datasets: replacing precomputed tables finished`);
|
|
106
133
|
// save meta
|
|
107
134
|
yield this.sequelizeModel.bulkCreate(datasetInfo.map((el) => ({
|
|
108
135
|
dataset: el.dataset,
|
|
@@ -167,48 +194,16 @@ class RopidGTFSMetadataModel extends shared_1.RopidMetadataModel {
|
|
|
167
194
|
}
|
|
168
195
|
return +numberOfRetries.dataValues.retries;
|
|
169
196
|
});
|
|
170
|
-
this.
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
helpers_1.log.info(`Datasets: replacing table ${pgTableName}`);
|
|
175
|
-
const tableNameActual = pgTableName + SourceTableSuffixEnum_1.SourceTableSuffixEnum.Actual;
|
|
176
|
-
const tableNameTmp = pgTableName + SourceTableSuffixEnum_1.SourceTableSuffixEnum.Tmp;
|
|
177
|
-
const tableNameDrop = pgTableName + SourceTableSuffixEnum_1.SourceTableSuffixEnum.Drop;
|
|
178
|
-
const indexQuery = ropid_gtfs_1.RopidGTFS[table.dataValues.tn].modelIndexOptions
|
|
179
|
-
? (0, utils_1.buildAlterIndexQuery)(ropid_gtfs_1.RopidGTFS[table.dataValues.tn].modelIndexOptions)
|
|
180
|
-
: "";
|
|
181
|
-
yield connection.query(`
|
|
182
|
-
LOCK "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName} IN EXCLUSIVE MODE;
|
|
183
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} NO INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
|
|
184
|
-
${indexQuery}
|
|
185
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD create_batch_id int8 NULL;
|
|
186
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD COLUMN created_at timestamptz NULL DEFAULT now();
|
|
187
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD created_by varchar(150) NULL;
|
|
188
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD update_batch_id int8 NULL;
|
|
189
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD COLUMN updated_at timestamptz NULL DEFAULT now();
|
|
190
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD updated_by varchar(150) NULL;
|
|
191
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} RENAME TO ${tableNameDrop};
|
|
192
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} RENAME TO ${tableNameActual};
|
|
193
|
-
ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
|
|
194
|
-
DROP TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameDrop};
|
|
195
|
-
`, { transaction: t });
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
this.replacePrecomputedTables = (t) => __awaiter(this, void 0, void 0, function* () {
|
|
199
|
-
helpers_1.log.info(`Datasets: replacing table ${this.servicesCalendarRepository["tableName"]}`);
|
|
200
|
-
yield this.servicesCalendarRepository.replaceByTmp(t);
|
|
201
|
-
helpers_1.log.info(`Datasets: replacing table ${this.minMaxStopSequencesRepository["tableName"]}`);
|
|
202
|
-
yield this.minMaxStopSequencesRepository.replaceByTmp(t);
|
|
203
|
-
helpers_1.log.info(`Datasets: replacing table ${this.tripScheduleRepository["tableName"]}`);
|
|
204
|
-
yield this.tripScheduleRepository.replaceByTmp(t);
|
|
205
|
-
helpers_1.log.info(`Datasets: replacing table ${this.departuresRepository["tableName"]}`);
|
|
197
|
+
this.replacePrecomputedTmpTables = (t) => __awaiter(this, void 0, void 0, function* () {
|
|
198
|
+
yield this.ropidGTFSServicesFirst14daysModel.replaceByTmp(t);
|
|
199
|
+
yield this.ropidGTFSMinMaxSequencesModel.replaceByTmp(t);
|
|
200
|
+
yield this.ropidGTFSScheduledTripsModel.replaceByTmp(t);
|
|
206
201
|
yield this.departuresRepository.replaceByTmp(t);
|
|
207
202
|
});
|
|
208
|
-
this.departuresRepository = new
|
|
209
|
-
this.
|
|
210
|
-
this.
|
|
211
|
-
this.
|
|
203
|
+
this.departuresRepository = new data_access_1.DeparturesRepository();
|
|
204
|
+
this.ropidGTFSMinMaxSequencesModel = new RopidGTFSMinMaxSequencesModel_1.RopidGTFSMinMaxSequencesModel();
|
|
205
|
+
this.ropidGTFSScheduledTripsModel = new RopidGTFSScheduledTripsModel_1.RopidGTFSScheduledTripsModel();
|
|
206
|
+
this.ropidGTFSServicesFirst14daysModel = new RopidGTFSServicesFirst14daysModel_1.RopidGTFSServicesFirst14daysModel();
|
|
212
207
|
}
|
|
213
208
|
}
|
|
214
209
|
exports.RopidGTFSMetadataModel = RopidGTFSMetadataModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RopidGTFSMetadataModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"RopidGTFSMetadataModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
2
|
+
import Sequelize, { Transaction } from "@golemio/core/dist/shared/sequelize";
|
|
3
|
+
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
4
|
+
export declare class RopidGTFSMinMaxSequencesModel extends PostgresModel implements IModel {
|
|
5
|
+
/** Model name */
|
|
6
|
+
name: string;
|
|
7
|
+
/** The Sequelize Model */
|
|
8
|
+
sequelizeModel: Sequelize.ModelCtor<any>;
|
|
9
|
+
/** The Sequelize Model for temporary table */
|
|
10
|
+
protected tmpSequelizeModel: Sequelize.ModelCtor<any> | null;
|
|
11
|
+
/** Validation helper */
|
|
12
|
+
protected validator: JSONSchemaValidator;
|
|
13
|
+
/** Type/Strategy of saving the data */
|
|
14
|
+
protected savingType: "insertOnly" | "insertOrUpdate";
|
|
15
|
+
constructor();
|
|
16
|
+
createAndPopulateFromTmp: () => Promise<void>;
|
|
17
|
+
replaceByTmp: (transaction: Transaction) => Promise<void>;
|
|
18
|
+
createIndexes: () => Promise<void>;
|
|
19
|
+
}
|