@golemio/pid 2.11.2 → 2.11.3-dev.1140989718

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/db/example/17_blocked_trains.sql +14 -0
  2. package/dist/integration-engine/ropid-gtfs/helpers/DataCacheManager.js +3 -1
  3. package/dist/integration-engine/ropid-gtfs/helpers/DataCacheManager.js.map +1 -1
  4. package/dist/integration-engine/ropid-gtfs/ioc/Di.js +2 -0
  5. package/dist/integration-engine/ropid-gtfs/ioc/Di.js.map +1 -1
  6. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.d.ts +1 -0
  7. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js +1 -0
  8. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js.map +1 -1
  9. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js +2 -0
  10. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js.map +1 -1
  11. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +7 -4
  12. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
  13. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.js +1 -1
  14. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.js.map +1 -1
  15. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IPropagateTrainDelayInput.d.ts +4 -0
  16. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IPropagateTrainDelayInput.js +3 -0
  17. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IPropagateTrainDelayInput.js.map +1 -0
  18. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/ITripPositionTuple.d.ts +7 -0
  19. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/ITripPositionTuple.js +3 -0
  20. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/ITripPositionTuple.js.map +1 -0
  21. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateTrainDelaySchema.d.ts +10 -0
  22. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateTrainDelaySchema.js +22 -0
  23. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateTrainDelaySchema.js.map +1 -0
  24. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.d.ts +5 -9
  25. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js +25 -49
  26. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js.map +1 -1
  27. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.d.ts +16 -0
  28. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.js +83 -0
  29. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.js.map +1 -0
  30. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +5 -3
  31. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
  32. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.d.ts +14 -0
  33. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.js +64 -0
  34. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.js.map +1 -0
  35. package/docs/implementation_documentation.md +14 -1
  36. package/package.json +2 -2
