@golemio/pid 2.1.4 → 2.1.6-dev.449180636

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 (92) hide show
  1. package/db/example/__truncate_tables.sql +1 -0
  2. package/db/example/ropidvymi_example.sql +12 -12
  3. package/db/example/zzz_precomputed_tables.sql +70 -0
  4. package/db/migrations/postgresql/20211213120726-ropidvymi-refactoring.js +53 -0
  5. package/db/migrations/postgresql/20220112085841-ropidgtfs-scheduled-trips.js +53 -0
  6. package/db/migrations/postgresql/package.json +3 -0
  7. package/db/migrations/postgresql/sqls/20211213120726-ropidvymi-refactoring-down.sql +45 -0
  8. package/db/migrations/postgresql/sqls/20211213120726-ropidvymi-refactoring-up.sql +54 -0
  9. package/db/migrations/postgresql/sqls/20220112085841-ropidgtfs-scheduled-trips-down.sql +2 -0
  10. package/db/migrations/postgresql/sqls/20220112085841-ropidgtfs-scheduled-trips-up.sql +39 -0
  11. package/db/migrations/postgresql/sqls/package.json +3 -0
  12. package/dist/integration-engine/queueDefinitions.js +13 -3
  13. package/dist/integration-engine/queueDefinitions.js.map +1 -1
  14. package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.d.ts +3 -36
  15. package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js +21 -321
  16. package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js.map +1 -1
  17. package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.d.ts +21 -0
  18. package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.js +150 -0
  19. package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.js.map +1 -0
  20. package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.d.ts +1 -0
  21. package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js +16 -12
  22. package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js.map +1 -1
  23. package/dist/integration-engine/ropid-gtfs/index.d.ts +1 -0
  24. package/dist/integration-engine/ropid-gtfs/index.js +1 -0
  25. package/dist/integration-engine/ropid-gtfs/index.js.map +1 -1
  26. package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.d.ts +11 -11
  27. package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.js +45 -39
  28. package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.js.map +1 -1
  29. package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.d.ts +15 -2
  30. package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.js +115 -17
  31. package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.js.map +1 -1
  32. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.d.ts +0 -16
  33. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js +2 -46
  34. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js.map +1 -1
  35. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.d.ts +0 -14
  36. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js +2 -48
  37. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js.map +1 -1
  38. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.d.ts +0 -13
  39. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js +2 -50
  40. package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js.map +1 -1
  41. package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.d.ts +8 -0
  42. package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.js +44 -0
  43. package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.js.map +1 -0
  44. package/dist/integration-engine/ropid-vymi/models/index.d.ts +1 -0
  45. package/dist/integration-engine/ropid-vymi/models/index.js +1 -0
  46. package/dist/integration-engine/ropid-vymi/models/index.js.map +1 -1
  47. package/dist/integration-engine/shared/RopidMetadataModel.d.ts +29 -0
  48. package/dist/integration-engine/shared/RopidMetadataModel.js +261 -0
  49. package/dist/integration-engine/shared/RopidMetadataModel.js.map +1 -0
  50. package/dist/integration-engine/shared/index.d.ts +1 -0
  51. package/dist/integration-engine/shared/index.js +14 -0
  52. package/dist/integration-engine/shared/index.js.map +1 -0
  53. package/dist/integration-engine/vehicle-positions/VehiclePositionsRunsModel.d.ts +2 -0
  54. package/dist/integration-engine/vehicle-positions/VehiclePositionsRunsModel.js +21 -85
  55. package/dist/integration-engine/vehicle-positions/VehiclePositionsRunsModel.js.map +1 -1
  56. package/dist/output-gateway/departure-boards/DepartureBoardsRouter.d.ts +0 -4
  57. package/dist/output-gateway/departure-boards/DepartureBoardsRouter.js +6 -25
  58. package/dist/output-gateway/departure-boards/DepartureBoardsRouter.js.map +1 -1
  59. package/dist/output-gateway/pid/PIDRouter.d.ts +0 -4
  60. package/dist/output-gateway/pid/PIDRouter.js +7 -16
  61. package/dist/output-gateway/pid/PIDRouter.js.map +1 -1
  62. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +1 -1
  63. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
  64. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js +2 -3
  65. package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js.map +1 -1
  66. package/dist/output-gateway/shared/RopidRouterUtils.d.ts +12 -0
  67. package/dist/output-gateway/shared/RopidRouterUtils.js +45 -0
  68. package/dist/output-gateway/shared/RopidRouterUtils.js.map +1 -0
  69. package/dist/output-gateway/shared/index.d.ts +1 -0
  70. package/dist/output-gateway/shared/index.js +14 -0
  71. package/dist/output-gateway/shared/index.js.map +1 -0
  72. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.d.ts +0 -9
  73. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js +6 -47
  74. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js.map +1 -1
  75. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.d.ts +65 -0
  76. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js +100 -0
  77. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js.map +1 -1
  78. package/dist/schema-definitions/ropid-gtfs/index.d.ts +2 -604
  79. package/dist/schema-definitions/ropid-gtfs/index.js +3 -24
  80. package/dist/schema-definitions/ropid-gtfs/index.js.map +1 -1
  81. package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.d.ts +135 -126
  82. package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.js +138 -129
  83. package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.js.map +1 -1
  84. package/dist/schema-definitions/ropid-vymi/RopidVYMISDMA.js +24 -23
  85. package/dist/schema-definitions/ropid-vymi/RopidVYMISDMA.js.map +1 -1
  86. package/dist/schema-definitions/ropid-vymi/index.d.ts +2 -181
  87. package/dist/schema-definitions/ropid-vymi/index.js +7 -0
  88. package/dist/schema-definitions/ropid-vymi/index.js.map +1 -1
  89. package/dist/schema-definitions/shared/index.d.ts +15 -0
  90. package/dist/schema-definitions/shared/index.js +29 -0
  91. package/dist/schema-definitions/shared/index.js.map +1 -0
  92. package/package.json +83 -83
@@ -14,6 +14,7 @@ TRUNCATE
14
14
  "ropidvymi_events",
15
15
  "ropidvymi_events_stops",
16
16
  "ropidvymi_events_routes",
17
+ "ropidvymi_metadata",
17
18
  "vehiclepositions_positions",
