@golemio/pid 2.6.7-rc.841816005 → 2.6.7-rc.849158648

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 (166) hide show
  1. package/db/example/03_ropidgtfs_dump.sql +6 -6
  2. package/db/example/12_metro_line_A_gtfs_trips.sql +5 -5
  3. package/db/migrations/postgresql/20230418184824-stop-time-delay-prediction.js +53 -0
  4. package/db/migrations/postgresql/sqls/20230418184824-stop-time-delay-prediction-down.sql +10 -0
  5. package/db/migrations/postgresql/sqls/20230418184824-stop-time-delay-prediction-up.sql +117 -0
  6. package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js +14 -13
  7. package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js.map +1 -1
  8. package/dist/integration-engine/ropid-gtfs/RopidGTFSShapesModel.d.ts +1 -1
  9. package/dist/integration-engine/ropid-gtfs/RopidGTFSShapesModel.js +3 -2
  10. package/dist/integration-engine/ropid-gtfs/RopidGTFSShapesModel.js.map +1 -1
  11. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopTimesModel.d.ts +1 -1
  12. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopTimesModel.js +7 -6
  13. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopTimesModel.js.map +1 -1
  14. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.d.ts +1 -1
  15. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.js +3 -2
  16. package/dist/integration-engine/ropid-gtfs/RopidGTFSStopsModel.js.map +1 -1
  17. package/dist/integration-engine/ropid-gtfs/RopidGTFSTripsModel.d.ts +1 -1
  18. package/dist/integration-engine/ropid-gtfs/RopidGTFSTripsModel.js +5 -4
  19. package/dist/integration-engine/ropid-gtfs/RopidGTFSTripsModel.js.map +1 -1
  20. package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js +19 -13
  21. package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js.map +1 -1
  22. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js +6 -6
  23. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js.map +1 -1
  24. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/MinMaxStopSequencesRepository.js +12 -11
  25. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/MinMaxStopSequencesRepository.js.map +1 -1
  26. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/ServicesCalendarRepository.js +14 -13
  27. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/ServicesCalendarRepository.js.map +1 -1
  28. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js +18 -17
  29. package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js.map +1 -1
  30. package/dist/integration-engine/ropid-gtfs/transformations/RopidGTFSTransformation.js +3 -2
  31. package/dist/integration-engine/ropid-gtfs/transformations/RopidGTFSTransformation.js.map +1 -1
  32. package/dist/integration-engine/ropid-gtfs/utils.js +4 -4
  33. package/dist/integration-engine/ropid-gtfs/utils.js.map +1 -1
  34. package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.d.ts +1 -1
  35. package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js +6 -6
  36. package/dist/integration-engine/ropid-gtfs/workers/railtrack/tasks/data-access/MetroRailtrackGPSRepository.js.map +1 -1
  37. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.d.ts +1 -1
  38. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js +4 -3
  39. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js.map +1 -1
  40. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.d.ts +1 -1
  41. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js +4 -3
  42. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js.map +1 -1
  43. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js +4 -3
  44. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js.map +1 -1
  45. package/dist/integration-engine/shared/RopidMetadataModel.d.ts +2 -1
  46. package/dist/integration-engine/shared/RopidMetadataModel.js +28 -6
  47. package/dist/integration-engine/shared/RopidMetadataModel.js.map +1 -1
  48. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/AlertsGenerator.d.ts +2 -1
  49. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/AlertsGenerator.js +7 -17
  50. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/AlertsGenerator.js.map +1 -1
  51. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleDescriptor.d.ts +3 -13
  52. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleDescriptor.js +6 -6
  53. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/VehicleDescriptor.js.map +1 -1
  54. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/const.d.ts +1 -0
  55. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/const.js +5 -0
  56. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/helpers/const.js.map +1 -0
  57. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/interfaces/GtfsRealtimeInterfaces.d.ts +7 -0
  58. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/interfaces/GtfsRealtimeInterfaces.js +3 -0
  59. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/interfaces/GtfsRealtimeInterfaces.js.map +1 -0
  60. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.d.ts +6 -0
  61. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js +63 -56
  62. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/tasks/GenerateFilesTask.js.map +1 -1
  63. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsMessagesRepository.js +2 -2
  64. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsMessagesRepository.js.map +1 -1
  65. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.js +2 -2
  66. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/CommonRunsRepository.js.map +1 -1
  67. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/MetroRunsMessagesRepository.js +2 -2
  68. package/dist/integration-engine/vehicle-positions/workers/runs/data-access/MetroRunsMessagesRepository.js.map +1 -1
  69. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js +2 -2
  70. package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js.map +1 -1
  71. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsHistoryRepository.js +2 -1
  72. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsHistoryRepository.js.map +1 -1
  73. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js +8 -7
  74. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js.map +1 -1
  75. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/StopTimeDelayPredictionRepository.d.ts +7 -0
  76. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/StopTimeDelayPredictionRepository.js +19 -0
  77. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/StopTimeDelayPredictionRepository.js.map +1 -0
  78. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsHistoryRepository.js +2 -2
  79. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsHistoryRepository.js.map +1 -1
  80. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.d.ts +3 -14
  81. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +107 -88
  82. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
  83. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js +4 -3
  84. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js.map +1 -1
  85. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum.d.ts +6 -0
  86. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum.js +11 -0
  87. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/ProviderSourceTypeEnum.js.map +1 -0
  88. package/dist/integration-engine/vehicle-positions/workers/{gtfs-rt/interfaces/IGtfsRtFeedEntity.d.ts → vehicle-positions/helpers/interfaces/IGtfsRtRecord.d.ts} +6 -4
  89. package/dist/integration-engine/vehicle-positions/workers/{gtfs-rt/interfaces/IGtfsRtFeedEntity.js → vehicle-positions/helpers/interfaces/IGtfsRtRecord.js} +1 -1
  90. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/interfaces/IGtfsRtRecord.js.map +1 -0
  91. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/TransformationInterfaces.d.ts +2 -0
  92. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/DataRetentionTask.js +5 -5
  93. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/DataRetentionTask.js.map +1 -1
  94. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PositionsTransformation.js +2 -0
  95. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PositionsTransformation.js.map +1 -1
  96. package/dist/output-gateway/pid/data-access/DeparturesRepository.js +9 -9
  97. package/dist/output-gateway/pid/data-access/DeparturesRepository.js.map +1 -1
  98. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.d.ts +1 -1
  99. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.js +3 -2
  100. package/dist/output-gateway/pid/models/RopidDeparturesDirectionsModel.js.map +1 -1
  101. package/dist/output-gateway/pid/models/RopidVYMIEventsModel.js +3 -2
  102. package/dist/output-gateway/pid/models/RopidVYMIEventsModel.js.map +1 -1
  103. package/dist/output-gateway/pid/models/RopidVYMIEventsRoutesModel.js +3 -2
  104. package/dist/output-gateway/pid/models/RopidVYMIEventsRoutesModel.js.map +1 -1
  105. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js +2 -1
  106. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js.map +1 -1
  107. package/dist/output-gateway/ropid-gtfs/models/GTFSCalendarModel.js +6 -5
  108. package/dist/output-gateway/ropid-gtfs/models/GTFSCalendarModel.js.map +1 -1
  109. package/dist/output-gateway/ropid-gtfs/models/GTFSRoutesModel.js +4 -3
  110. package/dist/output-gateway/ropid-gtfs/models/GTFSRoutesModel.js.map +1 -1
  111. package/dist/output-gateway/ropid-gtfs/models/GTFSShapesModel.js +4 -3
  112. package/dist/output-gateway/ropid-gtfs/models/GTFSShapesModel.js.map +1 -1
  113. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.js +3 -2
  114. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.js.map +1 -1
  115. package/dist/output-gateway/ropid-gtfs/models/GTFSStopTimesModel.js +5 -4
  116. package/dist/output-gateway/ropid-gtfs/models/GTFSStopTimesModel.js.map +1 -1
  117. package/dist/output-gateway/ropid-gtfs/models/GTFSTripsModel.js +3 -2
  118. package/dist/output-gateway/ropid-gtfs/models/GTFSTripsModel.js.map +1 -1
  119. package/dist/output-gateway/vehicle-positions/data-access/PositionRepository.js +2 -1
  120. package/dist/output-gateway/vehicle-positions/data-access/PositionRepository.js.map +1 -1
  121. package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js +11 -9
  122. package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js.map +1 -1
  123. package/dist/output-gateway/vehicle-positions/data-access/VehicleDescriptorRepository.js +2 -2
  124. package/dist/output-gateway/vehicle-positions/data-access/VehicleDescriptorRepository.js.map +1 -1
  125. package/dist/output-gateway/vehicle-positions/data-access/VehicleTypeRepository.js +2 -1
  126. package/dist/output-gateway/vehicle-positions/data-access/VehicleTypeRepository.js.map +1 -1
  127. package/dist/schema-definitions/const.d.ts +1 -0
  128. package/dist/schema-definitions/const.js +5 -0
  129. package/dist/schema-definitions/const.js.map +1 -0
  130. package/dist/schema-definitions/ropid-departures-directions/index.d.ts +0 -1
  131. package/dist/schema-definitions/ropid-departures-directions/index.js +0 -1
  132. package/dist/schema-definitions/ropid-departures-directions/index.js.map +1 -1
  133. package/dist/schema-definitions/ropid-departures-presets/index.d.ts +0 -1
  134. package/dist/schema-definitions/ropid-departures-presets/index.js +0 -1
  135. package/dist/schema-definitions/ropid-departures-presets/index.js.map +1 -1
  136. package/dist/schema-definitions/ropid-gtfs/index.js +1 -1
  137. package/dist/schema-definitions/ropid-gtfs/index.js.map +1 -1
  138. package/dist/schema-definitions/ropid-gtfs/interfaces/IStopTimesDto.d.ts +3 -0
  139. package/dist/schema-definitions/ropid-gtfs/models/StopTimesDto.d.ts +3 -2
  140. package/dist/schema-definitions/ropid-gtfs/models/StopTimesDto.js +10 -0
  141. package/dist/schema-definitions/ropid-gtfs/models/StopTimesDto.js.map +1 -1
  142. package/dist/schema-definitions/ropid-vymi/index.js +0 -1
  143. package/dist/schema-definitions/ropid-vymi/index.js.map +1 -1
  144. package/dist/schema-definitions/shared/index.d.ts +0 -1
  145. package/dist/schema-definitions/vehicle-positions/index.d.ts +0 -1
  146. package/dist/schema-definitions/vehicle-positions/index.js +0 -1
  147. package/dist/schema-definitions/vehicle-positions/index.js.map +1 -1
  148. package/dist/schema-definitions/vehicle-positions/models/StopTimeDelayPredictionModel.d.ts +11 -0
  149. package/dist/schema-definitions/vehicle-positions/models/StopTimeDelayPredictionModel.js +33 -0
  150. package/dist/schema-definitions/vehicle-positions/models/StopTimeDelayPredictionModel.js.map +1 -0
  151. package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.d.ts +1 -0
  152. package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +4 -0
  153. package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
  154. package/dist/schema-definitions/vehicle-positions/models/index.d.ts +1 -0
  155. package/dist/schema-definitions/vehicle-positions/models/index.js +1 -0
  156. package/dist/schema-definitions/vehicle-positions/models/index.js.map +1 -1
  157. package/dist/schema-definitions/vehicle-positions/models/interfaces/IGtfsRtTripDto.d.ts +32 -0
  158. package/dist/schema-definitions/vehicle-positions/models/interfaces/IGtfsRtTripDto.js +3 -0
  159. package/dist/schema-definitions/vehicle-positions/models/interfaces/IGtfsRtTripDto.js.map +1 -0
  160. package/dist/schema-definitions/vehicle-positions/models/interfaces/IStopTimeDelayPredictionDto.d.ts +7 -0
  161. package/dist/schema-definitions/vehicle-positions/models/interfaces/IStopTimeDelayPredictionDto.js +3 -0
  162. package/dist/schema-definitions/vehicle-positions/models/interfaces/IStopTimeDelayPredictionDto.js.map +1 -0
  163. package/dist/schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel.d.ts +1 -0
  164. package/docs/implementation_documentation.md +31 -0
  165. package/package.json +2 -2
  166. package/dist/integration-engine/vehicle-positions/workers/gtfs-rt/interfaces/IGtfsRtFeedEntity.js.map +0 -1
