@golemio/pid 2.1.4-dev.429036521 → 2.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/__truncate_tables.sql +1 -0
- package/db/example/ropidvymi_example.sql +12 -12
- package/db/migrations/postgresql/20211213120726-ropidvymi-refactoring.js +53 -0
- package/db/migrations/postgresql/package.json +3 -0
- package/db/migrations/postgresql/sqls/20211213120726-ropidvymi-refactoring-down.sql +45 -0
- package/db/migrations/postgresql/sqls/20211213120726-ropidvymi-refactoring-up.sql +54 -0
- package/db/migrations/postgresql/sqls/package.json +3 -0
- package/dist/integration-engine/queueDefinitions.js +13 -3
- package/dist/integration-engine/queueDefinitions.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.d.ts +2 -36
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js +18 -321
- package/dist/integration-engine/ropid-gtfs/RopidGTFSMetadataModel.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js +13 -12
- package/dist/integration-engine/ropid-gtfs/RopidGTFSWorker.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.d.ts +11 -11
- package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.js +45 -39
- package/dist/integration-engine/ropid-vymi/RopidVYMIEventsTransformation.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.d.ts +15 -2
- package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.js +115 -17
- package/dist/integration-engine/ropid-vymi/RopidVYMIWorker.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.d.ts +0 -16
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js +2 -46
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsModel.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.d.ts +0 -14
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js +2 -48
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsRoutesModel.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.d.ts +0 -13
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js +2 -50
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIEventsStopsModel.js.map +1 -1
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.d.ts +8 -0
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.js +44 -0
- package/dist/integration-engine/ropid-vymi/models/RopidVYMIMetadataModel.js.map +1 -0
- package/dist/integration-engine/ropid-vymi/models/index.d.ts +1 -0
- package/dist/integration-engine/ropid-vymi/models/index.js +1 -0
- package/dist/integration-engine/ropid-vymi/models/index.js.map +1 -1
- package/dist/integration-engine/shared/RopidMetadataModel.d.ts +29 -0
- package/dist/integration-engine/shared/RopidMetadataModel.js +261 -0
- package/dist/integration-engine/shared/RopidMetadataModel.js.map +1 -0
- package/dist/integration-engine/shared/index.d.ts +1 -0
- package/dist/integration-engine/shared/index.js +14 -0
- package/dist/integration-engine/shared/index.js.map +1 -0
- package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +1 -1
- package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
- package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js +2 -3
- package/dist/output-gateway/pid/models/RopidVYMIEventsStopsModel.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/index.d.ts +2 -604
- package/dist/schema-definitions/ropid-gtfs/index.js +3 -24
- package/dist/schema-definitions/ropid-gtfs/index.js.map +1 -1
- package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.d.ts +135 -126
- package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.js +138 -129
- package/dist/schema-definitions/ropid-vymi/RopidVYMIOutputSchemas.js.map +1 -1
- package/dist/schema-definitions/ropid-vymi/RopidVYMISDMA.js +24 -23
- package/dist/schema-definitions/ropid-vymi/RopidVYMISDMA.js.map +1 -1
- package/dist/schema-definitions/ropid-vymi/index.d.ts +2 -181
- package/dist/schema-definitions/ropid-vymi/index.js +7 -0
- package/dist/schema-definitions/ropid-vymi/index.js.map +1 -1
- package/dist/schema-definitions/shared/index.d.ts +15 -0
- package/dist/schema-definitions/shared/index.js +29 -0
- package/dist/schema-definitions/shared/index.js.map +1 -0
- package/package.json +83 -83
|
@@ -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"("
|
|
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
|
-
(
|
|
25
|
-
(
|
|
26
|
-
(
|
|
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 směru Pankrác se přemisťuje zastávka <strong>Sídliště Pankrác</strong>, a to v ulici Pujmanové o přibližně 60 metrů po směru jízdy, do čela nově vybudovaného zálivu, 40 metrů za přechod pro chodce, přibližně 65 metrů před křižovatku s ulicí 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ádějí se nové linky</h2>\n\n<ul>\n <li>číslo <strong>153</strong> v trase <em>U Zvonu – Mrázovka – Malvazinky – Laurová – Radlická – Dívčí hrady – Nad Konvářkou</em></li>\n <li>číslo <strong>171</strong> v trase <em>Depo Hostivař – Teplárna Malešice – Kyje – Černý Most – Nádraží Horní Počernice – Třebešovská – Ve Žlíbku</em></li>\n <li>číslo <strong>204</strong> v trase <em>Obchodní centrum Černý Most – Nádraží Horní Počernice – Škola Dolní Počernice – Dolní Počernice – Obchodní centrum Štěrboholy – Dolní Měcholupy – Nádraží Horní Měcholupy – Nové Petrovice – Sídliště Petrovice</em></li>\n <li>číslo <strong>242</strong> v trase <em>Zbraslavské náměstí – Žabovřesky – Na Lhotkách – Škola Lipence – Lipence – Dolní Černošice</em></li>\n</ul>\n\n<h2>Změny tras linek</h2>\n\n<ul>\n <li>číslo <strong>146</strong> nově v trase <em>Želivského – Třebešín – Habrová – Spojovací – Mezitraťová</em></li>\n <li>číslo <strong>156</strong> nově v trase <em>Nádraží Holešovice – Strossmayerovo náměstí – Veletržní palác – Obchodní centrum Stromovka – Veletržní palác – Řezáčovo náměstí – Nádraží Holešovice</em> (již od 21. listopadu 2019)</li>\n <li>číslo <strong>182</strong> je prodloužena do trasy <em>Opatov – Prosek – Letňany – Kbely – Vinoř </em></li>\n <li>číslo <strong>185</strong> je zkrácena do trasy<em> Letňany – Vinořský hřbitov </em></li>\n <li>číslo <strong>194</strong> je prodloužena do trasy <em>Florenc – Malostranská – Malostranské náměstí – Nemocnice pod Petřínem</em></li>\n <li>číslo <strong>223</strong> je zkrácena do trasy <em>Breitcetlova – Černý Most – Ratibořická </em></li>\n <li>číslo <strong>224</strong> nově v trase <em>Ve Žlíbku – Ratibořická – Chvaly – Obchodní centrum Černý Most – Novozámecká – Dolní Počernice – Dolnopočernický hřbitov</em></li>\n <li>číslo <strong>243</strong> je zkrácena do trasy <em>Lipence – Kazín </em></li>\n <li>číslo <strong>302</strong> nově v trase <em>Českomoravská – Vysočanská – Prosek – Přezletice, Kocanda – Veleň </em></li>\n</ul>\n\n<p>Ruší se linka číslo <strong>192</strong>.</p>\n\n<h2>Dochází ke změně názvu zastávky:</h2>\n\n<p><strong>Krausova</strong> – nový název: <strong>Sídliště Letňany</strong></p>\n\n<p>Dále dochází také k úpravám jízdních řádů některých linek, změnám charakteru některých zastávek a dalším dílčím změnám.</p>\n\n<p>Od 15. prosince 2019 dochází k dalším trvalým změnám v souvislosti s integrací Rakovnicka do systému PID. K těm nejvýraznějším, které se dotknou linek obsluhujících území Prahy, patří zavedení nových linek:</p>\n\n<ul>\n <li>číslo <strong>304</strong> v trase <em>Kukulova – Nemocnice Motol – Zličín – Stochov – Nové Strašecí – Rakovník, Autobusová stanice</em></li>\n <li>číslo <strong>305</strong> v trase <em>Zličín – Velká Dobrá – Tuchlovice – Lány – Nové Strašecí – Řevničov – Lišany – Lužná – Rakovník, Autobusová stanice</em></li>\n <li>číslo <strong>365</strong> v trase <em>Motol – Nemocnice Motol – Hostivice – Jeneč – Unhošť, Náměstí – Velká Dobrá – Doksy – Kamenné Žehrovice – Tuchlovice – Stochov, Náměstí</em></li>\n <li>číslo <strong>404</strong> v trase <em>Zličín – Stochov – Lány – Rakovník, Autobusová 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"("
|
|
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
|
-
(
|
|
31
|
-
(
|
|
32
|
-
(
|
|
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"("
|
|
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
|
-
(
|
|
37
|
-
(
|
|
38
|
-
(
|
|
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);
|
|
@@ -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,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();
|
|
@@ -76,20 +76,30 @@ const queueDefinitions = [
|
|
|
76
76
|
},
|
|
77
77
|
],
|
|
78
78
|
},
|
|
79
|
-
// Ropid VYMI
|
|
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: "
|
|
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: "
|
|
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":";;;AAAA,yEAAsE;AAEtE,iEAA4C;AAC5C,iEAA4C;AAC5C,+EAA0D;AAC1D,kEAAiE;AACjE,kEAAiE;AACjE,uFAAsF;AAEtF,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,gCAAgC;aACjD;YACD;gBACI,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,8BAA8B;aAC/C;YACD;gBACI,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,2BAA2B;aAC5C;SACJ;KACJ;IACD
|
|
1
|
+
{"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,yEAAsE;AAEtE,iEAA4C;AAC5C,iEAA4C;AAC5C,+EAA0D;AAC1D,kEAAiE;AACjE,kEAAiE;AACjE,uFAAsF;AAEtF,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,gCAAgC;aACjD;YACD;gBACI,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,8BAA8B;aAC/C;YACD;gBACI,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,2BAA2B;aAC5C;SACJ;KACJ;IACD,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,mBAAmB;gBACzB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBACzC;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,mBAAmB;aACpC;YACD;gBACI,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBACzC;gBACD,MAAM,EAAE,iCAAe;gBACvB,YAAY,EAAE,uBAAuB;aACxC;SACJ;KACJ;IACD,sCAAsC;IACtC;QACI,IAAI,EAAE,oCAAgB,CAAC,IAAI;QAC3B,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,oCAAgB,CAAC,IAAI,CAAC,WAAW,EAAE;QACpF,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,cAAc;aAC/B;YACD;gBACI,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,eAAe;aAChC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,aAAa;aAC9B;YACD;gBACI,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,gBAAgB;aACjC;YACD;gBACI,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,cAAc;aAC/B;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,+BAA+B;aAChD;YACD;gBACI,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;iBAC/B;gBACD,MAAM,EAAE,+CAAsB;gBAC9B,YAAY,EAAE,gBAAgB;aACjC;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
|
|
@@ -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 {
|
|
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,23 @@ export declare enum DatasetEnum {
|
|
|
8
7
|
RUN_NUMBERS = "RUN_NUMBERS",
|
|
9
8
|
DEPARTURES_PRESETS = "DEPARTURES_PRESETS"
|
|
10
9
|
}
|
|
11
|
-
export declare
|
|
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;
|
|
41
14
|
private ropidGTFSServicesFirst14daysModel;
|
|
42
15
|
constructor();
|
|
43
|
-
getLastModified: (dataset: string) => Promise<any | null>;
|
|
44
|
-
checkSavedRows: (dataset: string, version: number) => Promise<void>;
|
|
45
16
|
checkSavedTmpTables: (dataset: string, version: number) => Promise<void>;
|
|
46
17
|
checkAllTablesHasSavedState: (datasets: Array<{
|
|
47
18
|
dataset: string;
|
|
48
19
|
version: number;
|
|
49
20
|
}>) => Promise<boolean>;
|
|
50
21
|
checkIfNewVersionIsAlreadyDeployed: (dataset: string, version: number) => Promise<boolean>;
|
|
51
|
-
replaceDeparturePresetTables: (version: number) => Promise<boolean>;
|
|
52
22
|
replaceTables: (datasetInfo: Array<{
|
|
53
23
|
dataset: string;
|
|
54
24
|
version: number;
|
|
55
25
|
}>) => Promise<boolean>;
|
|
56
|
-
rollbackFailedSaving: (dataset: string, version: number) => Promise<any>;
|
|
57
26
|
updateState: (dataset: string, name: string, state: MetaStateEnum, version: number) => Promise<any>;
|
|
58
|
-
updateSavedRows: (dataset: string, name: string, count: number, version: number) => Promise<any>;
|
|
59
27
|
getNumberOfDownloadRetries: (dataset: string, version: number) => Promise<number>;
|
|
60
28
|
replacePrecomputedTmpTables: (t: Sequelize.Transaction) => Promise<any>;
|
|
61
|
-
private getTotalFromMeta;
|
|
62
|
-
private getTotalFromTables;
|
|
63
29
|
}
|