@golemio/pid 2.12.7-dev.1251029053 → 2.12.7-dev.1258558366
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/migrations/postgresql/20240417152451-view-stop-times-combined.js +51 -0
- package/db/migrations/postgresql/sqls/20240417152451-view-stop-times-combined-down.sql +26 -0
- package/db/migrations/postgresql/sqls/20240417152451-view-stop-times-combined-up.sql +33 -0
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js +5 -11
- package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.js +1 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/public-api/PublicCacheTripsFilter.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/public-api/PublicCacheTripsFilter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js +6 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.d.ts +10 -0
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js +28 -0
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.d.ts +10 -0
- package/package.json +2 -2
|
@@ -0,0 +1,51 @@
|
|
|
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", "20240417152451-view-stop-times-combined-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
|
+
}).then(function (data) {
|
|
31
|
+
return db.runSql(data);
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
exports.down = function (db) {
|
|
36
|
+
var filePath = path.join(__dirname, "sqls", "20240417152451-view-stop-times-combined-down.sql");
|
|
37
|
+
return new Promise(function (resolve, reject) {
|
|
38
|
+
fs.readFile(filePath, { encoding: "utf-8" }, function (err, data) {
|
|
39
|
+
if (err) return reject(err);
|
|
40
|
+
console.log("received data: " + data);
|
|
41
|
+
|
|
42
|
+
resolve(data);
|
|
43
|
+
});
|
|
44
|
+
}).then(function (data) {
|
|
45
|
+
return db.runSql(data);
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
exports._meta = {
|
|
50
|
+
version: 1,
|
|
51
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
-- combined view
|
|
2
|
+
drop view v_public_vehiclepositions_combined_stop_times;
|
|
3
|
+
|
|
4
|
+
create view v_public_vehiclepositions_combined_stop_times as
|
|
5
|
+
select distinct on (rt_trip_id, stop_sequence)
|
|
6
|
+
stop_times.rt_trip_id,
|
|
7
|
+
vt.gtfs_trip_id,
|
|
8
|
+
stop_times.stop_sequence,
|
|
9
|
+
stop_times.stop_arr_delay,
|
|
10
|
+
stop_times.stop_dep_delay
|
|
11
|
+
from (
|
|
12
|
+
select
|
|
13
|
+
*
|
|
14
|
+
from
|
|
15
|
+
v_public_vehiclepositions_future_stop_times prediction
|
|
16
|
+
union all
|
|
17
|
+
select
|
|
18
|
+
*
|
|
19
|
+
from
|
|
20
|
+
v_public_vehiclepositions_past_stop_times history
|
|
21
|
+
) as stop_times
|
|
22
|
+
join vehiclepositions_trips vt on vt.id = stop_times.rt_trip_id
|
|
23
|
+
join vehiclepositions_positions vp on vt.last_position_id = vp.id and (vp.valid_to is null or vp.valid_to >= now()) and vp.state_position != 'after_track'
|
|
24
|
+
order by
|
|
25
|
+
rt_trip_id,
|
|
26
|
+
stop_sequence;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
-- combined view
|
|
2
|
+
drop view v_public_vehiclepositions_combined_stop_times;
|
|
3
|
+
|
|
4
|
+
create view v_public_vehiclepositions_combined_stop_times as
|
|
5
|
+
select distinct on (rt_trip_id, stop_sequence)
|
|
6
|
+
stop_times.rt_trip_id,
|
|
7
|
+
vt.gtfs_trip_id,
|
|
8
|
+
stop_times.stop_sequence,
|
|
9
|
+
stop_times.stop_arr_delay,
|
|
10
|
+
stop_times.stop_dep_delay,
|
|
11
|
+
vt.gtfs_route_type,
|
|
12
|
+
vt.gtfs_route_short_name,
|
|
13
|
+
vt.run_number,
|
|
14
|
+
vt.internal_run_number,
|
|
15
|
+
vt.provider_source_type,
|
|
16
|
+
vt.cis_trip_number,
|
|
17
|
+
vt.vehicle_registration_number
|
|
18
|
+
from (
|
|
19
|
+
select
|
|
20
|
+
*
|
|
21
|
+
from
|
|
22
|
+
v_public_vehiclepositions_future_stop_times prediction
|
|
23
|
+
union all
|
|
24
|
+
select
|
|
25
|
+
*
|
|
26
|
+
from
|
|
27
|
+
v_public_vehiclepositions_past_stop_times history
|
|
28
|
+
) as stop_times
|
|
29
|
+
join vehiclepositions_trips vt on vt.id = stop_times.rt_trip_id
|
|
30
|
+
join vehiclepositions_positions vp on vt.last_position_id = vp.id and (vp.valid_to is null or vp.valid_to >= now()) and vp.state_position != 'after_track'
|
|
31
|
+
order by
|
|
32
|
+
rt_trip_id,
|
|
33
|
+
stop_sequence;
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { GTFSRouteTypeEnum } from "../../../../../helpers/RouteTypeEnums";
|
|
2
2
|
import { ProviderSourceTypeEnum } from "../../vehicle-positions/helpers/ProviderSourceTypeEnum";
|
|
3
3
|
export declare class VehicleIdGenerator {
|
|
4
|
-
getVehicleId(trip_id: string, gtfs_route_type: GTFSRouteTypeEnum, provider_source_type: ProviderSourceTypeEnum, gtfs_route_short_name: string | null, cis_trip_number: number | null, vehicle_registration_number: number | null, run_number: number | null, internal_run_number: number | null): string;
|
|
4
|
+
getVehicleId(trip_id: string, gtfs_route_type: GTFSRouteTypeEnum | null, provider_source_type: ProviderSourceTypeEnum, gtfs_route_short_name: string | null, cis_trip_number: number | null, vehicle_registration_number: number | null, run_number: number | null, internal_run_number: number | null): string;
|
|
5
5
|
}
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VehicleIdGenerator.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.ts"],"names":[],"mappings":";;;AAAA,0EAA+D;AAC/D,mGAAwH;AAExH,MAAa,kBAAkB;IACpB,YAAY,CACf,OAAe,EACf,
|
|
1
|
+
{"version":3,"file":"VehicleIdGenerator.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleIdGenerator.ts"],"names":[],"mappings":";;;AAAA,0EAA+D;AAC/D,mGAAwH;AAExH,MAAa,kBAAkB;IACpB,YAAY,CACf,OAAe,EACf,eAAyC,EACzC,oBAA4C,EAC5C,qBAAoC,EACpC,eAA8B,EAC9B,2BAA0C,EAC1C,UAAyB,EACzB,mBAAkC;QAElC,IAAI,eAAe,KAAK,kCAAiB,CAAC,KAAK,EAAE;YAC7C,OAAO,QAAQ,GAAG,eAAe,CAAC;SACrC;QAED,IAAI,eAAe,KAAK,kCAAiB,CAAC,KAAK,EAAE;YAC7C,OAAO,SAAS,qBAAqB,IAAI,mBAAmB,IAAI,UAAU,EAAE,CAAC;SAChF;QAED,IAAI,oBAAoB,KAAK,+CAAsB,CAAC,cAAc,EAAE;YAChE,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YAClD,OAAO,WAAW,eAAe,IAAI,cAAc,EAAE,CAAC;SACzD;QAED,OAAO,UAAU,GAAG,eAAe,GAAG,GAAG,GAAG,2BAA2B,CAAC;IAC5E,CAAC;CACJ;AA1BD,gDA0BC"}
|
package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js
CHANGED
|
@@ -52,16 +52,8 @@ class GenerateFilesTask extends workers_1.AbstractEmptyTask {
|
|
|
52
52
|
const updatesMessage = ovapi_gtfs_realtime_bindings_1.transit_realtime.FeedMessage.create({ header: feedHeader });
|
|
53
53
|
const positionsMessage = ovapi_gtfs_realtime_bindings_1.transit_realtime.FeedMessage.create({ header: feedHeader });
|
|
54
54
|
const pidFeedMessage = ovapi_gtfs_realtime_bindings_1.transit_realtime.FeedMessage.create({ header: feedHeader });
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
return acc;
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
acc[current.gtfs_trip_id] = current;
|
|
61
|
-
return acc;
|
|
62
|
-
}
|
|
63
|
-
}, {});
|
|
64
|
-
for (const tripRecord of Object.values(tripDataMapNoDuplicate)) {
|
|
55
|
+
const gtfsTripIdMap = {};
|
|
56
|
+
for (const tripRecord of Object.values(tripData)) {
|
|
65
57
|
const tripDescriptor = {
|
|
66
58
|
scheduleRelationship: tripRecord.last_position.is_canceled
|
|
67
59
|
? ovapi_gtfs_realtime_bindings_1.transit_realtime.TripDescriptor.ScheduleRelationship.CANCELED
|
|
@@ -94,7 +86,8 @@ class GenerateFilesTask extends workers_1.AbstractEmptyTask {
|
|
|
94
86
|
// single feed for trip updates and vehicle positions
|
|
95
87
|
const feedMessageEntity = structuredClone(positionsMessageEntity);
|
|
96
88
|
const stopTimeUpdates = this.generateStopTimeUpdate(tripRecord.stop_times, tripRecord.gtfs_route_type);
|
|
97
|
-
const shouldSkipTripUpdate = stopTimeUpdates.every((el) => el.scheduleRelationship === ovapi_gtfs_realtime_bindings_1.transit_realtime.TripUpdate.StopTimeUpdate.ScheduleRelationship.NO_DATA
|
|
89
|
+
const shouldSkipTripUpdate = stopTimeUpdates.every((el) => el.scheduleRelationship === ovapi_gtfs_realtime_bindings_1.transit_realtime.TripUpdate.StopTimeUpdate.ScheduleRelationship.NO_DATA ||
|
|
90
|
+
gtfsTripIdMap[tripRecord.gtfs_trip_id]);
|
|
98
91
|
if (!shouldSkipTripUpdate) {
|
|
99
92
|
const updateEntity = {
|
|
100
93
|
id: tripRecord.id,
|
|
@@ -109,6 +102,7 @@ class GenerateFilesTask extends workers_1.AbstractEmptyTask {
|
|
|
109
102
|
updatesMessage.entity.push(updatesMessageEntity);
|
|
110
103
|
// single feed for trip updates and vehicle positions
|
|
111
104
|
feedMessageEntity.tripUpdate = updatesMessageEntity.tripUpdate;
|
|
105
|
+
gtfsTripIdMap[tripRecord.gtfs_trip_id] = true;
|
|
112
106
|
}
|
|
113
107
|
pidFeedMessage.entity.push(feedMessageEntity);
|
|
114
108
|
}
|
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,0EAA4D;AAC5D,uDAAkF;AAClF,wCAA2D;AAC3D,yFAA8G;AAG9G,mEAA2E;AAC3E,2EAAkF;AAClF,wFAAyF;AACzF,gFAA6E;AAC7E,gEAA6D;AAC7D,oEAAiE;AACjE,4CAA8C;AAK9C,MAAa,iBAAkB,SAAQ,2BAAiB;IAUpD,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QAVP,cAAS,GAAG,eAAe,CAAC;QAC5B,aAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;QAU/C,IAAI,CAAC,MAAM,GAAG,gBAAW,CAAC,OAAO,CAAU,oBAAc,CAAC,MAAM,CAAC,CAAC;QAElE,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;YACjF,MAAM,cAAc,GAAG,+CAAY,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAE/E,MAAM,
|
|
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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"}
|
|
@@ -38,12 +38,7 @@ let PublicStopTimeRepository = exports.PublicStopTimeRepository = class PublicSt
|
|
|
38
38
|
}
|
|
39
39
|
findAll() {
|
|
40
40
|
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
-
return this.sequelizeModel.findAll({
|
|
42
|
-
attributes: {
|
|
43
|
-
exclude: ["rt_trip_id"],
|
|
44
|
-
},
|
|
45
|
-
raw: true,
|
|
46
|
-
});
|
|
41
|
+
return this.sequelizeModel.findAll({ raw: true });
|
|
47
42
|
});
|
|
48
43
|
}
|
|
49
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicStopTimeRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,sEAAuC;AACvC,+FAA0E;AAE1E,yEAAqF;AACrF,mFAAkF;AAElF,iEAAgE;AAGzD,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,sBAAa;IAGvD;QACI,KAAK,CACD,0BAA0B,EAC1B;YACI,WAAW,EAAE,2BAAmB,CAAC,SAAS;YAC1C,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,2BAAmB,CAAC,cAAc;YAC7D,UAAU,EAAE,YAAY;YACxB,2BAA2B,EAAE;gBACzB,UAAU,EAAE,KAAK;aACpB;SACJ,EACD,IAAI,uCAAmB,CAAC,wBAAwB,EAAE,EAAE,CAAC,CACxD,CAAC;IACN,CAAC;IAEY,OAAO;;YAChB,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"PublicStopTimeRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,sEAAuC;AACvC,+FAA0E;AAE1E,yEAAqF;AACrF,mFAAkF;AAElF,iEAAgE;AAGzD,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,sBAAa;IAGvD;QACI,KAAK,CACD,0BAA0B,EAC1B;YACI,WAAW,EAAE,2BAAmB,CAAC,SAAS;YAC1C,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,2BAAmB,CAAC,cAAc;YAC7D,UAAU,EAAE,YAAY;YACxB,2BAA2B,EAAE;gBACzB,UAAU,EAAE,KAAK;aACpB;SACJ,EACD,IAAI,uCAAmB,CAAC,wBAAwB,EAAE,EAAE,CAAC,CACxD,CAAC;IACN,CAAC;IAEY,OAAO;;YAChB,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;KAAA;CACJ,CAAA;mCAtBY,wBAAwB;IADpC,IAAA,qBAAU,GAAE;;GACA,wBAAwB,CAsBpC"}
|
|
@@ -9,7 +9,7 @@ class PublicCacheTripsFilter {
|
|
|
9
9
|
const tripsByVehicleId = new Map();
|
|
10
10
|
for (let i = 0; i < trips.length; i++) {
|
|
11
11
|
const trip = trips[i];
|
|
12
|
-
const vehicleId = (_b = (_a = trip.vehicle_registration_number) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : trip.gtfs_trip_id
|
|
12
|
+
const vehicleId = (_b = (_a = trip.vehicle_registration_number) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : `${trip.run_number ? `${trip.gtfs_trip_id}_${trip.run_number}` : `${trip.gtfs_trip_id}`}`;
|
|
13
13
|
const knownTrip = tripsByVehicleId.get(vehicleId);
|
|
14
14
|
if (knownTrip) {
|
|
15
15
|
if (trip.state_position !== const_1.StatePositionEnum.CANCELED && trip.updated_at < knownTrip.updated_at) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicCacheTripsFilter.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/public-api/PublicCacheTripsFilter.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAE9C,MAAa,sBAAsB;IACxB,MAAM,CAAC,sBAAsB,CAAC,KAAkC;;QACnE,MAAM,aAAa,GAAgC,EAAE,CAAC;QACtD,MAAM,gBAAgB,GAA2C,IAAI,GAAG,EAAE,CAAC;QAE3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEtB,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"PublicCacheTripsFilter.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/public-api/PublicCacheTripsFilter.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAE9C,MAAa,sBAAsB;IACxB,MAAM,CAAC,sBAAsB,CAAC,KAAkC;;QACnE,MAAM,aAAa,GAAgC,EAAE,CAAC;QACtD,MAAM,gBAAgB,GAA2C,IAAI,GAAG,EAAE,CAAC;QAE3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEtB,MAAM,SAAS,GACX,MAAA,MAAA,IAAI,CAAC,2BAA2B,0CAAE,QAAQ,EAAE,mCAC5C,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YAC9F,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAElD,IAAI,SAAS,EAAE;gBACX,IAAI,IAAI,CAAC,cAAc,KAAK,yBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE;oBAC9F,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;iBACzC;aACJ;iBAAM;gBACH,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aACzC;SACJ;QAED,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE;YAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3E,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ;AAzBD,wDAyBC"}
|
|
@@ -13,6 +13,7 @@ export declare class RefreshPublicStopTimeCacheTask extends AbstractEmptyTask {
|
|
|
13
13
|
readonly queueTtl = 10000;
|
|
14
14
|
private lockTimeout;
|
|
15
15
|
private refreshInterval;
|
|
16
|
+
private vehicleIdGenerator;
|
|
16
17
|
constructor(config: ISimpleConfig, logger: ILogger, redisClient: IoRedisConnector, publicStopTimeRepository: PublicStopTimeRepository, publicStopTimeCacheRepository: PublicStopTimeCacheRepository);
|
|
17
18
|
protected execute(): Promise<void>;
|
|
18
19
|
private createMutex;
|
|
@@ -36,6 +36,7 @@ const constants_1 = require("../constants");
|
|
|
36
36
|
const PublicStopTimeCacheRepository_1 = require("../data-access/cache/PublicStopTimeCacheRepository");
|
|
37
37
|
const PublicStopTimeRepository_1 = require("../data-access/views/PublicStopTimeRepository");
|
|
38
38
|
const VPUtils_1 = require("../helpers/VPUtils");
|
|
39
|
+
const VehicleIdGenerator_1 = require("../../gtfs-rt/helpers/VehicleIdGenerator");
|
|
39
40
|
let RefreshPublicStopTimeCacheTask = exports.RefreshPublicStopTimeCacheTask = class RefreshPublicStopTimeCacheTask extends workers_1.AbstractEmptyTask {
|
|
40
41
|
constructor(config, logger, redisClient, publicStopTimeRepository, publicStopTimeCacheRepository) {
|
|
41
42
|
super(constants_1.WORKER_NAME);
|
|
@@ -47,6 +48,7 @@ let RefreshPublicStopTimeCacheTask = exports.RefreshPublicStopTimeCacheTask = cl
|
|
|
47
48
|
this.queueTtl = 10000; // 10s
|
|
48
49
|
this.lockTimeout = config.getValue("old.datasources.pid.vehicle-positions.publicCache.mutexLockStopTimeTimeout", 6000); // default 6s
|
|
49
50
|
this.refreshInterval = this.lockTimeout * 0.8;
|
|
51
|
+
this.vehicleIdGenerator = new VehicleIdGenerator_1.VehicleIdGenerator();
|
|
50
52
|
}
|
|
51
53
|
execute() {
|
|
52
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -64,10 +66,11 @@ let RefreshPublicStopTimeCacheTask = exports.RefreshPublicStopTimeCacheTask = cl
|
|
|
64
66
|
}
|
|
65
67
|
const data = new Map();
|
|
66
68
|
for (const stopTime of stopTimes) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
+
const vehicleId = this.vehicleIdGenerator.getVehicleId(stopTime.rt_trip_id, stopTime.gtfs_route_type, stopTime.provider_source_type, stopTime.gtfs_route_short_name, stopTime.cis_trip_number, stopTime.vehicle_registration_number, stopTime.run_number, stopTime.internal_run_number);
|
|
70
|
+
if (!data.has(vehicleId)) {
|
|
71
|
+
data.set(vehicleId, []);
|
|
69
72
|
}
|
|
70
|
-
data.get(
|
|
73
|
+
data.get(vehicleId).push({
|
|
71
74
|
sequence: stopTime.stop_sequence,
|
|
72
75
|
arr_delay: stopTime.stop_arr_delay,
|
|
73
76
|
dep_delay: stopTime.stop_dep_delay,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshPublicStopTimeCacheTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA8E;AAG9E,oGAAiG;AACjG,wEAAqE;AAErE,8EAAqE;AACrE,mEAA2E;AAC3E,2EAAkF;AAClF,6EAA8F;AAC9F,+EAAkE;AAClE,iEAAwE;AACxE,mDAA2D;AAC3D,4CAA2C;AAC3C,sGAAmG;AACnG,4FAAyF;AACzF,gDAA6C;
|
|
1
|
+
{"version":3,"file":"RefreshPublicStopTimeCacheTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
|
|
2
2
|
import { IPublicStopTimeDto } from "./interfaces/IPublicStopTimeDto";
|
|
3
|
+
import { GTFSRouteTypeEnum } from "../../../../helpers/RouteTypeEnums";
|
|
4
|
+
import { ProviderSourceTypeEnum } from "../../../../integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum";
|
|
3
5
|
export declare class PublicStopTimeModel extends Model<PublicStopTimeModel> implements IPublicStopTimeDto {
|
|
4
6
|
static tableName: string;
|
|
7
|
+
rt_trip_id: string;
|
|
5
8
|
gtfs_trip_id: string;
|
|
6
9
|
stop_sequence: number;
|
|
7
10
|
stop_arr_delay: number | null;
|
|
8
11
|
stop_dep_delay: number | null;
|
|
12
|
+
gtfs_route_type: GTFSRouteTypeEnum | null;
|
|
13
|
+
gtfs_route_short_name: string | null;
|
|
14
|
+
run_number: number | null;
|
|
15
|
+
internal_run_number: number | null;
|
|
16
|
+
provider_source_type: ProviderSourceTypeEnum;
|
|
17
|
+
cis_trip_number: number | null;
|
|
18
|
+
vehicle_registration_number: number | null;
|
|
9
19
|
static attributeModel: ModelAttributes<PublicStopTimeModel>;
|
|
10
20
|
}
|
|
@@ -29,5 +29,33 @@ PublicStopTimeModel.attributeModel = {
|
|
|
29
29
|
type: sequelize_1.DataTypes.INTEGER,
|
|
30
30
|
allowNull: true,
|
|
31
31
|
},
|
|
32
|
+
gtfs_route_type: {
|
|
33
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
34
|
+
allowNull: true,
|
|
35
|
+
},
|
|
36
|
+
gtfs_route_short_name: {
|
|
37
|
+
type: sequelize_1.DataTypes.STRING,
|
|
38
|
+
allowNull: true,
|
|
39
|
+
},
|
|
40
|
+
run_number: {
|
|
41
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
42
|
+
allowNull: true,
|
|
43
|
+
},
|
|
44
|
+
internal_run_number: {
|
|
45
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
46
|
+
allowNull: true,
|
|
47
|
+
},
|
|
48
|
+
provider_source_type: {
|
|
49
|
+
type: sequelize_1.DataTypes.STRING(1),
|
|
50
|
+
allowNull: false,
|
|
51
|
+
},
|
|
52
|
+
cis_trip_number: {
|
|
53
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
54
|
+
allowNull: true,
|
|
55
|
+
},
|
|
56
|
+
vehicle_registration_number: {
|
|
57
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
58
|
+
allowNull: true,
|
|
59
|
+
},
|
|
32
60
|
};
|
|
33
61
|
//# sourceMappingURL=PublicStopTimeModel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicStopTimeModel.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.ts"],"names":[],"mappings":";;;AAAA,mEAAwF;
|
|
1
|
+
{"version":3,"file":"PublicStopTimeModel.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.ts"],"names":[],"mappings":";;;AAAA,mEAAwF;AAKxF,MAAa,mBAAoB,SAAQ,iBAA0B;;AAAnE,kDAoEC;AAnEiB,6BAAS,GAAG,+CAA+C,CAAC;AAe5D,kCAAc,GAAyC;IACjE,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;KACnB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,qBAAqB,EAAE;QACnB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,IAAI;KAClB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,mBAAmB,EAAE;QACjB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACzB,SAAS,EAAE,KAAK;KACnB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;IACD,2BAA2B,EAAE;QACzB,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;KAClB;CACJ,CAAC"}
|
package/dist/schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.d.ts
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
|
+
import { GTFSRouteTypeEnum } from "../../../../../helpers/RouteTypeEnums";
|
|
2
|
+
import { ProviderSourceTypeEnum } from "../../../../../integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum";
|
|
1
3
|
export interface IPublicStopTimeDto {
|
|
4
|
+
rt_trip_id: string;
|
|
2
5
|
gtfs_trip_id: string;
|
|
3
6
|
stop_sequence: number;
|
|
4
7
|
stop_arr_delay: number | null;
|
|
5
8
|
stop_dep_delay: number | null;
|
|
9
|
+
gtfs_route_type: GTFSRouteTypeEnum | null;
|
|
10
|
+
gtfs_route_short_name: string | null;
|
|
11
|
+
run_number: number | null;
|
|
12
|
+
internal_run_number: number | null;
|
|
13
|
+
provider_source_type: ProviderSourceTypeEnum;
|
|
14
|
+
cis_trip_number: number | null;
|
|
15
|
+
vehicle_registration_number: number | null;
|
|
6
16
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/pid",
|
|
3
|
-
"version": "2.12.7-dev.
|
|
3
|
+
"version": "2.12.7-dev.1258558366",
|
|
4
4
|
"description": "Golemio PID Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@golemio/core": ">=1.9.16"
|
|
78
78
|
},
|
|
79
79
|
"dependencies": {
|
|
80
|
-
"@golemio/ovapi-gtfs-realtime-bindings": "1.2.
|
|
80
|
+
"@golemio/ovapi-gtfs-realtime-bindings": "1.2.2",
|
|
81
81
|
"@turf/turf": "^6.5.0",
|
|
82
82
|
"cheap-ruler": "^3.0.2",
|
|
83
83
|
"csv-parser": "^3.0.0",
|