18
19
  "vehiclepositions_stops",
19
20
  "vehiclepositions_trips",
@@ -19,20 +19,20 @@ WITH init_values AS (
19
19
  18,0,'0','Europe/Prague'
20
20
  ) as end_datetime
21
21
  )
22
- INSERT INTO "ropidvymi_events"("id","vymi_id","vymi_id_dtb","state","pa_01","pa_02","pa_03","pa_04","record_type","event_type","channels","title","time_from","time_to_type","time_to","expiration_date","transportation_type","priority","cause","link","ropid_action","dpp_action","description","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
22
+ INSERT INTO "ropidvymi_events"("vymi_id","vymi_id_dtb","state","pa_01","pa_02","pa_03","pa_04","record_type","event_type","channels","title","time_from","time_to_type","time_to","expiration_date","transportation_type","priority","cause","link","ropid_action","dpp_action","description","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
23
23
  VALUES
24
- (583306,83,3,1,E'20191209 11:02:35',E'KubatO ',E'20191209 11:02:36',E'KubatO ',1,268435456,0,E'Sídliště Pankrác: trvalé přemístění zastávky',(SELECT start_datetime FROM init_values),5,NULL,NULL,4,2,NULL,NULL,NULL,E'<html>\n<head>\n <title></title>\n</head>\n<body style="font-family: Tahoma">\n<p>Ve&nbsp;směru Pankr&aacute;c se&nbsp;přemisťuje zast&aacute;vka <strong>S&iacute;dli&scaron;tě Pankr&aacute;c</strong>, a&nbsp;to&nbsp;v&nbsp;ulici Pujmanov&eacute; o&nbsp;přibližně 60&nbsp;metrů po&nbsp;směru j&iacute;zdy, do&nbsp;čela nově vybudovan&eacute;ho z&aacute;livu, 40&nbsp;metrů za&nbsp;přechod pro&nbsp;chodce, přibližně 65&nbsp;metrů před&nbsp; křižovatku s&nbsp;ulic&iacute; Hvězdovou.</p>\n</body>\n</html>\n',E'Z důvodu výstavby domu na křižovatce ulic Milevská a Pujmanové dochází od středy 11. prosince 2019 (od zahájení denního provozu) k trvalému přemístění zastávky Sídliště Pankrác ve směru Pankrác pro linky číslo 134, 188 a 193.',NULL,E'2021-07-07 13:48:06.51+02',NULL,NULL,E'2021-07-28 09:04:08.305+02',NULL),
25
- (583305,71,3,1,E'20191126 14:24:15',E'KubatO ',E'20200102 09:21:33',E'VituP ',1,1040187392,0,E'Trvalé změny PID od 1. prosince 2019',(SELECT start_datetime FROM init_values),5,NULL,NULL,4,2,E'Zlepšení dopravní obsluhy',NULL,NULL,E'<html>\n<head>\n <title></title>\n</head>\n<body style="font-family: Tahoma">\n<h2>Zav&aacute;děj&iacute; se&nbsp;nov&eacute; linky</h2>\n\n<ul>\n <li>č&iacute;slo <strong>153</strong> v&nbsp;trase <em>U&nbsp;Zvonu &ndash; Mr&aacute;zovka &ndash; Malvazinky &ndash; Laurov&aacute; &ndash; Radlick&aacute; &ndash; D&iacute;vč&iacute; hrady &ndash; Nad&nbsp;Konv&aacute;řkou</em></li>\n <li>č&iacute;slo <strong>171</strong> v&nbsp;trase <em>Depo Hostivař &ndash; Tepl&aacute;rna Male&scaron;ice &ndash; Kyje &ndash; Čern&yacute; Most &ndash; N&aacute;draž&iacute; Horn&iacute; Počernice &ndash; Třebe&scaron;ovsk&aacute; &ndash; Ve&nbsp;Žl&iacute;bku</em></li>\n <li>č&iacute;slo <strong>204</strong> v&nbsp;trase <em>Obchodn&iacute; centrum Čern&yacute; Most &ndash; N&aacute;draž&iacute; Horn&iacute; Počernice &ndash; &Scaron;kola Doln&iacute; Počernice &ndash; Doln&iacute; Počernice &ndash; Obchodn&iacute; centrum &Scaron;těrboholy &ndash; Doln&iacute; Měcholupy &ndash; N&aacute;draž&iacute; Horn&iacute; Měcholupy &ndash; Nov&eacute; Petrovice &ndash; S&iacute;dli&scaron;tě Petrovice</em></li>\n <li>č&iacute;slo <strong>242</strong> v&nbsp;trase <em>Zbraslavsk&eacute; n&aacute;měst&iacute; &ndash; Žabovřesky &ndash; Na&nbsp;Lhotk&aacute;ch &ndash; &Scaron;kola Lipence &ndash; Lipence &ndash; Doln&iacute; Černo&scaron;ice</em></li>\n</ul>\n\n<h2>Změny tras linek</h2>\n\n<ul>\n <li>č&iacute;slo <strong>146</strong> nově v&nbsp;trase <em>Želivsk&eacute;ho &ndash; Třebe&scaron;&iacute;n &ndash; Habrov&aacute; &ndash; Spojovac&iacute; &ndash; Mezitraťov&aacute;</em></li>\n <li>č&iacute;slo <strong>156</strong> nově v&nbsp;trase <em>N&aacute;draž&iacute; Hole&scaron;ovice &ndash; Strossmayerovo n&aacute;měst&iacute; &ndash; Veletržn&iacute; pal&aacute;c &ndash; Obchodn&iacute; centrum Stromovka &ndash; Veletržn&iacute; pal&aacute;c &ndash; Řez&aacute;čovo n&aacute;měst&iacute; &ndash; N&aacute;draž&iacute; Hole&scaron;ovice</em> (již&nbsp;od&nbsp;21.&nbsp;listopadu 2019)</li>\n <li>č&iacute;slo <strong>182</strong> je&nbsp;prodloužena do&nbsp;trasy <em>Opatov &ndash; Prosek &ndash; Letňany &ndash; Kbely &ndash; Vinoř </em></li>\n <li>č&iacute;slo <strong>185</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy<em> Letňany &ndash; Vinořsk&yacute; hřbitov </em></li>\n <li>č&iacute;slo <strong>194</strong> je&nbsp;prodloužena do&nbsp;trasy <em>Florenc &ndash; Malostransk&aacute; &ndash; Malostransk&eacute; n&aacute;měst&iacute; &ndash; Nemocnice pod&nbsp;Petř&iacute;nem</em></li>\n <li>č&iacute;slo <strong>223</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy <em>Breitcetlova &ndash; Čern&yacute; Most &ndash; Ratibořick&aacute; </em></li>\n <li>č&iacute;slo <strong>224</strong> nově v&nbsp;trase <em>Ve&nbsp;Žl&iacute;bku &ndash; Ratibořick&aacute; &ndash; Chvaly &ndash; Obchodn&iacute; centrum Čern&yacute; Most &ndash; Novoz&aacute;meck&aacute; &ndash; Doln&iacute; Počernice &ndash; Dolnopočernick&yacute; hřbitov</em></li>\n <li>č&iacute;slo <strong>243</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy <em>Lipence &ndash; Kaz&iacute;n </em></li>\n <li>č&iacute;slo <strong>302</strong> nově v&nbsp;trase <em>Českomoravsk&aacute; &ndash; Vysočansk&aacute; &ndash; Prosek &ndash; Přezletice, Kocanda &ndash; Veleň </em></li>\n</ul>\n\n<p>Ru&scaron;&iacute; se&nbsp;linka č&iacute;slo <strong>192</strong>.</p>\n\n<h2>Doch&aacute;z&iacute; ke&nbsp;změně n&aacute;zvu zast&aacute;vky:</h2>\n\n<p><strong>Krausova</strong> &ndash; nov&yacute; n&aacute;zev: <strong>S&iacute;dli&scaron;tě Letňany</strong></p>\n\n<p>D&aacute;le doch&aacute;z&iacute; tak&eacute; k&nbsp;&uacute;prav&aacute;m j&iacute;zdn&iacute;ch ř&aacute;dů někter&yacute;ch linek, změn&aacute;m charakteru někter&yacute;ch zast&aacute;vek a&nbsp;dal&scaron;&iacute;m d&iacute;lč&iacute;m změn&aacute;m.</p>\n\n<p>Od&nbsp;15.&nbsp;prosince 2019 doch&aacute;z&iacute; k&nbsp;dal&scaron;&iacute;m trval&yacute;m změn&aacute;m v&nbsp;souvislosti s&nbsp;integrac&iacute; Rakovnicka do&nbsp;syst&eacute;mu PID. K&nbsp;těm&nbsp;nejv&yacute;razněj&scaron;&iacute;m, kter&eacute; se&nbsp;dotknou linek obsluhuj&iacute;c&iacute;ch &uacute;zem&iacute; Prahy, patř&iacute; zaveden&iacute; nov&yacute;ch linek:</p>\n\n<ul>\n <li>č&iacute;slo <strong>304</strong> v&nbsp;trase <em>Kukulova &ndash; Nemocnice Motol &ndash; Zlič&iacute;n &ndash; Stochov &ndash; Nov&eacute; Stra&scaron;ec&iacute; &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice</em></li>\n <li>č&iacute;slo <strong>305</strong> v&nbsp;trase <em>Zlič&iacute;n &ndash; Velk&aacute; Dobr&aacute; &ndash; Tuchlovice &ndash; L&aacute;ny &ndash; Nov&eacute; Stra&scaron;ec&iacute; &ndash; Řevničov &ndash; Li&scaron;any &ndash; Lužn&aacute; &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice</em></li>\n <li>č&iacute;slo <strong>365</strong> v&nbsp;trase <em>Motol &ndash; Nemocnice Motol &ndash; Hostivice &ndash; Jeneč &ndash; Unho&scaron;ť, N&aacute;měst&iacute; &ndash; Velk&aacute; Dobr&aacute; &ndash; Doksy &ndash; Kamenn&eacute; Žehrovice &ndash; Tuchlovice &ndash; Stochov, N&aacute;měst&iacute;</em></li>\n <li>č&iacute;slo <strong>404</strong> v&nbsp;trase <em>Zlič&iacute;n &ndash; Stochov &ndash; L&aacute;ny &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice </em></li>\n</ul>\n</body>\n</html>\n',E'Od neděle 1. prosince 2019 dochází v provozu PID k několika trvalým změnám a úpravám. K nejpodstatnějším na území hl. m. Prahy patří především následující změny v provozu autobusů:',NULL,E'2021-07-07 13:48:06.308+02',NULL,NULL,E'2021-07-31 20:43:07.74+02',NULL),
26
- (1946237,13581,1,1,E'20210719 09:02:23',E'disp_i ',E'20210719 09:15:53',E'disp_i ',1,524288,0,E'Právnická fakulta',(SELECT start_datetime FROM init_values),2,NULL,NULL,6,2,E'Uzavřená komunikace',NULL,NULL,NULL,E'Odklon přes zastávku Malostranská.',NULL,E'2021-07-19 09:18:17.17+02',NULL,NULL,E'2021-07-19 10:14:16.643+02',NULL);
24
+ (83,3,1,E'20191209 11:02:35',E'KubatO ',E'20191209 11:02:36',E'KubatO ',1,268435456,0,E'Sídliště Pankrác: trvalé přemístění zastávky',(SELECT start_datetime FROM init_values),5,NULL,NULL,4,2,NULL,NULL,NULL,E'<html>\n<head>\n <title></title>\n</head>\n<body style="font-family: Tahoma">\n<p>Ve&nbsp;směru Pankr&aacute;c se&nbsp;přemisťuje zast&aacute;vka <strong>S&iacute;dli&scaron;tě Pankr&aacute;c</strong>, a&nbsp;to&nbsp;v&nbsp;ulici Pujmanov&eacute; o&nbsp;přibližně 60&nbsp;metrů po&nbsp;směru j&iacute;zdy, do&nbsp;čela nově vybudovan&eacute;ho z&aacute;livu, 40&nbsp;metrů za&nbsp;přechod pro&nbsp;chodce, přibližně 65&nbsp;metrů před&nbsp; křižovatku s&nbsp;ulic&iacute; Hvězdovou.</p>\n</body>\n</html>\n',E'Z důvodu výstavby domu na křižovatce ulic Milevská a Pujmanové dochází od středy 11. prosince 2019 (od zahájení denního provozu) k trvalému přemístění zastávky Sídliště Pankrác ve směru Pankrác pro linky číslo 134, 188 a 193.',NULL,E'2021-07-07 13:48:06.51+02',NULL,NULL,E'2021-07-28 09:04:08.305+02',NULL),
25
+ (71,3,1,E'20191126 14:24:15',E'KubatO ',E'20200102 09:21:33',E'VituP ',1,1040187392,0,E'Trvalé změny PID od 1. prosince 2019',(SELECT start_datetime FROM init_values),5,NULL,NULL,4,2,E'Zlepšení dopravní obsluhy',NULL,NULL,E'<html>\n<head>\n <title></title>\n</head>\n<body style="font-family: Tahoma">\n<h2>Zav&aacute;děj&iacute; se&nbsp;nov&eacute; linky</h2>\n\n<ul>\n <li>č&iacute;slo <strong>153</strong> v&nbsp;trase <em>U&nbsp;Zvonu &ndash; Mr&aacute;zovka &ndash; Malvazinky &ndash; Laurov&aacute; &ndash; Radlick&aacute; &ndash; D&iacute;vč&iacute; hrady &ndash; Nad&nbsp;Konv&aacute;řkou</em></li>\n <li>č&iacute;slo <strong>171</strong> v&nbsp;trase <em>Depo Hostivař &ndash; Tepl&aacute;rna Male&scaron;ice &ndash; Kyje &ndash; Čern&yacute; Most &ndash; N&aacute;draž&iacute; Horn&iacute; Počernice &ndash; Třebe&scaron;ovsk&aacute; &ndash; Ve&nbsp;Žl&iacute;bku</em></li>\n <li>č&iacute;slo <strong>204</strong> v&nbsp;trase <em>Obchodn&iacute; centrum Čern&yacute; Most &ndash; N&aacute;draž&iacute; Horn&iacute; Počernice &ndash; &Scaron;kola Doln&iacute; Počernice &ndash; Doln&iacute; Počernice &ndash; Obchodn&iacute; centrum &Scaron;těrboholy &ndash; Doln&iacute; Měcholupy &ndash; N&aacute;draž&iacute; Horn&iacute; Měcholupy &ndash; Nov&eacute; Petrovice &ndash; S&iacute;dli&scaron;tě Petrovice</em></li>\n <li>č&iacute;slo <strong>242</strong> v&nbsp;trase <em>Zbraslavsk&eacute; n&aacute;měst&iacute; &ndash; Žabovřesky &ndash; Na&nbsp;Lhotk&aacute;ch &ndash; &Scaron;kola Lipence &ndash; Lipence &ndash; Doln&iacute; Černo&scaron;ice</em></li>\n</ul>\n\n<h2>Změny tras linek</h2>\n\n<ul>\n <li>č&iacute;slo <strong>146</strong> nově v&nbsp;trase <em>Želivsk&eacute;ho &ndash; Třebe&scaron;&iacute;n &ndash; Habrov&aacute; &ndash; Spojovac&iacute; &ndash; Mezitraťov&aacute;</em></li>\n <li>č&iacute;slo <strong>156</strong> nově v&nbsp;trase <em>N&aacute;draž&iacute; Hole&scaron;ovice &ndash; Strossmayerovo n&aacute;měst&iacute; &ndash; Veletržn&iacute; pal&aacute;c &ndash; Obchodn&iacute; centrum Stromovka &ndash; Veletržn&iacute; pal&aacute;c &ndash; Řez&aacute;čovo n&aacute;měst&iacute; &ndash; N&aacute;draž&iacute; Hole&scaron;ovice</em> (již&nbsp;od&nbsp;21.&nbsp;listopadu 2019)</li>\n <li>č&iacute;slo <strong>182</strong> je&nbsp;prodloužena do&nbsp;trasy <em>Opatov &ndash; Prosek &ndash; Letňany &ndash; Kbely &ndash; Vinoř </em></li>\n <li>č&iacute;slo <strong>185</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy<em> Letňany &ndash; Vinořsk&yacute; hřbitov </em></li>\n <li>č&iacute;slo <strong>194</strong> je&nbsp;prodloužena do&nbsp;trasy <em>Florenc &ndash; Malostransk&aacute; &ndash; Malostransk&eacute; n&aacute;měst&iacute; &ndash; Nemocnice pod&nbsp;Petř&iacute;nem</em></li>\n <li>č&iacute;slo <strong>223</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy <em>Breitcetlova &ndash; Čern&yacute; Most &ndash; Ratibořick&aacute; </em></li>\n <li>č&iacute;slo <strong>224</strong> nově v&nbsp;trase <em>Ve&nbsp;Žl&iacute;bku &ndash; Ratibořick&aacute; &ndash; Chvaly &ndash; Obchodn&iacute; centrum Čern&yacute; Most &ndash; Novoz&aacute;meck&aacute; &ndash; Doln&iacute; Počernice &ndash; Dolnopočernick&yacute; hřbitov</em></li>\n <li>č&iacute;slo <strong>243</strong> je&nbsp;zkr&aacute;cena do&nbsp;trasy <em>Lipence &ndash; Kaz&iacute;n </em></li>\n <li>č&iacute;slo <strong>302</strong> nově v&nbsp;trase <em>Českomoravsk&aacute; &ndash; Vysočansk&aacute; &ndash; Prosek &ndash; Přezletice, Kocanda &ndash; Veleň </em></li>\n</ul>\n\n<p>Ru&scaron;&iacute; se&nbsp;linka č&iacute;slo <strong>192</strong>.</p>\n\n<h2>Doch&aacute;z&iacute; ke&nbsp;změně n&aacute;zvu zast&aacute;vky:</h2>\n\n<p><strong>Krausova</strong> &ndash; nov&yacute; n&aacute;zev: <strong>S&iacute;dli&scaron;tě Letňany</strong></p>\n\n<p>D&aacute;le doch&aacute;z&iacute; tak&eacute; k&nbsp;&uacute;prav&aacute;m j&iacute;zdn&iacute;ch ř&aacute;dů někter&yacute;ch linek, změn&aacute;m charakteru někter&yacute;ch zast&aacute;vek a&nbsp;dal&scaron;&iacute;m d&iacute;lč&iacute;m změn&aacute;m.</p>\n\n<p>Od&nbsp;15.&nbsp;prosince 2019 doch&aacute;z&iacute; k&nbsp;dal&scaron;&iacute;m trval&yacute;m změn&aacute;m v&nbsp;souvislosti s&nbsp;integrac&iacute; Rakovnicka do&nbsp;syst&eacute;mu PID. K&nbsp;těm&nbsp;nejv&yacute;razněj&scaron;&iacute;m, kter&eacute; se&nbsp;dotknou linek obsluhuj&iacute;c&iacute;ch &uacute;zem&iacute; Prahy, patř&iacute; zaveden&iacute; nov&yacute;ch linek:</p>\n\n<ul>\n <li>č&iacute;slo <strong>304</strong> v&nbsp;trase <em>Kukulova &ndash; Nemocnice Motol &ndash; Zlič&iacute;n &ndash; Stochov &ndash; Nov&eacute; Stra&scaron;ec&iacute; &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice</em></li>\n <li>č&iacute;slo <strong>305</strong> v&nbsp;trase <em>Zlič&iacute;n &ndash; Velk&aacute; Dobr&aacute; &ndash; Tuchlovice &ndash; L&aacute;ny &ndash; Nov&eacute; Stra&scaron;ec&iacute; &ndash; Řevničov &ndash; Li&scaron;any &ndash; Lužn&aacute; &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice</em></li>\n <li>č&iacute;slo <strong>365</strong> v&nbsp;trase <em>Motol &ndash; Nemocnice Motol &ndash; Hostivice &ndash; Jeneč &ndash; Unho&scaron;ť, N&aacute;měst&iacute; &ndash; Velk&aacute; Dobr&aacute; &ndash; Doksy &ndash; Kamenn&eacute; Žehrovice &ndash; Tuchlovice &ndash; Stochov, N&aacute;měst&iacute;</em></li>\n <li>č&iacute;slo <strong>404</strong> v&nbsp;trase <em>Zlič&iacute;n &ndash; Stochov &ndash; L&aacute;ny &ndash; Rakovn&iacute;k, Autobusov&aacute; stanice </em></li>\n</ul>\n</body>\n</html>\n',E'Od neděle 1. prosince 2019 dochází v provozu PID k několika trvalým změnám a úpravám. K nejpodstatnějším na území hl. m. Prahy patří především následující změny v provozu autobusů:',NULL,E'2021-07-07 13:48:06.308+02',NULL,NULL,E'2021-07-31 20:43:07.74+02',NULL),
26
+ (13581,1,1,E'20210719 09:02:23',E'disp_i ',E'20210719 09:15:53',E'disp_i ',1,524288,0,E'Právnická fakulta',(SELECT start_datetime FROM init_values),2,NULL,NULL,6,2,E'Uzavřená komunikace',NULL,NULL,NULL,E'Odklon přes zastávku Malostranská.',NULL,E'2021-07-19 09:18:17.17+02',NULL,NULL,E'2021-07-19 10:14:16.643+02',NULL);
27
27
 
28
- INSERT INTO "ropidvymi_events_stops"("id","event_id","gtfs_stop_id","vymi_id","vymi_id_dtb","node_number","stop_number","stop_type","valid_from","valid_to","text","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
28
+ INSERT INTO "ropidvymi_events_stops"("event_id","gtfs_stop_id","vymi_id","vymi_id_dtb","node_number","stop_number","stop_type","valid_from","valid_to","text","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
29
29
  VALUES
30
- (36204,583306,E'U663Z2P',1,3,663,2,9,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.521+02',NULL,NULL,E'2021-07-27 14:44:09.529+02',NULL),
31
- (36203,583305,E'U21Z1P',1,3,21,1,11,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.382+02',NULL,NULL,E'2021-07-31 18:44:07.943+02',NULL),
32
- (36202,583305,E'U21Z2P',2,3,21,2,11,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.381+02',NULL,NULL,E'2021-07-31 18:44:07.942+02',NULL);
30
+ (83,NULL,1,3,663,2,9,NULL,NULL,E'text sample 1',NULL,E'2021-07-07 13:48:06.521+02',NULL,NULL,E'2021-07-27 14:44:09.529+02',NULL),
31
+ (71,NULL,1,3,21,1,11,NULL,NULL,E'text sample 2',NULL,E'2021-07-07 13:48:06.382+02',NULL,NULL,E'2021-07-31 18:44:07.943+02',NULL),
32
+ (71,NULL,2,3,21,2,11,NULL,NULL,E'text sample 3',NULL,E'2021-07-07 13:48:06.381+02',NULL,NULL,E'2021-07-31 18:44:07.942+02',NULL);
33
33
 
34
- INSERT INTO "ropidvymi_events_routes"("id","event_id","gtfs_route_id","vymi_id","vymi_id_dtb","number","name","route_type","valid_from","valid_to","text","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
34
+ INSERT INTO "ropidvymi_events_routes"("event_id","gtfs_route_id","vymi_id","vymi_id_dtb","number","name","route_type","valid_from","valid_to","text","create_batch_id","created_at","created_by","update_batch_id","updated_at","updated_by")
35
35
  VALUES
36
- (2322759,583306,E'L134',1,3,134,E'134',14,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.518+02',NULL,NULL,E'2021-07-28 09:04:08.312+02',NULL),
37
- (2322760,583306,E'L188',2,3,188,E'188',14,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.519+02',NULL,NULL,E'2021-07-28 09:04:08.314+02',NULL),
38
- (2322761,583306,E'L193',3,3,193,E'193',14,NULL,NULL,E'text sample',NULL,E'2021-07-07 13:48:06.52+02',NULL,NULL,E'2021-07-28 09:04:08.313+02',NULL);
36
+ (83,NULL,1,3,152,E'152',14,NULL,NULL,E'text sample 1',NULL,E'2021-07-07 13:48:06.518+02',NULL,NULL,E'2021-07-28 09:04:08.312+02',NULL),
37
+ (83,NULL,2,3,152,E'152',14,NULL,NULL,E'text sample 2',NULL,E'2021-07-07 13:48:06.519+02',NULL,NULL,E'2021-07-28 09:04:08.314+02',NULL),
38
+ (83,NULL,3,3,177,E'177',14,NULL,NULL,E'text sample 3',NULL,E'2021-07-07 13:48:06.52+02',NULL,NULL,E'2021-07-28 09:04:08.313+02',NULL);
@@ -70,3 +70,73 @@ SELECT t.stop_sequence,
70
70
  LEFT JOIN ropidgtfs_stop_times t6 ON ((((t.trip_id)::text = (t6.trip_id)::text) AND (t6.stop_sequence = (t.stop_sequence + 1)))))
71
71
  LEFT JOIN ropidgtfs_stop_times t7 ON ((((t.trip_id)::text = (t7.trip_id)::text) AND (t7.stop_sequence = (t.stop_sequence - 1)))));
72
72
 
73
+ INSERT INTO ropidgtfs_scheduled_trips
74
+ SELECT t0.*,
75
+ CASE
76
+ WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
77
+ THEN make_timestamptz(
78
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
79
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
80
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
81
+ DATE_PART('hour', t0.min_stop_time)::INT - 24,
82
+ DATE_PART('minute', t0.min_stop_time)::INT,
83
+ DATE_PART('second', t0.min_stop_time),
84
+ 'Europe/Prague'
85
+ )
86
+ ELSE make_timestamptz(
87
+ DATE_PART('year', t0.date)::INT,
88
+ DATE_PART('month', t0.date)::INT,
89
+ DATE_PART('day', t0.date)::INT,
90
+ DATE_PART('hour', t0.min_stop_time)::INT,
91
+ DATE_PART('minute', t0.min_stop_time)::INT,
92
+ DATE_PART('second', t0.min_stop_time),
93
+ 'Europe/Prague'
94
+ )
95
+ END as start_timestamp,
96
+ CASE
97
+ WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
98
+ THEN make_timestamptz(
99
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
100
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
101
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
102
+ DATE_PART('hour', t0.max_stop_time)::INT - 24,
103
+ DATE_PART('minute', t0.max_stop_time)::INT,
104
+ DATE_PART('second', t0.max_stop_time),
105
+ 'Europe/Prague'
106
+ )
107
+ ELSE make_timestamptz(
108
+ DATE_PART('year', t0.date)::INT,
109
+ DATE_PART('month', t0.date)::INT,
110
+ DATE_PART('day', t0.date)::INT,
111
+ DATE_PART('hour', t0.max_stop_time)::INT,
112
+ DATE_PART('minute', t0.max_stop_time)::INT,
113
+ DATE_PART('second', t0.max_stop_time),
114
+ 'Europe/Prague'
115
+ )
116
+ END as end_timestamp
117
+ FROM (
118
+ SELECT
119
+ t1.trip_id,
120
+ t1.service_id,
121
+ t1.run_number,
122
+ t3.date,
123
+ t7.route_id,
124
+ t7.route_type,
125
+ t7.route_short_name,
126
+ t7.is_regional,
127
+ t7.is_substitute_transport,
128
+ t7.is_night,
129
+ t8.trip_headsign,
130
+ t8.trip_short_name,
131
+ t8.block_id,
132
+ t8.exceptional,
133
+ LEAST(t5.arrival_time::INTERVAL, t5.departure_time::INTERVAL) AS min_stop_time,
134
+ GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time
135
+ FROM ropidgtfs_run_numbers t1
136
+ LEFT JOIN ropidgtfs_services_first14days t3 ON t1.service_id = t3.service_id
137
+ LEFT JOIN ropidgtfs_trips_minmaxsequences t4 ON t1.trip_id = t4.trip_id
138
+ LEFT OUTER JOIN ropidgtfs_stop_times t5 ON t1.trip_id = t5.trip_id AND t5.stop_sequence = t4.min_stop_sequence
139
+ LEFT OUTER JOIN ropidgtfs_stop_times t6 ON t1.trip_id = t6.trip_id AND t6.stop_sequence = t4.max_stop_sequence
140
+ LEFT JOIN ropidgtfs_trips t8 ON t1.trip_id = t8.trip_id
141
+ LEFT JOIN ropidgtfs_routes t7 ON t8.route_id = t7.route_id
142
+ ) t0;
@@ -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', '20211213120726-ropidvymi-refactoring-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', '20211213120726-ropidvymi-refactoring-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,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', '20220112085841-ropidgtfs-scheduled-trips-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', '20220112085841-ropidgtfs-scheduled-trips-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,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -0,0 +1,45 @@
1
+ DROP TRIGGER gtfs_trigger ON ropidvymi_events_stops;
2
+ DROP TRIGGER gtfs_trigger ON ropidvymi_events_routes;
3
+
4
+ DROP FUNCTION ropidvymi_events_stops_gtfs_trigger_function;
5
+ DROP FUNCTION ropidvymi_events_routes_gtfs_trigger_function;
6
+
7
+ CREATE SEQUENCE IF NOT EXISTS ropidvymi_events_id_seq
8
+ INCREMENT 1
9
+ START 1
10
+ MINVALUE 1
11
+ MAXVALUE 9223372036854775807
12
+ CACHE 1;
13
+
14
+ CREATE SEQUENCE IF NOT EXISTS ropidvymi_events_routes_id_seq
15
+ INCREMENT 1
16
+ START 1
17
+ MINVALUE 1
18
+ MAXVALUE 9223372036854775807
19
+ CACHE 1;
20
+
21
+ CREATE SEQUENCE IF NOT EXISTS ropidvymi_events_stops_id_seq
22
+ INCREMENT 1
23
+ START 1
24
+ MINVALUE 1
25
+ MAXVALUE 9223372036854775807
26
+ CACHE 1;
27
+
28
+ ALTER TABLE ropidvymi_events
29
+ DROP CONSTRAINT ropidvymi_events_pkey,
30
+ ADD COLUMN id integer DEFAULT nextval('ropidvymi_events_id_seq'::regclass) NOT NULL,
31
+ ADD CONSTRAINT ropidvymi_events_pkey PRIMARY KEY (id);
32
+
33
+ ALTER TABLE ropidvymi_events_stops
34
+ DROP CONSTRAINT ropidvymi_events_stops_pkey,
35
+ ADD COLUMN id integer DEFAULT nextval('ropidvymi_events_stops_id_seq'::regclass) NOT NULL,
36
+ ADD CONSTRAINT ropidvymi_events_stops_pkey PRIMARY KEY (event_id, vymi_id),
37
+ ADD CONSTRAINT ropidvymi_events_stops_fkey FOREIGN KEY (event_id) REFERENCES ropidvymi_events(id)
38
+ ON DELETE CASCADE;
39
+
40
+ ALTER TABLE ropidvymi_events_routes
41
+ ADD COLUMN id integer DEFAULT nextval('ropidvymi_events_routes_id_seq'::regclass) NOT NULL,
42
+ ADD CONSTRAINT ropidvymi_events_routes_fkey FOREIGN KEY (event_id) REFERENCES ropidvymi_events(id)
43
+ ON DELETE CASCADE;
44
+
45
+ DROP TABLE ropidvymi_metadata;
@@ -0,0 +1,54 @@
1
+ CREATE TABLE ropidvymi_metadata (LIKE ropidgtfs_metadata);
2
+ CREATE SEQUENCE ropidvymi_metadata_id_seq OWNED BY ropidvymi_metadata.id;
3
+ ALTER TABLE ropidvymi_metadata ALTER COLUMN id SET DEFAULT nextval('ropidvymi_metadata_id_seq');
4
+ ALTER TABLE ropidvymi_metadata ADD PRIMARY KEY (id);
5
+
6
+ ALTER TABLE ropidvymi_events_routes
7
+ DROP CONSTRAINT ropidvymi_events_routes_fkey,
8
+ DROP COLUMN id;
9
+
10
+ ALTER TABLE ropidvymi_events_stops
11
+ DROP CONSTRAINT ropidvymi_events_stops_pkey,
12
+ DROP CONSTRAINT ropidvymi_events_stops_fkey,
13
+ DROP COLUMN id,
14
+ ADD CONSTRAINT ropidvymi_events_stops_pkey PRIMARY KEY (event_id, vymi_id, node_number, stop_number);
15
+
16
+ ALTER TABLE ropidvymi_events
17
+ DROP COLUMN id,
18
+ ADD CONSTRAINT ropidvymi_events_pkey PRIMARY KEY (vymi_id);
19
+
20
+ DROP SEQUENCE ropidvymi_events_id_seq;
21
+ DROP SEQUENCE ropidvymi_events_routes_id_seq;
22
+ DROP SEQUENCE ropidvymi_events_stops_id_seq;
23
+
24
+ CREATE OR REPLACE FUNCTION ropidvymi_events_routes_gtfs_trigger_function()
25
+ RETURNS TRIGGER AS $$
26
+ BEGIN
27
+ IF NEW.gtfs_route_id IS NULL THEN
28
+ -- Find GTFS route id based on route short name
29
+ -- B -> L992
30
+ -- 231 -> L231
31
+ SELECT route_id INTO NEW.gtfs_route_id FROM pid.ropidgtfs_routes WHERE route_short_name = NEW.name;
32
+ END IF;
33
+ RETURN NEW;
34
+ END
35
+ $$ LANGUAGE plpgsql;
36
+
37
+ CREATE TRIGGER gtfs_trigger BEFORE INSERT ON ropidvymi_events_routes
38
+ FOR EACH ROW EXECUTE PROCEDURE ropidvymi_events_routes_gtfs_trigger_function();
39
+
40
+ CREATE OR REPLACE FUNCTION ropidvymi_events_stops_gtfs_trigger_function()
41
+ RETURNS TRIGGER AS $$
42
+ DECLARE partialStopId VARCHAR;
43
+ BEGIN
44
+ IF NEW.gtfs_stop_id IS NULL THEN
45
+ -- Example: 145/3 -> U145Z3P
46
+ partialStopId := 'U'|| NEW.node_number ||'Z'|| NEW.stop_number;
47
+ SELECT stop_id INTO NEW.gtfs_stop_id FROM pid.ropidgtfs_stops WHERE stop_id ~ ('^'|| partialStopId ||'(P|N)?(_\\d+)?$');
48
+ END IF;
49
+ RETURN NEW;
50
+ END
51
+ $$ LANGUAGE plpgsql;
52
+
53
+ CREATE TRIGGER gtfs_trigger BEFORE INSERT ON ropidvymi_events_stops
54
+ FOR EACH ROW EXECUTE PROCEDURE ropidvymi_events_stops_gtfs_trigger_function();
@@ -0,0 +1,2 @@
1
+ DROP TABLE IF EXISTS ropidgtfs_scheduled_trips_actual;
2
+ DROP TABLE IF EXISTS ropidgtfs_scheduled_trips;
@@ -0,0 +1,39 @@
1
+ CREATE TABLE IF NOT EXISTS ropidgtfs_scheduled_trips
2
+ AS
3
+ SELECT t0.*, now() as start_timestamp, now() as end_timestamp
4
+ FROM (
5
+ SELECT
6
+ t1.trip_id,
7
+ t1.service_id,
8
+ t1.run_number,
9
+ t3.date,
10
+ t7.route_id,
11
+ t7.route_type,
12
+ t7.route_short_name,
13
+ t7.is_regional,
14
+ t7.is_substitute_transport,
15
+ t7.is_night,
16
+ t8.trip_headsign,
17
+ t8.trip_short_name,
18
+ t8.block_id,
19
+ t8.exceptional,
20
+ LEAST(t5.arrival_time::INTERVAL, t5.departure_time::INTERVAL) AS min_stop_time,
21
+ GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time
22
+ FROM ropidgtfs_run_numbers t1
23
+ LEFT JOIN ropidgtfs_services_first14days t3 ON t1.service_id = t3.service_id
24
+ LEFT JOIN ropidgtfs_trips_minmaxsequences t4 ON t1.trip_id = t4.trip_id
25
+ LEFT OUTER JOIN ropidgtfs_stop_times t5 ON t1.trip_id = t5.trip_id AND t5.stop_sequence = t4.min_stop_sequence
26
+ LEFT OUTER JOIN ropidgtfs_stop_times t6 ON t1.trip_id = t6.trip_id AND t6.stop_sequence = t4.max_stop_sequence
27
+ LEFT JOIN ropidgtfs_trips t8 ON t1.trip_id = t8.trip_id
28
+ LEFT JOIN ropidgtfs_routes t7 ON t8.route_id = t7.route_id
29
+ ) t0
30
+ WITH NO DATA;
31
+
32
+ CREATE TABLE IF NOT EXISTS ropidgtfs_scheduled_trips_actual (LIKE ropidgtfs_scheduled_trips);
33
+ DROP INDEX IF EXISTS ropidgtfs_scheduled_trips_route_id_idx;
34
+ CREATE INDEX ropidgtfs_departures_route_id_idx ON ropidgtfs_scheduled_trips_actual USING btree (route_id);
35
+ DROP INDEX IF EXISTS ropidgtfs_scheduled_trips_unique_id;
36
+ CREATE UNIQUE INDEX ropidgtfs_scheduled_trips_unique_id
37
+ ON ropidgtfs_scheduled_trips_actual USING btree (trip_id, service_id, run_number, date, route_id);
38
+
39
+ ALTER TABLE ropidgtfs_scheduled_trips_actual INHERIT ropidgtfs_scheduled_trips;
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -76,20 +76,30 @@ const queueDefinitions = [
76
76
  },
77
77
  ],
78
78
  },
79
- // Ropid VYMI Events Queue Definitions
79
+ // Ropid VYMI Queue Definitions
80
80
  {
81
81
  name: ropid_vymi_1.RopidVYMI.name,
82
82
  queuePrefix: config_1.config.RABBIT_EXCHANGE_NAME + "." + ropid_vymi_1.RopidVYMI.name.toLowerCase(),
83
83
  queues: [
84
84
  {
85
- name: "fetchData",
85
+ name: "checkForNewEvents",
86
86
  options: {
87
87
  deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
88
88
  deadLetterRoutingKey: "dead",
89
89
  messageTtl: 1 * 60 * 1000, // 1 minute
90
90
  },
91
91
  worker: RopidVYMIWorker_1.RopidVYMIWorker,
92
- workerMethod: "fetchData",
92
+ workerMethod: "checkForNewEvents",
93
+ },
94
+ {
95
+ name: "fetchAndProcessEvents",
96
+ options: {
97
+ deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
98
+ deadLetterRoutingKey: "dead",
99
+ messageTtl: 1 * 60 * 1000, // 1 minute
100
+ },
101
+ worker: RopidVYMIWorker_1.RopidVYMIWorker,
102
+ workerMethod: "fetchAndProcessEvents",
93
103
  },
94
104
  ],
95
105
  },
@@ -1 +1 @@
1
- {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { Validator } from "@golemio/core/dist/shared/golemio-validator";
2
1
  import Sequelize from "@golemio/core/dist/shared/sequelize";
3
- import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
2
+ import { RopidMetadataModel, MetaStateEnum } from "../shared";
4
3
  export declare enum DatasetEnum {
5
4
  PID_GTFS = "PID_GTFS",
6
5
  CIS_STOPS = "CIS_STOPS",
@@ -8,56 +7,24 @@ export declare enum DatasetEnum {
8
7
  RUN_NUMBERS = "RUN_NUMBERS",
9
8
  DEPARTURES_PRESETS = "DEPARTURES_PRESETS"
10
9
  }
11
- export declare enum MetaTypeEnum {
12
- DATASET_INFO = "DATASET_INFO",
13
- STATE = "STATE",
14
- TABLE_TOTAL_COUNT = "TABLE_TOTAL_COUNT",
15
- SAVED_ROWS = "SAVED_ROWS"
16
- }
17
- export declare enum MetaStateEnum {
18
- DOWNLOADED = "DOWNLOADED",
19
- SAVED = "SAVED"
20
- }
21
- export declare enum MetaDatasetInfoKeyEnum {
22
- LAST_MODIFIED = "last_modified",
23
- FAILED = "failed",
24
- DEPLOYED = "deployed",
25
- NUMBER_OF_RETRIES = "number_of_retries"
26
- }
27
- export declare class RopidGTFSMetadataModel extends PostgresModel implements IModel {
28
- /** Model name */
29
- name: string;
30
- /** The Sequelize Model */
31
- protected sequelizeModel: Sequelize.ModelCtor<any>;
32
- /** The Sequelize Model for temporary table */
33
- protected tmpSequelizeModel: Sequelize.ModelCtor<any> | null;
34
- /** Validation helper */
35
- protected validator: Validator;
36
- /** Type/Strategy of saving the data */
37
- protected savingType: "insertOnly" | "insertOrUpdate";
10
+ export declare class RopidGTFSMetadataModel extends RopidMetadataModel {
38
11
  /** Precomputed data models */
39
12
  private ropidGTFSDeparturesModel;
40
13
  private ropidGTFSMinMaxSequencesModel;
14
+ private ropidGTFSScheduledTripsModel;
41
15
  private ropidGTFSServicesFirst14daysModel;
42
16
  constructor();
43
- getLastModified: (dataset: string) => Promise<any | null>;
44
- checkSavedRows: (dataset: string, version: number) => Promise<void>;
45
17
  checkSavedTmpTables: (dataset: string, version: number) => Promise<void>;
46
18
  checkAllTablesHasSavedState: (datasets: Array<{
47
19
  dataset: string;
48
20
  version: number;
49
21
  }>) => Promise<boolean>;
50
22
  checkIfNewVersionIsAlreadyDeployed: (dataset: string, version: number) => Promise<boolean>;
51
- replaceDeparturePresetTables: (version: number) => Promise<boolean>;
52
23
  replaceTables: (datasetInfo: Array<{
53
24
  dataset: string;
54
25
  version: number;
55
26
  }>) => Promise<boolean>;
56
- rollbackFailedSaving: (dataset: string, version: number) => Promise<any>;
57
27
  updateState: (dataset: string, name: string, state: MetaStateEnum, version: number) => Promise<any>;
58
- updateSavedRows: (dataset: string, name: string, count: number, version: number) => Promise<any>;
59
28
  getNumberOfDownloadRetries: (dataset: string, version: number) => Promise<number>;
60
29
  replacePrecomputedTmpTables: (t: Sequelize.Transaction) => Promise<any>;
61
- private getTotalFromMeta;
62
- private getTotalFromTables;
63
30
  }