@golemio/pid 2.12.2 → 2.12.3-dev.1227676751
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/12_metro_line_A_gtfs_trips.sql +0 -5
- package/db/example/18_metroRailtrack.sql +369 -0
- package/db/migrations/postgresql/20240313100420-fix-gtfs-timestamp-dst.js +53 -0
- package/db/migrations/postgresql/sqls/20240313100420-fix-gtfs-timestamp-dst-down.sql +17 -0
- package/db/migrations/postgresql/sqls/20240313100420-fix-gtfs-timestamp-dst-up.sql +23 -0
- package/dist/helpers/RouteTypeEnums.d.ts +1 -0
- package/dist/helpers/RouteTypeEnums.js +1 -0
- package/dist/helpers/RouteTypeEnums.js.map +1 -1
- package/dist/input-gateway/vehicle-positions/VehiclePositionsController.d.ts +5 -2
- package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js +25 -5
- package/dist/input-gateway/vehicle-positions/VehiclePositionsController.js.map +1 -1
- package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js +4 -4
- package/dist/integration-engine/data-retention/helpers/SelectRepositoryFactory.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js +6 -43
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/SaveMetroRailtrackDataToDBTask.js +4 -0
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/SaveMetroRailtrackDataToDBTask.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js +16 -3
- package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.d.ts +1 -0
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js +3 -1
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/Di.js +16 -0
- package/dist/integration-engine/vehicle-positions/ioc/Di.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.d.ts +7 -0
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js +13 -0
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.js +12 -0
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.d.ts +1 -4
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.js +5 -21
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/regional-bus/RegionalBusMessageFilter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js +1 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.d.ts +4 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +51 -44
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js +35 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.d.ts +9 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.js +59 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/domain/service/IGtfsTripDataFixerFactory.d.ts +5 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/domain/service/IGtfsTripDataFixerFactory.js +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/domain/service/IGtfsTripDataFixerFactory.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.d.ts +21 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.js +44 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DateTimeUtils.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js +13 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.d.ts +7 -18
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js +27 -74
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js +14 -10
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/GtfsTripDataFixerFactory.d.ts +8 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/GtfsTripDataFixerFactory.js +38 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/GtfsTripDataFixerFactory.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/AbstractGtfsTripDataFixer.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/AbstractGtfsTripDataFixer.js +7 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/AbstractGtfsTripDataFixer.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/HttpGtfsTripDataFixer.d.ts +8 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/HttpGtfsTripDataFixer.js +58 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-data/strategy/HttpGtfsTripDataFixer.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.d.ts +12 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.js +121 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/mpv-net/MpvStopParser.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.d.ts +0 -10
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js +7 -24
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/SaveDataToDBSchema.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshGtfsTripDataTask.d.ts +12 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshGtfsTripDataTask.js +42 -7
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshGtfsTripDataTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.d.ts +4 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js +87 -31
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +7 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.d.ts +4 -7
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.js +19 -25
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/MpvMessageTransformation.js.map +1 -1
- package/dist/output-gateway/departure-boards/DepartureBoardsRouter.js +11 -17
- package/dist/output-gateway/departure-boards/DepartureBoardsRouter.js.map +1 -1
- package/dist/output-gateway/pid/PIDRouter.js +15 -15
- package/dist/output-gateway/pid/PIDRouter.js.map +1 -1
- package/dist/output-gateway/public/routers/v1/PublicRouter.js +4 -3
- package/dist/output-gateway/public/routers/v1/PublicRouter.js.map +1 -1
- package/dist/output-gateway/ropid-gtfs/GTFSRouter.js +19 -22
- package/dist/output-gateway/ropid-gtfs/GTFSRouter.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js +12 -12
- package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js.map +1 -1
- package/dist/{integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/MpvMessageInterfaces.js → schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces.js} +1 -1
- package/dist/schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces.js.map +1 -0
- package/docs/openapi-input.yaml +1 -1
- package/package.json +4 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/MpvMessageInterfaces.js.map +0 -1
- /package/dist/{integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/MpvMessageInterfaces.d.ts → schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces.d.ts} +0 -0
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.MetroShapePointsFixer = void 0;
|
|
25
|
+
const GeoMeasurementHelper_1 = require("../../../../../../helpers/geo/GeoMeasurementHelper");
|
|
26
|
+
const ModuleContainerToken_1 = require("../../../../../ioc/ModuleContainerToken");
|
|
27
|
+
const VPContainerToken_1 = require("../../../../ioc/VPContainerToken");
|
|
28
|
+
const MetroRouteHelper_1 = require("../../../runs/helpers/MetroRouteHelper");
|
|
29
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
30
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
31
|
+
const CachedMetroRailtrackLookup_1 = require("../../data-access/metro/CachedMetroRailtrackLookup");
|
|
32
|
+
let MetroShapePointsFixer = exports.MetroShapePointsFixer = class MetroShapePointsFixer {
|
|
33
|
+
constructor(cachedMetroRailTrackLookup, geoMeasurementHelper) {
|
|
34
|
+
this.cachedMetroRailTrackLookup = cachedMetroRailTrackLookup;
|
|
35
|
+
this.geoMeasurementHelper = geoMeasurementHelper;
|
|
36
|
+
}
|
|
37
|
+
fix(data) {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
try {
|
|
40
|
+
const clonedData = structuredClone(data);
|
|
41
|
+
// load metro obvody
|
|
42
|
+
const metroRailtrackLookup = yield this.cachedMetroRailTrackLookup.getAllByRouteName(MetroRouteHelper_1.MetroRouteHelper.getRouteName(data.trip_id));
|
|
43
|
+
let lastKnownStopSequence = null;
|
|
44
|
+
const maxStopSequence = clonedData.stop_times.length;
|
|
45
|
+
for (let index = 0; index < clonedData.shapes_anchor_points.length; index++) {
|
|
46
|
+
const shape = clonedData.shapes_anchor_points[index];
|
|
47
|
+
const possibleStops = this.getPossibleStops(clonedData.stop_times, lastKnownStopSequence);
|
|
48
|
+
const closestMetroRailtrack = this.getClosestMetroRailtrack(shape, metroRailtrackLookup, possibleStops);
|
|
49
|
+
const thisStopSequence = this.getSequenceByStopId(closestMetroRailtrack.gtfs_stop_id, clonedData.stop_times);
|
|
50
|
+
if (thisStopSequence) {
|
|
51
|
+
lastKnownStopSequence = thisStopSequence;
|
|
52
|
+
}
|
|
53
|
+
shape.at_stop = closestMetroRailtrack.gtfs_stop_id && thisStopSequence ? true : false;
|
|
54
|
+
shape.this_stop_sequence = thisStopSequence;
|
|
55
|
+
shape.next_stop_sequence = lastKnownStopSequence ? Math.min(lastKnownStopSequence + 1, maxStopSequence) : 2;
|
|
56
|
+
shape.last_stop_sequence = lastKnownStopSequence && lastKnownStopSequence > 1 ? lastKnownStopSequence : 1;
|
|
57
|
+
if (shape.at_stop) {
|
|
58
|
+
shape.last_stop_sequence = shape.this_stop_sequence;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return clonedData;
|
|
62
|
+
}
|
|
63
|
+
catch (err) {
|
|
64
|
+
throw new golemio_errors_1.GeneralError("Unable to fix metro shape points: " + err.message, this.constructor.name, err);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
getSequenceByStopId(gtfs_stop_id, stop_times) {
|
|
69
|
+
var _a, _b, _c;
|
|
70
|
+
const regex = /U(?<node>.*)Z/;
|
|
71
|
+
const node = (_b = (_a = regex.exec(gtfs_stop_id || "")) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.node;
|
|
72
|
+
if (node && node.length > 0) {
|
|
73
|
+
return ((_c = stop_times.find((stop_time) => { var _a, _b; return ((_b = (_a = regex.exec(stop_time.stop_id)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.node) === node; })) === null || _c === void 0 ? void 0 : _c.stop_sequence) || null;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
getClosestMetroRailtrack(shape, metroRailtrackLookup, possibleStops) {
|
|
80
|
+
// find closest metroRailtrack for shape.coordinates
|
|
81
|
+
const result = metroRailtrackLookup
|
|
82
|
+
.map((metroRailtrack) => {
|
|
83
|
+
return Object.assign(Object.assign({}, metroRailtrack), { distance: this.geoMeasurementHelper.getDistanceInMeters(shape.coordinates, metroRailtrack.coordinates.coordinates) });
|
|
84
|
+
})
|
|
85
|
+
.sort((a, b) => a.distance - b.distance);
|
|
86
|
+
const resultsWithing15Meters = result.filter((el) => el.distance < 15);
|
|
87
|
+
if (resultsWithing15Meters.length > 0) {
|
|
88
|
+
for (const railtrack of resultsWithing15Meters) {
|
|
89
|
+
if (possibleStops.some((el) => el === railtrack.gtfs_stop_id)) {
|
|
90
|
+
return railtrack;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return resultsWithing15Meters[0];
|
|
94
|
+
}
|
|
95
|
+
// if no railtrack is within 15 meters, return closest railtrack without stop_id
|
|
96
|
+
return result.filter((el) => !el.gtfs_stop_id)[0];
|
|
97
|
+
}
|
|
98
|
+
getPossibleStops(stopTimes, lastKnownStopSequence) {
|
|
99
|
+
// since we dont know direction for railtrack data, we check concrete stops in one direction
|
|
100
|
+
// to ensure proper matching with shape
|
|
101
|
+
const result = [];
|
|
102
|
+
if (lastKnownStopSequence === null) {
|
|
103
|
+
result.push(stopTimes[0].stop_id);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
result.push(stopTimes[lastKnownStopSequence - 1].stop_id);
|
|
107
|
+
if (lastKnownStopSequence < stopTimes.length) {
|
|
108
|
+
result.push(stopTimes[lastKnownStopSequence].stop_id);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
exports.MetroShapePointsFixer = MetroShapePointsFixer = __decorate([
|
|
115
|
+
(0, tsyringe_1.injectable)(),
|
|
116
|
+
__param(0, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.CachedMetroRailTrackLookup)),
|
|
117
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.GeoMeasurementHelper)),
|
|
118
|
+
__metadata("design:paramtypes", [CachedMetroRailtrackLookup_1.CachedMetroRailTrackLookup,
|
|
119
|
+
GeoMeasurementHelper_1.GeoMeasurementHelper])
|
|
120
|
+
], MetroShapePointsFixer);
|
|
121
|
+
//# sourceMappingURL=MetroShapePointsFixer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetroShapePointsFixer.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,6FAAyE;AACzE,kFAAoE;AAEpE,uEAA8E;AAC9E,6EAA+F;AAE/F,6EAAwE;AACxE,iEAAwE;AAExE,mGAAgG;AAIzF,IAAM,qBAAqB,mCAA3B,MAAM,qBAAqB;IAC9B,YACiE,0BAAsD,EACxD,oBAA0C;QADxC,+BAA0B,GAA1B,0BAA0B,CAA4B;QACxD,yBAAoB,GAApB,oBAAoB,CAAsB;IACtG,CAAC;IAES,GAAG,CAAC,IAAsB;;YACnC,IAAI;gBACA,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;gBAEzC,oBAAoB;gBACpB,MAAM,oBAAoB,GAA8B,MAAM,IAAI,CAAC,0BAA0B,CAAC,iBAAiB,CAC3G,mCAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAC9C,CAAC;gBAEF,IAAI,qBAAqB,GAAkB,IAAI,CAAC;gBAChD,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;gBAErD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBACzE,MAAM,KAAK,GAAG,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBACrD,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;oBAC1F,MAAM,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,oBAAoB,EAAE,aAAa,CAAC,CAAC;oBACxG,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;oBAE7G,IAAI,gBAAgB,EAAE;wBAClB,qBAAqB,GAAG,gBAAgB,CAAC;qBAC5C;oBAED,KAAK,CAAC,OAAO,GAAG,qBAAqB,CAAC,YAAY,IAAI,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;oBACtF,KAAK,CAAC,kBAAkB,GAAG,gBAAgB,CAAC;oBAC5C,KAAK,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5G,KAAK,CAAC,kBAAkB,GAAG,qBAAqB,IAAI,qBAAqB,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1G,IAAI,KAAK,CAAC,OAAO,EAAE;wBACf,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAmB,CAAC;qBACxD;iBACJ;gBAED,OAAO,UAAU,CAAC;aACrB;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,oCAAoC,GAAG,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC1G;QACL,CAAC;KAAA;IAEO,mBAAmB,CAAC,YAA2B,EAAE,UAAuB;;QAC5E,MAAM,KAAK,GAAG,eAAe,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAA,MAAA,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,0CAAE,MAAM,0CAAE,IAAI,CAAC;QAE1D,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,OAAO,CAAA,MAAA,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,eAAC,OAAA,CAAA,MAAA,MAAA,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,0CAAE,MAAM,0CAAE,IAAI,MAAK,IAAI,CAAA,EAAA,CAAC,0CAAE,aAAa,KAAI,IAAI,CAAC;SACtH;aAAM;YACH,OAAO,IAAI,CAAC;SACf;IACL,CAAC;IAEO,wBAAwB,CAC5B,KAAwB,EACxB,oBAA+C,EAC/C,aAAuB;QAEvB,oDAAoD;QACpD,MAAM,MAAM,GAAG,oBAAoB;aAC9B,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;YACpB,uCACO,cAAc,KACjB,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CACnD,KAAK,CAAC,WAAW,EACjB,cAAc,CAAC,WAAW,CAAC,WAAoB,CAClD,IACH;QACN,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QACvE,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,KAAK,MAAM,SAAS,IAAI,sBAAsB,EAAE;gBAC5C,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,YAAY,CAAC,EAAE;oBAC3D,OAAO,SAAS,CAAC;iBACpB;aACJ;YAED,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC;SACpC;QAED,gFAAgF;QAChF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAEO,gBAAgB,CAAC,SAAsB,EAAE,qBAAoC;QACjF,4FAA4F;QAC5F,uCAAuC;QACvC,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,IAAI,qBAAqB,KAAK,IAAI,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,qBAAqB,GAAG,SAAS,CAAC,MAAM,EAAE;gBAC1C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,CAAC;aACzD;SACJ;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ,CAAA;gCAvGY,qBAAqB;IADjC,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,0BAA0B,CAAC,CAAA;IACnD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,oBAAoB,CAAC,CAAA;qCADuC,uDAA0B;QAClC,2CAAoB;GAHhG,qBAAqB,CAuGjC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IMpvStopContent } from "
|
|
1
|
+
import { IMpvStopContent } from "../../../../../../schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces";
|
|
2
2
|
export declare class MpvStopParser {
|
|
3
3
|
/**
|
|
4
4
|
* Parse and sanitize current platform code
|
|
@@ -44,16 +44,6 @@ export declare class RegionalBusPositionsManager {
|
|
|
44
44
|
* @returns {IPositionToUpdate} - Result point as position to update in DB
|
|
45
45
|
*/
|
|
46
46
|
private static getClosestPoint;
|
|
47
|
-
/**
|
|
48
|
-
* Returns date object for stop time
|
|
49
|
-
* + given by start of day when trip starts
|
|
50
|
-
* + and GTFS HH:mm:ss format of stop time in seconds
|
|
51
|
-
*
|
|
52
|
-
* @param {number} startDayTimestamp - Unix timestamp of local time midnight before trip starts
|
|
53
|
-
* @param {number} timeSeconds - Number of seconds given by HH:mm:ss format of GTFS stop time
|
|
54
|
-
* @returns {Date} - Returns date object
|
|
55
|
-
*/
|
|
56
|
-
private static getLocalTimeToDateObject;
|
|
57
47
|
/**
|
|
58
48
|
* Corrects time delay at stop with dwelling time
|
|
59
49
|
*
|
|
@@ -40,6 +40,7 @@ exports.RegionalBusPositionsManager = void 0;
|
|
|
40
40
|
const turf = __importStar(require("@turf/turf"));
|
|
41
41
|
const moment_timezone_1 = __importDefault(require("moment-timezone"));
|
|
42
42
|
const const_1 = require("../../../../../../const");
|
|
43
|
+
const DateTimeUtils_1 = require("../DateTimeUtils");
|
|
43
44
|
const PositionHandlerEnum_1 = require("../PositionHandlerEnum");
|
|
44
45
|
const ValidToCalculator_1 = __importDefault(require("../ValidToCalculator"));
|
|
45
46
|
const AnchorPointSegmenter_1 = require("../anchor-points/AnchorPointSegmenter");
|
|
@@ -275,11 +276,11 @@ RegionalBusPositionsManager.getClosestPoint = (currentPosition, context, startDa
|
|
|
275
276
|
const tripStopTimes = tripGtfsData.stop_times;
|
|
276
277
|
const firstTripShapePoint = tripShapePoints[0];
|
|
277
278
|
const lastTripShapePoint = tripShapePoints[tripShapePoints.length - 1];
|
|
278
|
-
const timeScheduledTimestamp =
|
|
279
|
+
const timeScheduledTimestamp = DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(
|
|
279
280
|
// take stop arrival time if is point at stop
|
|
280
281
|
thisClosestPoint.this_stop_sequence
|
|
281
282
|
? tripStopTimes[thisClosestPoint.this_stop_sequence - 1].arrival_time_seconds
|
|
282
|
-
: thisClosestPoint.time_scheduled_seconds);
|
|
283
|
+
: thisClosestPoint.time_scheduled_seconds, startDayTimestamp);
|
|
283
284
|
let timeDelayInSeconds = Math.round((currentPosition.properties.origin_timestamp.getTime() - timeScheduledTimestamp.getTime()) / 1000);
|
|
284
285
|
// lets correct delay if it is at stop
|
|
285
286
|
if (thisClosestPoint.this_stop_sequence) {
|
|
@@ -308,10 +309,10 @@ RegionalBusPositionsManager.getClosestPoint = (currentPosition, context, startDa
|
|
|
308
309
|
last_stop_name: tripStopTimes[lastStopSequence - 1].stop.stop_name,
|
|
309
310
|
next_stop_sequence: nextStopSequence,
|
|
310
311
|
last_stop_sequence: lastStopSequence,
|
|
311
|
-
next_stop_arrival_time:
|
|
312
|
-
last_stop_arrival_time:
|
|
313
|
-
next_stop_departure_time:
|
|
314
|
-
last_stop_departure_time:
|
|
312
|
+
next_stop_arrival_time: DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(tripStopTimes[nextStopSequence - 1].arrival_time_seconds, startDayTimestamp),
|
|
313
|
+
last_stop_arrival_time: DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(tripStopTimes[lastStopSequence - 1].arrival_time_seconds, startDayTimestamp),
|
|
314
|
+
next_stop_departure_time: DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(tripStopTimes[nextStopSequence - 1].departure_time_seconds, startDayTimestamp),
|
|
315
|
+
last_stop_departure_time: DateTimeUtils_1.DateTimeUtils.getStopDateTimeForDayStart(tripStopTimes[lastStopSequence - 1].departure_time_seconds, startDayTimestamp),
|
|
315
316
|
delay: statePosition === const_1.StatePositionEnum.AFTER_TRACK ? 0 : timeDelayInSeconds,
|
|
316
317
|
this_stop_id: (statePosition === const_1.StatePositionEnum.AT_STOP &&
|
|
317
318
|
thisStopSequence &&
|
|
@@ -330,24 +331,6 @@ RegionalBusPositionsManager.getClosestPoint = (currentPosition, context, startDa
|
|
|
330
331
|
};
|
|
331
332
|
return estimatedPoint;
|
|
332
333
|
};
|
|
333
|
-
/**
|
|
334
|
-
* Returns date object for stop time
|
|
335
|
-
* + given by start of day when trip starts
|
|
336
|
-
* + and GTFS HH:mm:ss format of stop time in seconds
|
|
337
|
-
*
|
|
338
|
-
* @param {number} startDayTimestamp - Unix timestamp of local time midnight before trip starts
|
|
339
|
-
* @param {number} timeSeconds - Number of seconds given by HH:mm:ss format of GTFS stop time
|
|
340
|
-
* @returns {Date} - Returns date object
|
|
341
|
-
*/
|
|
342
|
-
RegionalBusPositionsManager.getLocalTimeToDateObject = (startDayTimestamp, timeSeconds) => {
|
|
343
|
-
return (0, moment_timezone_1.default)(startDayTimestamp)
|
|
344
|
-
.tz("Europe/Prague")
|
|
345
|
-
.startOf("day")
|
|
346
|
-
.hours(Math.floor(timeSeconds / 3600))
|
|
347
|
-
.minutes(Math.floor((timeSeconds % 3600) / 60))
|
|
348
|
-
.seconds(timeSeconds % 60)
|
|
349
|
-
.toDate();
|
|
350
|
-
};
|
|
351
334
|
/**
|
|
352
335
|
* Corrects time delay at stop with dwelling time
|
|
353
336
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IMpvMessageContent, IMpvMessageInput } from "
|
|
1
|
+
import { IMpvMessageContent, IMpvMessageInput } from "../../../../../schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces";
|
|
2
2
|
export declare class SaveDataToDBValidationSchema implements IMpvMessageInput {
|
|
3
3
|
m: IMpvMessageContent;
|
|
4
4
|
}
|
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
import { ILogger } from "@golemio/core/dist/helpers";
|
|
1
2
|
import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers";
|
|
3
|
+
import { TripsRepository } from "../data-access/TripsRepository";
|
|
4
|
+
import { IGtfsTripDataFixerFactory } from "../domain/service/IGtfsTripDataFixerFactory";
|
|
5
|
+
/**
|
|
6
|
+
* Updates GTFS trip data for realtime trips immediately following a GTFS timetable database refresh
|
|
7
|
+
* - Identifies and corrects realtime trips using obsolete GTFS trip IDs (from the previous timetable)
|
|
8
|
+
* - Refreshes GTFS trip data (route ID, block ID, headsign, etc.) based on updated GTFS trip IDs
|
|
9
|
+
*/
|
|
2
10
|
export declare class RefreshGtfsTripDataTask extends AbstractEmptyTask {
|
|
11
|
+
private logger;
|
|
12
|
+
private gtfsDataFixerFactory;
|
|
13
|
+
private tripRepository;
|
|
3
14
|
readonly queueName = "refreshGTFSTripData";
|
|
4
15
|
readonly queueTtl: number;
|
|
5
|
-
|
|
6
|
-
constructor(queuePrefix: string);
|
|
16
|
+
constructor(logger: ILogger, gtfsDataFixerFactory: IGtfsTripDataFixerFactory, tripRepository: TripsRepository);
|
|
7
17
|
protected execute(): Promise<void>;
|
|
8
18
|
}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
2
14
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
15
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
16
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -10,20 +22,43 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
22
|
};
|
|
11
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
24
|
exports.RefreshGtfsTripDataTask = void 0;
|
|
25
|
+
const VPContainerToken_1 = require("../../../ioc/VPContainerToken");
|
|
26
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
13
27
|
const workers_1 = require("@golemio/core/dist/integration-engine/workers");
|
|
28
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
29
|
+
const constants_1 = require("../constants");
|
|
14
30
|
const TripsRepository_1 = require("../data-access/TripsRepository");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
31
|
+
const ProviderSourceTypeEnum_1 = require("../helpers/ProviderSourceTypeEnum");
|
|
32
|
+
/**
|
|
33
|
+
* Updates GTFS trip data for realtime trips immediately following a GTFS timetable database refresh
|
|
34
|
+
* - Identifies and corrects realtime trips using obsolete GTFS trip IDs (from the previous timetable)
|
|
35
|
+
* - Refreshes GTFS trip data (route ID, block ID, headsign, etc.) based on updated GTFS trip IDs
|
|
36
|
+
*/
|
|
37
|
+
let RefreshGtfsTripDataTask = exports.RefreshGtfsTripDataTask = class RefreshGtfsTripDataTask extends workers_1.AbstractEmptyTask {
|
|
38
|
+
constructor(logger, gtfsDataFixerFactory, tripRepository) {
|
|
39
|
+
super(constants_1.WORKER_NAME);
|
|
40
|
+
this.logger = logger;
|
|
41
|
+
this.gtfsDataFixerFactory = gtfsDataFixerFactory;
|
|
42
|
+
this.tripRepository = tripRepository;
|
|
18
43
|
this.queueName = "refreshGTFSTripData";
|
|
19
44
|
this.queueTtl = 10 * 60 * 1000; // 10 minutes
|
|
20
|
-
this.tripsRepository = new TripsRepository_1.TripsRepository();
|
|
21
45
|
}
|
|
22
46
|
execute() {
|
|
23
47
|
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
|
|
48
|
+
// Find and fix realtime trips with invalid GTFS trip ID
|
|
49
|
+
// HTTP trips
|
|
50
|
+
const numOfHttpTrips = yield this.gtfsDataFixerFactory.getStrategy(ProviderSourceTypeEnum_1.ProviderSourceTypeEnum.Http).fix(this.queuePrefix);
|
|
51
|
+
this.logger.info(`${this.constructor.name}: ${numOfHttpTrips} HTTP trips with invalid GTFS trip ID detected and sent for fixing`);
|
|
52
|
+
// Refresh GTFS trip data based on GTFS trip ID
|
|
53
|
+
yield this.tripRepository.refreshGtfsTripData();
|
|
25
54
|
});
|
|
26
55
|
}
|
|
27
|
-
}
|
|
28
|
-
exports.RefreshGtfsTripDataTask = RefreshGtfsTripDataTask
|
|
56
|
+
};
|
|
57
|
+
exports.RefreshGtfsTripDataTask = RefreshGtfsTripDataTask = __decorate([
|
|
58
|
+
(0, tsyringe_1.injectable)(),
|
|
59
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
|
|
60
|
+
__param(1, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.GtfsTripDataFixerFactory)),
|
|
61
|
+
__param(2, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.TripRepository)),
|
|
62
|
+
__metadata("design:paramtypes", [Object, Object, TripsRepository_1.TripsRepository])
|
|
63
|
+
], RefreshGtfsTripDataTask);
|
|
29
64
|
//# sourceMappingURL=RefreshGtfsTripDataTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshGtfsTripDataTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshGtfsTripDataTask.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RefreshGtfsTripDataTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshGtfsTripDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA8E;AAE9E,wEAAqE;AACrE,2EAAkF;AAClF,iEAAwE;AACxE,4CAA2C;AAC3C,oEAAiE;AAEjE,8EAA2E;AAE3E;;;;GAIG;AAEI,IAAM,uBAAuB,qCAA7B,MAAM,uBAAwB,SAAQ,2BAAiB;IAI1D,YAC8B,MAAuB,EACE,oBAAuD,EACjE,cAAuC;QAEhF,KAAK,CAAC,uBAAW,CAAC,CAAC;QAJe,WAAM,GAAN,MAAM,CAAS;QACU,yBAAoB,GAApB,oBAAoB,CAA2B;QACzD,mBAAc,GAAd,cAAc,CAAiB;QANpE,cAAS,GAAG,qBAAqB,CAAC;QAClC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;IAQxD,CAAC;IAEe,OAAO;;YACnB,wDAAwD;YACxD,aAAa;YACb,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,+CAAsB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtH,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,cAAc,oEAAoE,CAClH,CAAC;YAEF,+CAA+C;YAC/C,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,CAAC;QACpD,CAAC;KAAA;CACJ,CAAA;kCAvBY,uBAAuB;IADnC,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;IACxB,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,wBAAwB,CAAC,CAAA;IACjD,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,cAAc,CAAC,CAAA;qDAAyB,iCAAe;GAP3E,uBAAuB,CAuBnC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AbstractTask } from "@golemio/core/dist/integration-engine/workers";
|
|
2
|
-
import { IMpvMessageInput } from "
|
|
2
|
+
import { IMpvMessageInput } from "../../../../../schema-definitions/vehicle-positions/interfaces/IMpvMessageInterfaces";
|
|
3
3
|
import { SaveDataToDBValidationSchema } from "../schema/SaveDataToDBSchema";
|
|
4
4
|
export declare class SaveDataToDBTask extends AbstractTask<IMpvMessageInput> {
|
|
5
5
|
readonly queueName = "saveDataToDB";
|
|
@@ -8,8 +8,11 @@ export declare class SaveDataToDBTask extends AbstractTask<IMpvMessageInput> {
|
|
|
8
8
|
private readonly tripsRepository;
|
|
9
9
|
private readonly cisStopRepository;
|
|
10
10
|
private readonly messageTransformation;
|
|
11
|
+
private readonly logger;
|
|
11
12
|
constructor(queuePrefix: string);
|
|
12
13
|
protected execute(data: IMpvMessageInput): Promise<void>;
|
|
14
|
+
private saveStops;
|
|
13
15
|
private sendDataToUpdateGtfsTripId;
|
|
14
16
|
private sendDataToUpdateDelay;
|
|
17
|
+
private getTripDataAndSendToUpdateDelay;
|
|
15
18
|
}
|
|
@@ -13,8 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.SaveDataToDBTask = void 0;
|
|
16
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
17
|
+
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
16
18
|
const queueprocessors_1 = require("@golemio/core/dist/integration-engine/queueprocessors");
|
|
17
19
|
const workers_1 = require("@golemio/core/dist/integration-engine/workers");
|
|
20
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
18
21
|
const CisStopRepository_1 = require("../data-access/CisStopRepository");
|
|
19
22
|
const TripsRepository_1 = require("../data-access/TripsRepository");
|
|
20
23
|
const TripsMapper_1 = __importDefault(require("../data-access/helpers/TripsMapper"));
|
|
@@ -26,10 +29,10 @@ class SaveDataToDBTask extends workers_1.AbstractTask {
|
|
|
26
29
|
this.queueName = "saveDataToDB";
|
|
27
30
|
this.queueTtl = 5 * 60 * 1000; // 5 minutes
|
|
28
31
|
this.schema = SaveDataToDBSchema_1.SaveDataToDBValidationSchema;
|
|
29
|
-
this.queueType = "classic";
|
|
30
32
|
this.tripsRepository = new TripsRepository_1.TripsRepository();
|
|
31
33
|
this.cisStopRepository = new CisStopRepository_1.CisStopRepository();
|
|
32
34
|
this.messageTransformation = new MpvMessageTransformation_1.MpvMessageTransformation();
|
|
35
|
+
this.logger = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.Logger);
|
|
33
36
|
}
|
|
34
37
|
execute(data) {
|
|
35
38
|
var _a;
|
|
@@ -43,58 +46,111 @@ class SaveDataToDBTask extends workers_1.AbstractTask {
|
|
|
43
46
|
.filter((key) => key !== "start_timestamp")
|
|
44
47
|
.concat("updated_at"), true);
|
|
45
48
|
const { inserted, updated } = TripsMapper_1.default.mapTripEntitiesToUpdateDto(tripEntities, taskStartTimestamp);
|
|
49
|
+
// At this point we want to send ACK to rabbit and let the rest of the processing to be done in the background
|
|
46
50
|
yield this.sendDataToUpdateGtfsTripId(inserted, positions);
|
|
47
51
|
yield this.sendDataToUpdateDelay(updated, positions);
|
|
48
52
|
// Save cis stops to later propagate platform codes to departure boards
|
|
49
|
-
yield this.
|
|
53
|
+
yield this.saveStops(stops);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
saveStops(stops) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
try {
|
|
59
|
+
yield this.cisStopRepository.bulkSave(stops);
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
63
|
+
this.logger.error(error);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while saving stops", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
50
69
|
});
|
|
51
70
|
}
|
|
52
71
|
sendDataToUpdateGtfsTripId(insertedTrips, positions) {
|
|
53
72
|
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
73
|
+
try {
|
|
74
|
+
// send message for update GTFSTripIds
|
|
75
|
+
for (let i = 0, chunkSize = 50; i < insertedTrips.length; i += chunkSize) {
|
|
76
|
+
const insertedBatch = insertedTrips.slice(i, i + chunkSize);
|
|
77
|
+
const insertedIds = insertedBatch.map((ins) => {
|
|
78
|
+
return ins.id;
|
|
79
|
+
});
|
|
80
|
+
yield queueprocessors_1.QueueManager.sendMessageToExchange(this.queuePrefix, "updateGTFSTripId", {
|
|
81
|
+
trips: insertedBatch,
|
|
82
|
+
positions: positions.filter((position) => insertedIds.includes(position.trips_id)),
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
88
|
+
this.logger.error(error);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update GTFS trip id", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
92
|
+
}
|
|
64
93
|
}
|
|
65
94
|
});
|
|
66
95
|
}
|
|
67
96
|
sendDataToUpdateDelay(updatedTrips, positions) {
|
|
68
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
98
|
+
try {
|
|
99
|
+
// aggregate runs by origin_route_name & run_number to keep related messages in same bulk
|
|
100
|
+
const runTripMap = updatedTrips.length ? { unknown: [] } : {};
|
|
101
|
+
for (const trip of updatedTrips) {
|
|
102
|
+
if (!trip.origin_route_name || !trip.run_number) {
|
|
103
|
+
runTripMap.unknown.push(trip.id);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
const key = `${trip.origin_route_name}_${trip.run_number}`;
|
|
107
|
+
runTripMap[key] ? runTripMap[key].push(trip.id) : (runTripMap[key] = [trip.id]);
|
|
108
|
+
}
|
|
74
109
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
110
|
+
const chunks = [];
|
|
111
|
+
let idx = 0;
|
|
112
|
+
for (const key in runTripMap) {
|
|
113
|
+
if (!chunks[idx]) {
|
|
114
|
+
chunks[idx] = [];
|
|
115
|
+
}
|
|
116
|
+
chunks[idx] = chunks[idx].concat(runTripMap[key]);
|
|
117
|
+
if (chunks[idx].length > 200) {
|
|
118
|
+
idx++;
|
|
119
|
+
}
|
|
78
120
|
}
|
|
121
|
+
const promises = [];
|
|
122
|
+
for (const key in chunks) {
|
|
123
|
+
promises.push(this.getTripDataAndSendToUpdateDelay(chunks[key], positions));
|
|
124
|
+
}
|
|
125
|
+
yield Promise.all(promises);
|
|
79
126
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
if (!chunks[idx]) {
|
|
84
|
-
chunks[idx] = [];
|
|
127
|
+
catch (error) {
|
|
128
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
129
|
+
this.logger.error(error);
|
|
85
130
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
idx++;
|
|
131
|
+
else {
|
|
132
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update delay", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
89
133
|
}
|
|
90
134
|
}
|
|
91
|
-
|
|
92
|
-
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
getTripDataAndSendToUpdateDelay(chunk, positions) {
|
|
138
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
+
try {
|
|
140
|
+
const updatedTrips = yield this.tripsRepository.findAllAssocTripIds(chunk);
|
|
93
141
|
yield queueprocessors_1.QueueManager.sendMessageToExchange(this.queuePrefix, "updateDelay", {
|
|
94
142
|
updatedTrips,
|
|
95
|
-
positions: positions.filter((position) =>
|
|
143
|
+
positions: positions.filter((position) => chunk.includes(position.trips_id)),
|
|
96
144
|
});
|
|
97
145
|
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
148
|
+
this.logger.error(error);
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
this.logger.error(new golemio_errors_1.GeneralError("Error while sending data to update delay", SaveDataToDBTask.name, error, undefined, "pid", this.queueName));
|
|
152
|
+
}
|
|
153
|
+
}
|
|
98
154
|
});
|
|
99
155
|
}
|
|
100
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveDataToDBTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"SaveDataToDBTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export declare class UpdateDelayTask extends AbstractTask<IUpdateDelayInput> {
|
|
|
11
11
|
private readonly delayComputationRedisRepository;
|
|
12
12
|
private readonly tripStopsManager;
|
|
13
13
|
private readonly delayComputationManager;
|
|
14
|
+
private readonly metroShapePointsFixer;
|
|
14
15
|
constructor(queuePrefix: string);
|
|
15
16
|
protected execute(data: IUpdateDelayInput): Promise<void>;
|
|
16
17
|
private enrichTripWithGtfsComputationData;
|