@@ -0,0 +1,14 @@
1
+ INSERT INTO vehiclepositions_trips (cis_line_id,cis_trip_number,run_number,cis_line_short_name,created_at,gtfs_route_id,gtfs_route_short_name,gtfs_trip_id,id,updated_at,start_cis_stop_id,start_cis_stop_platform_code,start_time,start_timestamp,vehicle_type_id,wheelchair_accessible,create_batch_id,created_by,update_batch_id,updated_by,agency_name_scheduled,origin_route_name,agency_name_real,vehicle_registration_number,gtfs_trip_headsign,start_asw_stop_id,gtfs_route_type,gtfs_block_id,last_position_id,is_canceled,end_timestamp,gtfs_trip_short_name,last_position_context,internal_run_number,internal_route_name,gtfs_date,provider_source_type,gtfs_direction_id) VALUES
2
+ ('none',2525,NULL,'none','2024-01-08 07:49:43.246','L1302','S2','1302_2525_231211','2024-01-08T06:46:00Z_2525','2024-01-08 10:37:23.534',5454014,NULL,'07:46:00','2024-01-08 07:58:00.000',0,true,NULL,NULL,NULL,NULL,'ČESKÉ DRÁHY',NULL,NULL,NULL,'Benešov u Prahy',NULL,2,'1320_2525_231211',498803385,false,'2024-01-08 08:38:00.000','Os 2525','{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":1704699500000,"firstPositionDelay":200},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"arrival_delay":null,"departure_time":null,"departure_delay":null},"lastPositionDelay":null,"lastPositionId":"498803385","lastPositionOriginTimestamp":1704706558000,"lastPositionTracking":{"type":"Feature","properties":{"bearing":279,"delay":169,"id":"498012125","lat":50.1953964,"lng":14.843792,"origin_time":"08:40:42","origin_timestamp":"2024-01-08T07:40:42.000Z","scheduled_timestamp":null,"shape_dist_traveled":39.085,"is_tracked":true,"is_canceled":false,"state_position":"on_track","state_process":"processed","tcp_event":null,"last_stop_sequence":18,"last_stop_id":"U2801Z301","last_stop_arrival_time":"2024-01-08T07:35:00.000Z","last_stop_departure_time":"2024-01-08T07:35:00.000Z","next_stop_arrival_time":"2024-01-08T07:38:00.000Z","next_stop_departure_time":"2024-01-08T07:38:00.000Z","next_stop_id":"U2432Z301","next_stop_sequence":19,"next_stop_name":"Lysá nad Labem","last_stop_name":"Ostrá","valid_to":"2024-01-08T07:45:42.000Z"},"geometry":{"type":"Point","coordinates":[14.843792,50.1953964]}},"lastPositionCanceled":false,"lastPositionBeforeTrackDelayed":null,"lastPositionState":"duplicate","tripId":"2024-01-08T06:46:00Z_2525"}',NULL,NULL,NULL,'1',0),
3
+ ('none',2525,NULL,'S20','2024-01-08 07:49:44.974','L1309','S9','1309_2525_231211','2024-01-08T06:46:00Z_2525_gtfs_trip_id_1309_2525_231211','2024-01-08 10:37:23.534',5454014,NULL,'07:46:00','2024-01-08 08:40:00.000',0,true,NULL,NULL,NULL,NULL,'ČESKÉ DRÁHY',NULL,NULL,NULL,'Benešov u Prahy',NULL,2,'1320_2525_231211',2002,false,'2024-01-08 10:23:00.000','Os 2525','{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":1704706243000,"firstPositionDelay":883},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"arrival_delay":null,"departure_time":null,"departure_delay":null},"lastPositionDelay":null,"lastPositionId":"2002","lastPositionOriginTimestamp":1704706558000,"lastPositionTracking":{"type":"Feature","properties":{"bearing":160,"delay":774,"id":"498802588","lat":49.7809639,"lng":14.68199,"origin_time":"10:35:46","origin_timestamp":"2024-01-08T09:35:46.000Z","scheduled_timestamp":null,"shape_dist_traveled":86.352,"is_tracked":true,"is_canceled":false,"state_position":"on_track","state_process":"processed","tcp_event":null,"last_stop_sequence":36,"last_stop_id":"U1592Z301","last_stop_arrival_time":"2024-01-08T09:16:00.000Z","last_stop_departure_time":"2024-01-08T09:16:00.000Z","next_stop_arrival_time":"2024-01-08T09:23:00.000Z","next_stop_departure_time":"2024-01-08T09:23:00.000Z","next_stop_id":"U1384Z301","next_stop_sequence":37,"next_stop_name":"Benešov u Prahy","last_stop_name":"Mrač","valid_to":"2024-01-08T09:40:46.000Z"},"geometry":{"type":"Point","coordinates":[14.68199,49.7809639]}},"lastPositionCanceled":false,"lastPositionBeforeTrackDelayed":null,"lastPositionState":"duplicate","tripId":"2024-01-08T06:46:00Z_2525_gtfs_trip_id_1309_2525_231211"}',NULL,NULL,NULL,'0',1),
4
+ ('none',2525,NULL,'S20','2024-01-08 07:49:44.980','L1320','S20','1320_2525_231211','2024-01-08T06:46:00Z_2525_gtfs_trip_id_1320_2525_231211','2024-01-08 10:37:23.534',5454014,NULL,'07:46:00','2024-01-08 07:46:00.000',0,true,NULL,NULL,NULL,NULL,'ČESKÉ DRÁHY',NULL,NULL,NULL,'Benešov u Prahy',NULL,2,'1320_2525_231211',498803569,false,'2024-01-08 07:56:00.000','Os 2525','{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":1704696660000,"firstPositionDelay":120},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"arrival_delay":null,"departure_time":null,"departure_delay":null},"lastPositionDelay":null,"lastPositionId":"498803569","lastPositionOriginTimestamp":1704706558000,"lastPositionTracking":{"type":"Feature","properties":{"bearing":308,"delay":137,"id":"497615354","lat":50.0242424,"lng":15.2179174,"origin_time":"07:58:05","origin_timestamp":"2024-01-08T06:58:05.000Z","scheduled_timestamp":null,"shape_dist_traveled":10.375,"is_tracked":true,"is_canceled":false,"state_position":"on_track","state_process":"processed","tcp_event":null,"last_stop_sequence":3,"last_stop_id":"T58007","last_stop_arrival_time":"2024-01-08T06:55:00.000Z","last_stop_departure_time":"2024-01-08T06:55:00.000Z","next_stop_arrival_time":"2024-01-08T06:56:00.000Z","next_stop_departure_time":"2024-01-08T06:56:00.000Z","next_stop_id":"U2816Z301","next_stop_sequence":4,"next_stop_name":"Kolín","last_stop_name":"Kolín seř.n.","valid_to":"2024-01-08T07:03:05.000Z"},"geometry":{"type":"Point","coordinates":[15.2179174,50.0242424]}},"lastPositionCanceled":false,"lastPositionBeforeTrackDelayed":null,"lastPositionState":"duplicate","tripId":"2024-01-08T06:46:00Z_2525_gtfs_trip_id_1320_2525_231211"}',NULL,NULL,NULL,'0',0);
5
+
6
+ -- 1302_2525_231211
7
+ INSERT INTO vehiclepositions_positions (id,created_at,delay,delay_stop_arrival,delay_stop_departure,next_stop_id,shape_dist_traveled,is_canceled,lat,lng,origin_time,origin_timestamp,is_tracked,trips_id,create_batch_id,created_by,update_batch_id,updated_at,updated_by,bearing,cis_last_stop_id,cis_last_stop_sequence,last_stop_id,last_stop_sequence,next_stop_sequence,speed,last_stop_arrival_time,last_stop_departure_time,next_stop_arrival_time,next_stop_departure_time,asw_last_stop_id,state_process,state_position,this_stop_id,this_stop_sequence,tcp_event,last_stop_headsign,last_stop_name,next_stop_name,this_stop_name,valid_to,scheduled_timestamp) VALUES
8
+ (2001,'2024-01-08 08:40:58.686',169,180,240,'U2432Z301',39.085,false,50.1953964,14.843792,'08:40:42','2024-01-08 08:40:42.000',true,'2024-01-08T06:46:00Z_2525',NULL,NULL,NULL,'2024-01-08 08:40:59.136',NULL,279,5453134,11,'U2801Z301',18,19,NULL,'2024-01-08 08:35:00.000','2024-01-08 08:35:00.000','2024-01-08 08:38:00.000','2024-01-08 08:38:00.000',NULL,'processed','on_track',NULL,NULL,NULL,NULL,'Ostrá',NULL,NULL,'2024-01-08 08:45:42.000',NULL);
9
+ -- 1309_2525_231211
10
+ INSERT INTO vehiclepositions_positions (id,created_at,delay,delay_stop_arrival,delay_stop_departure,next_stop_id,shape_dist_traveled,is_canceled,lat,lng,origin_time,origin_timestamp,is_tracked,trips_id,create_batch_id,created_by,update_batch_id,updated_at,updated_by,bearing,cis_last_stop_id,cis_last_stop_sequence,last_stop_id,last_stop_sequence,next_stop_sequence,speed,last_stop_arrival_time,last_stop_departure_time,next_stop_arrival_time,next_stop_departure_time,asw_last_stop_id,state_process,state_position,this_stop_id,this_stop_sequence,tcp_event,last_stop_headsign,last_stop_name,next_stop_name,this_stop_name,valid_to,scheduled_timestamp) VALUES
11
+ (2002,'2024-01-08 08:40:58.686',NULL,180,240,'U2432Z301',0,false,50.1953964,14.843792,'08:40:42','2024-01-08 08:40:42.000',false,'2024-01-08T06:46:00Z_2525_gtfs_trip_id_1309_2525_231211',NULL,NULL,NULL,'2024-01-08 08:40:59.136',NULL,NULL,5453134,11,NULL,NULL,1,NULL,NULL,NULL,'2024-01-08 08:40:00.000','2024-01-08 08:40:00.000',NULL,'input','before_track',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2024-01-08 08:45:42.000',NULL);
12
+
13
+
14
+
@@ -13,6 +13,8 @@ exports.DataCacheManager = void 0;
13
13
  const RegionalBusGtfsCacheRepository_1 = require("../../vehicle-positions/workers/runs/data-access/cache/RegionalBusGtfsCacheRepository");
14
14
  const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
15
15
  const cache_1 = require("../data-access/cache");
16
+ const Di_1 = require("../ioc/Di");
17
+ const RopidGtfsContainerToken_1 = require("../ioc/RopidGtfsContainerToken");
16
18
  class DataCacheManager {
17
19
  static getInstance() {
18
20
  if (!this._instance) {
@@ -23,7 +25,7 @@ class DataCacheManager {
23
25
  constructor() {
24
26
  this.staticFileRepository = new cache_1.StaticFileRedisRepository();
25
27
  this.runTripsRepository = new cache_1.RunTripsRedisRepository();
26
- this.blockStopsRepository = new cache_1.BlockStopsRedisRepository();
28
+ this.blockStopsRepository = Di_1.RopidGtfsContainer.resolve(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository);
27
29
  this.delayComputationRepository = new cache_1.DelayComputationRedisRepository();
28
30
  this.regionalBusGtfsLookupCacheRepository = new RegionalBusGtfsCacheRepository_1.RegionalBusGtfsCacheRepository();
29
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DataCacheManager.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/helpers/DataCacheManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0IAAqI;AACrI,6EAAwE;AACxE,gDAK8B;AAG9B,MAAa,gBAAgB;IAQlB,MAAM,CAAC,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;SAC3C;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;QACI,IAAI,CAAC,oBAAoB,GAAG,IAAI,iCAAyB,EAAE,CAAC;QAC5D,IAAI,CAAC,kBAAkB,GAAG,IAAI,+BAAuB,EAAE,CAAC;QACxD,IAAI,CAAC,oBAAoB,GAAG,IAAI,iCAAyB,EAAE,CAAC;QAC5D,IAAI,CAAC,0BAA0B,GAAG,IAAI,uCAA+B,EAAE,CAAC;QACxE,IAAI,CAAC,oCAAoC,GAAG,IAAI,+DAA8B,EAAE,CAAC;IACrF,CAAC;IAEY,UAAU;;YACnB,IAAI;gBACA,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACrD,MAAM,IAAI,CAAC,oCAAoC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAClE;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,yCAAyC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACjG;QACL,CAAC;KAAA;CACJ;AAnCD,4CAmCC"}
1
+ {"version":3,"file":"DataCacheManager.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/helpers/DataCacheManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0IAAqI;AACrI,6EAAwE;AACxE,gDAK8B;AAC9B,kCAA+C;AAC/C,4EAAyE;AAGzE,MAAa,gBAAgB;IAQlB,MAAM,CAAC,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;SAC3C;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;QACI,IAAI,CAAC,oBAAoB,GAAG,IAAI,iCAAyB,EAAE,CAAC;QAC5D,IAAI,CAAC,kBAAkB,GAAG,IAAI,+BAAuB,EAAE,CAAC;QACxD,IAAI,CAAC,oBAAoB,GAAG,uBAAkB,CAAC,OAAO,CAClD,iDAAuB,CAAC,yBAAyB,CACpD,CAAC;QACF,IAAI,CAAC,0BAA0B,GAAG,IAAI,uCAA+B,EAAE,CAAC;QACxE,IAAI,CAAC,oCAAoC,GAAG,IAAI,+DAA8B,EAAE,CAAC;IACrF,CAAC;IAEY,UAAU;;YACnB,IAAI;gBACA,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACrD,MAAM,IAAI,CAAC,oCAAoC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAClE;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,yCAAyC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACjG;QACL,CAAC;KAAA;CACJ;AArCD,4CAqCC"}
@@ -8,6 +8,7 @@ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
8
8
  const RopidGtfsFacade_1 = require("../RopidGtfsFacade");
9
9
  const RopidGtfsMetadataRepository_1 = require("../RopidGtfsMetadataRepository");
10
10
  const RopidGtfsRepository_1 = require("../data-access/RopidGtfsRepository");
11
+ const BlockStopsRedisRepository_1 = require("../data-access/cache/BlockStopsRedisRepository");
11
12
  const StaticFileRedisRepository_1 = require("../data-access/cache/StaticFileRedisRepository");
12
13
  const DeparturePresetsFacade_1 = require("../facade/DeparturePresetsFacade");
13
14
  const RopidGTFSTransformation_1 = require("../transformations/RopidGTFSTransformation");
@@ -19,6 +20,7 @@ const RopidGtfsContainer = Di_1.PidContainer.createChildContainer();
19
20
  exports.RopidGtfsContainer = RopidGtfsContainer;
20
21
  //#endregion
21
22
  //#region Datasources
23
+ RopidGtfsContainer.registerSingleton(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository, BlockStopsRedisRepository_1.BlockStopsRedisRepository);
22
24
  //#endregion
23
25
  //#region Repositories
24
26
  RopidGtfsContainer.registerSingleton(RopidGtfsContainerToken_1.RopidGtfsContainerToken.StaticFileRedisRepository, StaticFileRedisRepository_1.StaticFileRedisRepository).registerSingleton(RopidGtfsContainerToken_1.RopidGtfsContainerToken.RopidGtfsRepository, RopidGtfsRepository_1.RopidGtfsRepository);
@@ -1 +1 @@
1
- {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAC1C,uEAA4C;AAC5C,qFAA8F;AAC9F,iEAAoF;AACpF,wDAAqD;AACrD,gFAA6E;AAC7E,4EAAyE;AACzE,8FAA2F;AAC3F,6EAA0E;AAC1E,wFAAqF;AACrF,yGAAsG;AACtG,2FAAwF;AACxF,uEAAoE;AAEpE,wBAAwB;AACxB,MAAM,kBAAkB,GAAwB,iBAAY,CAAC,oBAAoB,EAAE,CAAC;AA4B3E,gDAAkB;AA3B3B,YAAY;AAEZ,qBAAqB;AAErB,YAAY;AAEZ,sBAAsB;AACtB,kBAAkB,CAAC,iBAAiB,CAChC,iDAAuB,CAAC,yBAAyB,EACjD,qDAAyB,CAC5B,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACtF,kBAAkB,CAAC,QAAQ,CAAC,iDAAuB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC;AAC9G,YAAY;AAEZ,yBAAyB;AACzB,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC,CAAC;AAC/G,YAAY;AAEZ,gBAAgB;AAChB,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,eAAe,EAAE,iCAAe,CAAC,CAAC;AAC/F,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC;KACzG,QAAQ,CAAC,iDAAuB,CAAC,gBAAgB,EAAE,mCAAgB,EAAE,EAAE,SAAS,EAAE,oBAAS,CAAC,SAAS,EAAE,CAAC;KACxG,gBAAgB,CAAC,iDAAuB,CAAC,kBAAkB,EAAE,IAAI,2BAAkB,CAAC,sBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1G,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,sBAAsB,EAAE,+CAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAC1C,uEAA4C;AAC5C,qFAA8F;AAC9F,iEAAoF;AACpF,wDAAqD;AACrD,gFAA6E;AAC7E,4EAAyE;AACzE,8FAA2F;AAC3F,8FAA2F;AAC3F,6EAA0E;AAC1E,wFAAqF;AACrF,yGAAsG;AACtG,2FAAwF;AACxF,uEAAoE;AAEpE,wBAAwB;AACxB,MAAM,kBAAkB,GAAwB,iBAAY,CAAC,oBAAoB,EAAE,CAAC;AA4B3E,gDAAkB;AA3B3B,YAAY;AAEZ,qBAAqB;AACrB,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AACnH,YAAY;AAEZ,sBAAsB;AACtB,kBAAkB,CAAC,iBAAiB,CAChC,iDAAuB,CAAC,yBAAyB,EACjD,qDAAyB,CAC5B,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,mBAAmB,EAAE,yCAAmB,CAAC,CAAC;AACtF,kBAAkB,CAAC,QAAQ,CAAC,iDAAuB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC;AAC9G,YAAY;AAEZ,yBAAyB;AACzB,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC,CAAC;AAC/G,YAAY;AAEZ,gBAAgB;AAChB,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,eAAe,EAAE,iCAAe,CAAC,CAAC;AAC/F,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC;KACzG,QAAQ,CAAC,iDAAuB,CAAC,gBAAgB,EAAE,mCAAgB,EAAE,EAAE,SAAS,EAAE,oBAAS,CAAC,SAAS,EAAE,CAAC;KACxG,gBAAgB,CAAC,iDAAuB,CAAC,kBAAkB,EAAE,IAAI,2BAAkB,CAAC,sBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1G,kBAAkB,CAAC,iBAAiB,CAAC,iDAAuB,CAAC,sBAAsB,EAAE,+CAAsB,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  declare const RopidGtfsContainerToken: {
2
+ BlockStopsRedisRepository: symbol;
2
3
  RopidGtfsMetadataRepository: symbol;
3
4
  PrecomputedTablesFacade: symbol;
4
5
  StaticFileRedisRepository: symbol;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RopidGtfsContainerToken = void 0;
4
4
  const RopidGtfsContainerToken = {
5
+ BlockStopsRedisRepository: Symbol(),
5
6
  RopidGtfsMetadataRepository: Symbol(),
6
7
  PrecomputedTablesFacade: Symbol(),
7
8
  StaticFileRedisRepository: Symbol(),
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGtfsContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,uBAAuB,GAAG;IAC5B,2BAA2B,EAAE,MAAM,EAAE;IACrC,uBAAuB,EAAE,MAAM,EAAE;IACjC,yBAAyB,EAAE,MAAM,EAAE;IACnC,uBAAuB,EAAE,MAAM,EAAE;IACjC,gBAAgB,EAAE,MAAM,EAAE;IAC1B,kBAAkB,EAAE,MAAM,EAAE;IAC5B,mBAAmB,EAAE,MAAM,EAAE;IAC7B,sBAAsB,EAAE,MAAM,EAAE;IAChC,eAAe,EAAE,MAAM,EAAE;CAC5B,CAAC;AAEO,0DAAuB"}
1
+ {"version":3,"file":"RopidGtfsContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,uBAAuB,GAAG;IAC5B,yBAAyB,EAAE,MAAM,EAAE;IACnC,2BAA2B,EAAE,MAAM,EAAE;IACrC,uBAAuB,EAAE,MAAM,EAAE;IACjC,yBAAyB,EAAE,MAAM,EAAE;IACnC,uBAAuB,EAAE,MAAM,EAAE;IACjC,gBAAgB,EAAE,MAAM,EAAE;IAC1B,kBAAkB,EAAE,MAAM,EAAE;IAC5B,mBAAmB,EAAE,MAAM,EAAE;IAC7B,sBAAsB,EAAE,MAAM,EAAE;IAChC,eAAe,EAAE,MAAM,EAAE;CAC5B,CAAC;AAEO,0DAAuB"}
@@ -9,6 +9,7 @@ const DataRetentionTask_1 = require("./tasks/DataRetentionTask");
9
9
  const DeleteDataTask_1 = require("./tasks/DeleteDataTask");
10
10
  const ProcessRegionalBusPositionsTask_1 = require("./tasks/ProcessRegionalBusPositionsTask");
11
11
  const PropagateDelayTask_1 = require("./tasks/PropagateDelayTask");
12
+ const PropagateTrainDelayTask_1 = require("./tasks/PropagateTrainDelayTask");
12
13
  const RefreshGtfsTripDataTask_1 = require("./tasks/RefreshGtfsTripDataTask");
13
14
  const SaveDataToDBTask_1 = require("./tasks/SaveDataToDBTask");
14
15
  const UpdateDelayTask_1 = require("./tasks/UpdateDelayTask");
@@ -30,6 +31,7 @@ class VPWorker extends workers_1.AbstractWorker {
30
31
  this.registerTask(new UpdateDelayTask_1.UpdateDelayTask(this.getQueuePrefix()));
31
32
  this.registerTask(new ProcessRegionalBusPositionsTask_1.ProcessRegionalBusPositionsTask(this.getQueuePrefix()));
32
33
  this.registerTask(new PropagateDelayTask_1.PropagateDelayTask(this.getQueuePrefix()));
34
+ this.registerTask(new PropagateTrainDelayTask_1.PropagateTrainDelayTask(this.getQueuePrefix()));
33
35
  this.registerTask(new RefreshGtfsTripDataTask_1.RefreshGtfsTripDataTask(this.getQueuePrefix()));
34
36
  this.registerTask(new DataRetentionTask_1.DataRetentionTask(this.getQueuePrefix()));
35
37
  this.registerTask(new DeleteDataTask_1.DeleteDataTask(this.getQueuePrefix()));
@@ -1 +1 @@
1
- {"version":3,"file":"VPWorker.js","sourceRoot":"","sources":["../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.ts"],"names":[],"mappings":";;;AAAA,qCAA2D;AAC3D,iEAA8E;AAC9E,2EAA6F;AAC7F,2CAA0C;AAC1C,iEAA8D;AAC9D,2DAAwD;AACxD,6FAA0F;AAC1F,mEAAgE;AAChE,6EAA0E;AAC1E,+DAA4D;AAC5D,6DAA0D;AAC1D,uEAAoE;AACpE,+EAA4E;AAE5E,MAAa,QAAS,SAAQ,wBAAc;IAGxC;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,uBAAW,CAAC;QAkBtB,iBAAY,GAAG,CAAC,IAAuB,EAAQ,EAAE;YACpD,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAhBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,gBAAW,CAAC,OAAO,CAAC,mCAAgB,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,IAAI,mCAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,2CAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,CAAC,IAAI,mDAAwB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,YAAY,CAAC,IAAI,iCAAe,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,CAAC,IAAI,iEAA+B,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,YAAY,CAAC,IAAI,uCAAkB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,IAAI,iDAAuB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,IAAI,qCAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,YAAY,CAAC,IAAI,+BAAc,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;CAMJ;AAvBD,4BAuBC"}
1
+ {"version":3,"file":"VPWorker.js","sourceRoot":"","sources":["../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.ts"],"names":[],"mappings":";;;AAAA,qCAA2D;AAC3D,iEAA8E;AAC9E,2EAA6F;AAC7F,2CAA0C;AAC1C,iEAA8D;AAC9D,2DAAwD;AACxD,6FAA0F;AAC1F,mEAAgE;AAChE,6EAA0E;AAC1E,6EAA0E;AAC1E,+DAA4D;AAC5D,6DAA0D;AAC1D,uEAAoE;AACpE,+EAA4E;AAE5E,MAAa,QAAS,SAAQ,wBAAc;IAGxC;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,uBAAW,CAAC;QAmBtB,iBAAY,GAAG,CAAC,IAAuB,EAAQ,EAAE;YACpD,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAjBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,gBAAW,CAAC,OAAO,CAAC,mCAAgB,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,IAAI,mCAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,2CAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,CAAC,IAAI,mDAAwB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,YAAY,CAAC,IAAI,iCAAe,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,CAAC,IAAI,iEAA+B,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,YAAY,CAAC,IAAI,uCAAkB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,IAAI,iDAAuB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,IAAI,iDAAuB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,IAAI,qCAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,YAAY,CAAC,IAAI,+BAAc,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;CAMJ;AAxBD,4BAwBC"}
@@ -211,6 +211,12 @@ class TripsRepository extends models_2.PostgresModel {
211
211
  }
212
212
  });
213
213
  this.getPropagateDelayTripsWithPositions = (data) => __awaiter(this, void 0, void 0, function* () {
214
+ const where = {
215
+ gtfs_trip_id: data.nextGtfsTrips.map((element) => element.trip_id),
216
+ };
217
+ if (data.currentRegistrationNumber) {
218
+ where.vehicle_registration_number = data.currentRegistrationNumber;
219
+ }
214
220
  return this.sequelizeModel.findAll({
215
221
  include: [
216
222
  {
@@ -224,10 +230,7 @@ class TripsRepository extends models_2.PostgresModel {
224
230
  },
225
231
  },
226
232
  ],
227
- where: {
228
- gtfs_trip_id: data.nextGtfsTrips.map((element) => element.trip_id),
229
- vehicle_registration_number: data.currentRegistrationNumber,
230
- },
233
+ where: where,
231
234
  order: [["start_timestamp", "ASC"]],
232
235
  });
233
236
  });
@@ -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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"}
@@ -40,7 +40,7 @@ let PublicApiCacheRepository = exports.PublicApiCacheRepository = PublicApiCache
40
40
  yield this.validator.Validate(data);
41
41
  }
42
42
  catch (err) {
43
- throw new golemio_errors_1.GeneralError("PublicApiCacheRepository: data validation failed", err);
43
+ throw new golemio_errors_1.GeneralError(`PublicApiCacheRepository: data validation failed: ${err.message}`, this.constructor.name, err);
44
44
  }
45
45
  try {
46
46
  const newSetKey = `${PublicApiCacheRepository_1.NAMESPACE_PREFIX}:${(0, node_crypto_1.randomBytes)(4).toString("hex")}`;
@@ -1 +1 @@
1
- {"version":3,"file":"PublicApiCacheRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,8FAAmF;AAEnF,0IAAuG;AACvG,wFAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,iEAAgE;AAChE,6CAA0C;AAGnC,IAAM,wBAAwB,mEAA9B,MAAM,wBAAyB,SAAQ,uBAAU;IAGpD;QACI,KAAK,CACD,0BAA0B,EAC1B;YACI,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,0BAAwB,CAAC,gBAAgB;SACpD,EACD,IAAI,uCAAmB,CAAC,0BAA0B,EAAE,iDAAuB,CAAC,CAC/E,CAAC;IACN,CAAC;IAEY,MAAM,CAAC,IAA0B;;YAC1C,IAAI;gBACA,MAAM,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACxC;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,kDAAkD,EAAE,GAAG,CAAC,CAAC;aACnF;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,GAAG,0BAAwB,CAAC,gBAAgB,IAAI,IAAA,yBAAW,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnG,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAE5C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;oBACrB,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;iBACxE;gBAED,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW;gBAC/C,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAEtB,OAAO,SAAS,CAAC;aACpB;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC;aAC1E;QACL,CAAC;KAAA;;AAnCa,yCAAgB,GAAG,qCAA6B,AAAhC,CAAiC;mCADtD,wBAAwB;IADpC,IAAA,qBAAU,GAAE;;GACA,wBAAwB,CAqCpC"}
1
+ {"version":3,"file":"PublicApiCacheRepository.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,8FAAmF;AAEnF,0IAAuG;AACvG,wFAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,iEAAgE;AAChE,6CAA0C;AAGnC,IAAM,wBAAwB,mEAA9B,MAAM,wBAAyB,SAAQ,uBAAU;IAGpD;QACI,KAAK,CACD,0BAA0B,EAC1B;YACI,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,0BAAwB,CAAC,gBAAgB;SACpD,EACD,IAAI,uCAAmB,CAAC,0BAA0B,EAAE,iDAAuB,CAAC,CAC/E,CAAC;IACN,CAAC;IAEY,MAAM,CAAC,IAA0B;;YAC1C,IAAI;gBACA,MAAM,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACxC;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAClB,qDAAqD,GAAG,CAAC,OAAO,EAAE,EAClE,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,GAAG,CACN,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,GAAG,0BAAwB,CAAC,gBAAgB,IAAI,IAAA,yBAAW,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnG,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAE5C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;oBACrB,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;iBACxE;gBAED,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW;gBAC/C,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAEtB,OAAO,SAAS,CAAC;aACpB;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC;aAC1E;QACL,CAAC;KAAA;;AAvCa,yCAAgB,GAAG,qCAA6B,AAAhC,CAAiC;mCADtD,wBAAwB;IADpC,IAAA,qBAAU,GAAE;;GACA,wBAAwB,CAyCpC"}
@@ -0,0 +1,4 @@
1
+ import { ITripPositionTuple } from "./ITripPositionTuple";
2
+ export interface IPropagateTrainDelayInput {
3
+ data: ITripPositionTuple[];
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IPropagateTrainDelayInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPropagateTrainDelayInput.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IPropagateTrainDelayInput.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
2
+ import { Feature, Point } from "@golemio/core/dist/shared/geojson";
3
+ import { IUpdateDelayRunTripsData } from "../data-access/interfaces/TripRepositoryInterfaces";
4
+ export interface ITripPositionTuple {
5
+ position: Feature<Point, IVPTripsPositionAttributes>;
6
+ trip: IUpdateDelayRunTripsData;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ITripPositionTuple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITripPositionTuple.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/ITripPositionTuple.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
2
+ import { Feature, Point } from "@golemio/core/dist/shared/geojson";
3
+ import { IUpdateDelayRunTripsData } from "../data-access/interfaces/TripRepositoryInterfaces";
4
+ import { IPropagateTrainDelayInput } from "../interfaces/IPropagateTrainDelayInput";
5
+ export declare class PropagateDelayValidationSchema implements IPropagateTrainDelayInput {
6
+ data: Array<{
7
+ position: Feature<Point, IVPTripsPositionAttributes>;
8
+ trip: IUpdateDelayRunTripsData;
9
+ }>;
10
+ }
@@ -0,0 +1,22 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PropagateDelayValidationSchema = void 0;
13
+ const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
14
+ class PropagateDelayValidationSchema {
15
+ }
16
+ exports.PropagateDelayValidationSchema = PropagateDelayValidationSchema;
17
+ __decorate([
18
+ (0, class_validator_1.IsArray)(),
19
+ (0, class_validator_1.IsObject)({ each: true }),
20
+ __metadata("design:type", Array)
21
+ ], PropagateDelayValidationSchema.prototype, "data", void 0);
22
+ //# sourceMappingURL=PropagateTrainDelaySchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropagateTrainDelaySchema.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateTrainDelaySchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+EAA8E;AAK9E,MAAa,8BAA8B;CAO1C;AAPD,wEAOC;AAJG;IAFC,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;8BAClB,KAAK;4DAGT"}
@@ -1,21 +1,17 @@
1
- import { AbstractTask } from "@golemio/core/dist/integration-engine/workers";
1
+ import { RunTripsRedisRepository } from "../../../../ropid-gtfs/data-access/cache/RunTripsRedisRepository";
2
2
  import { IPropagateDelayInput } from "../interfaces/IPropagateDelayInput";
3
3
  import { PropagateDelayValidationSchema } from "../schema/PropagateDelaySchema";
4
- export declare class PropagateDelayTask extends AbstractTask<IPropagateDelayInput> {
4
+ import { AbstractPropagateDelayTask } from "./abstract/AbstractPropagateDelayTask";
5
+ export declare class PropagateDelayTask extends AbstractPropagateDelayTask<IPropagateDelayInput> {
5
6
  readonly queueName = "propagateDelay";
6
7
  readonly queueTtl: number;
7
8
  readonly schema: typeof PropagateDelayValidationSchema;
8
- private readonly tripsRepository;
9
- private readonly positionsRepository;
10
- private readonly runTripsRedisRepository;
9
+ protected readonly runTripsRedisRepository: RunTripsRedisRepository;
11
10
  constructor(queuePrefix: string);
12
11
  protected execute(data: IPropagateDelayInput): Promise<void>;
13
12
  private mapDelayedPositionsToRunTrips;
14
13
  private isUpdateDelayRunTripsIdsData;
15
- /**
16
- * Takes all newly computed positions search for next trips in near future and propagate delay for them
17
- */
18
- private propagateDelayForGtfsTrip;
14
+ private isBlockedTrainTripData;
19
15
  private isConnectingLinkIn60Minutes;
20
16
  private isCurrentGtfsTrip;
21
17
  }
@@ -10,14 +10,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.PropagateDelayTask = void 0;
13
- const cache_1 = require("../../../../ropid-gtfs/data-access/cache");
13
+ const RouteTypeEnums_1 = require("../../../../../helpers/RouteTypeEnums");
14
+ const RunTripsRedisRepository_1 = require("../../../../ropid-gtfs/data-access/cache/RunTripsRedisRepository");
14
15
  const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
15
- const workers_1 = require("@golemio/core/dist/integration-engine/workers");
16
+ const QueueManager_1 = require("@golemio/core/dist/integration-engine/queueprocessors/QueueManager");
16
17
  const const_1 = require("../../../../../const");
17
- const PositionsRepository_1 = require("../data-access/PositionsRepository");
18
- const TripsRepository_1 = require("../data-access/TripsRepository");
19
18
  const PropagateDelaySchema_1 = require("../schema/PropagateDelaySchema");
20
- class PropagateDelayTask extends workers_1.AbstractTask {
19
+ const AbstractPropagateDelayTask_1 = require("./abstract/AbstractPropagateDelayTask");
20
+ class PropagateDelayTask extends AbstractPropagateDelayTask_1.AbstractPropagateDelayTask {
21
21
  constructor(queuePrefix) {
22
22
  super(queuePrefix);
23
23
  this.queueName = "propagateDelay";
@@ -25,6 +25,7 @@ class PropagateDelayTask extends workers_1.AbstractTask {
25
25
  this.schema = PropagateDelaySchema_1.PropagateDelayValidationSchema;
26
26
  this.mapDelayedPositionsToRunTrips = (processedPositions, updatedTrips) => {
27
27
  const tripPositionMap = [];
28
+ const trainTripPositionMap = [];
28
29
  for (const batch of processedPositions) {
29
30
  if (batch.context.lastPositionTracking === null) {
30
31
  continue;
@@ -40,8 +41,14 @@ class PropagateDelayTask extends workers_1.AbstractTask {
40
41
  trip: trip,
41
42
  });
42
43
  }
44
+ else if (trip && this.isBlockedTrainTripData(trip)) {
45
+ trainTripPositionMap.push({
46
+ position: batch.context.lastPositionTracking,
47
+ trip: trip,
48
+ });
49
+ }
43
50
  }
44
- return tripPositionMap;
51
+ return { tripPositionMap, trainTripPositionMap };
45
52
  };
46
53
  this.isUpdateDelayRunTripsIdsData = (data) => {
47
54
  const { internal_route_name, internal_run_number, gtfs_trip_id, vehicle_registration_number } = data;
@@ -50,52 +57,21 @@ class PropagateDelayTask extends workers_1.AbstractTask {
50
57
  gtfs_trip_id &&
51
58
  typeof vehicle_registration_number !== "undefined");
52
59
  };
53
- /**
54
- * Takes all newly computed positions search for next trips in near future and propagate delay for them
55
- */
56
- this.propagateDelayForGtfsTrip = (data) => __awaiter(this, void 0, void 0, function* () {
57
- var _a, _b;
58
- const results = yield this.tripsRepository.getPropagateDelayTripsWithPositions(data);
59
- if (!results.length)
60
- return;
61
- let tripsToUpdate = new Map();
62
- let positionsToUpdate = [];
63
- let turnTimeAcc = (+results[0].start_timestamp - new Date(data.currentEndTime).getTime()) / 1000;
64
- for (let i = 0; i < results.length; i++) {
65
- const item = results[i];
66
- const requiredTurnaroundSeconds = (_b = (_a = data.nextGtfsTrips.find((element) => element.trip_id === results[i].gtfs_trip_id)) === null || _a === void 0 ? void 0 : _a.requiredTurnaroundSeconds) !== null && _b !== void 0 ? _b : 0;
67
- turnTimeAcc +=
68
- i > 0
69
- ? (+results[i].start_timestamp - +results[i - 1].end_timestamp) / 1000 - requiredTurnaroundSeconds
70
- : -requiredTurnaroundSeconds;
71
- const delayInSeconds = Math.max(0, data.currentDelay - turnTimeAcc);
72
- tripsToUpdate.set(item.id, {
73
- id: item.id,
74
- last_position_id: item.last_position.id,
75
- last_position_context: Object.assign(Object.assign({}, item.last_position_context), { lastPositionBeforeTrackDelayed: {
76
- delay: delayInSeconds,
77
- origin_timestamp: item.last_position.origin_timestamp,
78
- } }),
79
- });
80
- positionsToUpdate.push({
81
- id: item.last_position.id,
82
- delay: delayInSeconds,
83
- state_position: const_1.StatePositionEnum.BEFORE_TRACK_DELAYED,
84
- state_process: const_1.StateProcessEnum.PROCESSED,
85
- origin_timestamp: item.last_position.origin_timestamp,
86
- });
87
- }
88
- yield this.positionsRepository.bulkSave(positionsToUpdate);
89
- yield this.tripsRepository.bulkSave(Array.from(tripsToUpdate.values()));
90
- });
91
- this.tripsRepository = new TripsRepository_1.TripsRepository();
92
- this.positionsRepository = new PositionsRepository_1.PositionsRepository();
93
- this.runTripsRedisRepository = new cache_1.RunTripsRedisRepository();
60
+ this.isBlockedTrainTripData = (data) => {
61
+ const { gtfs_trip_id, gtfs_block_id, gtfs_route_type } = data;
62
+ return !!(gtfs_trip_id && gtfs_block_id && gtfs_route_type === RouteTypeEnums_1.GTFSRouteTypeEnum.TRAIN);
63
+ };
64
+ this.runTripsRedisRepository = new RunTripsRedisRepository_1.RunTripsRedisRepository();
94
65
  }
95
66
  execute(data) {
96
67
  return __awaiter(this, void 0, void 0, function* () {
97
- const delayedPositionsWithRunTrips = this.mapDelayedPositionsToRunTrips(data.processedPositions, data.trips);
98
- for (const delayedPositions of delayedPositionsWithRunTrips) {
68
+ const { tripPositionMap, trainTripPositionMap } = this.mapDelayedPositionsToRunTrips(data.processedPositions, data.trips);
69
+ if (trainTripPositionMap.length > 0) {
70
+ yield QueueManager_1.QueueManager.sendMessageToExchange(this.queuePrefix, "propagateTrainDelay", {
71
+ data: trainTripPositionMap,
72
+ });
73
+ }
74
+ for (const delayedPositions of tripPositionMap) {
99
75
  const { internal_route_name, internal_run_number, gtfs_trip_id, vehicle_registration_number, start_timestamp } = delayedPositions.trip;
100
76
  const scheduledTrips = yield this.runTripsRedisRepository.get(`${internal_route_name}_${internal_run_number}`);
101
77
  const positionTripWeekDay = new Date(start_timestamp).getDay();
@@ -1 +1 @@
1
- {"version":3,"file":"PropagateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PropagateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
2
+ import { IPropagateTrainDelayInput } from "../interfaces/IPropagateTrainDelayInput";
3
+ import { PropagateDelayValidationSchema } from "../schema/PropagateTrainDelaySchema";
4
+ import { AbstractPropagateDelayTask } from "./abstract/AbstractPropagateDelayTask";
5
+ export declare class PropagateTrainDelayTask extends AbstractPropagateDelayTask<IPropagateTrainDelayInput> {
6
+ readonly queueName = "propagateTrainDelay";
7
+ readonly queueTtl: number;
8
+ readonly schema: typeof PropagateDelayValidationSchema;
9
+ private logger;
10
+ private turnaroundEstimateInSeconds;
11
+ protected config: ISimpleConfig;
12
+ private readonly blockStopsRepository;
13
+ constructor(queuePrefix: string);
14
+ protected execute(input: IPropagateTrainDelayInput): Promise<void>;
15
+ private getNextGtfsTripId;
16
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PropagateTrainDelayTask = void 0;
13
+ const Di_1 = require("../../../../ropid-gtfs/ioc/Di");
14
+ const RopidGtfsContainerToken_1 = require("../../../../ropid-gtfs/ioc/RopidGtfsContainerToken");
15
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
16
+ const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
17
+ const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
18
+ const PropagateTrainDelaySchema_1 = require("../schema/PropagateTrainDelaySchema");
19
+ const AbstractPropagateDelayTask_1 = require("./abstract/AbstractPropagateDelayTask");
20
+ class PropagateTrainDelayTask extends AbstractPropagateDelayTask_1.AbstractPropagateDelayTask {
21
+ constructor(queuePrefix) {
22
+ super(queuePrefix);
23
+ this.queueName = "propagateTrainDelay";
24
+ this.queueTtl = 5 * 60 * 1000; // 5 minutes
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
+ });
38
+ this.logger = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.Logger);
39
+ this.blockStopsRepository = Di_1.RopidGtfsContainer.resolve(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository);
40
+ this.config = ioc_1.IntegrationEngineContainer.resolve(CoreToken_1.CoreToken.SimpleConfig);
41
+ this.turnaroundEstimateInSeconds = this.config.getValue("env.VEHICLE_POSITIONS_TURNAROUND_IN_SECONDS", 30);
42
+ }
43
+ execute(input) {
44
+ var _a, _b, _c, _d, _e, _f;
45
+ return __awaiter(this, void 0, void 0, function* () {
46
+ for (const delayedPositions of input.data) {
47
+ const { gtfs_trip_id, gtfs_block_id, vehicle_registration_number, start_timestamp, end_timestamp } = delayedPositions.trip;
48
+ try {
49
+ const nextGtfsTripId = yield this.getNextGtfsTripId(gtfs_block_id, start_timestamp);
50
+ // if list trip in the block there is nothing to propagate
51
+ if (!nextGtfsTripId) {
52
+ continue;
53
+ }
54
+ const blockedTrips = (yield this.blockStopsRepository.get(gtfs_block_id));
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;
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;
57
+ const requiredTurnaroundSeconds = lastStopCurrentTrip === firstStopNextTrip ? 0 : this.turnaroundEstimateInSeconds;
58
+ yield this.propagateDelayForGtfsTrip({
59
+ currentGtfsTripId: gtfs_trip_id,
60
+ currentOriginTimestamp: delayedPositions.position.properties.origin_timestamp,
61
+ currentDelay: delayedPositions.position.properties.delay,
62
+ currentRegistrationNumber: vehicle_registration_number,
63
+ currentStartTime: start_timestamp,
64
+ currentEndTime: end_timestamp,
65
+ nextGtfsTrips: nextGtfsTripId
66
+ ? [
67
+ {
68
+ trip_id: nextGtfsTripId,
69
+ requiredTurnaroundSeconds: requiredTurnaroundSeconds,
70
+ },
71
+ ]
72
+ : [],
73
+ });
74
+ }
75
+ catch (err) {
76
+ this.logger.warn(`${this.queueName}: could not propagate train delay for GTFS trip: ${gtfs_trip_id} - ${err.message}`);
77
+ }
78
+ }
79
+ });
80
+ }
81
+ }
82
+ exports.PropagateTrainDelayTask = PropagateTrainDelayTask;
83
+ //# sourceMappingURL=PropagateTrainDelayTask.js.map
@@ -0,0 +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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"}
@@ -16,7 +16,9 @@ exports.UpdateDelayTask = void 0;
16
16
  const RopidGTFSStopTimesModel_1 = require("../../../../ropid-gtfs/RopidGTFSStopTimesModel");
17
17
  const RopidGTFSTripsModel_1 = require("../../../../ropid-gtfs/RopidGTFSTripsModel");
18
18
  const cache_1 = require("../../../../ropid-gtfs/data-access/cache");
19
- const Di_1 = require("../../../ioc/Di");
19
+ const Di_1 = require("../../../../ropid-gtfs/ioc/Di");
20
+ const RopidGtfsContainerToken_1 = require("../../../../ropid-gtfs/ioc/RopidGtfsContainerToken");
21
+ const Di_2 = require("../../../ioc/Di");
20
22
  const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
21
23
  const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
22
24
  const queueprocessors_1 = require("@golemio/core/dist/integration-engine/queueprocessors");
@@ -87,13 +89,13 @@ class UpdateDelayTask extends workers_1.AbstractTask {
87
89
  yield this.positionsRepository.bulkSave(positions);
88
90
  yield this.tripsRepository.bulkSave(Array.from(trips.values()));
89
91
  });
90
- this.logger = Di_1.VPContainer.resolve(CoreToken_1.CoreToken.Logger);
92
+ this.logger = Di_2.VPContainer.resolve(CoreToken_1.CoreToken.Logger);
91
93
  this.tripsRepository = new TripsRepository_1.TripsRepository();
92
94
  this.positionsRepository = new PositionsRepository_1.PositionsRepository();
93
95
  this.delayComputationRedisRepository = new cache_1.DelayComputationRedisRepository();
94
96
  const gtfsStopTimesRepository = new RopidGTFSStopTimesModel_1.RopidGTFSStopTimesModel();
95
97
  const gtfsTripsRepository = new RopidGTFSTripsModel_1.RopidGTFSTripsModel();
96
- const blockStopsRedisRepository = new cache_1.BlockStopsRedisRepository();
98
+ const blockStopsRedisRepository = Di_1.RopidGtfsContainer.resolve(RopidGtfsContainerToken_1.RopidGtfsContainerToken.BlockStopsRedisRepository);
97
99
  this.tripStopsManager = new TripStopsManager_1.TripStopsManager(gtfsStopTimesRepository, blockStopsRedisRepository);
98
100
  this.delayComputationManager = new DelayComputationManager_1.DelayComputationManager(gtfsTripsRepository);
99
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { AbstractTask } from "@golemio/core/dist/integration-engine";
2
+ import { PositionsRepository } from "../../data-access/PositionsRepository";
3
+ import { TripsRepository } from "../../data-access/TripsRepository";
4
+ import { IPropagateDelay } from "../../interfaces/VPInterfaces";
5
+ export declare abstract class AbstractPropagateDelayTask<T extends object> extends AbstractTask<T> {
6
+ readonly queueTtl: number;
7
+ protected readonly tripsRepository: TripsRepository;
8
+ protected readonly positionsRepository: PositionsRepository;
9
+ constructor(queuePrefix: string);
10
+ /**
11
+ * Takes all newly computed positions search for next trips in near future and propagate delay for them
12
+ */
13
+ protected propagateDelayForGtfsTrip: (data: IPropagateDelay) => Promise<void>;
14
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AbstractPropagateDelayTask = void 0;
13
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
14
+ const const_1 = require("../../../../../../const");
15
+ const PositionsRepository_1 = require("../../data-access/PositionsRepository");
16
+ const TripsRepository_1 = require("../../data-access/TripsRepository");
17
+ class AbstractPropagateDelayTask extends integration_engine_1.AbstractTask {
18
+ constructor(queuePrefix) {
19
+ super(queuePrefix);
20
+ this.queueTtl = 5 * 60 * 1000; // 5 minutes
21
+ /**
22
+ * Takes all newly computed positions search for next trips in near future and propagate delay for them
23
+ */
24
+ this.propagateDelayForGtfsTrip = (data) => __awaiter(this, void 0, void 0, function* () {
25
+ var _a, _b;
26
+ const results = yield this.tripsRepository.getPropagateDelayTripsWithPositions(data);
27
+ if (!results.length)
28
+ return;
29
+ let tripsToUpdate = new Map();
30
+ let positionsToUpdate = [];
31
+ let turnTimeAcc = (+results[0].start_timestamp - new Date(data.currentEndTime).getTime()) / 1000;
32
+ for (let i = 0; i < results.length; i++) {
33
+ const item = results[i];
34
+ const requiredTurnaroundSeconds = (_b = (_a = data.nextGtfsTrips.find((element) => element.trip_id === results[i].gtfs_trip_id)) === null || _a === void 0 ? void 0 : _a.requiredTurnaroundSeconds) !== null && _b !== void 0 ? _b : 0;
35
+ turnTimeAcc +=
36
+ i > 0
37
+ ? (+results[i].start_timestamp - +results[i - 1].end_timestamp) / 1000 - requiredTurnaroundSeconds
38
+ : -requiredTurnaroundSeconds;
39
+ const delayInSeconds = Math.max(0, data.currentDelay - turnTimeAcc);
40
+ tripsToUpdate.set(item.id, {
41
+ id: item.id,
42
+ last_position_id: item.last_position.id,
43
+ last_position_context: Object.assign(Object.assign({}, item.last_position_context), { lastPositionBeforeTrackDelayed: {
44
+ delay: delayInSeconds,
45
+ origin_timestamp: item.last_position.origin_timestamp,
46
+ } }),
47
+ });
48
+ positionsToUpdate.push({
49
+ id: item.last_position.id,
50
+ delay: delayInSeconds,
51
+ state_position: const_1.StatePositionEnum.BEFORE_TRACK_DELAYED,
52
+ state_process: const_1.StateProcessEnum.PROCESSED,
53
+ origin_timestamp: item.last_position.origin_timestamp,
54
+ });
55
+ }
56
+ yield this.positionsRepository.bulkSave(positionsToUpdate);
57
+ yield this.tripsRepository.bulkSave(Array.from(tripsToUpdate.values()));
58
+ });
59
+ this.tripsRepository = new TripsRepository_1.TripsRepository();
60
+ this.positionsRepository = new PositionsRepository_1.PositionsRepository();
61
+ }
62
+ }
63
+ exports.AbstractPropagateDelayTask = AbstractPropagateDelayTask;
64
+ //# sourceMappingURL=AbstractPropagateDelayTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractPropagateDelayTask.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,8EAAqE;AACrE,mDAAgE;AAChE,+EAA4E;AAC5E,uEAAoE;AAGpE,MAAsB,0BAA6C,SAAQ,iCAAe;IAMtF,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QANP,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;QAWtD;;WAEG;QACO,8BAAyB,GAAG,CAAO,IAAqB,EAAE,EAAE;;YAClE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,IAAI,CAAC,CAAC;YACrF,IAAI,CAAC,OAAO,CAAC,MAAM;gBAAE,OAAO;YAE5B,IAAI,aAAa,GAAG,IAAI,GAAG,EAAkC,CAAC;YAC9D,IAAI,iBAAiB,GAAiC,EAAE,CAAC;YACzD,IAAI,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAgB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;YAElG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACxB,MAAM,yBAAyB,GAC3B,MAAA,MAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,0CAAE,yBAAyB,mCAAI,CAAC,CAAC;gBAEtH,WAAW;oBACP,CAAC,GAAG,CAAC;wBACD,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAgB,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,aAAc,CAAC,GAAG,IAAI,GAAG,yBAAyB;wBACpG,CAAC,CAAC,CAAC,yBAAyB,CAAC;gBAErC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,CAAC;gBAEpE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;oBACvB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;oBACvC,qBAAqB,kCACd,IAAI,CAAC,qBAAsB,KAC9B,8BAA8B,EAAE;4BAC5B,KAAK,EAAE,cAAc;4BACrB,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,gBAAgB;yBACxD,GACJ;iBACJ,CAAC,CAAC;gBAEH,iBAAiB,CAAC,IAAI,CAAC;oBACnB,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;oBACzB,KAAK,EAAE,cAAc;oBACrB,cAAc,EAAE,yBAAiB,CAAC,oBAAoB;oBACtD,aAAa,EAAE,wBAAgB,CAAC,SAAS;oBACzC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,gBAAgB;iBACxD,CAAC,CAAC;aACN;YAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC3D,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAA,CAAC;QAlDE,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,mBAAmB,GAAG,IAAI,yCAAmB,EAAE,CAAC;IACzD,CAAC;CAiDJ;AA3DD,gEA2DC"}
@@ -787,7 +787,7 @@ Worker má na starost zpracování a transformaci polohových dat, výpočet zpo
787
787
  - parametry: `{ processedPositions, trips }`
788
788
  - validační schéma: [PropagateDelaySchema](../src/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateDelaySchema.ts)
789
789
  - závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
790
- - žádné
790
+ - vehicle-positions.vehiclepositions.propagateTrainDelay
791
791
  - datové zdroje
792
792
  - MPVNET, CHAPS TCP, TELMAX TCP
793
793
  - transformace
@@ -795,6 +795,19 @@ Worker má na starost zpracování a transformaci polohových dat, výpočet zpo
795
795
  - [propagateDelayForGtfsTrip](../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.ts#L474): přepočet zpoždění u spojů se zpožděním před tratí
796
796
  - VPPositionsModel `vehiclepositions_positions`
797
797
 
798
+ #### _task: PropagateTrainDelayTask_
799
+
800
+ - vstupní rabbitmq fronta
801
+ - název: vehicle-positions.vehiclepositions.propagateTrainDelay
802
+ - TTL: 5 minut
803
+ - validační schéma: [PropagateDelaySchema](../src/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateTrainDelaySchema.ts)
804
+ - závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
805
+ - žádné
806
+ - datové zdroje
807
+ - MPVNET
808
+ - popis
809
+ - propaguje zpoždění pro následující blokové spoje
810
+
798
811
  #### _task: DeleteDataTask_
799
812
 
800
813
  - vstupní rabbitmq fronta
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "2.11.2",
3
+ "version": "2.11.3-dev.1140989718",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -77,7 +77,7 @@
77
77
  "@golemio/core": ">=1.7.0"
78
78
  },
79
79
  "dependencies": {
80
- "@golemio/ovapi-gtfs-realtime-bindings": "1.2.0",
80
+ "@golemio/ovapi-gtfs-realtime-bindings": "1.2.1-dev.943774882",
81
81
  "@turf/turf": "^6.5.0",
82
82
  "cheap-ruler": "^3.0.2",
83
83
  "csv-parser": "^3.0.0",