@golemio/pid 2.8.10 → 2.8.11-dev.991735776
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/17_metroRailtrack.sql +357 -0
- 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/vehicle-positions/ioc/Di.js +8 -0
- package/dist/integration-engine/vehicle-positions/ioc/Di.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js +9 -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/vehicle-positions/data-access/TripsRepository.d.ts +1 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +0 -37
- 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 +0 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js +0 -13
- 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/helpers/PositionsManager.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js +113 -117
- 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/metro/MetroShapePointsFixer.d.ts +11 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/metro/MetroShapePointsFixer.js +117 -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/interfaces/VPInterfaces.d.ts +0 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js +26 -15
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +13 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js +5 -1
- package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +22 -2
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/VPTripsLastPositionInterfaces.d.ts +2 -2
- package/package.json +3 -3
|
@@ -16,6 +16,18 @@ class MetroRouteHelper {
|
|
|
16
16
|
static getRouteId(routeName) {
|
|
17
17
|
return metroRouteId[routeName];
|
|
18
18
|
}
|
|
19
|
+
static getTripRouteMap() {
|
|
20
|
+
if (!this.tripToRouteMetroMap) {
|
|
21
|
+
this.tripToRouteMetroMap = {};
|
|
22
|
+
for (const routeName of Object.values(MetroRouteName)) {
|
|
23
|
+
this.tripToRouteMetroMap[`${MetroRouteHelper.getRouteId(routeName)}`] = routeName.toString();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return this.tripToRouteMetroMap;
|
|
27
|
+
}
|
|
28
|
+
static getRouteName(tripId) {
|
|
29
|
+
return this.getTripRouteMap()[tripId.substring(0, 3)];
|
|
30
|
+
}
|
|
19
31
|
}
|
|
20
32
|
exports.MetroRouteHelper = MetroRouteHelper;
|
|
21
33
|
//# sourceMappingURL=MetroRouteHelper.js.map
|
package/dist/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetroRouteHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.ts"],"names":[],"mappings":";;;AAAA,IAAY,cAIX;AAJD,WAAY,cAAc;IACtB,8BAAY,CAAA;IACZ,8BAAY,CAAA;IACZ,8BAAY,CAAA;AAChB,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAED,MAAM,YAAY,GAAwD;IACtE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;IAC9B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;IAC9B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;CACjC,CAAC;AAEF,MAAa,gBAAgB;
|
|
1
|
+
{"version":3,"file":"MetroRouteHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/helpers/MetroRouteHelper.ts"],"names":[],"mappings":";;;AAAA,IAAY,cAIX;AAJD,WAAY,cAAc;IACtB,8BAAY,CAAA;IACZ,8BAAY,CAAA;IACZ,8BAAY,CAAA;AAChB,CAAC,EAJW,cAAc,8BAAd,cAAc,QAIzB;AAED,MAAM,YAAY,GAAwD;IACtE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;IAC9B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;IAC9B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK;CACjC,CAAC;AAEF,MAAa,gBAAgB;IAGlB,MAAM,CAAC,UAAU,CAAC,SAAkC;QACvD,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAEM,MAAM,CAAC,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC3B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;YAC9B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;gBACnD,IAAI,CAAC,mBAAmB,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;aAChG;SACJ;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,MAAc;QACrC,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;CACJ;AArBD,4CAqBC"}
|
|
@@ -7,7 +7,7 @@ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/mod
|
|
|
7
7
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
8
8
|
import { IUpdateRunsGtfsTripInput } from "../interfaces/IUpdateRunsGtfsTripInput";
|
|
9
9
|
import { IPropagateDelay } from "../interfaces/VPInterfaces";
|
|
10
|
-
import {
|
|
10
|
+
import { IUpdateDelayRunTripsData, IUpdateDelayTripsIdsData, IUpdateGTFSTripIdData } from "./interfaces/TripRepositoryInterfaces";
|
|
11
11
|
export declare class TripsRepository extends PostgresModel implements IModel {
|
|
12
12
|
private positionsRepository;
|
|
13
13
|
private stopTimeDelayPredictionRepository;
|
|
@@ -19,10 +19,6 @@ export declare class TripsRepository extends PostgresModel implements IModel {
|
|
|
19
19
|
private deduceTimestamps;
|
|
20
20
|
upsertCommonRunTrip: ({ run }: IUpdateRunsGtfsTripInput, gtfsTrip: IScheduleDto) => Promise<IUpdateDelayRunTripsData>;
|
|
21
21
|
upsertMetroRunTrip: (runInput: IMetroRunInputForProcessing, gtfsTrip: IScheduleDto) => Promise<IUpdateDelayRunTripsData>;
|
|
22
|
-
/**
|
|
23
|
-
* Updates before track positions with propagated delay and also updates last position context for parent trips
|
|
24
|
-
*/
|
|
25
|
-
bulkUpdatePropagatedDelay: (data: IPropagatedDelayTripWithPosition[]) => Promise<void[]>;
|
|
26
22
|
getPropagateDelayTripsWithPositions: (data: IPropagateDelay) => Promise<Array<IVPTripsModel & {
|
|
27
23
|
last_position: IVPTripsPositionAttributes;
|
|
28
24
|
}>>;
|
|
@@ -201,43 +201,6 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
201
201
|
throw new golemio_errors_1.GeneralError("upsertMetroRunTrip: Error while saving to database.", this.name, err);
|
|
202
202
|
}
|
|
203
203
|
});
|
|
204
|
-
/**
|
|
205
|
-
* Updates before track positions with propagated delay and also updates last position context for parent trips
|
|
206
|
-
*/
|
|
207
|
-
this.bulkUpdatePropagatedDelay = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
208
|
-
const connection = connectors_1.PostgresConnector.getConnection();
|
|
209
|
-
const promises = data.map((d) => __awaiter(this, void 0, void 0, function* () {
|
|
210
|
-
const transaction = yield connection.transaction();
|
|
211
|
-
try {
|
|
212
|
-
yield this.positionsRepository.update(d.position, {
|
|
213
|
-
where: {
|
|
214
|
-
id: d.position.id,
|
|
215
|
-
},
|
|
216
|
-
transaction,
|
|
217
|
-
});
|
|
218
|
-
yield connection.query(RawQueryProvider_1.RawQueryProvider.getUpdateLastPositionTripsQuery(), {
|
|
219
|
-
type: sequelize_1.default.QueryTypes.UPDATE,
|
|
220
|
-
transaction,
|
|
221
|
-
bind: {
|
|
222
|
-
lastPositionId: d.position.id,
|
|
223
|
-
jsonLastPositionContext: {
|
|
224
|
-
delay: d.position.delay,
|
|
225
|
-
originTimestamp: d.position.origin_timestamp,
|
|
226
|
-
},
|
|
227
|
-
tripId: d.trip.id,
|
|
228
|
-
},
|
|
229
|
-
});
|
|
230
|
-
yield transaction.commit();
|
|
231
|
-
return;
|
|
232
|
-
}
|
|
233
|
-
catch (err) {
|
|
234
|
-
helpers_1.log.error(err);
|
|
235
|
-
yield transaction.rollback();
|
|
236
|
-
throw new golemio_errors_1.GeneralError("Error while saving to database.", this.name, err);
|
|
237
|
-
}
|
|
238
|
-
}));
|
|
239
|
-
return Promise.all(promises);
|
|
240
|
-
});
|
|
241
204
|
this.getPropagateDelayTripsWithPositions = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
242
205
|
return this.sequelizeModel.findAll({
|
|
243
206
|
include: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TripsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TripsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,5 @@ export declare class RawQueryProvider {
|
|
|
3
3
|
static getFindAssociatedTripsQuery(): string;
|
|
4
4
|
static getFindGtfsCommonTripsQuery(startDateDayName: string, startDateDayBeforeDayName: string): string;
|
|
5
5
|
static getFindGtfsTrainTripsQuery(): string;
|
|
6
|
-
static getUpdateLastPositionTripsQuery(): string;
|
|
7
6
|
static getUpdateGtfsTripDataQuery(): string;
|
|
8
7
|
}
|
|
@@ -194,19 +194,6 @@ class RawQueryProvider {
|
|
|
194
194
|
`;
|
|
195
195
|
/* eslint-enable max-len */
|
|
196
196
|
}
|
|
197
|
-
static getUpdateLastPositionTripsQuery() {
|
|
198
|
-
return `
|
|
199
|
-
UPDATE "${const_1.PG_SCHEMA}".${VPTripsModel_1.VPTripsModel.TABLE_NAME}
|
|
200
|
-
SET
|
|
201
|
-
last_position_id = $lastPositionId,
|
|
202
|
-
last_position_context = jsonb_set(
|
|
203
|
-
last_position_context::jsonb,
|
|
204
|
-
'{lastPositionBeforeTrackDelayed}', $jsonLastPositionContext,
|
|
205
|
-
true
|
|
206
|
-
)::json
|
|
207
|
-
WHERE id = $tripId
|
|
208
|
-
`;
|
|
209
|
-
}
|
|
210
197
|
static getUpdateGtfsTripDataQuery() {
|
|
211
198
|
return `
|
|
212
199
|
update "${const_1.PG_SCHEMA}".${VPTripsModel_1.VPTripsModel.TABLE_NAME} vp_trip
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RawQueryProvider.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.ts"],"names":[],"mappings":";;;AAAA,sEAAuC;AACvC,+GAA4E;AAC5E,6GAA0E;AAC1E,6IAA0G;AAC1G,mDAA8C;AAC9C,+DAA4D;AAE5D,MAAa,gBAAgB;IAClB,MAAM,CAAC,yBAAyB,CAAC,MAAc;QAClD,OAAO,gCAAgC,iBAAS,KAAK,2BAAY,CAAC,UAAU,cAAc,MAAM,iBAAiB,CAAC;IACtH,CAAC;IAEM,MAAM,CAAC,2BAA2B;QACrC,OAAO;;;;;;;oBAOK,iBAAS,KAAK,2BAAY,CAAC,UAAU;;SAEhD,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,2BAA2B,CAAC,gBAAwB,EAAE,yBAAiC;QACjG,4BAA4B;QAC5B,OAAO;;mBAEI,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;oBACR,iBAAS;0BACH,iBAAS,0BAA0B,iBAAS;0BAC5C,iBAAS,8BAA8B,iBAAS;yBACjD,iBAAS;sBACZ,iBAAS;;yBAEN,iBAAS,qDAAqD,iBAAS;;iBAE/E,iBAAS;;wBAEF,iBAAS;;;mBAGd,iBAAS;qCACS,iBAAS;;kEAEoB,iBAAS;;oCAEvC,iBAAS;;;;;;;;;;;;;;uBActB,iBAAS;8CACc,iBAAS;4BAC3B,gBAAgB;;;oDAGQ,iBAAS;;;qDAGR,iBAAS;;;;;uBAKvC,iBAAS;8CACc,iBAAS;4BAC3B,yBAAyB;;;oDAGD,iBAAS;;;qDAGR,iBAAS;;;;;;;SAOrD,CAAC;QACF,2BAA2B;IAC/B,CAAC;IAEM,MAAM,CAAC,0BAA0B;QACpC,4BAA4B;QAC5B,OAAO;;;;;;;;;;;oBAWK,iBAAS;;;;mBAIV,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;;mBAET,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;oBACR,iBAAS;;0BAEH,iBAAS,0BAA0B,iBAAS;0BAC5C,iBAAS,8BAA8B,iBAAS;yBACjD,iBAAS;sBACZ,iBAAS;;yBAEN,iBAAS,qDAAqD,iBAAS,8BAA8B,iBAAS;;mBAEpH,iBAAS;uBACL,iBAAS;;;2BAGL,iBAAS;kDACc,iBAAS;;;;;;;;;;;;;;wDAcH,iBAAS;;;yDAGR,iBAAS;;;;;2BAKvC,iBAAS;kDACc,iBAAS;;;;;;;;;;;;;;wDAcH,iBAAS;;;yDAGR,iBAAS;;;;;;;SAOzD,CAAC;QACF,2BAA2B;IAC/B,CAAC;IAEM,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"RawQueryProvider.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.ts"],"names":[],"mappings":";;;AAAA,sEAAuC;AACvC,+GAA4E;AAC5E,6GAA0E;AAC1E,6IAA0G;AAC1G,mDAA8C;AAC9C,+DAA4D;AAE5D,MAAa,gBAAgB;IAClB,MAAM,CAAC,yBAAyB,CAAC,MAAc;QAClD,OAAO,gCAAgC,iBAAS,KAAK,2BAAY,CAAC,UAAU,cAAc,MAAM,iBAAiB,CAAC;IACtH,CAAC;IAEM,MAAM,CAAC,2BAA2B;QACrC,OAAO;;;;;;;oBAOK,iBAAS,KAAK,2BAAY,CAAC,UAAU;;SAEhD,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,2BAA2B,CAAC,gBAAwB,EAAE,yBAAiC;QACjG,4BAA4B;QAC5B,OAAO;;mBAEI,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;oBACR,iBAAS;0BACH,iBAAS,0BAA0B,iBAAS;0BAC5C,iBAAS,8BAA8B,iBAAS;yBACjD,iBAAS;sBACZ,iBAAS;;yBAEN,iBAAS,qDAAqD,iBAAS;;iBAE/E,iBAAS;;wBAEF,iBAAS;;;mBAGd,iBAAS;qCACS,iBAAS;;kEAEoB,iBAAS;;oCAEvC,iBAAS;;;;;;;;;;;;;;uBActB,iBAAS;8CACc,iBAAS;4BAC3B,gBAAgB;;;oDAGQ,iBAAS;;;qDAGR,iBAAS;;;;;uBAKvC,iBAAS;8CACc,iBAAS;4BAC3B,yBAAyB;;;oDAGD,iBAAS;;;qDAGR,iBAAS;;;;;;;SAOrD,CAAC;QACF,2BAA2B;IAC/B,CAAC;IAEM,MAAM,CAAC,0BAA0B;QACpC,4BAA4B;QAC5B,OAAO;;;;;;;;;;;oBAWK,iBAAS;;;;mBAIV,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;;mBAET,iBAAS;mBACT,iBAAS;mBACT,iBAAS;mBACT,iBAAS;oBACR,iBAAS;;0BAEH,iBAAS,0BAA0B,iBAAS;0BAC5C,iBAAS,8BAA8B,iBAAS;yBACjD,iBAAS;sBACZ,iBAAS;;yBAEN,iBAAS,qDAAqD,iBAAS,8BAA8B,iBAAS;;mBAEpH,iBAAS;uBACL,iBAAS;;;2BAGL,iBAAS;kDACc,iBAAS;;;;;;;;;;;;;;wDAcH,iBAAS;;;yDAGR,iBAAS;;;;;2BAKvC,iBAAS;kDACc,iBAAS;;;;;;;;;;;;;;wDAcH,iBAAS;;;yDAGR,iBAAS;;;;;;;SAOzD,CAAC;QACF,2BAA2B;IAC/B,CAAC;IAEM,MAAM,CAAC,0BAA0B;QACpC,OAAO;sBACO,iBAAS,KAAK,2BAAY,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;oEAqBS,6BAAa,CAAC,QAAQ;;;;;wBAKlE,iBAAS,KAAK,qDAAyB,CAAC,SAAS;8BAC3C,iBAAS,KAAK,2CAAoB,CAAC,YAAY,CAAC,WAAW;;;iEAGxB,yBAAiB,CAAC,WAAW;;;SAGrF,CAAC;IACN,CAAC;CACJ;AApOD,4CAoOC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MetroRailtrackGPSRepository } from "../../../../../ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository";
|
|
2
|
+
import { IMetroRailtrackGPSModel } from "../../../../../../schema-definitions/ropid-gtfs/models/railtrack/interfaces/IMetroRailtrackGPSModel";
|
|
3
|
+
export declare class CachedMetroRailTrackLookup {
|
|
4
|
+
private metroRailtrackGPSRepository;
|
|
5
|
+
private cachedLookup;
|
|
6
|
+
constructor(metroRailtrackGPSRepository: MetroRailtrackGPSRepository);
|
|
7
|
+
getAllByRouteName(route_name: string): Promise<IMetroRailtrackGPSModel[]>;
|
|
8
|
+
private groupByRouteName;
|
|
9
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
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.CachedMetroRailTrackLookup = void 0;
|
|
25
|
+
const MetroRailtrackGPSRepository_1 = require("../../../../../ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository");
|
|
26
|
+
const VPContainerToken_1 = require("../../../../ioc/VPContainerToken");
|
|
27
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
28
|
+
/*
|
|
29
|
+
* In case of update of the data for metro railtrack. It is necessary to restart the service to reload cache.
|
|
30
|
+
*/
|
|
31
|
+
let CachedMetroRailTrackLookup = exports.CachedMetroRailTrackLookup = class CachedMetroRailTrackLookup {
|
|
32
|
+
constructor(metroRailtrackGPSRepository) {
|
|
33
|
+
this.metroRailtrackGPSRepository = metroRailtrackGPSRepository;
|
|
34
|
+
}
|
|
35
|
+
getAllByRouteName(route_name) {
|
|
36
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
+
if (!this.cachedLookup) {
|
|
38
|
+
const result = yield this.metroRailtrackGPSRepository["sequelizeModel"].findAll({
|
|
39
|
+
raw: true,
|
|
40
|
+
});
|
|
41
|
+
this.cachedLookup = this.groupByRouteName(result);
|
|
42
|
+
}
|
|
43
|
+
return this.cachedLookup[route_name];
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
groupByRouteName(result) {
|
|
47
|
+
return result.reduce((r, a) => {
|
|
48
|
+
r[a.route_name] = r[a.route_name] || [];
|
|
49
|
+
r[a.route_name].push(a);
|
|
50
|
+
return r;
|
|
51
|
+
}, Object.create(null));
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.CachedMetroRailTrackLookup = CachedMetroRailTrackLookup = __decorate([
|
|
55
|
+
(0, tsyringe_1.injectable)(),
|
|
56
|
+
__param(0, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.MetroRailtrackGPSRepository)),
|
|
57
|
+
__metadata("design:paramtypes", [MetroRailtrackGPSRepository_1.MetroRailtrackGPSRepository])
|
|
58
|
+
], CachedMetroRailTrackLookup);
|
|
59
|
+
//# sourceMappingURL=CachedMetroRailtrackLookup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CachedMetroRailtrackLookup.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/metro/CachedMetroRailtrackLookup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,2IAA6H;AAC7H,uEAA8E;AAG9E,iEAAwE;AAExE;;GAEG;AAGI,IAAM,0BAA0B,wCAAhC,MAAM,0BAA0B;IAGnC,YACkE,2BAAwD;QAAxD,gCAA2B,GAA3B,2BAA2B,CAA6B;IACvH,CAAC;IAES,iBAAiB,CAAC,UAAkB;;YAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAyB;oBACpG,GAAG,EAAE,IAAI;iBACZ,CAAC,CAAC;gBACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;aACrD;YAED,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;KAAA;IAEO,gBAAgB,CAAC,MAAgC;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACxC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,OAAO,CAAC,CAAC;QACb,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5B,CAAC;CACJ,CAAA;qCAzBY,0BAA0B;IADtC,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,2BAA2B,CAAC,CAAA;qCAAsC,yDAA2B;GAJjH,0BAA0B,CAyBtC"}
|
|
@@ -71,6 +71,9 @@ export default class PositionsManager {
|
|
|
71
71
|
* @returns {number} - Result delay in seconds, can be negative for trip ahead
|
|
72
72
|
*/
|
|
73
73
|
private static getCorrectedTimeDelay;
|
|
74
|
+
private static handleContext;
|
|
75
|
+
private static handleNotTracking;
|
|
76
|
+
private static handleTracking;
|
|
74
77
|
/**
|
|
75
78
|
* Get delay in seconds for positions before track to ensure correct delay propagation
|
|
76
79
|
*/
|
|
@@ -46,6 +46,107 @@ const PositionHandlerEnum_1 = require("./PositionHandlerEnum");
|
|
|
46
46
|
const ValidToCalculator_1 = __importDefault(require("./ValidToCalculator"));
|
|
47
47
|
const ComputeDelayHelper_1 = __importDefault(require("./compute-positions/ComputeDelayHelper"));
|
|
48
48
|
class PositionsManager {
|
|
49
|
+
static handleContext(context, positionToUpdate, position, gtfsRouteType) {
|
|
50
|
+
context.isLastPositionAfterTrack =
|
|
51
|
+
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.AFTER_TRACK ||
|
|
52
|
+
position.state_position === const_1.StatePositionEnum.AFTER_TRACK;
|
|
53
|
+
// set last known BEFORE_TRACK_DELAYED position
|
|
54
|
+
if (position.state_position === const_1.StatePositionEnum.BEFORE_TRACK_DELAYED) {
|
|
55
|
+
context.lastPositionBeforeTrackDelayed = {
|
|
56
|
+
delay: position.delay,
|
|
57
|
+
origin_timestamp: position.origin_timestamp,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
// set last position tracking (only for at_stop and on_track)
|
|
61
|
+
if ((positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.AT_STOP ||
|
|
62
|
+
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.ON_TRACK ||
|
|
63
|
+
position.state_position === const_1.StatePositionEnum.AT_STOP ||
|
|
64
|
+
position.state_position === const_1.StatePositionEnum.ON_TRACK) {
|
|
65
|
+
context.lastPositionTracking = turf.point([position.lng, position.lat], Object.assign(Object.assign({}, position), positionToUpdate));
|
|
66
|
+
}
|
|
67
|
+
// set new first position at stop streak if this stop seqence is set and it is not same as before
|
|
68
|
+
if (positionToUpdate
|
|
69
|
+
? positionToUpdate.this_stop_sequence &&
|
|
70
|
+
context.atStopStreak.stop_sequence !== positionToUpdate.this_stop_sequence
|
|
71
|
+
: position.this_stop_sequence && context.atStopStreak.stop_sequence !== position.this_stop_sequence) {
|
|
72
|
+
context.atStopStreak.stop_sequence = positionToUpdate
|
|
73
|
+
? positionToUpdate.this_stop_sequence
|
|
74
|
+
: position.this_stop_sequence;
|
|
75
|
+
context.atStopStreak.firstPositionTimestamp = position.origin_timestamp.getTime();
|
|
76
|
+
context.atStopStreak.firstPositionDelay = positionToUpdate ? positionToUpdate.delay : position.delay;
|
|
77
|
+
}
|
|
78
|
+
// IF currently valid updated position / position was processed before
|
|
79
|
+
// and it is NOT AT_STOP
|
|
80
|
+
// then disrupt atStopStreak
|
|
81
|
+
if (positionToUpdate &&
|
|
82
|
+
positionToUpdate.state_position !== const_1.StatePositionEnum.MISMATCHED &&
|
|
83
|
+
!positionToUpdate.this_stop_sequence) {
|
|
84
|
+
context.atStopStreak.stop_sequence = null;
|
|
85
|
+
}
|
|
86
|
+
else if (!positionToUpdate && !position.this_stop_sequence) {
|
|
87
|
+
context.atStopStreak.stop_sequence = null;
|
|
88
|
+
}
|
|
89
|
+
// duplicated or mismatched position should not be considered at all
|
|
90
|
+
if ((positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.DUPLICATE &&
|
|
91
|
+
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.INVISIBLE &&
|
|
92
|
+
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.MISMATCHED) {
|
|
93
|
+
context.lastPositionId = position.id;
|
|
94
|
+
context.lastPositionCanceled = position.is_canceled;
|
|
95
|
+
context.lastPositionOriginTimestamp = position.origin_timestamp.getTime();
|
|
96
|
+
ComputeDelayHelper_1.default.updateContext(context, positionToUpdate, position, gtfsRouteType);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
static handleNotTracking(tripPositions, context, position, startTimestamp, schedule, positionToUpdate, startDayTimestamp, gtfsRouteType) {
|
|
100
|
+
const firstShapesAnchorPoint = tripPositions.gtfsData.shapes_anchor_points[0];
|
|
101
|
+
if (context.lastPositionTracking === null) {
|
|
102
|
+
const firstStopTime = tripPositions.gtfsData.stop_times[0];
|
|
103
|
+
// if there is propagated delay we can use it for new position
|
|
104
|
+
const lastPositionDelayed = context.lastPositionBeforeTrackDelayed;
|
|
105
|
+
// if there is no delay to duplicate and DPP trip is far from start then invisible
|
|
106
|
+
const setAsInvisible = !lastPositionDelayed &&
|
|
107
|
+
DPPUtils_1.default.isInvisible(tripPositions.agency_name_scheduled, position.origin_timestamp, startTimestamp, [position.lng, position.lat], firstShapesAnchorPoint.coordinates, schedule, tripPositions.gtfs_trip_id, context.lastPositionTracking, position.tracking);
|
|
108
|
+
positionToUpdate = Object.assign({ id: position.id, next_stop_arrival_time: new Date(startDayTimestamp + firstStopTime.arrival_time_seconds * 1000), next_stop_departure_time: new Date(startDayTimestamp + firstStopTime.departure_time_seconds * 1000), next_stop_id: firstStopTime.stop_id, next_stop_sequence: firstStopTime.stop_sequence, next_stop_name: firstStopTime.stop.stop_name, shape_dist_traveled: firstStopTime.shape_dist_traveled, state_position: setAsInvisible ? const_1.StatePositionEnum.INVISIBLE : const_1.StatePositionEnum.BEFORE_TRACK, state_process: const_1.StateProcessEnum.PROCESSED }, (firstStopTime.stop_headsign && {
|
|
109
|
+
last_stop_headsign: firstStopTime.stop_headsign,
|
|
110
|
+
}));
|
|
111
|
+
if (positionToUpdate.state_position === const_1.StatePositionEnum.BEFORE_TRACK) {
|
|
112
|
+
positionToUpdate.delay = this.getDelayBeforeTrack(lastPositionDelayed === null || lastPositionDelayed === void 0 ? void 0 : lastPositionDelayed.delay, firstStopTime.departure_time_seconds, position.origin_timestamp.getTime(), startDayTimestamp);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
// if there is tracking 2 position with same origin_timestamp then this position is duplicate
|
|
117
|
+
const statePosition = position.origin_timestamp.getTime() === context.lastPositionOriginTimestamp ||
|
|
118
|
+
tripPositions.positions.findIndex((positionItem) => positionItem.origin_timestamp.getTime() === position.origin_timestamp.getTime() &&
|
|
119
|
+
positionItem.tracking === const_1.PositionTrackingEnum.TRACKING) >= 0
|
|
120
|
+
? const_1.StatePositionEnum.DUPLICATE
|
|
121
|
+
: const_1.StatePositionEnum.AFTER_TRACK;
|
|
122
|
+
const lastShapesAnchorPoint = tripPositions.gtfsData.shapes_anchor_points[tripPositions.gtfsData.shapes_anchor_points.length - 1];
|
|
123
|
+
const lastStopTime = tripPositions.gtfsData.stop_times[tripPositions.gtfsData.stop_times.length - 1];
|
|
124
|
+
// set as invisible if there are some AFTER_TRACK before
|
|
125
|
+
const setAsInvisible = DPPUtils_1.default.isInvisible(tripPositions.agency_name_scheduled, position.origin_timestamp, startTimestamp, [position.lng, position.lat], firstShapesAnchorPoint.coordinates, schedule, tripPositions.gtfs_trip_id, context.lastPositionTracking, position.tracking) && statePosition === const_1.StatePositionEnum.AFTER_TRACK;
|
|
126
|
+
positionToUpdate = Object.assign({ id: position.id, last_stop_arrival_time: new Date(startDayTimestamp + lastShapesAnchorPoint.time_scheduled_seconds * 1000), last_stop_departure_time: new Date(startDayTimestamp + lastShapesAnchorPoint.time_scheduled_seconds * 1000), last_stop_id: lastStopTime.stop_id, last_stop_sequence: lastShapesAnchorPoint.last_stop_sequence, shape_dist_traveled: lastShapesAnchorPoint.shape_dist_traveled, state_position: setAsInvisible ? const_1.StatePositionEnum.INVISIBLE : statePosition, state_process: const_1.StateProcessEnum.PROCESSED }, (lastStopTime.stop_headsign && {
|
|
127
|
+
last_stop_headsign: lastStopTime.stop_headsign,
|
|
128
|
+
}));
|
|
129
|
+
positionToUpdate = ComputeDelayHelper_1.default.updatePositionToUpdate(context, positionToUpdate, position, gtfsRouteType);
|
|
130
|
+
}
|
|
131
|
+
return positionToUpdate;
|
|
132
|
+
}
|
|
133
|
+
static handleTracking(position, positionToUpdate, tripPositions, context, startDayTimestamp, endTimestamp, gtfsRouteType) {
|
|
134
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
const currentPosition = turf.point([position.lng, position.lat], {
|
|
136
|
+
id: position.id,
|
|
137
|
+
origin_time: position.origin_time,
|
|
138
|
+
origin_timestamp: position.origin_timestamp,
|
|
139
|
+
scheduled_timestamp: position.scheduled_timestamp,
|
|
140
|
+
this_stop_id: position.this_stop_id,
|
|
141
|
+
tcp_event: position.tcp_event,
|
|
142
|
+
});
|
|
143
|
+
positionToUpdate = yield this.getEstimatedPoint(tripPositions.gtfsData, currentPosition, context, startDayTimestamp, endTimestamp, tripPositions.gtfs_route_type);
|
|
144
|
+
if (positionToUpdate.state_position !== const_1.StatePositionEnum.MISMATCHED) {
|
|
145
|
+
positionToUpdate = ComputeDelayHelper_1.default.updatePositionToUpdate(context, positionToUpdate, position, gtfsRouteType);
|
|
146
|
+
}
|
|
147
|
+
return positionToUpdate;
|
|
148
|
+
});
|
|
149
|
+
}
|
|
49
150
|
/**
|
|
50
151
|
* Get delay in seconds for positions before track to ensure correct delay propagation
|
|
51
152
|
*/
|
|
@@ -58,34 +159,17 @@ class PositionsManager {
|
|
|
58
159
|
return Math.max(lastPositionDelay, positionOriginTimeInSeconds - departureTimeInSeconds);
|
|
59
160
|
}
|
|
60
161
|
static getStateAndStopSequences(gtfsRouteType, tripStopTimes, thisClosestPoint, positionProperties, context) {
|
|
61
|
-
var _b
|
|
162
|
+
var _b;
|
|
62
163
|
let statePosition = thisClosestPoint.this_stop_sequence ? const_1.StatePositionEnum.AT_STOP : const_1.StatePositionEnum.ON_TRACK;
|
|
63
164
|
let thisStopSequence = thisClosestPoint.this_stop_sequence;
|
|
64
165
|
let lastStopSequence = thisClosestPoint.last_stop_sequence;
|
|
65
166
|
let nextStopSequence = thisClosestPoint.next_stop_sequence;
|
|
66
|
-
if (gtfsRouteType === RouteTypeEnums_1.GTFSRouteTypeEnum.METRO) {
|
|
67
|
-
thisStopSequence = null;
|
|
68
|
-
if (positionProperties.this_stop_id) {
|
|
69
|
-
const thisStopTime = tripStopTimes.find((stopTime) => stopTime.stop_id === positionProperties.this_stop_id);
|
|
70
|
-
if (thisStopTime) {
|
|
71
|
-
statePosition = const_1.StatePositionEnum.AT_STOP;
|
|
72
|
-
thisStopSequence = thisStopTime.stop_sequence;
|
|
73
|
-
lastStopSequence = thisStopSequence;
|
|
74
|
-
nextStopSequence = Math.min(tripStopTimes.length, thisStopSequence + 1);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
if (thisStopSequence === null) {
|
|
78
|
-
statePosition = const_1.StatePositionEnum.ON_TRACK;
|
|
79
|
-
if (context === null || context === void 0 ? void 0 : context.lastPositionTracking) {
|
|
80
|
-
lastStopSequence = (_b = context.lastPositionTracking.properties.last_stop_sequence) !== null && _b !== void 0 ? _b : lastStopSequence;
|
|
81
|
-
nextStopSequence = (_c = context.lastPositionTracking.properties.next_stop_sequence) !== null && _c !== void 0 ? _c : nextStopSequence;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
167
|
// if current positions's TCP event is 'T' and previous position is tracked
|
|
86
|
-
|
|
168
|
+
if (gtfsRouteType !== RouteTypeEnums_1.GTFSRouteTypeEnum.METRO &&
|
|
169
|
+
positionProperties.tcp_event === const_1.TCPEventEnum.TIME &&
|
|
170
|
+
(context === null || context === void 0 ? void 0 : context.lastPositionTracking)) {
|
|
87
171
|
const previousPositionTcpEvent = context.lastPositionTracking.properties.tcp_event;
|
|
88
|
-
const previousLastStopSequence = (
|
|
172
|
+
const previousLastStopSequence = (_b = context.lastPositionTracking.properties.last_stop_sequence) !== null && _b !== void 0 ? _b : 0;
|
|
89
173
|
// if previous position was 'P' and current last stop sequence is lower than the previous last stop sequence
|
|
90
174
|
// or if previous position was 'O', current position is at stop
|
|
91
175
|
// and current last stop sequence is lower than the previous last stop sequence
|
|
@@ -145,10 +229,8 @@ PositionsManager.computePositions = (tripPositions, schedule) => __awaiter(void
|
|
|
145
229
|
const startTimestamp = tripPositions.start_timestamp.getTime();
|
|
146
230
|
const endTimestamp = (_c = (_b = tripPositions.end_timestamp) === null || _b === void 0 ? void 0 : _b.getTime()) !== null && _c !== void 0 ? _c : 0;
|
|
147
231
|
const startDayTimestamp = _a.getStartDayTimestamp(startTimestamp, tripPositions.gtfsData.shapes_anchor_points[0].time_scheduled_seconds);
|
|
148
|
-
const gtfsRouteType = tripPositions.gtfs_route_type;
|
|
149
232
|
const context = PositionsManager.getCurrentContext(tripPositions);
|
|
150
|
-
|
|
151
|
-
return PositionsManager.updatePositions({ tripPositions, startTimestamp, endTimestamp, startDayTimestamp, context, computedPositions, gtfsRouteType }, schedule);
|
|
233
|
+
return PositionsManager.updatePositions({ tripPositions, startTimestamp, endTimestamp, startDayTimestamp, context }, schedule);
|
|
152
234
|
});
|
|
153
235
|
/**
|
|
154
236
|
* Takes position one by one, set proper handler for type of position, and do the process of position
|
|
@@ -159,59 +241,20 @@ PositionsManager.computePositions = (tripPositions, schedule) => __awaiter(void
|
|
|
159
241
|
* @returns {void} - void
|
|
160
242
|
*/
|
|
161
243
|
PositionsManager.updatePositions = (options, schedule) => __awaiter(void 0, void 0, void 0, function* () {
|
|
162
|
-
const
|
|
244
|
+
const computedPositions = [];
|
|
245
|
+
const { tripPositions, startDayTimestamp, startTimestamp, endTimestamp, context } = options;
|
|
246
|
+
const gtfsRouteType = tripPositions.gtfs_route_type;
|
|
163
247
|
for (let i = 0; i < tripPositions.positions.length; i++) {
|
|
164
248
|
const position = tripPositions.positions[i];
|
|
165
249
|
let positionToUpdate = null;
|
|
166
250
|
// situations
|
|
167
251
|
switch (_a.setPositionUpdateHandler(position)) {
|
|
168
252
|
case PositionHandlerEnum_1.PositionHandlerEnum.TRACKING:
|
|
169
|
-
|
|
170
|
-
id: position.id,
|
|
171
|
-
origin_time: position.origin_time,
|
|
172
|
-
origin_timestamp: position.origin_timestamp,
|
|
173
|
-
scheduled_timestamp: position.scheduled_timestamp,
|
|
174
|
-
this_stop_id: position.this_stop_id,
|
|
175
|
-
tcp_event: position.tcp_event,
|
|
176
|
-
});
|
|
177
|
-
positionToUpdate = yield _a.getEstimatedPoint(tripPositions.gtfsData, currentPosition, context, startDayTimestamp, endTimestamp, tripPositions.gtfs_route_type);
|
|
178
|
-
if (positionToUpdate.state_position !== const_1.StatePositionEnum.MISMATCHED) {
|
|
179
|
-
positionToUpdate = ComputeDelayHelper_1.default.updatePositionToUpdate(context, positionToUpdate, position, gtfsRouteType);
|
|
180
|
-
}
|
|
253
|
+
positionToUpdate = yield PositionsManager.handleTracking(position, positionToUpdate, tripPositions, context, startDayTimestamp, endTimestamp, gtfsRouteType);
|
|
181
254
|
break;
|
|
182
255
|
case PositionHandlerEnum_1.PositionHandlerEnum.NOT_TRACKING:
|
|
183
256
|
// if there is no previous positions with tracking status, set position as before_track
|
|
184
|
-
|
|
185
|
-
if (context.lastPositionTracking === null) {
|
|
186
|
-
const firstStopTime = tripPositions.gtfsData.stop_times[0];
|
|
187
|
-
// if there is propagated delay we can use it for new position
|
|
188
|
-
const lastPositionDelayed = context.lastPositionBeforeTrackDelayed;
|
|
189
|
-
// if there is no delay to duplicate and DPP trip is far from start then invisible
|
|
190
|
-
const setAsInvisible = !lastPositionDelayed &&
|
|
191
|
-
DPPUtils_1.default.isInvisible(tripPositions.agency_name_scheduled, position.origin_timestamp, startTimestamp, [position.lng, position.lat], firstShapesAnchorPoint.coordinates, schedule, tripPositions.gtfs_trip_id, context.lastPositionTracking, position.tracking);
|
|
192
|
-
positionToUpdate = Object.assign({ id: position.id, next_stop_arrival_time: new Date(startDayTimestamp + firstStopTime.arrival_time_seconds * 1000), next_stop_departure_time: new Date(startDayTimestamp + firstStopTime.departure_time_seconds * 1000), next_stop_id: firstStopTime.stop_id, next_stop_sequence: firstStopTime.stop_sequence, next_stop_name: firstStopTime.stop.stop_name, shape_dist_traveled: firstStopTime.shape_dist_traveled, state_position: setAsInvisible ? const_1.StatePositionEnum.INVISIBLE : const_1.StatePositionEnum.BEFORE_TRACK, state_process: const_1.StateProcessEnum.PROCESSED }, (firstStopTime.stop_headsign && {
|
|
193
|
-
last_stop_headsign: firstStopTime.stop_headsign,
|
|
194
|
-
}));
|
|
195
|
-
if (positionToUpdate.state_position === const_1.StatePositionEnum.BEFORE_TRACK) {
|
|
196
|
-
positionToUpdate.delay = _a.getDelayBeforeTrack(lastPositionDelayed === null || lastPositionDelayed === void 0 ? void 0 : lastPositionDelayed.delay, firstStopTime.departure_time_seconds, position.origin_timestamp.getTime(), startDayTimestamp);
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
else {
|
|
200
|
-
// if there is tracking 2 position with same origin_timestamp then this position is duplicate
|
|
201
|
-
const statePosition = position.origin_timestamp.getTime() === context.lastPositionOriginTimestamp ||
|
|
202
|
-
tripPositions.positions.findIndex((positionItem) => positionItem.origin_timestamp.getTime() === position.origin_timestamp.getTime() &&
|
|
203
|
-
positionItem.tracking === const_1.PositionTrackingEnum.TRACKING) >= 0
|
|
204
|
-
? const_1.StatePositionEnum.DUPLICATE
|
|
205
|
-
: const_1.StatePositionEnum.AFTER_TRACK;
|
|
206
|
-
const lastShapesAnchorPoint = tripPositions.gtfsData.shapes_anchor_points[tripPositions.gtfsData.shapes_anchor_points.length - 1];
|
|
207
|
-
const lastStopTime = tripPositions.gtfsData.stop_times[tripPositions.gtfsData.stop_times.length - 1];
|
|
208
|
-
// set as invisible if there are some AFTER_TRACK before
|
|
209
|
-
const setAsInvisible = DPPUtils_1.default.isInvisible(tripPositions.agency_name_scheduled, position.origin_timestamp, startTimestamp, [position.lng, position.lat], firstShapesAnchorPoint.coordinates, schedule, tripPositions.gtfs_trip_id, context.lastPositionTracking, position.tracking) && statePosition === const_1.StatePositionEnum.AFTER_TRACK;
|
|
210
|
-
positionToUpdate = Object.assign({ id: position.id, last_stop_arrival_time: new Date(startDayTimestamp + lastShapesAnchorPoint.time_scheduled_seconds * 1000), last_stop_departure_time: new Date(startDayTimestamp + lastShapesAnchorPoint.time_scheduled_seconds * 1000), last_stop_id: lastStopTime.stop_id, last_stop_sequence: lastShapesAnchorPoint.last_stop_sequence, shape_dist_traveled: lastShapesAnchorPoint.shape_dist_traveled, state_position: setAsInvisible ? const_1.StatePositionEnum.INVISIBLE : statePosition, state_process: const_1.StateProcessEnum.PROCESSED }, (lastStopTime.stop_headsign && {
|
|
211
|
-
last_stop_headsign: lastStopTime.stop_headsign,
|
|
212
|
-
}));
|
|
213
|
-
positionToUpdate = ComputeDelayHelper_1.default.updatePositionToUpdate(context, positionToUpdate, position, gtfsRouteType);
|
|
214
|
-
}
|
|
257
|
+
positionToUpdate = PositionsManager.handleNotTracking(tripPositions, context, position, startTimestamp, schedule, positionToUpdate, startDayTimestamp, gtfsRouteType);
|
|
215
258
|
break;
|
|
216
259
|
case PositionHandlerEnum_1.PositionHandlerEnum.CANCELED:
|
|
217
260
|
positionToUpdate = {
|
|
@@ -231,54 +274,7 @@ PositionsManager.updatePositions = (options, schedule) => __awaiter(void 0, void
|
|
|
231
274
|
computedPositions.push(positionToUpdate);
|
|
232
275
|
}
|
|
233
276
|
// set if last position is AFTER_TRACK
|
|
234
|
-
context
|
|
235
|
-
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.AFTER_TRACK ||
|
|
236
|
-
position.state_position === const_1.StatePositionEnum.AFTER_TRACK;
|
|
237
|
-
// set last known BEFORE_TRACK_DELAYED position
|
|
238
|
-
if (position.state_position === const_1.StatePositionEnum.BEFORE_TRACK_DELAYED) {
|
|
239
|
-
context.lastPositionBeforeTrackDelayed = {
|
|
240
|
-
delay: position.delay,
|
|
241
|
-
origin_timestamp: position.origin_timestamp.getTime(),
|
|
242
|
-
};
|
|
243
|
-
}
|
|
244
|
-
// set last position tracking (only for at_stop and on_track)
|
|
245
|
-
if ((positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.AT_STOP ||
|
|
246
|
-
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) === const_1.StatePositionEnum.ON_TRACK ||
|
|
247
|
-
position.state_position === const_1.StatePositionEnum.AT_STOP ||
|
|
248
|
-
position.state_position === const_1.StatePositionEnum.ON_TRACK) {
|
|
249
|
-
context.lastPositionTracking = turf.point([position.lng, position.lat], Object.assign(Object.assign({}, position), positionToUpdate));
|
|
250
|
-
}
|
|
251
|
-
// set new first position at stop streak if this stop seqence is set and it is not same as before
|
|
252
|
-
if (positionToUpdate
|
|
253
|
-
? positionToUpdate.this_stop_sequence &&
|
|
254
|
-
context.atStopStreak.stop_sequence !== positionToUpdate.this_stop_sequence
|
|
255
|
-
: position.this_stop_sequence && context.atStopStreak.stop_sequence !== position.this_stop_sequence) {
|
|
256
|
-
context.atStopStreak.stop_sequence = positionToUpdate
|
|
257
|
-
? positionToUpdate.this_stop_sequence
|
|
258
|
-
: position.this_stop_sequence;
|
|
259
|
-
context.atStopStreak.firstPositionTimestamp = position.origin_timestamp.getTime();
|
|
260
|
-
context.atStopStreak.firstPositionDelay = positionToUpdate ? positionToUpdate.delay : position.delay;
|
|
261
|
-
}
|
|
262
|
-
// IF currently valid updated position / position was processed before
|
|
263
|
-
// and it is NOT AT_STOP
|
|
264
|
-
// then disrupt atStopStreak
|
|
265
|
-
if (positionToUpdate &&
|
|
266
|
-
positionToUpdate.state_position !== const_1.StatePositionEnum.MISMATCHED &&
|
|
267
|
-
!positionToUpdate.this_stop_sequence) {
|
|
268
|
-
context.atStopStreak.stop_sequence = null;
|
|
269
|
-
}
|
|
270
|
-
else if (!positionToUpdate && !position.this_stop_sequence) {
|
|
271
|
-
context.atStopStreak.stop_sequence = null;
|
|
272
|
-
}
|
|
273
|
-
// duplicated or mismatched position should not be considered at all
|
|
274
|
-
if ((positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.DUPLICATE &&
|
|
275
|
-
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.INVISIBLE &&
|
|
276
|
-
(positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.state_position) !== const_1.StatePositionEnum.MISMATCHED) {
|
|
277
|
-
context.lastPositionId = position.id;
|
|
278
|
-
context.lastPositionCanceled = position.is_canceled;
|
|
279
|
-
context.lastPositionOriginTimestamp = position.origin_timestamp.getTime();
|
|
280
|
-
ComputeDelayHelper_1.default.updateContext(context, positionToUpdate, position, gtfsRouteType);
|
|
281
|
-
}
|
|
277
|
+
PositionsManager.handleContext(context, positionToUpdate, position, gtfsRouteType);
|
|
282
278
|
}
|
|
283
279
|
return {
|
|
284
280
|
context,
|