@golemio/pid 3.5.0 → 3.5.1-dev.1632495980

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.
Files changed (59) hide show
  1. package/db/migrations/postgresql/20250103092631-skip-missing.js +53 -0
  2. package/db/migrations/postgresql/sqls/20250103092631-skip-missing-down.sql +184 -0
  3. package/db/migrations/postgresql/sqls/20250103092631-skip-missing-up.sql +195 -0
  4. package/dist/integration-engine/ropid-gtfs/data-access/cache/RunTripsRedisRepository.js +2 -1
  5. package/dist/integration-engine/ropid-gtfs/data-access/cache/RunTripsRedisRepository.js.map +1 -1
  6. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.js.map +1 -1
  7. package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js +1 -3
  8. package/dist/output-gateway/pid/controllers/v2/V2DepartureBoardsController.js.map +1 -1
  9. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.d.ts +1 -0
  10. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js +12 -3
  11. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js.map +1 -1
  12. package/dist/output-gateway/pid/domain/DepartureInterfaces.d.ts +7 -0
  13. package/dist/output-gateway/pid/domain/DepartureInterfaces.js +3 -0
  14. package/dist/output-gateway/pid/domain/DepartureInterfaces.js.map +1 -0
  15. package/dist/output-gateway/pid/index.d.ts +4 -5
  16. package/dist/output-gateway/pid/index.js +1 -0
  17. package/dist/output-gateway/pid/index.js.map +1 -1
  18. package/dist/output-gateway/pid/ioc/Di.js +4 -0
  19. package/dist/output-gateway/pid/ioc/Di.js.map +1 -1
  20. package/dist/output-gateway/pid/ioc/OgPidToken.d.ts +2 -0
  21. package/dist/output-gateway/pid/ioc/OgPidToken.js +2 -0
  22. package/dist/output-gateway/pid/ioc/OgPidToken.js.map +1 -1
  23. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.d.ts +14 -28
  24. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +192 -71
  25. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
  26. package/dist/output-gateway/pid/models/helpers/PIDDepartureModel.js +27 -15
  27. package/dist/output-gateway/pid/models/helpers/PIDDepartureModel.js.map +1 -1
  28. package/dist/output-gateway/pid/models/helpers/SkipHelper.d.ts +19 -0
  29. package/dist/output-gateway/pid/models/helpers/SkipHelper.js +116 -0
  30. package/dist/output-gateway/pid/models/helpers/SkipHelper.js.map +1 -0
  31. package/dist/output-gateway/pid/models/helpers/const.d.ts +4 -0
  32. package/dist/output-gateway/pid/models/helpers/const.js +8 -0
  33. package/dist/output-gateway/pid/models/helpers/const.js.map +1 -0
  34. package/dist/output-gateway/pid/models/helpers/interfaces/IPIDDepartureQueryOptions.d.ts +4 -1
  35. package/dist/output-gateway/pid/models/interfaces/IGetDeparturesOptions.d.ts +21 -0
  36. package/dist/output-gateway/pid/models/interfaces/IGetDeparturesOptions.js +3 -0
  37. package/dist/output-gateway/pid/models/interfaces/IGetDeparturesOptions.js.map +1 -0
  38. package/dist/output-gateway/pid/routers/v3/V3PIDRouter.js +1 -1
  39. package/dist/output-gateway/pid/routers/v3/V3PIDRouter.js.map +1 -1
  40. package/dist/output-gateway/pid/service/facade/TransferFacade.d.ts +1 -1
  41. package/dist/output-gateway/pid/service/facade/TransferFacade.js +2 -0
  42. package/dist/output-gateway/pid/service/facade/TransferFacade.js.map +1 -1
  43. package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.d.ts +4 -2
  44. package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.js +90 -68
  45. package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.js.map +1 -1
  46. package/dist/output-gateway/public/domain/repository/IVehiclePositionsRepository.d.ts +2 -1
  47. package/dist/output-gateway/ropid-gtfs/data-access/redis/RunTripsRedisRepository.d.ts +10 -0
  48. package/dist/output-gateway/ropid-gtfs/data-access/redis/RunTripsRedisRepository.js +65 -0
  49. package/dist/output-gateway/ropid-gtfs/data-access/redis/RunTripsRedisRepository.js.map +1 -0
  50. package/dist/output-gateway/ropid-gtfs/domain/repository/IRunTripsRedisRepository.d.ts +4 -0
  51. package/dist/output-gateway/ropid-gtfs/domain/repository/IRunTripsRedisRepository.js +3 -0
  52. package/dist/output-gateway/ropid-gtfs/domain/repository/IRunTripsRedisRepository.js.map +1 -0
  53. package/dist/output-gateway/shared/constants/validations.js +1 -1
  54. package/dist/output-gateway/shared/constants/validations.js.map +1 -1
  55. package/dist/schema-definitions/ropid-gtfs/redis/const.d.ts +1 -0
  56. package/dist/schema-definitions/ropid-gtfs/redis/const.js +2 -1
  57. package/dist/schema-definitions/ropid-gtfs/redis/const.js.map +1 -1
  58. package/docs/openapi-output.yaml +11 -3
  59. package/package.json +3 -3
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ var dbm;
4
+ var type;
5
+ var seed;
6
+ var fs = require('fs');
7
+ var path = require('path');
8
+ var Promise;
9
+
10
+ /**
11
+ * We receive the dbmigrate dependency from dbmigrate initially.
12
+ * This enables us to not have to rely on NODE_PATH.
13
+ */
14
+ exports.setup = function(options, seedLink) {
15
+ dbm = options.dbmigrate;
16
+ type = dbm.dataType;
17
+ seed = seedLink;
18
+ Promise = options.Promise;
19
+ };
20
+
21
+ exports.up = function(db) {
22
+ var filePath = path.join(__dirname, 'sqls', '20250103092631-skip-missing-up.sql');
23
+ return new Promise( function( resolve, reject ) {
24
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
25
+ if (err) return reject(err);
26
+ console.log('received data: ' + data);
27
+
28
+ resolve(data);
29
+ });
30
+ })
31
+ .then(function(data) {
32
+ return db.runSql(data);
33
+ });
34
+ };
35
+
36
+ exports.down = function(db) {
37
+ var filePath = path.join(__dirname, 'sqls', '20250103092631-skip-missing-down.sql');
38
+ return new Promise( function( resolve, reject ) {
39
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
40
+ if (err) return reject(err);
41
+ console.log('received data: ' + data);
42
+
43
+ resolve(data);
44
+ });
45
+ })
46
+ .then(function(data) {
47
+ return db.runSql(data);
48
+ });
49
+ };
50
+
51
+ exports._meta = {
52
+ "version": 1
53
+ };
@@ -0,0 +1,184 @@
1
+ -- Remove columns in the resulting table of the get_departures function
2
+ -- - trip.start_timestamp
3
+ -- - trip.end_timestamp
4
+ -- - trip.start_stop_id
5
+
6
+ drop function get_departures;
7
+ create function get_departures (
8
+ stopsIds varchar,
9
+ mode int,
10
+ dateDepartureBetweenStart timestamptz,
11
+ dateDepartureBetweenEnd timestamptz,
12
+ isNegativeMinutesBefore int,
13
+ dateCanceledDepartureBetweenStart timestamptz,
14
+ dateCanceledDepartureBetweenEnd timestamptz,
15
+ airconditioninfoenabled int
16
+ )
17
+ returns table (
18
+ departure_datetime_real timestamptz,
19
+ arrival_datetime_real timestamptz,
20
+ stop_sequence int2,
21
+ stop_headsign varchar(70),
22
+ arrival_datetime timestamptz,
23
+ departure_datetime timestamptz,
24
+ stop_id varchar(25),
25
+ platform_code varchar(10),
26
+ wheelchair_boarding int2,
27
+ min_stop_sequence int2,
28
+ max_stop_sequence int2,
29
+ trip_id varchar(50),
30
+ trip_headsign varchar(100),
31
+ trip_short_name varchar(30),
32
+ wheelchair_accessible int2,
33
+ route_short_name varchar(50),
34
+ route_type int2,
35
+ route_id varchar(20),
36
+ is_night bpchar(1),
37
+ is_regional bpchar(1),
38
+ is_substitute_transport bpchar(1),
39
+ next_stop_id varchar(30),
40
+ delay_seconds int4,
41
+ real_wheelchair_accessible bool,
42
+ is_canceled bool,
43
+ "trip.gtfs_trip_short_name" varchar(255),
44
+ "trip.gtfs_date" date,
45
+ "trip.internal_route_name" varchar(50),
46
+ "trip.internal_run_number" int4,
47
+ "trip.last_position.last_stop_id" varchar(255),
48
+ "trip.last_position.last_stop_sequence" int4,
49
+ "trip.last_position.last_stop_name" varchar(255),
50
+ "trip.last_position.this_stop_sequence" int4,
51
+ "trip.cis_stop_platform_code" varchar(15),
52
+ "trip.vehicle_descriptor.is_air_conditioned" bool,
53
+ delay_minutes int4,
54
+ is_delay_available bool
55
+ )
56
+ language SQL
57
+ set search_path from current
58
+ as $$
59
+ select
60
+ departure_boards_detailed."computed.departure_datetime_real",
61
+ departure_boards_detailed."computed.arrival_datetime_real",
62
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence",
63
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_headsign",
64
+ departure_boards_detailed."ropidgtfs_precomputed_departures.arrival_datetime",
65
+ departure_boards_detailed."ropidgtfs_precomputed_departures.departure_datetime",
66
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_id",
67
+ departure_boards_detailed."ropidgtfs_precomputed_departures.platform_code",
68
+ departure_boards_detailed."ropidgtfs_precomputed_departures.wheelchair_boarding",
69
+ departure_boards_detailed."ropidgtfs_precomputed_departures.min_stop_sequence",
70
+ departure_boards_detailed."ropidgtfs_precomputed_departures.max_stop_sequence",
71
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_id",
72
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_headsign",
73
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_short_name",
74
+ departure_boards_detailed."ropidgtfs_precomputed_departures.wheelchair_accessible",
75
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_short_name",
76
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_type",
77
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_id",
78
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_night",
79
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_regional",
80
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_substitute_transport",
81
+ departure_boards_detailed."ropidgtfs_precomputed_departures.next_stop_id",
82
+ departure_boards_detailed."delay_seconds",
83
+ departure_boards_detailed."real_wheelchair_accessible",
84
+ departure_boards_detailed."is_canceled",
85
+ departure_boards_detailed."trip.gtfs_trip_short_name",
86
+ departure_boards_detailed."trip.gtfs_date",
87
+ departure_boards_detailed."trip.internal_route_name",
88
+ departure_boards_detailed."trip.internal_run_number",
89
+ departure_boards_detailed."trip.last_position.last_stop_id",
90
+ departure_boards_detailed."trip.last_position.last_stop_sequence",
91
+ departure_boards_detailed."trip.last_position.last_stop_name",
92
+ departure_boards_detailed."trip.last_position.this_stop_sequence",
93
+ departure_boards_detailed.cis_stop_platform_code as "trip.cis_stop_platform_code",
94
+ case when airconditioninfoenabled = 1 then departure_boards_detailed."trip.vehicle_descriptor.is_air_conditioned" else NULL end,
95
+ TRUNC(departure_boards_detailed."trip.last_position.delay"::DECIMAL / 60, 0)::int as "delay_minutes",
96
+ case when departure_boards_detailed."trip.last_position.delay" is null then false else true end as "is_delay_available"
97
+ from (
98
+ select
99
+ ("departure_datetime"
100
+ + MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end))
101
+ - case when (MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end)) > MAKE_INTERVAL())
102
+ then least (
103
+ MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end)),
104
+ ("departure_datetime" - "arrival_datetime")::interval
105
+ )
106
+ else MAKE_INTERVAL()
107
+ end
108
+ ) "computed.departure_datetime_real",
109
+ "arrival_datetime" + MAKE_INTERVAL(secs => (
110
+ CASE WHEN "trip.last_position.delay" IS NULL THEN 0 ELSE "trip.last_position.delay" end
111
+ )) "computed.arrival_datetime_real",
112
+ "ropidgtfs_precomputed_departures"."stop_sequence" as "ropidgtfs_precomputed_departures.stop_sequence",
113
+ "ropidgtfs_precomputed_departures"."stop_headsign" as "ropidgtfs_precomputed_departures.stop_headsign",
114
+ "ropidgtfs_precomputed_departures"."pickup_type" as "ropidgtfs_precomputed_departures.pickup_type",
115
+ "ropidgtfs_precomputed_departures"."drop_off_type" as "ropidgtfs_precomputed_departures.drop_off_type",
116
+ "ropidgtfs_precomputed_departures"."arrival_time" as "ropidgtfs_precomputed_departures.arrival_time",
117
+ "ropidgtfs_precomputed_departures"."arrival_datetime" as "ropidgtfs_precomputed_departures.arrival_datetime",
118
+ "ropidgtfs_precomputed_departures"."departure_time" as "ropidgtfs_precomputed_departures.departure_time",
119
+ "ropidgtfs_precomputed_departures"."departure_datetime" as "ropidgtfs_precomputed_departures.departure_datetime",
120
+ "ropidgtfs_precomputed_departures"."stop_id" as "ropidgtfs_precomputed_departures.stop_id",
121
+ "ropidgtfs_precomputed_departures"."stop_name" as "ropidgtfs_precomputed_departures.stop_name",
122
+ "ropidgtfs_precomputed_departures"."platform_code" as "ropidgtfs_precomputed_departures.platform_code",
123
+ "ropidgtfs_precomputed_departures"."wheelchair_boarding" as "ropidgtfs_precomputed_departures.wheelchair_boarding",
124
+ "ropidgtfs_precomputed_departures"."min_stop_sequence" as "ropidgtfs_precomputed_departures.min_stop_sequence",
125
+ "ropidgtfs_precomputed_departures"."max_stop_sequence" as "ropidgtfs_precomputed_departures.max_stop_sequence",
126
+ "ropidgtfs_precomputed_departures"."trip_id" as "ropidgtfs_precomputed_departures.trip_id",
127
+ "ropidgtfs_precomputed_departures"."trip_headsign" as "ropidgtfs_precomputed_departures.trip_headsign",
128
+ "ropidgtfs_precomputed_departures"."trip_short_name" as "ropidgtfs_precomputed_departures.trip_short_name",
129
+ "ropidgtfs_precomputed_departures"."wheelchair_accessible" as "ropidgtfs_precomputed_departures.wheelchair_accessible",
130
+ "ropidgtfs_precomputed_departures"."service_id" as "ropidgtfs_precomputed_departures.service_id",
131
+ "ropidgtfs_precomputed_departures"."date" as "ropidgtfs_precomputed_departures.date",
132
+ "ropidgtfs_precomputed_departures"."route_short_name" as "ropidgtfs_precomputed_departures.route_short_name",
133
+ "ropidgtfs_precomputed_departures"."route_type" as "ropidgtfs_precomputed_departures.route_type",
134
+ "ropidgtfs_precomputed_departures"."route_id" as "ropidgtfs_precomputed_departures.route_id",
135
+ "ropidgtfs_precomputed_departures"."is_night" as "ropidgtfs_precomputed_departures.is_night",
136
+ "ropidgtfs_precomputed_departures"."is_regional" as "ropidgtfs_precomputed_departures.is_regional",
137
+ "ropidgtfs_precomputed_departures"."is_substitute_transport" as "ropidgtfs_precomputed_departures.is_substitute_transport",
138
+ "ropidgtfs_precomputed_departures"."next_stop_sequence" as "ropidgtfs_precomputed_departures.next_stop_sequence",
139
+ "ropidgtfs_precomputed_departures"."next_stop_id" as "ropidgtfs_precomputed_departures.next_stop_id",
140
+ "ropidgtfs_precomputed_departures"."last_stop_sequence" as "ropidgtfs_precomputed_departures.last_stop_sequence",
141
+ "ropidgtfs_precomputed_departures"."last_stop_id" as "ropidgtfs_precomputed_departures.last_stop_id",
142
+ x.*,
143
+ cis_stop.cis_stop_platform_code as "cis_stop_platform_code"
144
+ from
145
+ "ropidgtfs_precomputed_departures" as "ropidgtfs_precomputed_departures"
146
+ left outer join v_vehiclepositions_trip_position_vehicle_info as x on
147
+ "ropidgtfs_precomputed_departures"."trip_id" = x."trip.gtfs_trip_id"
148
+ left join vehiclepositions_cis_stops as cis_stop on
149
+ cis_stop.rt_trip_id = x."trip.id"
150
+ and cis_stop.cis_stop_group_id = "ropidgtfs_precomputed_departures"."cis_stop_group_id"
151
+ ) departure_boards_detailed
152
+ where
153
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_id" = ANY(STRING_TO_ARRAY(stopsIds,','))
154
+ and (
155
+ (
156
+ (
157
+ (mode = 1 and departure_boards_detailed."computed.arrival_datetime_real" between dateDepartureBetweenStart and dateDepartureBetweenEnd)
158
+ or (mode != 1 and departure_boards_detailed."computed.departure_datetime_real" between dateDepartureBetweenStart and dateDepartureBetweenEnd)
159
+ )
160
+ and
161
+ (
162
+ 0 = isNegativeMinutesBefore
163
+ or ( -- pro záporné minutes before
164
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" >= departure_boards_detailed."trip.last_position.last_stop_sequence"
165
+ or departure_boards_detailed."trip.last_position.last_stop_sequence" IS null
166
+ )
167
+ )
168
+
169
+ )
170
+ or (
171
+ departure_boards_detailed."trip.is_canceled" = true
172
+ and
173
+ (
174
+ (mode = 1 and departure_boards_detailed."computed.arrival_datetime_real" between dateCanceledDepartureBetweenStart and dateCanceledDepartureBetweenEnd)
175
+ or (mode != 1 and departure_boards_detailed."computed.departure_datetime_real" between dateCanceledDepartureBetweenStart and dateCanceledDepartureBetweenEnd)
176
+ )
177
+ )
178
+ ) and
179
+ (
180
+ (mode = 1 and (departure_boards_detailed."ropidgtfs_precomputed_departures.pickup_type" != '1' and departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" != departure_boards_detailed."ropidgtfs_precomputed_departures.max_stop_sequence")) -- mode default/departures
181
+ or (mode=2 and (departure_boards_detailed."ropidgtfs_precomputed_departures.drop_off_type" != '1' and departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" != departure_boards_detailed."ropidgtfs_precomputed_departures.min_stop_sequence")) -- mode arrivals
182
+ or (mode=3 and (departure_boards_detailed."ropidgtfs_precomputed_departures.pickup_type" != '1')) -- mode mixed
183
+ );
184
+ $$;
@@ -0,0 +1,195 @@
1
+ -- Add columns in the resulting table of the get_departures function
2
+ -- + trip.start_timestamp
3
+ -- + origin_route_name
4
+ -- + run_number
5
+
6
+ drop function get_departures;
7
+ create function get_departures (
8
+ stopsIds varchar,
9
+ mode int,
10
+ dateDepartureBetweenStart timestamptz,
11
+ dateDepartureBetweenEnd timestamptz,
12
+ isNegativeMinutesBefore int,
13
+ dateCanceledDepartureBetweenStart timestamptz,
14
+ dateCanceledDepartureBetweenEnd timestamptz,
15
+ airconditioninfoenabled int
16
+ )
17
+ returns table (
18
+ departure_datetime_real timestamptz,
19
+ arrival_datetime_real timestamptz,
20
+ stop_sequence int2,
21
+ stop_headsign varchar(70),
22
+ arrival_datetime timestamptz,
23
+ departure_datetime timestamptz,
24
+ stop_id varchar(25),
25
+ platform_code varchar(10),
26
+ wheelchair_boarding int2,
27
+ min_stop_sequence int2,
28
+ max_stop_sequence int2,
29
+ trip_id varchar(50),
30
+ trip_headsign varchar(100),
31
+ trip_short_name varchar(30),
32
+ wheelchair_accessible int2,
33
+ route_short_name varchar(50),
34
+ route_type int2,
35
+ route_id varchar(20),
36
+ is_night bpchar(1),
37
+ is_regional bpchar(1),
38
+ is_substitute_transport bpchar(1),
39
+ next_stop_id varchar(30),
40
+ delay_seconds int4,
41
+ real_wheelchair_accessible bool,
42
+ is_canceled bool,
43
+ "trip.gtfs_trip_short_name" varchar(255),
44
+ "trip.gtfs_date" date,
45
+ "trip.internal_route_name" varchar(50),
46
+ "trip.internal_run_number" int4,
47
+ "trip.start_timestamp" timestamptz,
48
+ "trip.last_position.last_stop_id" varchar(255),
49
+ "trip.last_position.last_stop_sequence" int4,
50
+ "trip.last_position.last_stop_name" varchar(255),
51
+ "trip.last_position.this_stop_sequence" int4,
52
+ "trip.cis_stop_platform_code" varchar(15),
53
+ "trip.vehicle_descriptor.is_air_conditioned" bool,
54
+ delay_minutes int4,
55
+ is_delay_available bool,
56
+ origin_route_name varchar(50),
57
+ run_number int4
58
+ )
59
+ language SQL
60
+ set search_path from current
61
+ as $$
62
+ select
63
+ departure_boards_detailed."computed.departure_datetime_real",
64
+ departure_boards_detailed."computed.arrival_datetime_real",
65
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence",
66
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_headsign",
67
+ departure_boards_detailed."ropidgtfs_precomputed_departures.arrival_datetime",
68
+ departure_boards_detailed."ropidgtfs_precomputed_departures.departure_datetime",
69
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_id",
70
+ departure_boards_detailed."ropidgtfs_precomputed_departures.platform_code",
71
+ departure_boards_detailed."ropidgtfs_precomputed_departures.wheelchair_boarding",
72
+ departure_boards_detailed."ropidgtfs_precomputed_departures.min_stop_sequence",
73
+ departure_boards_detailed."ropidgtfs_precomputed_departures.max_stop_sequence",
74
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_id",
75
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_headsign",
76
+ departure_boards_detailed."ropidgtfs_precomputed_departures.trip_short_name",
77
+ departure_boards_detailed."ropidgtfs_precomputed_departures.wheelchair_accessible",
78
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_short_name",
79
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_type",
80
+ departure_boards_detailed."ropidgtfs_precomputed_departures.route_id",
81
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_night",
82
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_regional",
83
+ departure_boards_detailed."ropidgtfs_precomputed_departures.is_substitute_transport",
84
+ departure_boards_detailed."ropidgtfs_precomputed_departures.next_stop_id",
85
+ departure_boards_detailed."delay_seconds",
86
+ departure_boards_detailed."real_wheelchair_accessible",
87
+ departure_boards_detailed."is_canceled",
88
+ departure_boards_detailed."trip.gtfs_trip_short_name",
89
+ departure_boards_detailed."trip.gtfs_date",
90
+ departure_boards_detailed."trip.internal_route_name",
91
+ departure_boards_detailed."trip.internal_run_number",
92
+ departure_boards_detailed."trip.start_timestamp",
93
+ departure_boards_detailed."trip.last_position.last_stop_id",
94
+ departure_boards_detailed."trip.last_position.last_stop_sequence",
95
+ departure_boards_detailed."trip.last_position.last_stop_name",
96
+ departure_boards_detailed."trip.last_position.this_stop_sequence",
97
+ departure_boards_detailed.cis_stop_platform_code as "trip.cis_stop_platform_code",
98
+ case when airconditioninfoenabled = 1 then departure_boards_detailed."trip.vehicle_descriptor.is_air_conditioned" else NULL end,
99
+ TRUNC(departure_boards_detailed."trip.last_position.delay"::DECIMAL / 60, 0)::int as "delay_minutes",
100
+ case when departure_boards_detailed."trip.last_position.delay" is null then false else true end as "is_delay_available",
101
+ departure_boards_detailed."run.origin_route_name",
102
+ departure_boards_detailed."run.run_number"
103
+ from (
104
+ select
105
+ ("departure_datetime"
106
+ + MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end))
107
+ - case when (MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end)) > MAKE_INTERVAL())
108
+ then least (
109
+ MAKE_INTERVAL(secs => (case when "trip.last_position.delay" is null then 0 else "trip.last_position.delay" end)),
110
+ ("departure_datetime" - "arrival_datetime")::interval
111
+ )
112
+ else MAKE_INTERVAL()
113
+ end
114
+ ) "computed.departure_datetime_real",
115
+ "arrival_datetime" + MAKE_INTERVAL(secs => (
116
+ CASE WHEN "trip.last_position.delay" IS NULL THEN 0 ELSE "trip.last_position.delay" end
117
+ )) "computed.arrival_datetime_real",
118
+ "ropidgtfs_precomputed_departures"."stop_sequence" as "ropidgtfs_precomputed_departures.stop_sequence",
119
+ "ropidgtfs_precomputed_departures"."stop_headsign" as "ropidgtfs_precomputed_departures.stop_headsign",
120
+ "ropidgtfs_precomputed_departures"."pickup_type" as "ropidgtfs_precomputed_departures.pickup_type",
121
+ "ropidgtfs_precomputed_departures"."drop_off_type" as "ropidgtfs_precomputed_departures.drop_off_type",
122
+ "ropidgtfs_precomputed_departures"."arrival_time" as "ropidgtfs_precomputed_departures.arrival_time",
123
+ "ropidgtfs_precomputed_departures"."arrival_datetime" as "ropidgtfs_precomputed_departures.arrival_datetime",
124
+ "ropidgtfs_precomputed_departures"."departure_time" as "ropidgtfs_precomputed_departures.departure_time",
125
+ "ropidgtfs_precomputed_departures"."departure_datetime" as "ropidgtfs_precomputed_departures.departure_datetime",
126
+ "ropidgtfs_precomputed_departures"."stop_id" as "ropidgtfs_precomputed_departures.stop_id",
127
+ "ropidgtfs_precomputed_departures"."stop_name" as "ropidgtfs_precomputed_departures.stop_name",
128
+ "ropidgtfs_precomputed_departures"."platform_code" as "ropidgtfs_precomputed_departures.platform_code",
129
+ "ropidgtfs_precomputed_departures"."wheelchair_boarding" as "ropidgtfs_precomputed_departures.wheelchair_boarding",
130
+ "ropidgtfs_precomputed_departures"."min_stop_sequence" as "ropidgtfs_precomputed_departures.min_stop_sequence",
131
+ "ropidgtfs_precomputed_departures"."max_stop_sequence" as "ropidgtfs_precomputed_departures.max_stop_sequence",
132
+ "ropidgtfs_precomputed_departures"."trip_id" as "ropidgtfs_precomputed_departures.trip_id",
133
+ "ropidgtfs_precomputed_departures"."trip_headsign" as "ropidgtfs_precomputed_departures.trip_headsign",
134
+ "ropidgtfs_precomputed_departures"."trip_short_name" as "ropidgtfs_precomputed_departures.trip_short_name",
135
+ "ropidgtfs_precomputed_departures"."wheelchair_accessible" as "ropidgtfs_precomputed_departures.wheelchair_accessible",
136
+ "ropidgtfs_precomputed_departures"."service_id" as "ropidgtfs_precomputed_departures.service_id",
137
+ "ropidgtfs_precomputed_departures"."date" as "ropidgtfs_precomputed_departures.date",
138
+ "ropidgtfs_precomputed_departures"."route_short_name" as "ropidgtfs_precomputed_departures.route_short_name",
139
+ "ropidgtfs_precomputed_departures"."route_type" as "ropidgtfs_precomputed_departures.route_type",
140
+ "ropidgtfs_precomputed_departures"."route_id" as "ropidgtfs_precomputed_departures.route_id",
141
+ "ropidgtfs_precomputed_departures"."is_night" as "ropidgtfs_precomputed_departures.is_night",
142
+ "ropidgtfs_precomputed_departures"."is_regional" as "ropidgtfs_precomputed_departures.is_regional",
143
+ "ropidgtfs_precomputed_departures"."is_substitute_transport" as "ropidgtfs_precomputed_departures.is_substitute_transport",
144
+ "ropidgtfs_precomputed_departures"."next_stop_sequence" as "ropidgtfs_precomputed_departures.next_stop_sequence",
145
+ "ropidgtfs_precomputed_departures"."next_stop_id" as "ropidgtfs_precomputed_departures.next_stop_id",
146
+ "ropidgtfs_precomputed_departures"."last_stop_sequence" as "ropidgtfs_precomputed_departures.last_stop_sequence",
147
+ "ropidgtfs_precomputed_departures"."last_stop_id" as "ropidgtfs_precomputed_departures.last_stop_id",
148
+ x.*,
149
+ cis_stop.cis_stop_platform_code as "cis_stop_platform_code",
150
+ right(run.route_id, -1) as "run.origin_route_name",
151
+ run.run_number as "run.run_number"
152
+ from
153
+ "ropidgtfs_precomputed_departures" as "ropidgtfs_precomputed_departures"
154
+ left join "ropidgtfs_run_numbers" as run on
155
+ "ropidgtfs_precomputed_departures"."trip_id" = run.trip_id
156
+ and "ropidgtfs_precomputed_departures"."service_id" = run.service_id
157
+ left outer join v_vehiclepositions_trip_position_vehicle_info as x on
158
+ "ropidgtfs_precomputed_departures"."trip_id" = x."trip.gtfs_trip_id"
159
+ left join vehiclepositions_cis_stops as cis_stop on
160
+ cis_stop.rt_trip_id = x."trip.id"
161
+ and cis_stop.cis_stop_group_id = "ropidgtfs_precomputed_departures"."cis_stop_group_id"
162
+ ) departure_boards_detailed
163
+ where
164
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_id" = ANY(STRING_TO_ARRAY(stopsIds,','))
165
+ and (
166
+ (
167
+ (
168
+ (mode = 1 and departure_boards_detailed."computed.arrival_datetime_real" between dateDepartureBetweenStart and dateDepartureBetweenEnd)
169
+ or (mode != 1 and departure_boards_detailed."computed.departure_datetime_real" between dateDepartureBetweenStart and dateDepartureBetweenEnd)
170
+ )
171
+ and
172
+ (
173
+ 0 = isNegativeMinutesBefore
174
+ or ( -- pro záporné minutes before
175
+ departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" >= departure_boards_detailed."trip.last_position.last_stop_sequence"
176
+ or departure_boards_detailed."trip.last_position.last_stop_sequence" IS null
177
+ )
178
+ )
179
+
180
+ )
181
+ or (
182
+ departure_boards_detailed."trip.is_canceled" = true
183
+ and
184
+ (
185
+ (mode = 1 and departure_boards_detailed."computed.arrival_datetime_real" between dateCanceledDepartureBetweenStart and dateCanceledDepartureBetweenEnd)
186
+ or (mode != 1 and departure_boards_detailed."computed.departure_datetime_real" between dateCanceledDepartureBetweenStart and dateCanceledDepartureBetweenEnd)
187
+ )
188
+ )
189
+ ) and
190
+ (
191
+ (mode = 1 and (departure_boards_detailed."ropidgtfs_precomputed_departures.pickup_type" != '1' and departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" != departure_boards_detailed."ropidgtfs_precomputed_departures.max_stop_sequence")) -- mode default/departures
192
+ or (mode=2 and (departure_boards_detailed."ropidgtfs_precomputed_departures.drop_off_type" != '1' and departure_boards_detailed."ropidgtfs_precomputed_departures.stop_sequence" != departure_boards_detailed."ropidgtfs_precomputed_departures.min_stop_sequence")) -- mode arrivals
193
+ or (mode=3 and (departure_boards_detailed."ropidgtfs_precomputed_departures.pickup_type" != '1')) -- mode mixed
194
+ );
195
+ $$;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RunTripsRedisRepository = void 0;
4
+ const const_1 = require("../../../../schema-definitions/ropid-gtfs/redis/const");
4
5
  const GtfsRunTripCacheDtoSchema_1 = require("../../../../schema-definitions/vehicle-positions/redis/schemas/GtfsRunTripCacheDtoSchema");
5
6
  const RedisModel_1 = require("@golemio/core/dist/integration-engine/models/RedisModel");
6
7
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
@@ -15,5 +16,5 @@ class RunTripsRedisRepository extends RedisModel_1.RedisModel {
15
16
  }
16
17
  }
17
18
  exports.RunTripsRedisRepository = RunTripsRedisRepository;
18
- RunTripsRedisRepository.NAMESPACE_PREFIX = "gtfsRunSchedule";
19
+ RunTripsRedisRepository.NAMESPACE_PREFIX = const_1.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX;
19
20
  //# sourceMappingURL=RunTripsRedisRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RunTripsRedisRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/ropid-gtfs/data-access/cache/RunTripsRedisRepository.ts"],"names":[],"mappings":";;;AAAA,wIAA2G;AAC3G,wFAAqF;AACrF,mFAAkF;AAElF,MAAa,uBAAwB,SAAQ,uBAAU;IAGnD;QACI,KAAK,CACD,6BAA6B,EAC7B;YACI,kBAAkB,EAAE,IAAI,CAAC,KAAK;YAC9B,oBAAoB,EAAE,IAAI,CAAC,SAAS;YACpC,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,uBAAuB,CAAC,gBAAgB;SACnD,EACD,IAAI,uCAAmB,CAAC,sCAAsC,EAAE,qDAAyB,CAAC,CAC7F,CAAC;IACN,CAAC;;AAdL,0DAeC;AAdiB,wCAAgB,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"RunTripsRedisRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/ropid-gtfs/data-access/cache/RunTripsRedisRepository.ts"],"names":[],"mappings":";;;AAAA,iFAAiF;AACjF,wIAA2G;AAC3G,wFAAqF;AACrF,mFAAkF;AAElF,MAAa,uBAAwB,SAAQ,uBAAU;IAGnD;QACI,KAAK,CACD,6BAA6B,EAC7B;YACI,kBAAkB,EAAE,IAAI,CAAC,KAAK;YAC9B,oBAAoB,EAAE,IAAI,CAAC,SAAS;YACpC,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,uBAAuB,CAAC,gBAAgB;SACnD,EACD,IAAI,uCAAmB,CAAC,sCAAsC,EAAE,qDAAyB,CAAC,CAC7F,CAAC;IACN,CAAC;;AAdL,0DAeC;AAdiB,wCAAgB,GAAG,0CAAkC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PropagateTrainDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PropagateTrainDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.ts"],"names":[],"mappings":";;;AACA,sDAA2D;AAC3D,gGAAqF;AAErF,wEAAqE;AAErE,mEAAuF;AACvF,mEAAyD;AAGzD,mFAAqF;AACrF,sFAAmF;AAEnF,MAAa,uBAAwB,SAAQ,uDAAqD;IAU9F,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QAVP,cAAS,GAAG,qBAAqB,CAAC;QAClC,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;QACtC,WAAM,GAAG,0DAA8B,CAAC;QAgEhD,sBAAiB,GAAG,KAAK,EAC7B,aAAiC,EACjC,eAAuB,EACI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;gBAC5C,UAAU,EAAE,CAAC,cAAc,CAAC;gBAC5B,KAAK,EAAE;oBACH,aAAa,EAAE,aAAa;oBAC5B,eAAe,EAAE,EAAE,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE;iBAChD;gBACD,KAAK,EAAE,CAAC,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;gBACnC,GAAG,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,OAAO,IAAI,EAAE,YAAY,CAAC;QAC9B,CAAC,CAAC;QAtEE,IAAI,CAAC,MAAM,GAAG,gCAA0B,CAAC,OAAO,CAAU,qBAAS,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,CAAC,oBAAoB,GAAG,uBAAkB,CAAC,OAAO,CAClD,iDAAuB,CAAC,yBAAyB,CACpD,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,gCAA0B,CAAC,OAAO,CAAgB,qBAAS,CAAC,YAAY,CAAC,CAAC;QACxF,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CACnD,sEAAsE,EACtE,CAAC,CACM,CAAC;IAChB,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,KAAgC;QACpD,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE;YACvC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,2BAA2B,EAAE,eAAe,EAAE,aAAa,EAAE,GAC9F,gBAAgB,CAAC,IAAI,CAAC;YAC1B,IAAI;gBACA,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;gBAEpF,IAAI,CAAC,cAAc,EAAE;oBACjB,SAAS;iBACZ;gBACD,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,aAAc,CAAC,CAAsB,CAAC;gBAEhG,MAAM,mBAAmB,GAAG,YAAY,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;gBACpF,MAAM,iBAAiB,GAAG,YAAY,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;gBACjF,MAAM,yBAAyB,GAC3B,mBAAmB,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC;gBAErF,MAAM,IAAI,CAAC,yBAAyB,CAAC;oBACjC,iBAAiB,EAAE,YAAY;oBAC/B,kBAAkB,EAAE,aAAa,IAAI,IAAI;oBACzC,sBAAsB,EAAE,gBAAgB,CAAC,QAAQ,CAAC,eAAe;oBACjE,YAAY,EAAE,gBAAgB,CAAC,QAAQ,CAAC,cAAc;oBACtD,yBAAyB,EAAE,2BAA2B;oBACtD,gBAAgB,EAAE,eAAe;oBACjC,cAAc,EAAE,aAAc;oBAC9B,cAAc,EAAE,gBAAgB,CAAC,QAAQ,CAAC,OAAO;oBACjD,aAAa,EAAE,cAAc;wBACzB,CAAC,CAAC;4BACI;gCACI,OAAO,EAAE,cAAc;gCACvB,yBAAyB,EAAE,yBAAyB;6BACvD;yBACJ;wBACH,CAAC,CAAC,EAAE;iBACX,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,SAAS,oDAAoD,YAAY,MAAM,GAAG,CAAC,OAAO,EAAE,CACvG,CAAC;aACL;SACJ;IACL,CAAC;CAkBJ;AAnFD,0DAmFC"}
@@ -29,7 +29,7 @@ class V2DepartureBoardsController {
29
29
  : undefined;
30
30
  const span = (0, trace_provider_1.createChildSpan)("V2DepartureBoardsController.getDepartureBoard");
31
31
  try {
32
- const data = await this.departureBoardsModel.GetAll({
32
+ const data = await this.departureBoardsModel.getAll({
33
33
  aswIds: query.aswIds,
34
34
  cisIds: query.cisIds,
35
35
  gtfsIds: query.ids,
@@ -48,8 +48,6 @@ class V2DepartureBoardsController {
48
48
  includeMetroTrains: query.includeMetroTrains,
49
49
  airCondition: query.airCondition,
50
50
  });
51
- // allow access response Date header
52
- res.setHeader("access-control-expose-headers", "date");
53
51
  res.status(200).send(shared_1.RopidRouterUtils.mapObjectToDTOInstance(dto_1.DepartureBoardsResponseDTO, data));
54
52
  }
55
53
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"V2DepartureBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v2/V2DepartureBoardsController.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAkF;AAClF,kFAAiF;AACjF,4CAA8C;AAC9C,+FAA6F;AAE7F,gGAA2E;AAE3E,MAAa,2BAA2B;IAGpC;QAIO,sBAAiB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAChE,MAAM,KAAK,GAAG,yBAAgB,CAAC,sBAAsB,CAAC,6BAAuB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1F,MAAM,iBAAiB,GAAG,yBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAEzF,oDAAoD;YACpD,cAAc;YACd,uBAAuB;YACvB,0BAA0B;YAC1B,yBAAyB;YACzB,4BAA4B;YAC5B,MAAM,qBAAqB,GAAW,uDAAuD,CAAC;YAC9F,+DAA+D;YAC/D,MAAM,QAAQ,GAAuB,KAAK,CAAC,QAAQ;gBAC/C,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC;oBACzC,CAAC,CAAC,IAAA,yBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC;oBACxB,CAAC,CAAC,yBAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,+CAA+C,CAAC,CAAC;YAC9E,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;oBAChD,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,GAAG;oBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;oBAClC,QAAQ;oBACR,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;oBACjC,QAAQ,EAAE,iBAAiB;oBAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,YAAY,EAAE,KAAK,CAAC,YAAY;iBACnC,CAAC,CAAC;gBACH,oCAAoC;gBACpC,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;gBACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,yBAAgB,CAAC,sBAAsB,CAAC,gCAA0B,EAAE,IAAI,CAAC,CAAC,CAAC;aACnG;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;QAlDE,IAAI,CAAC,oBAAoB,GAAG,IAAI,iDAAuB,EAAE,CAAC;IAC9D,CAAC;CAkDJ;AAvDD,kEAuDC"}
1
+ {"version":3,"file":"V2DepartureBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v2/V2DepartureBoardsController.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAkF;AAClF,kFAAiF;AACjF,4CAA8C;AAC9C,+FAA6F;AAE7F,gGAA2E;AAE3E,MAAa,2BAA2B;IAGpC;QAIO,sBAAiB,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAChE,MAAM,KAAK,GAAG,yBAAgB,CAAC,sBAAsB,CAAC,6BAAuB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1F,MAAM,iBAAiB,GAAG,yBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAEzF,oDAAoD;YACpD,cAAc;YACd,uBAAuB;YACvB,0BAA0B;YAC1B,yBAAyB;YACzB,4BAA4B;YAC5B,MAAM,qBAAqB,GAAW,uDAAuD,CAAC;YAC9F,+DAA+D;YAC/D,MAAM,QAAQ,GAAuB,KAAK,CAAC,QAAQ;gBAC/C,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC;oBACzC,CAAC,CAAC,IAAA,yBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC;oBACxB,CAAC,CAAC,yBAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,+CAA+C,CAAC,CAAC;YAC9E,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;oBAChD,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,GAAG;oBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;oBAClC,QAAQ;oBACR,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;oBACjC,QAAQ,EAAE,iBAAiB;oBAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,YAAY,EAAE,KAAK,CAAC,YAAY;iBACnC,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,yBAAgB,CAAC,sBAAsB,CAAC,gCAA0B,EAAE,IAAI,CAAC,CAAC,CAAC;aACnG;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;oBAAS;gBACN,IAAI,EAAE,GAAG,EAAE,CAAC;aACf;QACL,CAAC,CAAC;QAhDE,IAAI,CAAC,oBAAoB,GAAG,IAAI,iDAAuB,EAAE,CAAC;IAC9D,CAAC;CAgDJ;AArDD,kEAqDC"}
@@ -9,5 +9,6 @@ export declare class V3TransferBoardsController {
9
9
  private transferFacade;
10
10
  constructor(stopFacade: StopFacade, infotextFacade: InfotextFacade, transferFacade: TransferFacade);
11
11
  getTransferDepartures: RequestHandler;
12
+ private recordBadRequestException;
12
13
  private isValidQueryStringParam;
13
14
  }
@@ -22,6 +22,7 @@ const StopFacade_1 = require("../../service/facade/StopFacade");
22
22
  const TransferFacade_1 = require("../../service/facade/TransferFacade");
23
23
  const RopidRouterUtils_1 = require("../../../shared/RopidRouterUtils");
24
24
  const trace_provider_1 = require("@golemio/core/dist/monitoring/opentelemetry/trace-provider");
25
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
25
26
  const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
26
27
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
27
28
  let V3TransferBoardsController = exports.V3TransferBoardsController = class V3TransferBoardsController {
@@ -32,11 +33,14 @@ let V3TransferBoardsController = exports.V3TransferBoardsController = class V3Tr
32
33
  this.getTransferDepartures = async (req, res, next) => {
33
34
  const span = (0, trace_provider_1.createChildSpan)("V3TransferBoardsController.getTransferDepartures");
34
35
  const cisId = req.query.cisId;
35
- const tripNumber = req.query.tripNumber;
36
+ const tripNumber = req.query.tripNumber ?? null;
36
37
  span?.setAttributes({ cisId, tripNumber });
37
38
  // Additional type check for query string parameters
38
- if (!this.isValidQueryStringParam(cisId) || !this.isValidQueryStringParam(tripNumber)) {
39
- return res.status(400).json({ error: "cisId and tripNumber are not valid" });
39
+ if (!this.isValidQueryStringParam(cisId)) {
40
+ return next(this.recordBadRequestException("cisId is not valid", span));
41
+ }
42
+ else if (tripNumber && !this.isValidQueryStringParam(tripNumber)) {
43
+ return next(this.recordBadRequestException("tripNumber is not valid", span));
40
44
  }
41
45
  const currentMoment = (0, moment_timezone_1.default)();
42
46
  let timeFrom = null;
@@ -90,6 +94,11 @@ let V3TransferBoardsController = exports.V3TransferBoardsController = class V3Tr
90
94
  span?.end();
91
95
  }
92
96
  };
97
+ this.recordBadRequestException = (errorMessage, span) => {
98
+ const exception = new golemio_errors_1.GeneralError(errorMessage, this.constructor.name, undefined, 400);
99
+ span?.recordException(exception);
100
+ return exception;
101
+ };
93
102
  this.isValidQueryStringParam = (param) => {
94
103
  return typeof param === "string";
95
104
  };
@@ -1 +1 @@
1
- {"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V3TransferBoardsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/controllers/v3/V3TransferBoardsController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { IPIDDeparture, IStop } from "..";
2
+ import type { IInfotextDepartureOutputDto } from "./InfotextInterfaces";
3
+ export interface IDepartureBoardOutputDto {
4
+ departures: IPIDDeparture[];
5
+ infotexts: IInfotextDepartureOutputDto[];
6
+ stops: IStop[];
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=DepartureInterfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DepartureInterfaces.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/domain/DepartureInterfaces.ts"],"names":[],"mappings":""}
@@ -33,6 +33,9 @@ export interface IPIDDeparture {
33
33
  departure_datetime_real: Date | null;
34
34
  real_wheelchair_accessible: boolean | null;
35
35
  is_canceled: boolean;
36
+ origin_route_name: string | null;
37
+ run_number: number | null;
38
+ "trip.start_timestamp": string | null;
36
39
  "trip.last_position.last_stop_id": string | null;
37
40
  "trip.last_position.last_stop_sequence": number | null;
38
41
  "trip.last_position.last_stop_name": string | null;
@@ -109,11 +112,6 @@ export interface IStop {
109
112
  stop_name: string;
110
113
  platform_code: string;
111
114
  }
112
- export interface IDepartureBoard {
113
- departures: IPIDDeparture[];
114
- infotexts: any[];
115
- stops: IStop[];
116
- }
117
115
  export interface IDepartureTime {
118
116
  predicted: string | null;
119
117
  scheduled: string | null;
@@ -139,6 +137,7 @@ export declare enum DepartureFilter {
139
137
  }
140
138
  export declare enum DepartureSkip {
141
139
  UNTRACKED = "untracked",
140
+ MISSING = "missing",
142
141
  CANCELED = "canceled",
143
142
  AT_STOP = "atStop"
144
143
  }
@@ -41,6 +41,7 @@ var DepartureFilter;
41
41
  var DepartureSkip;
42
42
  (function (DepartureSkip) {
43
43
  DepartureSkip["UNTRACKED"] = "untracked";
44
+ DepartureSkip["MISSING"] = "missing";
44
45
  DepartureSkip["CANCELED"] = "canceled";
45
46
  DepartureSkip["AT_STOP"] = "atStop";
46
47
  // ON_INFOTEXT = "onInfotext",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,4CAA0B;AAC1B,2CAAyB;AAoHzB,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,yCAAuB,CAAA;AAC3B,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,2CAAwB,CAAA;IACxB,0DAAuC,CAAA;IACvC,oDAAiC,CAAA;IACjC,mEAAgD,CAAA;IAChD,qEAAkD,CAAA;IAClD,8EAA2D,CAAA;AAC/D,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B;AAED,IAAY,aAKX;AALD,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;IACrB,mCAAkB,CAAA;IAClB,8BAA8B;AAClC,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,4CAA0B;AAC1B,2CAAyB;AAiHzB,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,0CAAyB,CAAA;IACzB,sCAAqB,CAAA;IACrB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,yCAAuB,CAAA;AAC3B,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,2CAAwB,CAAA;IACxB,0DAAuC,CAAA;IACvC,oDAAiC,CAAA;IACjC,mEAAgD,CAAA;IAChD,qEAAkD,CAAA;IAClD,8EAA2D,CAAA;AAC/D,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B;AAED,IAAY,aAMX;AAND,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;IACrB,mCAAkB,CAAA;IAClB,8BAA8B;AAClC,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB"}