@golemio/pid 2.11.2-dev.1136041742 → 2.11.2-dev.1136470067

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.
@@ -12,4 +12,5 @@ export declare class PropagateTrainDelayTask extends AbstractPropagateDelayTask<
12
12
  private readonly blockStopsRepository;
13
13
  constructor(queuePrefix: string);
14
14
  protected execute(input: IPropagateTrainDelayInput): Promise<void>;
15
+ private getNextGtfsTripId;
15
16
  }
@@ -14,6 +14,7 @@ const Di_1 = require("../../../../ropid-gtfs/ioc/Di");
14
14
  const RopidGtfsContainerToken_1 = require("../../../../ropid-gtfs/ioc/RopidGtfsContainerToken");
15
15
  const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
16
16
  const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
17
+ const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
17
18
  const PropagateTrainDelaySchema_1 = require("../schema/PropagateTrainDelaySchema");
18
19
  const AbstractPropagateDelayTask_1 = require("./abstract/AbstractPropagateDelayTask");
19
20
  class PropagateTrainDelayTask extends AbstractPropagateDelayTask_1.AbstractPropagateDelayTask {
@@ -22,6 +23,18 @@ class PropagateTrainDelayTask extends AbstractPropagateDelayTask_1.AbstractPropa
22
23
  this.queueName = "propagateTrainDelay";
23
24
  this.queueTtl = 5 * 60 * 1000; // 5 minutes
24
25
  this.schema = PropagateTrainDelaySchema_1.PropagateDelayValidationSchema;
26
+ this.getNextGtfsTripId = (gtfs_block_id, start_timestamp) => __awaiter(this, void 0, void 0, function* () {
27
+ const trip = yield this.tripsRepository.findOne({
28
+ attributes: ["gtfs_trip_id"],
29
+ where: {
30
+ gtfs_block_id: gtfs_block_id,
31
+ start_timestamp: { [sequelize_1.Op.gt]: start_timestamp },
32
+ },
33
+ order: [["start_timestamp", "ASC"]],
34
+ raw: true,
35
+ });
36
+ return trip.gtfs_trip_id;
37
+ });
25
38
  this.logger = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.Logger);
26
39
  this.blockStopsRepository = Di_1.RopidGtfsContainer.resolve(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository);
27
40
  this.config = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.SimpleConfig);
@@ -33,14 +46,12 @@ class PropagateTrainDelayTask extends AbstractPropagateDelayTask_1.AbstractPropa
33
46
  for (const delayedPositions of input.data) {
34
47
  const { gtfs_trip_id, gtfs_block_id, vehicle_registration_number, start_timestamp, end_timestamp } = delayedPositions.trip;
35
48
  try {
36
- const blockedTrips = (yield this.blockStopsRepository.get(gtfs_block_id));
37
- const listOfGtfsTrips = Object.keys(blockedTrips);
38
- const indexOfNextGtfsTripId = listOfGtfsTrips.findIndex((tripId) => tripId === gtfs_trip_id) + 1;
39
- const nextGtfsTripId = listOfGtfsTrips.length > indexOfNextGtfsTripId ? listOfGtfsTrips[indexOfNextGtfsTripId] : undefined;
49
+ const nextGtfsTripId = yield this.getNextGtfsTripId(gtfs_block_id, start_timestamp);
40
50
  // if list trip in the block there is nothing to propagate
41
51
  if (!nextGtfsTripId) {
42
52
  continue;
43
53
  }
54
+ const blockedTrips = (yield this.blockStopsRepository.get(gtfs_block_id));
44
55
  const lastStopCurrentTrip = (_c = (_b = (_a = blockedTrips[gtfs_trip_id]) === null || _a === void 0 ? void 0 : _a.trip_stops) === null || _b === void 0 ? void 0 : _b.at(-1)) === null || _c === void 0 ? void 0 : _c.stop_id;
45
56
  const firstStopNextTrip = (_f = (_e = (_d = blockedTrips[nextGtfsTripId]) === null || _d === void 0 ? void 0 : _d.trip_stops) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.stop_id;
46
57
  const requiredTurnaroundSeconds = lastStopCurrentTrip === firstStopNextTrip ? 0 : this.turnaroundEstimateInSeconds;
@@ -1 +1 @@
1
- {"version":3,"file":"PropagateTrainDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PropagateTrainDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "2.11.2-dev.1136041742",
3
+ "version": "2.11.2-dev.1136470067",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",