@@ -180,9 +180,9 @@ VALUES
180
180
  (E'11:42:00',NULL,E'11:42:40',NULL,E'0',E'0',1.41799,NULL,E'U474Z4P',2,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
181
181
  (E'11:47:00',NULL,E'11:47:00',NULL,E'0',E'0',3.36004,NULL,E'U603Z3P',3,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
182
182
  (E'11:48:00',NULL,E'11:48:00',NULL,E'0',E'0',3.82975,NULL,E'U665Z2P',4,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
183
- (E'11:49:00',NULL,E'11:49:00',NULL,E'0',E'0',4.25536,NULL,E'U332Z2P',5,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
183
+ (E'11:49:00',NULL,E'11:50:10',NULL,E'0',E'0',4.25536,NULL,E'U332Z2P',5,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
184
184
  (E'11:51:00',NULL,E'11:51:00',NULL,E'0',E'0',4.89398,NULL,E'U467Z2P',6,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
185
- (E'11:53:00',NULL,E'11:53:00',NULL,E'3',E'3',5.39679,NULL,E'U740Z3P',7,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
185
+ (E'11:53:00',NULL,E'11:54:40',NULL,E'3',E'3',5.39679,NULL,E'U740Z3P',7,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
186
186
  (E'11:55:00',NULL,E'11:55:00',NULL,E'0',E'0',5.83914,NULL,E'U78Z3P',8,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
187
187
  (E'11:58:00',NULL,E'11:58:00',NULL,E'0',E'0',6.93061,NULL,E'U675Z3P',9,E'152_60_201230',-1,E'2021-04-14 05:41:11.186+02',NULL,-1,E'2021-04-14 05:41:11.186+02',NULL,NULL),
188
188
 
@@ -551,14 +551,14 @@ INSERT INTO ropidgtfs_stop_times_actual (trip_id,stop_sequence,arrival_time,arri
551
551
 
552
552
  -- TRIP AT STOP
553
553
  WITH init_values AS (SELECT NOW()::DATE AS now_date)
554
- 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")
554
+ 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","provider_source_type")
555
555
  VALUES
556
- (E'100152',95,37,E'152',E'2019-05-26 10:43:16.991+02',E'L152',E'152',E'152_37_201230',E'2019-05-26T09:13:00Z_XX_152_37_201230',(SELECT CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),47178,E'B',E'11:34:00',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:34:00')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),3,TRUE,NULL,NULL,NULL,NULL,E'ARRIVA City',E'433',E'ARRIVA City',8582,NULL,NULL,3,NULL,100015);
556
+ (E'100152',95,37,E'152',E'2019-05-26 10:43:16.991+02',E'L152',E'152',E'152_37_201230',E'2019-05-26T09:13:00Z_XX_152_37_201230',(SELECT CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),47178,E'B',E'11:34:00',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:34:00')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),3,TRUE,NULL,NULL,NULL,NULL,E'ARRIVA City',E'433',E'ARRIVA City',8582,NULL,NULL,3,NULL,100015,'1');
557
557
 
558
558
  WITH init_values AS (SELECT NOW()::DATE AS now_date)
559
559
  INSERT INTO "vehiclepositions_positions"("created_at","delay","delay_stop_arrival","delay_stop_departure","next_stop_id","shape_dist_traveled","is_canceled","lat","lng","origin_time","origin_timestamp","tracking","trips_id","create_batch_id","created_by","update_batch_id","updated_at","updated_by","id","bearing","cis_last_stop_id","cis_last_stop_sequence","last_stop_id","last_stop_sequence","last_stop_name","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")
560
560
  VALUES
561
- (E'2021-03-31 10:53:58.936142+02',-20,NULL,60,E'U337Z4',1.42,NULL,50.11063,14.50247,E'11:37:10',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),2,E'2019-05-26T09:13:00Z_XX_152_37_201230',NULL,NULL,NULL,(SELECT CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),NULL,100015,NULL,NULL,NULL,'U474Z4P',2,'Vysočanská',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'at_stop','U474Z4P',2);
561
+ (E'2021-03-31 10:53:58.936142+02',-20,-20,NULL,E'U337Z4',1.42,NULL,50.11063,14.50247,E'11:37:10',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),2,E'2019-05-26T09:13:00Z_XX_152_37_201230',NULL,NULL,NULL,(SELECT CONCAT(now_date,'T11:37:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),NULL,100015,NULL,NULL,NULL,'U474Z4P',2,'Vysočanská',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'at_stop','U474Z4P',2);
562
562
 
563
563
  -- TRIP CANCELED
564
564
  WITH init_values AS (SELECT NOW()::DATE AS now_date)
@@ -570,7 +570,7 @@ WITH init_values AS (SELECT NOW()::DATE AS now_date)
570
570
  INSERT INTO "vehiclepositions_positions"("created_at","delay","delay_stop_arrival","delay_stop_departure","next_stop_id","shape_dist_traveled","is_canceled","lat","lng","origin_time","origin_timestamp","tracking","trips_id","create_batch_id","created_by","update_batch_id","updated_at","updated_by","id","bearing","cis_last_stop_id","cis_last_stop_sequence","last_stop_id","last_stop_sequence","last_stop_name","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")
571
571
  VALUES
572
572
  (E'2021-03-31 10:53:58.936142+02',10,NULL,60,E'U337Z4',1,'FALSE',50.11063,14.50247,E'11:42:10',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:42:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),2,E'2019-05-26T09:13:00Z_XX_152_60_201230',NULL,NULL,NULL,(SELECT CONCAT(now_date,'T11:42:10')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),NULL,100016,NULL,NULL,NULL,'U474Z4P',2,'Vysočanská',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'on_track',NULL),
573
- (E'2021-03-31 10:53:58.936142+02',30,NULL,60,E'U337Z4',1,'TRUE',50.11063,14.50247,E'11:42:11',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:42:11')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),0,E'2019-05-26T09:13:00Z_XX_152_60_201230',NULL,NULL,NULL,(SELECT CONCAT(now_date,'T11:42:11')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),NULL,100026,NULL,NULL,NULL,'U474Z4P',2,'Vysočanská',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'canceled',NULL);
573
+ (E'2021-03-31 10:53:58.936142+02',30,60,60,E'U337Z4',1,'TRUE',50.11063,14.50247,E'11:42:11',(SELECT EXTRACT(EPOCH FROM (CONCAT(now_date,'T11:42:11')::TIMESTAMP AT TIME ZONE 'Europe/Prague')) * 1000 FROM init_values),0,E'2019-05-26T09:13:00Z_XX_152_60_201230',NULL,NULL,NULL,(SELECT CONCAT(now_date,'T11:42:11')::TIMESTAMP AT TIME ZONE 'Europe/Prague' FROM init_values),NULL,100026,NULL,NULL,NULL,'U474Z4P',2,'Vysočanská',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'canceled',NULL);
574
574
 
575
575
  -- <<<
576
576
 
@@ -110,11 +110,11 @@ INSERT INTO vehiclepositions_metro_runs_messages (route_name, message_timestamp,
110
110
  ('A', concat(CURRENT_DATE,'T08:20:08Z')::timestamp, '9', '9', '175', '1211', -15, concat(CURRENT_DATE,'T08:19:53Z')::timestamp, (SELECT origin_datetime FROM init_values), (SELECT origin_datetime FROM init_values)),
111
111
  ('A', concat(CURRENT_DATE,'T08:20:13Z')::timestamp, '9', '9', '175', '1209', -15, concat(CURRENT_DATE,'T08:19:58Z')::timestamp, (SELECT origin_datetime FROM init_values), (SELECT origin_datetime FROM init_values));
112
112
 
113
- 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) VALUES
114
- (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_78_220321',concat(CURRENT_DATE,'T10:32:35+02:00_991_78_220321_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'10:32:35',extract(epoch from concat(CURRENT_DATE,'T08:32:35Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Skalka',NULL,1,NULL,30,NULL,extract(epoch from concat(CURRENT_DATE,'T09:00:40Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T10:32:35+02:00_991_78_220321_5_5'), '"}')::json),
115
- (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_77_220901',concat(CURRENT_DATE,'T09:55:10+02:00_991_77_220901_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'09:55:10',extract(epoch from concat(CURRENT_DATE,'T07:55:10Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Nemocnice Motol',NULL,1,NULL,29,NULL,extract(epoch from concat(CURRENT_DATE,'T08:26:20Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T09:55:10+02:00_991_77_220901_5_5'), '"}')::json),
116
- (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_124_201230',concat(CURRENT_DATE,'T11:02:40+02:00_991_124_201230_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'11:02:40',extract(epoch from concat(CURRENT_DATE,'T09:02:40Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Nemocnice Motol',NULL,1,NULL,31,NULL,extract(epoch from concat(CURRENT_DATE,'T09:31:20Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T11:02:40+02:00_991_124_201230_5_5'), '"}')::json),
117
- (NULL,NULL,9,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_294_220901',concat(CURRENT_DATE,'T10:04:35+02:00_991_294_220901_9_9'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'10:04:35',extract(epoch from concat(CURRENT_DATE,'T08:04:35Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Skalka',NULL,1,NULL,32,NULL,extract(epoch from concat(CURRENT_DATE,'T08:32:40Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T10:04:35+02:00_991_294_220901_9_9'), '"}')::json);
113
+ 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,provider_source_type) VALUES
114
+ (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_78_220321',concat(CURRENT_DATE,'T10:32:35+02:00_991_78_220321_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'10:32:35',extract(epoch from concat(CURRENT_DATE,'T08:32:35Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Skalka',NULL,1,NULL,30,NULL,extract(epoch from concat(CURRENT_DATE,'T09:00:40Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T10:32:35+02:00_991_78_220321_5_5'), '"}')::json, '3'),
115
+ (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_77_220901',concat(CURRENT_DATE,'T09:55:10+02:00_991_77_220901_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'09:55:10',extract(epoch from concat(CURRENT_DATE,'T07:55:10Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Nemocnice Motol',NULL,1,NULL,29,NULL,extract(epoch from concat(CURRENT_DATE,'T08:26:20Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T09:55:10+02:00_991_77_220901_5_5'), '"}')::json, '3'),
116
+ (NULL,NULL,5,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_124_201230',concat(CURRENT_DATE,'T11:02:40+02:00_991_124_201230_5_5'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'11:02:40',extract(epoch from concat(CURRENT_DATE,'T09:02:40Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Nemocnice Motol',NULL,1,NULL,31,NULL,extract(epoch from concat(CURRENT_DATE,'T09:31:20Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T11:02:40+02:00_991_124_201230_5_5'), '"}')::json, '3'),
117
+ (NULL,NULL,9,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,'L991','A','991_294_220901',concat(CURRENT_DATE,'T10:04:35+02:00_991_294_220901_9_9'),concat(CURRENT_DATE,'T09:14:51Z')::timestamp,NULL,NULL,'10:04:35',extract(epoch from concat(CURRENT_DATE,'T08:04:35Z')::timestamp)*1000,1,true,NULL,NULL,NULL,NULL,'DP PRAHA','991','DP PRAHA',NULL,'Skalka',NULL,1,NULL,32,NULL,extract(epoch from concat(CURRENT_DATE,'T08:32:40Z')::timestamp)*1000,NULL,concat('{"atStopStreak":{"stop_sequence":null,"firstPositionTimestamp":null,"firstPositionDelay":null},"lastPositionLastStop":{"id":null,"sequence":null,"arrival_time":null,"departure_time":null},"lastPositionDelay":null,"lastPositionId":null,"lastPositionOriginTimestamp":null,"lastPositionTracking":null,"lastPositionCanceled":null,"lastPositionBeforeTrackDelayed":null,"isLastPositionAfterTrack":false,"tripId":"', concat(CURRENT_DATE,'T10:04:35+02:00_991_294_220901_9_9'), '"}')::json, '3');
118
118
 
119
119
  INSERT INTO vehiclepositions_positions (created_at,delay,delay_stop_arrival,delay_stop_departure,next_stop_id,shape_dist_traveled,is_canceled,lat,lng,origin_time,origin_timestamp,tracking,trips_id,create_batch_id,created_by,update_batch_id,updated_at,updated_by,id,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) VALUES
120
120
  (concat(CURRENT_DATE,'T09:14:32Z')::timestamp,NULL,NULL,NULL,'U306Z101P',0,NULL,50.09837,14.36282,'10:20:08',extract(epoch from concat(CURRENT_DATE,'T08:20:08Z')::timestamp)*1000,0,concat(CURRENT_DATE,'T10:32:35+02:00_991_78_220321_5_5'),NULL,NULL,NULL,concat(CURRENT_DATE,'T09:14:32Z')::timestamp,NULL,26,NULL,NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,extract(epoch from concat(CURRENT_DATE,'T08:32:35Z')::timestamp)*1000,extract(epoch from concat(CURRENT_DATE,'T08:32:35Z')::timestamp)*1000,NULL,'processed','before_track','U157Z102P',NULL,NULL,NULL,NULL,NULL,NULL,extract(epoch from concat(CURRENT_DATE,'T09:40:00Z')::timestamp)*1000),
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ var dbm;
4
+ var type;
5
+ var seed;
6
+ var fs = require('fs');
7
+ var path = require('path');
8
+ var Promise;
9
+
10
+ /**
11
+ * We receive the dbmigrate dependency from dbmigrate initially.
12
+ * This enables us to not have to rely on NODE_PATH.
13
+ */
14
+ exports.setup = function(options, seedLink) {
15
+ dbm = options.dbmigrate;
16
+ type = dbm.dataType;
17
+ seed = seedLink;
18
+ Promise = options.Promise;
19
+ };
20
+
21
+ exports.up = function(db) {
22
+ var filePath = path.join(__dirname, 'sqls', '20230418184824-stop-time-delay-prediction-up.sql');
23
+ return new Promise( function( resolve, reject ) {
24
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
25
+ if (err) return reject(err);
26
+ console.log('received data: ' + data);
27
+
28
+ resolve(data);
29
+ });
30
+ })
31
+ .then(function(data) {
32
+ return db.runSql(data);
33
+ });
34
+ };
35
+
36
+ exports.down = function(db) {
37
+ var filePath = path.join(__dirname, 'sqls', '20230418184824-stop-time-delay-prediction-down.sql');
38
+ return new Promise( function( resolve, reject ) {
39
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
40
+ if (err) return reject(err);
41
+ console.log('received data: ' + data);
42
+
43
+ resolve(data);
44
+ });
45
+ })
46
+ .then(function(data) {
47
+ return db.runSql(data);
48
+ });
49
+ };
50
+
51
+ exports._meta = {
52
+ "version": 1
53
+ };
@@ -0,0 +1,10 @@
1
+ drop view v_vehiclepositions_stop_time_delay_prediction;
2
+
3
+ alter table ropidgtfs_stop_times drop column computed_dwell_time_seconds;
4
+ alter table ropidgtfs_stop_times_actual drop column computed_dwell_time_seconds;
5
+
6
+ alter table vehiclepositions_trips drop column provider_source_type;
7
+ alter table vehiclepositions_trips_history drop column provider_source_type;
8
+
9
+ drop function calculate_dwell_time_seconds (varchar, varchar);
10
+ drop function predict_delay_seconds (int, smallint, varchar);
@@ -0,0 +1,117 @@
1
+ -- Functions
2
+ create function calculate_dwell_time_seconds(arrival_time varchar, departure_time varchar) RETURNS int AS $$
3
+ select extract(epoch from departure_time::interval) - extract(epoch from arrival_time::interval)
4
+ $$ LANGUAGE SQL IMMUTABLE;
5
+
6
+ create function predict_delay_seconds(position_delay int, stop_dwell_time_seconds smallint, provider_source_type varchar) RETURNS int AS $$
7
+ declare
8
+ result int;
9
+ BEGIN
10
+ select
11
+ position_delay - least(greatest(0, position_delay), greatest(0, stop_dwell_time_seconds - 60))
12
+ into result;
13
+
14
+ if provider_source_type = '1' then -- http
15
+ return greatest(0, result);
16
+ else
17
+ return result;
18
+ end if;
19
+ END;
20
+ $$ LANGUAGE plpgsql;
21
+
22
+ comment on function predict_delay_seconds is '
23
+ Predicts the delay of a vehicle at a stop.
24
+ If the provider source type is HTTP, the predicted delay should never be negative (ahead of schedule).
25
+ ';
26
+
27
+
28
+ -- Tables
29
+ alter table ropidgtfs_stop_times_actual
30
+ add column computed_dwell_time_seconds smallint not null GENERATED ALWAYS AS (calculate_dwell_time_seconds(arrival_time, departure_time)) stored;
31
+
32
+ alter table ropidgtfs_stop_times
33
+ add column computed_dwell_time_seconds smallint;
34
+
35
+ alter table vehiclepositions_trips
36
+ add column provider_source_type varchar(1) not null default '0';
37
+
38
+ alter table vehiclepositions_trips_history
39
+ add column provider_source_type varchar(1) not null default '0';
40
+
41
+ comment on column vehiclepositions_trips.provider_source_type is '
42
+ 0 - unknown
43
+ 1 - http
44
+ 2 - tcp common
45
+ 3 - tcp metro
46
+ ';
47
+
48
+ update vehiclepositions_trips vt
49
+ set provider_source_type =
50
+ case when vp.tcp_event is not null
51
+ then '2' -- tcp common
52
+ when vp.tcp_event is null and vp.scheduled_timestamp is not null
53
+ then '3' -- tcp metro
54
+ else '1' -- http
55
+ end
56
+ from vehiclepositions_positions vp
57
+ where vp.id = vt.last_position_id;
58
+
59
+
60
+ -- Views
61
+ create view v_vehiclepositions_stop_time_delay_prediction as
62
+ with recursive stop_times as (
63
+ select
64
+ rst.trip_id,
65
+ vt.provider_source_type,
66
+ vp.delay,
67
+ coalesce(vp.last_stop_sequence, 1) as initial_stop_sequence,
68
+ vp.state_position,
69
+ rst.stop_sequence,
70
+ rst.stop_id,
71
+ rst.computed_dwell_time_seconds,
72
+ case when vp.last_stop_sequence is null
73
+ then vp.delay
74
+ else vp.delay_stop_arrival
75
+ end as arrival_delay_seconds,
76
+ case when vp.last_stop_sequence is null
77
+ then predict_delay_seconds(vp.delay, rst.computed_dwell_time_seconds, vt.provider_source_type)
78
+ when vp.state_position = 'at_stop'
79
+ then case when vt.provider_source_type = '1' then greatest(0, vp.delay) else vp.delay end
80
+ else vp.delay_stop_departure
81
+ end as departure_delay_seconds
82
+ from ropidgtfs_stop_times rst
83
+ inner join vehiclepositions_trips vt on vt.gtfs_trip_id = rst.trip_id
84
+ inner join vehiclepositions_positions vp on vp.id = vt.last_position_id
85
+ and (vp.valid_to is null or vp.valid_to >= extract(epoch from now()) * 1000)
86
+ where
87
+ vt.gtfs_trip_id is not null
88
+ and rst.stop_sequence = coalesce(vp.last_stop_sequence, 1)
89
+ union all
90
+ select
91
+ rst.trip_id,
92
+ previous_row.provider_source_type,
93
+ previous_row.delay,
94
+ previous_row.initial_stop_sequence,
95
+ previous_row.state_position,
96
+ rst.stop_sequence,
97
+ rst.stop_id,
98
+ rst.computed_dwell_time_seconds,
99
+ case when rst.stop_sequence - previous_row.initial_stop_sequence = 1 and previous_row.state_position != 'at_stop'
100
+ then previous_row.delay
101
+ else previous_row.departure_delay_seconds
102
+ end as arrival_delay_seconds,
103
+ predict_delay_seconds(
104
+ case when rst.stop_sequence - previous_row.initial_stop_sequence = 1 and previous_row.state_position != 'at_stop' then previous_row.delay else previous_row.departure_delay_seconds end,
105
+ rst.computed_dwell_time_seconds,
106
+ previous_row.provider_source_type
107
+ ) as departure_delay_seconds
108
+ from stop_times previous_row
109
+ inner join ropidgtfs_stop_times rst on rst.trip_id = previous_row.trip_id and rst.stop_sequence = previous_row.stop_sequence + 1
110
+ )
111
+ select trip_id, stop_sequence, stop_id, arrival_delay_seconds, departure_delay_seconds
112
+ from stop_times
113
+ order by trip_id, stop_sequence;
114
+
115
+ comment on view v_vehiclepositions_stop_time_delay_prediction is '
116
+ This view contains the predicted delay of a vehicle at each stop.
117
+ ';
@@ -16,6 +16,7 @@ exports.RopidGTFSMetadataModel = exports.DatasetEnum = void 0;
16
16
  const precomputed_1 = require("./data-access/precomputed");
17
17
  const utils_1 = require("./utils");
18
18
  const shared_1 = require("../shared");
19
+ const const_1 = require("../../schema-definitions/const");
19
20
  const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
20
21
  const connectors_1 = require("@golemio/core/dist/integration-engine/connectors");
21
22
  const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
@@ -53,7 +54,7 @@ class RopidGTFSMetadataModel extends shared_1.RopidMetadataModel {
53
54
  WHERE table_schema NOT IN ('pg_catalog', 'information_schema')
54
55
  AND table_type = 'BASE TABLE'
55
56
  AND table_name in (${tablesArray.join(",")})
56
- AND table_schema = '${ropid_gtfs_1.RopidGTFS.pgSchema}';
57
+ AND table_schema = '${const_1.PG_SCHEMA}';
57
58
  `, { type: sequelize_1.default.QueryTypes.SELECT });
58
59
  helpers_1.log.info(`Datasets: total rows for ${dataset}: ${JSON.stringify(result)}`);
59
60
  if (!result || !result.length || result.some((table) => table.total === 0)) {
@@ -179,19 +180,19 @@ class RopidGTFSMetadataModel extends shared_1.RopidMetadataModel {
179
180
  ? (0, utils_1.buildAlterIndexQuery)(ropid_gtfs_1.RopidGTFS[table.dataValues.tn].modelIndexOptions)
180
181
  : "";
181
182
  yield connection.query(`
182
- LOCK "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName} IN EXCLUSIVE MODE;
183
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} NO INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
183
+ LOCK "${const_1.PG_SCHEMA}".${pgTableName} IN EXCLUSIVE MODE;
184
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameActual} NO INHERIT "${const_1.PG_SCHEMA}".${pgTableName};
184
185
  ${indexQuery}
185
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD create_batch_id int8 NULL;
186
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD COLUMN created_at timestamptz NULL DEFAULT now();
187
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD created_by varchar(150) NULL;
188
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD update_batch_id int8 NULL;
189
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD COLUMN updated_at timestamptz NULL DEFAULT now();
190
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} ADD updated_by varchar(150) NULL;
191
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} RENAME TO ${tableNameDrop};
192
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameTmp} RENAME TO ${tableNameActual};
193
- ALTER TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameActual} INHERIT "${ropid_gtfs_1.RopidGTFS.pgSchema}".${pgTableName};
194
- DROP TABLE "${ropid_gtfs_1.RopidGTFS.pgSchema}".${tableNameDrop};
186
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD create_batch_id int8 NULL;
187
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD COLUMN created_at timestamptz NULL DEFAULT now();
188
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD created_by varchar(150) NULL;
189
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD update_batch_id int8 NULL;
190
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD COLUMN updated_at timestamptz NULL DEFAULT now();
191
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} ADD updated_by varchar(150) NULL;
192
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameActual} RENAME TO ${tableNameDrop};
193
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameTmp} RENAME TO ${tableNameActual};
194
+ ALTER TABLE "${const_1.PG_SCHEMA}".${tableNameActual} INHERIT "${const_1.PG_SCHEMA}".${pgTableName};
195
+ DROP TABLE "${const_1.PG_SCHEMA}".${tableNameDrop};
195
196
  `, { transaction: t });
196
197
  }
197
198
  });
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSMetadataModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RopidGTFSMetadataModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine";
2
- import Sequelize from "@golemio/core/dist/shared/sequelize";
3
2
  import { Validator } from "@golemio/core/dist/shared/golemio-validator";
3
+ import Sequelize from "@golemio/core/dist/shared/sequelize";
4
4
  export declare class RopidGTFSShapesModel extends PostgresModel implements IModel {
5
5
  /** Model name */
6
6
  name: string;
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RopidGTFSShapesModel = void 0;
4
+ const const_1 = require("../../schema-definitions/const");
4
5
  const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
6
+ const ShapeDto_1 = require("../../schema-definitions/ropid-gtfs/models/ShapeDto");
5
7
  const integration_engine_1 = require("@golemio/core/dist/integration-engine");
6
8
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
7
- const ShapeDto_1 = require("../../schema-definitions/ropid-gtfs/models/ShapeDto");
8
9
  class RopidGTFSShapesModel extends integration_engine_1.PostgresModel {
9
10
  constructor() {
10
11
  super(ropid_gtfs_1.RopidGTFS.shapes.name + "Model", {
11
12
  outputSequelizeAttributes: ShapeDto_1.ShapeDto.attributeModel,
12
13
  pgTableName: ropid_gtfs_1.RopidGTFS.shapes.pgTableName,
13
- pgSchema: ropid_gtfs_1.RopidGTFS.pgSchema,
14
+ pgSchema: const_1.PG_SCHEMA,
14
15
  savingType: "insertOnly",
15
16
  }, new golemio_validator_1.JSONSchemaValidator(ropid_gtfs_1.RopidGTFS.shapes.name + "ModelValidator", ShapeDto_1.ShapeDto.jsonSchema));
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSShapesModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSShapesModel.ts"],"names":[],"mappings":";;;AAAA,oEAA4C;AAC5C,8EAA8E;AAE9E,mFAA6F;AAC7F,kFAA2D;AAE3D,MAAa,oBAAqB,SAAQ,kCAAa;IAYnD;QACI,KAAK,CACD,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,EAC/B;YACI,yBAAyB,EAAE,mBAAQ,CAAC,cAAc;YAClD,WAAW,EAAE,sBAAS,CAAC,MAAM,CAAC,WAAW;YACzC,QAAQ,EAAE,sBAAS,CAAC,QAAQ;YAC5B,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,gBAAgB,EAAE,mBAAQ,CAAC,UAAU,CAAC,CACzF,CAAC;IACN,CAAC;CACJ;AAxBD,oDAwBC"}
1
+ {"version":3,"file":"RopidGTFSShapesModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSShapesModel.ts"],"names":[],"mappings":";;;AAAA,0DAAuC;AACvC,oEAA4C;AAC5C,kFAA2D;AAC3D,8EAA8E;AAC9E,mFAA6F;AAG7F,MAAa,oBAAqB,SAAQ,kCAAa;IAYnD;QACI,KAAK,CACD,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,EAC/B;YACI,yBAAyB,EAAE,mBAAQ,CAAC,cAAc;YAClD,WAAW,EAAE,sBAAS,CAAC,MAAM,CAAC,WAAW;YACzC,QAAQ,EAAE,iBAAS;YACnB,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,MAAM,CAAC,IAAI,GAAG,gBAAgB,EAAE,mBAAQ,CAAC,UAAU,CAAC,CACzF,CAAC;IACN,CAAC;CACJ;AAxBD,oDAwBC"}
@@ -1,6 +1,6 @@
1
1
  import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine";
2
- import Sequelize from "@golemio/core/dist/shared/sequelize";
3
2
  import { Validator } from "@golemio/core/dist/shared/golemio-validator";
3
+ import Sequelize from "@golemio/core/dist/shared/sequelize";
4
4
  export interface ITripStopsResult {
5
5
  trip_id: string;
6
6
  trip_stops: ITripStop[];
@@ -13,19 +13,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.RopidGTFSStopTimesModel = void 0;
16
+ const const_1 = require("../../schema-definitions/const");
16
17
  const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
18
+ const StopTimesDto_1 = require("../../schema-definitions/ropid-gtfs/models/StopTimesDto");
17
19
  const integration_engine_1 = require("@golemio/core/dist/integration-engine");
18
- const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
19
- const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
20
20
  const connectors_1 = require("@golemio/core/dist/integration-engine/connectors");
21
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
21
22
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
22
- const StopTimesDto_1 = require("../../schema-definitions/ropid-gtfs/models/StopTimesDto");
23
+ const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
23
24
  class RopidGTFSStopTimesModel extends integration_engine_1.PostgresModel {
24
25
  constructor() {
25
26
  super(ropid_gtfs_1.RopidGTFS.stop_times.name + "Model", {
26
27
  outputSequelizeAttributes: ropid_gtfs_1.RopidGTFS.stop_times.outputSequelizeAttributes,
27
28
  pgTableName: ropid_gtfs_1.RopidGTFS.stop_times.pgTableName,
28
- pgSchema: ropid_gtfs_1.RopidGTFS.pgSchema,
29
+ pgSchema: const_1.PG_SCHEMA,
29
30
  savingType: "insertOnly",
30
31
  }, new golemio_validator_1.JSONSchemaValidator(ropid_gtfs_1.RopidGTFS.stop_times.name + "ModelValidator", StopTimesDto_1.StopTimesDto.jsonSchema));
31
32
  this.findTripStops = (tripIds) => __awaiter(this, void 0, void 0, function* () {
@@ -36,8 +37,8 @@ class RopidGTFSStopTimesModel extends integration_engine_1.PostgresModel {
36
37
  json_build_object('stop_id', t1.stop_id, 'stop_sequence', t1.stop_sequence, 'cis', t2.cis)
37
38
  ORDER BY t1.stop_sequence
38
39
  )) as trip_stops
39
- FROM ${ropid_gtfs_1.RopidGTFS.pgSchema}."${this.tableName}" t1
40
- LEFT JOIN ${ropid_gtfs_1.RopidGTFS.pgSchema}."${ropid_gtfs_1.RopidGTFS.cis_stops.pgTableName}" t2
40
+ FROM ${const_1.PG_SCHEMA}."${this.tableName}" t1
41
+ LEFT JOIN ${const_1.PG_SCHEMA}."${ropid_gtfs_1.RopidGTFS.cis_stops.pgTableName}" t2
41
42
  on t1.stop_id = CONCAT('U',REPLACE(id,'/','Z'))
42
43
  WHERE t1.trip_id in (${tripIds.map((tripId) => "'" + tripId + "'").join(",")})
43
44
  GROUP BY t1.trip_id
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSStopTimesModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSStopTimesModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oEAA4C;AAC5C,8EAA8E;AAC9E,oFAA4D;AAC5D,6EAAuE;AACvE,iFAAqF;AACrF,mFAA6F;AAC7F,0FAAmE;AAanE,MAAa,uBAAwB,SAAQ,kCAAa;IAYtD;QACI,KAAK,CACD,sBAAS,CAAC,UAAU,CAAC,IAAI,GAAG,OAAO,EACnC;YACI,yBAAyB,EAAE,sBAAS,CAAC,UAAU,CAAC,yBAAyB;YACzE,WAAW,EAAE,sBAAS,CAAC,UAAU,CAAC,WAAW;YAC7C,QAAQ,EAAE,sBAAS,CAAC,QAAQ;YAC5B,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,UAAU,CAAC,IAAI,GAAG,gBAAgB,EAAE,2BAAY,CAAC,UAAU,CAAC,CACjG,CAAC;QAGC,kBAAa,GAAG,CAAO,OAAiB,EAA+B,EAAE;YAC5E,MAAM,UAAU,GAAG,8BAAiB,CAAC,aAAa,EAAE,CAAC;YACrD,IAAI;gBACA,OAAO,MAAM,UAAU,CAAC,KAAK,CACzB;;;;;2BAKW,sBAAS,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS;gCAChC,sBAAS,CAAC,QAAQ,KAAK,sBAAS,CAAC,SAAS,CAAC,WAAW;;2CAE3C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;iBAE/E,EACD,EAAE,IAAI,EAAE,mBAAS,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CACnD,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,4BAAW,CAAC,wBAAwB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;aACpF;QACL,CAAC,CAAA,CAAC;IAtBF,CAAC;CAuBJ;AA9CD,0DA8CC"}
1
+ {"version":3,"file":"RopidGTFSStopTimesModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSStopTimesModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,oEAA4C;AAC5C,0FAAmE;AACnE,8EAA8E;AAC9E,iFAAqF;AACrF,6EAAuE;AACvE,mFAA6F;AAC7F,oFAA4D;AAa5D,MAAa,uBAAwB,SAAQ,kCAAa;IAYtD;QACI,KAAK,CACD,sBAAS,CAAC,UAAU,CAAC,IAAI,GAAG,OAAO,EACnC;YACI,yBAAyB,EAAE,sBAAS,CAAC,UAAU,CAAC,yBAAyB;YACzE,WAAW,EAAE,sBAAS,CAAC,UAAU,CAAC,WAAW;YAC7C,QAAQ,EAAE,iBAAS;YACnB,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,UAAU,CAAC,IAAI,GAAG,gBAAgB,EAAE,2BAAY,CAAC,UAAU,CAAC,CACjG,CAAC;QAGC,kBAAa,GAAG,CAAO,OAAiB,EAA+B,EAAE;YAC5E,MAAM,UAAU,GAAG,8BAAiB,CAAC,aAAa,EAAE,CAAC;YACrD,IAAI;gBACA,OAAO,MAAM,UAAU,CAAC,KAAK,CACzB;;;;;2BAKW,iBAAS,KAAK,IAAI,CAAC,SAAS;gCACvB,iBAAS,KAAK,sBAAS,CAAC,SAAS,CAAC,WAAW;;2CAElC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;iBAE/E,EACD,EAAE,IAAI,EAAE,mBAAS,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CACnD,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,4BAAW,CAAC,wBAAwB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;aACpF;QACL,CAAC,CAAA,CAAC;IAtBF,CAAC;CAuBJ;AA9CD,0DA8CC"}
@@ -1,6 +1,6 @@
1
1
  import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine";
2
- import Sequelize from "@golemio/core/dist/shared/sequelize";
3
2
  import { Validator } from "@golemio/core/dist/shared/golemio-validator";
3
+ import Sequelize from "@golemio/core/dist/shared/sequelize";
4
4
  export declare class RopidGTFSStopsModel extends PostgresModel implements IModel {
5
5
  /** Model name */
6
6
  name: string;
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RopidGTFSStopsModel = void 0;
4
+ const const_1 = require("../../schema-definitions/const");
4
5
  const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
6
+ const StopDto_1 = require("../../schema-definitions/ropid-gtfs/models/StopDto");
5
7
  const integration_engine_1 = require("@golemio/core/dist/integration-engine");
6
8
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
7
- const StopDto_1 = require("../../schema-definitions/ropid-gtfs/models/StopDto");
8
9
  class RopidGTFSStopsModel extends integration_engine_1.PostgresModel {
9
10
  constructor() {
10
11
  super(ropid_gtfs_1.RopidGTFS.stops.name + "Model", {
11
12
  outputSequelizeAttributes: ropid_gtfs_1.RopidGTFS.stops.outputSequelizeAttributes,
12
13
  pgTableName: ropid_gtfs_1.RopidGTFS.stops.pgTableName,
13
- pgSchema: ropid_gtfs_1.RopidGTFS.pgSchema,
14
+ pgSchema: const_1.PG_SCHEMA,
14
15
  savingType: "insertOnly",
15
16
  }, new golemio_validator_1.JSONSchemaValidator(ropid_gtfs_1.RopidGTFS.stops.name + "ModelValidator", StopDto_1.StopDto.jsonSchema));
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSStopsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSStopsModel.ts"],"names":[],"mappings":";;;AAAA,oEAA4C;AAC5C,8EAA8E;AAE9E,mFAA6F;AAC7F,gFAAyD;AAEzD,MAAa,mBAAoB,SAAQ,kCAAa;IAYlD;QACI,KAAK,CACD,sBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,EAC9B;YACI,yBAAyB,EAAE,sBAAS,CAAC,KAAK,CAAC,yBAAyB;YACpE,WAAW,EAAE,sBAAS,CAAC,KAAK,CAAC,WAAW;YACxC,QAAQ,EAAE,sBAAS,CAAC,QAAQ;YAC5B,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,gBAAgB,EAAE,iBAAO,CAAC,UAAU,CAAC,CACvF,CAAC;IACN,CAAC;CACJ;AAxBD,kDAwBC"}
1
+ {"version":3,"file":"RopidGTFSStopsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSStopsModel.ts"],"names":[],"mappings":";;;AAAA,0DAAuC;AACvC,oEAA4C;AAC5C,gFAAyD;AACzD,8EAA8E;AAC9E,mFAA6F;AAG7F,MAAa,mBAAoB,SAAQ,kCAAa;IAYlD;QACI,KAAK,CACD,sBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,EAC9B;YACI,yBAAyB,EAAE,sBAAS,CAAC,KAAK,CAAC,yBAAyB;YACpE,WAAW,EAAE,sBAAS,CAAC,KAAK,CAAC,WAAW;YACxC,QAAQ,EAAE,iBAAS;YACnB,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,gBAAgB,EAAE,iBAAO,CAAC,UAAU,CAAC,CACvF,CAAC;IACN,CAAC;CACJ;AAxBD,kDAwBC"}
@@ -1,6 +1,6 @@
1
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
1
2
  import { Validator } from "@golemio/core/dist/shared/golemio-validator";
2
3
  import Sequelize from "@golemio/core/dist/shared/sequelize";
3
- import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
4
4
  export interface ITripsShapes {
5
5
  bikes_allowed: number;
6
6
  block_id: string;
@@ -13,18 +13,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.RopidGTFSTripsModel = void 0;
16
+ const const_1 = require("../../schema-definitions/const");
17
+ const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
18
+ const TripDto_1 = require("../../schema-definitions/ropid-gtfs/models/TripDto");
19
+ const models_1 = require("@golemio/core/dist/integration-engine/models");
16
20
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
17
21
  const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
18
- const models_1 = require("@golemio/core/dist/integration-engine/models");
19
- const ropid_gtfs_1 = require("../../schema-definitions/ropid-gtfs");
20
22
  const _1 = require(".");
21
- const TripDto_1 = require("../../schema-definitions/ropid-gtfs/models/TripDto");
22
23
  class RopidGTFSTripsModel extends models_1.PostgresModel {
23
24
  constructor() {
24
25
  super(ropid_gtfs_1.RopidGTFS.trips.name + "Model", {
25
26
  outputSequelizeAttributes: ropid_gtfs_1.RopidGTFS.trips.outputSequelizeAttributes,
26
27
  pgTableName: ropid_gtfs_1.RopidGTFS.trips.pgTableName,
27
- pgSchema: ropid_gtfs_1.RopidGTFS.pgSchema,
28
+ pgSchema: const_1.PG_SCHEMA,
28
29
  savingType: "insertOnly",
29
30
  }, new golemio_validator_1.JSONSchemaValidator(ropid_gtfs_1.RopidGTFS.trips.name + "ModelValidator", TripDto_1.TripDto.jsonSchema));
30
31
  this.findByIdWithStopTimes = (tripId) => __awaiter(this, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSTripsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSTripsModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RopidGTFSTripsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSTripsModel.ts"],"names":[],"mappings":"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"}