@golemio/pid 5.7.3-dev.2387345183 → 5.7.3-rc.2387462919
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/dist/const.d.ts +1 -0
- package/dist/const.js +2 -1
- package/dist/const.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/datasources/StaticDataSourceFactory.d.ts +2 -3
- package/dist/integration-engine/ropid-gtfs/datasources/StaticDataSourceFactory.js +2 -4
- package/dist/integration-engine/ropid-gtfs/datasources/StaticDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/ioc/Di.js +0 -4
- package/dist/integration-engine/ropid-gtfs/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.d.ts +0 -2
- package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js +0 -2
- package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/SaveStaticDataTask.d.ts +1 -6
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/SaveStaticDataTask.js +10 -39
- package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/SaveStaticDataTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/Di.js +0 -2
- package/dist/integration-engine/vehicle-positions/ioc/Di.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.d.ts +0 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js +0 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/BusMessageFilter.d.ts +5 -11
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/BusMessageFilter.js +9 -36
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/BusMessageFilter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.d.ts +1 -4
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js +9 -26
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/CommonMessageProcessor.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/TramMessageFilter.d.ts +3 -7
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/TramMessageFilter.js +8 -26
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/TramMessageFilter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/helpers/interfaces/ICommonMessageFilter.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/tasks/SaveBusRunsToDBTask.js +2 -3
- package/dist/integration-engine/vehicle-positions/workers/runs/tasks/SaveBusRunsToDBTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/tasks/SaveTramRunsToDBTask.js +3 -4
- package/dist/integration-engine/vehicle-positions/workers/runs/tasks/SaveTramRunsToDBTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.d.ts +2 -1
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.js +10 -3
- package/dist/integration-engine/vehicle-positions/workers/runs/transformations/CommonRunsMessagesTransformation.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.d.ts +1 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js +3 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IUpdateRunsGtfsTripInput.d.ts +0 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateRunsGtfsTripIdSchema.d.ts +0 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateRunsGtfsTripIdSchema.js +0 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateRunsGtfsTripIdSchema.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateRunsGtfsTripIdTask.js +3 -4
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateRunsGtfsTripIdTask.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/PositionRepository.d.ts +3 -10
- package/dist/output-gateway/vehicle-positions/data-access/PositionRepository.js +7 -30
- package/dist/output-gateway/vehicle-positions/data-access/PositionRepository.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/TripRepository.d.ts +3 -7
- package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js +7 -30
- package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/VehicleDescriptorRepository.d.ts +3 -10
- package/dist/output-gateway/vehicle-positions/data-access/VehicleDescriptorRepository.js +7 -30
- package/dist/output-gateway/vehicle-positions/data-access/VehicleDescriptorRepository.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/VehicleTypeRepository.d.ts +3 -10
- package/dist/output-gateway/vehicle-positions/data-access/VehicleTypeRepository.js +7 -30
- package/dist/output-gateway/vehicle-positions/data-access/VehicleTypeRepository.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/index.js +18 -9
- package/dist/output-gateway/vehicle-positions/data-access/index.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/interfaces/ITripWithPositionRepository.d.ts +2 -3
- package/dist/output-gateway/vehicle-positions/data-access/interfaces/IVPRepositoryInstances.d.ts +6 -6
- package/dist/output-gateway/vehicle-positions/data-access/views/ProcessedPositionRepository.d.ts +3 -7
- package/dist/output-gateway/vehicle-positions/data-access/views/ProcessedPositionRepository.js +7 -30
- package/dist/output-gateway/vehicle-positions/data-access/views/ProcessedPositionRepository.js.map +1 -1
- package/dist/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.d.ts +7 -17
- package/dist/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.js +42 -112
- package/dist/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.js.map +1 -1
- package/dist/schema-definitions/datasources/static-data/index.d.ts +0 -1
- package/dist/schema-definitions/datasources/static-data/index.js +0 -1
- package/dist/schema-definitions/datasources/static-data/index.js.map +1 -1
- package/dist/schema-definitions/datasources/static-data/interfaces/index.d.ts +0 -1
- package/dist/schema-definitions/datasources/static-data/interfaces/index.js +0 -1
- package/dist/schema-definitions/datasources/static-data/interfaces/index.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/redis/const.d.ts +0 -2
- package/dist/schema-definitions/ropid-gtfs/redis/const.js +1 -3
- package/dist/schema-definitions/ropid-gtfs/redis/const.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto.d.ts +0 -8
- package/docs/asyncapi.yaml +2 -13
- package/docs/cache/types/redis.md +2 -30
- package/docs/implementation_documentation.md +4 -101
- package/docs/jis/index.md +0 -17
- package/docs/processing/input_realtime_data/http_mpvnet.md +0 -21
- package/docs/processing/state_position_tracking/http_mpvnet.md +0 -1
- package/docs/processing/state_position_tracking/tcp_dpp_common.md +1 -2
- package/package.json +1 -1
- package/dist/integration-engine/ropid-gtfs/data-access/cache/NotPublicVehiclesRedisRepository.d.ts +0 -14
- package/dist/integration-engine/ropid-gtfs/data-access/cache/NotPublicVehiclesRedisRepository.js +0 -47
- package/dist/integration-engine/ropid-gtfs/data-access/cache/NotPublicVehiclesRedisRepository.js.map +0 -1
- package/dist/integration-engine/ropid-gtfs/datasources/static-data/NotPublicVehiclesDataSourceProvider.d.ts +0 -9
- package/dist/integration-engine/ropid-gtfs/datasources/static-data/NotPublicVehiclesDataSourceProvider.js +0 -47
- package/dist/integration-engine/ropid-gtfs/datasources/static-data/NotPublicVehiclesDataSourceProvider.js.map +0 -1
- package/dist/output-gateway/vehicle-positions/data-access/cache/NotPublicVehiclesRedisRepository.d.ts +0 -10
- package/dist/output-gateway/vehicle-positions/data-access/cache/NotPublicVehiclesRedisRepository.js +0 -45
- package/dist/output-gateway/vehicle-positions/data-access/cache/NotPublicVehiclesRedisRepository.js.map +0 -1
- package/dist/output-gateway/vehicle-positions/ioc/Di.d.ts +0 -3
- package/dist/output-gateway/vehicle-positions/ioc/Di.js +0 -23
- package/dist/output-gateway/vehicle-positions/ioc/Di.js.map +0 -1
- package/dist/output-gateway/vehicle-positions/ioc/OgVehiclePositionsToken.d.ts +0 -9
- package/dist/output-gateway/vehicle-positions/ioc/OgVehiclePositionsToken.js +0 -15
- package/dist/output-gateway/vehicle-positions/ioc/OgVehiclePositionsToken.js.map +0 -1
- package/dist/schema-definitions/datasources/static-data/NotPublicVehiclesJsonSchema.d.ts +0 -3
- package/dist/schema-definitions/datasources/static-data/NotPublicVehiclesJsonSchema.js +0 -40
- package/dist/schema-definitions/datasources/static-data/NotPublicVehiclesJsonSchema.js.map +0 -1
- package/dist/schema-definitions/datasources/static-data/interfaces/NotPublicVehiclesDataInterface.d.ts +0 -35
- package/dist/schema-definitions/datasources/static-data/interfaces/NotPublicVehiclesDataInterface.js +0 -18
- package/dist/schema-definitions/datasources/static-data/interfaces/NotPublicVehiclesDataInterface.js.map +0 -1
- package/docs/examples/not_public_vehicles.json +0 -9
- package/docs/processing/transferboards_filtering.md +0 -312
package/dist/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.js
CHANGED
|
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
-
};
|
|
24
18
|
var __importStar = (this && this.__importStar) || (function () {
|
|
25
19
|
var ownKeys = function(o) {
|
|
26
20
|
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
@@ -38,45 +32,52 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
38
32
|
return result;
|
|
39
33
|
};
|
|
40
34
|
})();
|
|
41
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
42
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
43
|
-
};
|
|
44
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
45
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
46
|
-
};
|
|
47
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
37
|
};
|
|
50
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
39
|
exports.TripWithLastPositionRepository = void 0;
|
|
52
40
|
const const_1 = require("../../../../schema-definitions/const");
|
|
53
|
-
const NotPublicVehiclesRedisRepository_1 = require("../cache/NotPublicVehiclesRedisRepository");
|
|
54
|
-
const ProcessedPositionRepository_1 = require("./ProcessedPositionRepository");
|
|
55
|
-
const VehicleTypeRepository_1 = require("../VehicleTypeRepository");
|
|
56
|
-
const VehicleDescriptorRepository_1 = require("../VehicleDescriptorRepository");
|
|
57
|
-
const OgVehiclePositionsToken_1 = require("../../ioc/OgVehiclePositionsToken");
|
|
58
41
|
const models_1 = require("../../../../schema-definitions/vehicle-descriptors/models");
|
|
59
42
|
const vehicle_positions_1 = require("../../../../schema-definitions/vehicle-positions");
|
|
60
43
|
const views_1 = require("../../../../schema-definitions/vehicle-positions/models/views");
|
|
44
|
+
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
61
45
|
const Geo_1 = require("@golemio/core/dist/output-gateway/Geo");
|
|
46
|
+
const ioc_1 = require("@golemio/core/dist/output-gateway/ioc/");
|
|
62
47
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
63
48
|
const moment_timezone_1 = __importDefault(require("@golemio/core/dist/shared/moment-timezone"));
|
|
64
49
|
const sequelize_1 = __importStar(require("@golemio/core/dist/shared/sequelize"));
|
|
65
50
|
const const_2 = require("../../../../const");
|
|
66
|
-
const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
|
|
67
51
|
const PositionOutputMapper_1 = require("../helpers/PositionOutputMapper");
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
52
|
+
class TripWithLastPositionRepository extends output_gateway_1.SequelizeModel {
|
|
53
|
+
constructor() {
|
|
54
|
+
super("TripWithLastPositionRepository", views_1.TripWithLastPositionModel.tableName, views_1.TripWithLastPositionModel.attributeModel, {
|
|
55
|
+
schema: const_1.PG_SCHEMA,
|
|
56
|
+
});
|
|
57
|
+
this.Associate = (repositories) => {
|
|
58
|
+
this.sequelizeModel.hasMany(repositories.processedPositionRepository.sequelizeModel, {
|
|
59
|
+
as: "all_positions",
|
|
60
|
+
foreignKey: "trips_id",
|
|
61
|
+
scope: {
|
|
62
|
+
lat: { [sequelize_1.Op.not]: null },
|
|
63
|
+
lng: { [sequelize_1.Op.not]: null },
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
this.sequelizeModel.belongsTo(repositories.vehicleTypeRepository.sequelizeModel, {
|
|
67
|
+
as: "vehicle_type",
|
|
68
|
+
foreignKey: "vehicle_type_id",
|
|
69
|
+
});
|
|
70
|
+
this.sequelizeModel.belongsTo(repositories.vehicleDescriptorRepository.sequelizeModel, {
|
|
71
|
+
as: "vehicle_descriptor",
|
|
72
|
+
foreignKey: "vehicle_registration_number",
|
|
73
|
+
targetKey: "registration_number",
|
|
74
|
+
scope: {
|
|
75
|
+
[sequelize_1.default.Op.and]: [
|
|
76
|
+
sequelize_1.default.literal(`${views_1.TripWithLastPositionModel.tableName}.gtfs_route_type = vehicle_descriptor.gtfs_route_type`),
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
});
|
|
80
|
+
};
|
|
80
81
|
/** Retrieves all vehicle trips
|
|
81
82
|
* @param {object} options Options object with params
|
|
82
83
|
* @param {number} [options.limit] Limit
|
|
@@ -93,10 +94,6 @@ let TripWithLastPositionRepository = class TripWithLastPositionRepository extend
|
|
|
93
94
|
// updatedSince cannot be more than 10 minutes ago
|
|
94
95
|
const maxUpdatedAt = updatedSince && (0, moment_timezone_1.default)(updatedSince).isSameOrAfter(minUpdatedAt) ? updatedSince.toISOString() : null;
|
|
95
96
|
const include = this.composeIncludes(options);
|
|
96
|
-
let notPublicWhereConditions = [];
|
|
97
|
-
if (options.includeNotPublic) {
|
|
98
|
-
notPublicWhereConditions = await this.getNotPublicWhereConditions();
|
|
99
|
-
}
|
|
100
97
|
try {
|
|
101
98
|
const rows = await this.sequelizeModel.findAll({
|
|
102
99
|
attributes: {
|
|
@@ -113,7 +110,12 @@ let TripWithLastPositionRepository = class TripWithLastPositionRepository extend
|
|
|
113
110
|
},
|
|
114
111
|
},
|
|
115
112
|
{
|
|
116
|
-
[sequelize_1.Op.or]: [
|
|
113
|
+
[sequelize_1.Op.or]: [
|
|
114
|
+
{ gtfs_trip_id: { [sequelize_1.Op.ne]: null } },
|
|
115
|
+
{
|
|
116
|
+
vehicle_registration_number: { [sequelize_1.Op.in]: const_2.ArrayNotPublicRegistrationNumbers },
|
|
117
|
+
},
|
|
118
|
+
],
|
|
117
119
|
},
|
|
118
120
|
maxUpdatedAt
|
|
119
121
|
? {
|
|
@@ -194,11 +196,11 @@ let TripWithLastPositionRepository = class TripWithLastPositionRepository extend
|
|
|
194
196
|
const include = [
|
|
195
197
|
{
|
|
196
198
|
as: "vehicle_type",
|
|
197
|
-
model: this.
|
|
199
|
+
model: this.dbConnector.getConnection().models[vehicle_positions_1.VehiclePositions.vehicleTypes.pgTableName],
|
|
198
200
|
},
|
|
199
201
|
{
|
|
200
202
|
as: "vehicle_descriptor",
|
|
201
|
-
model: this.
|
|
203
|
+
model: this.dbConnector.getConnection().models[models_1.DescriptorModel.tableName],
|
|
202
204
|
attributes: ["is_air_conditioned", "has_usb_chargers"],
|
|
203
205
|
},
|
|
204
206
|
];
|
|
@@ -208,7 +210,7 @@ let TripWithLastPositionRepository = class TripWithLastPositionRepository extend
|
|
|
208
210
|
exclude: ["trips_id", "state_position"],
|
|
209
211
|
},
|
|
210
212
|
as: "all_positions",
|
|
211
|
-
model: this.
|
|
213
|
+
model: this.dbConnector.getConnection().models[views_1.ProcessedPositionModel.tableName],
|
|
212
214
|
where: {
|
|
213
215
|
state_position: {
|
|
214
216
|
[sequelize_1.Op.in]: possibleStatePositions,
|
|
@@ -228,83 +230,11 @@ let TripWithLastPositionRepository = class TripWithLastPositionRepository extend
|
|
|
228
230
|
}
|
|
229
231
|
return possibleStatePosition;
|
|
230
232
|
};
|
|
231
|
-
this.
|
|
232
|
-
const conditions = [];
|
|
233
|
-
// Fetch not-public vehicles config from Redis
|
|
234
|
-
const { tram: { registrationNumbers: tramRegistrationNumbers }, road: { registrationNumbers: roadRegistrationNumbers }, routeIds: allowedRouteNames, } = await this.notPublicVehiclesRepository.getConfig();
|
|
235
|
-
// Add tram vehicles condition only if we have tram registration numbers
|
|
236
|
-
if (tramRegistrationNumbers && tramRegistrationNumbers.length > 0) {
|
|
237
|
-
conditions.push({
|
|
238
|
-
[sequelize_1.Op.and]: [
|
|
239
|
-
{ gtfs_route_type: RouteTypeEnums_1.GTFSRouteTypeEnum.TRAM },
|
|
240
|
-
{ vehicle_registration_number: { [sequelize_1.Op.in]: tramRegistrationNumbers } },
|
|
241
|
-
],
|
|
242
|
-
});
|
|
243
|
-
}
|
|
244
|
-
// Add road vehicles condition only if we have road registration numbers
|
|
245
|
-
if (roadRegistrationNumbers && roadRegistrationNumbers.length > 0) {
|
|
246
|
-
conditions.push({
|
|
247
|
-
[sequelize_1.Op.and]: [
|
|
248
|
-
{
|
|
249
|
-
gtfs_route_type: {
|
|
250
|
-
[sequelize_1.Op.in]: [RouteTypeEnums_1.GTFSRouteTypeEnum.BUS, RouteTypeEnums_1.GTFSRouteTypeEnum.TROLLEYBUS],
|
|
251
|
-
},
|
|
252
|
-
},
|
|
253
|
-
{ vehicle_registration_number: { [sequelize_1.Op.in]: roadRegistrationNumbers } },
|
|
254
|
-
],
|
|
255
|
-
});
|
|
256
|
-
}
|
|
257
|
-
// Add route names condition only if we have route IDs
|
|
258
|
-
if (allowedRouteNames && allowedRouteNames.length > 0) {
|
|
259
|
-
conditions.push({
|
|
260
|
-
origin_route_name: { [sequelize_1.Op.in]: allowedRouteNames },
|
|
261
|
-
});
|
|
262
|
-
}
|
|
263
|
-
return conditions;
|
|
264
|
-
};
|
|
265
|
-
this.sequelizeModel = connector.getConnection().define(this.tableName, views_1.TripWithLastPositionModel.attributeModel, {
|
|
266
|
-
schema: this.schema,
|
|
267
|
-
});
|
|
268
|
-
// Set up associations
|
|
269
|
-
this.sequelizeModel.hasMany(this.processedPositionRepository.sequelizeModel, {
|
|
270
|
-
as: "all_positions",
|
|
271
|
-
foreignKey: "trips_id",
|
|
272
|
-
scope: {
|
|
273
|
-
lat: { [sequelize_1.Op.not]: null },
|
|
274
|
-
lng: { [sequelize_1.Op.not]: null },
|
|
275
|
-
},
|
|
276
|
-
});
|
|
277
|
-
this.sequelizeModel.belongsTo(this.vehicleTypeRepository.sequelizeModel, {
|
|
278
|
-
as: "vehicle_type",
|
|
279
|
-
foreignKey: "vehicle_type_id",
|
|
280
|
-
});
|
|
281
|
-
this.sequelizeModel.belongsTo(this.vehicleDescriptorRepository.sequelizeModel, {
|
|
282
|
-
as: "vehicle_descriptor",
|
|
283
|
-
foreignKey: "vehicle_registration_number",
|
|
284
|
-
targetKey: "registration_number",
|
|
285
|
-
scope: {
|
|
286
|
-
[sequelize_1.default.Op.and]: [
|
|
287
|
-
sequelize_1.default.literal(`${views_1.TripWithLastPositionModel.tableName}.gtfs_route_type = vehicle_descriptor.gtfs_route_type`),
|
|
288
|
-
],
|
|
289
|
-
},
|
|
290
|
-
});
|
|
233
|
+
this.dbConnector = ioc_1.OutputGatewayContainer.resolve(ioc_1.ContainerToken.PostgresDatabase);
|
|
291
234
|
}
|
|
292
235
|
GetOne() {
|
|
293
236
|
throw new Error("Not implemented");
|
|
294
237
|
}
|
|
295
|
-
}
|
|
238
|
+
}
|
|
296
239
|
exports.TripWithLastPositionRepository = TripWithLastPositionRepository;
|
|
297
|
-
exports.TripWithLastPositionRepository = TripWithLastPositionRepository = __decorate([
|
|
298
|
-
(0, tsyringe_1.injectable)(),
|
|
299
|
-
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.PostgresConnector)),
|
|
300
|
-
__param(1, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
|
|
301
|
-
__param(2, (0, tsyringe_1.inject)(OgVehiclePositionsToken_1.OgVehiclePositionsToken.NotPublicVehiclesRedisRepository)),
|
|
302
|
-
__param(3, (0, tsyringe_1.inject)(OgVehiclePositionsToken_1.OgVehiclePositionsToken.ProcessedPositionRepository)),
|
|
303
|
-
__param(4, (0, tsyringe_1.inject)(OgVehiclePositionsToken_1.OgVehiclePositionsToken.VehicleTypeRepository)),
|
|
304
|
-
__param(5, (0, tsyringe_1.inject)(OgVehiclePositionsToken_1.OgVehiclePositionsToken.VehicleDescriptorRepository)),
|
|
305
|
-
__metadata("design:paramtypes", [Object, Object, NotPublicVehiclesRedisRepository_1.NotPublicVehiclesRedisRepository,
|
|
306
|
-
ProcessedPositionRepository_1.ProcessedPositionRepository,
|
|
307
|
-
VehicleTypeRepository_1.VehicleTypeRepository,
|
|
308
|
-
VehicleDescriptorRepository_1.VehicleDescriptorRepository])
|
|
309
|
-
], TripWithLastPositionRepository);
|
|
310
240
|
//# sourceMappingURL=TripWithLastPositionRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TripWithLastPositionRepository.js","sourceRoot":"","sources":["../../../../../src/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TripWithLastPositionRepository.js","sourceRoot":"","sources":["../../../../../src/output-gateway/vehicle-positions/data-access/views/TripWithLastPositionRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./MetroRailTrackJsonSchema"), exports);
|
|
18
18
|
__exportStar(require("./DeparturesDirectionsJsonSchema"), exports);
|
|
19
|
-
__exportStar(require("./NotPublicVehiclesJsonSchema"), exports);
|
|
20
19
|
__exportStar(require("./interfaces"), exports);
|
|
21
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/static-data/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,mEAAiD;AACjD
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/static-data/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,mEAAiD;AACjD,+CAA6B"}
|
|
@@ -16,5 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./MetroRailTrackDataInterface"), exports);
|
|
18
18
|
__exportStar(require("./DeparturesDirectionDataInterface"), exports);
|
|
19
|
-
__exportStar(require("./NotPublicVehiclesDataInterface"), exports);
|
|
20
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/static-data/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,qEAAmD
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/static-data/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,qEAAmD"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
export declare const GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = "gtfsRunSchedule";
|
|
2
2
|
export declare const PUBLIC_DEPARTURE_NAMESPACE_PREFIX = "gtfsPublicDepartureCache";
|
|
3
3
|
export declare const GTFS_STOPS_NAMESPACE_PREFIX = "gtfsStopsCache";
|
|
4
|
-
export declare const CONFIG_NAMESPACE_PREFIX = "config";
|
|
5
|
-
export declare const NOT_PUBLIC_VEHICLES_KEY = "notPublicVehicles";
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.GTFS_STOPS_NAMESPACE_PREFIX = exports.PUBLIC_DEPARTURE_NAMESPACE_PREFIX = exports.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = void 0;
|
|
4
4
|
exports.GTFS_RUN_SCHEDULE_NAMESPACE_PREFIX = "gtfsRunSchedule";
|
|
5
5
|
exports.PUBLIC_DEPARTURE_NAMESPACE_PREFIX = "gtfsPublicDepartureCache";
|
|
6
6
|
exports.GTFS_STOPS_NAMESPACE_PREFIX = "gtfsStopsCache";
|
|
7
|
-
exports.CONFIG_NAMESPACE_PREFIX = "config";
|
|
8
|
-
exports.NOT_PUBLIC_VEHICLES_KEY = "notPublicVehicles";
|
|
9
7
|
//# sourceMappingURL=const.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG,iBAAiB,CAAC;AACvD,QAAA,iCAAiC,GAAG,0BAA0B,CAAC;AAC/D,QAAA,2BAA2B,GAAG,gBAAgB,CAAC
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/schema-definitions/ropid-gtfs/redis/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG,iBAAiB,CAAC;AACvD,QAAA,iCAAiC,GAAG,0BAA0B,CAAC;AAC/D,QAAA,2BAA2B,GAAG,gBAAgB,CAAC"}
|
package/dist/schema-definitions/vehicle-positions/models/interfaces/ICommonRunWithMessageDto.d.ts
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
|
-
import { GTFSRouteTypeEnum } from "../../../../helpers/RouteTypeEnums";
|
|
2
1
|
import { ICommonRunsMessagesModel } from "./ICommonRunsMessagesModel";
|
|
3
2
|
import { ICommonRunsModel } from "./ICommonRunsModel";
|
|
4
3
|
export interface ICommonRunWithMessageDto {
|
|
5
4
|
run: ICommonRunsModel;
|
|
6
5
|
run_message: ICommonRunsMessagesModel;
|
|
7
|
-
/**
|
|
8
|
-
* Flag set by message filters to indicate this is a not-public vehicle
|
|
9
|
-
* (replacement bus/tram without schedule)
|
|
10
|
-
* Used by processor to determine if missing timestamp is acceptable
|
|
11
|
-
*/
|
|
12
|
-
isNotPublic?: boolean;
|
|
13
|
-
notPublicVehicleRouteType?: GTFSRouteTypeEnum.TRAM | GTFSRouteTypeEnum.BUS;
|
|
14
6
|
}
|
package/docs/asyncapi.yaml
CHANGED
|
@@ -558,13 +558,6 @@ components:
|
|
|
558
558
|
run_message:
|
|
559
559
|
type: object
|
|
560
560
|
$ref: "#/components/schemas/ICommonRunsMessagesModel"
|
|
561
|
-
isNotPublic:
|
|
562
|
-
type: boolean
|
|
563
|
-
description: Flag indicating if this is a not-public vehicle (e.g., replacement bus/tram). Optional.
|
|
564
|
-
notPublicVehicleRouteType:
|
|
565
|
-
type: number
|
|
566
|
-
enum: [0, 3]
|
|
567
|
-
description: GTFS route type for not-public vehicles (0=tram, 3=bus). Only populated when isNotPublic is true. Used to determine correct vehicle type mapping.
|
|
568
561
|
IUpdateDelayInput:
|
|
569
562
|
payload:
|
|
570
563
|
type: object
|
|
@@ -725,12 +718,8 @@ components:
|
|
|
725
718
|
type: string
|
|
726
719
|
description: The timestamp when the message was last sent.
|
|
727
720
|
wheelchair_accessible:
|
|
728
|
-
type:
|
|
729
|
-
description:
|
|
730
|
-
Raw wheelchair accessibility flag from vehiclepositions_trips.
|
|
731
|
-
Mapped to wheelchairAccessible proto enum in GTFS-RT VehicleDescriptor:
|
|
732
|
-
null → WHEELCHAIR_ACCESSIBLE_UNSPECIFIED (0), true → WHEELCHAIR_ACCESSIBLE (1), false → WHEELCHAIR_INACCESSIBLE (2).
|
|
733
|
-
The OVAPI extension .transit_realtime.ovapiVehicleDescriptor.wheelchairAccessible retains the raw boolean/null value alongside the standard field.
|
|
721
|
+
type: boolean
|
|
722
|
+
description: Indicates if the vehicle is wheelchair accessible.
|
|
734
723
|
ICommonRunsMessagesModel:
|
|
735
724
|
type: object
|
|
736
725
|
properties:
|
|
@@ -275,7 +275,6 @@ flowchart TD
|
|
|
275
275
|
- `vpPublicCache:$setId:canceled-trips-$gtfsTripId` - JSON jako string s informacemi o zrušeném spoji. Využití v public odjezdech
|
|
276
276
|
- TTL 1 minuta
|
|
277
277
|
- Nová datová sada se generuje přibližně jednou za 3 vteřiny a obsahuje všechny RT spoje (aktivní, budoucí a zrušené)
|
|
278
|
-
- Populace `future-trip-*`, `future-vehicle-*` a `canceled-trips-*` sub-klíčů je řízena stavem spoje (před trasou / zrušen) a nesouvisí s logikou deduplikace odjezdů v `/v2/public/departureboards` – ta pracuje nad `gtfsPublicDepartureCache` a tuto cache neovlivňuje
|
|
279
278
|
|
|
280
279
|
### vpPublicStopTimeCache:*
|
|
281
280
|
|
|
@@ -295,29 +294,14 @@ flowchart TD
|
|
|
295
294
|
### gtfsPublicDepartureCache:*
|
|
296
295
|
|
|
297
296
|
- Klíč `gtfsPublicDepartureCache:*`, kde `*` je GTFS id zastávky
|
|
298
|
-
- Hodnota je sorted set, kde score je unix timestamp odjezdu v sekundách a member
|
|
299
|
-
- `stop_id` – GTFS id zastávky
|
|
300
|
-
- `departure_datetime` – plánovaný čas odjezdu (ISO 8601)
|
|
301
|
-
- `arrival_datetime` – plánovaný čas příjezdu (ISO 8601), nebo `null`
|
|
302
|
-
- `route_short_name` – název linky
|
|
303
|
-
- `route_type` – typ dopravy (GTFS route_type)
|
|
304
|
-
- `trip_id` – GTFS id spoje
|
|
305
|
-
- `stop_sequence` – pořadí zastávky v spoji
|
|
306
|
-
- `platform_code` – označení nástupiště, nebo `null`
|
|
307
|
-
- `trip_headsign` – cílová zastávka spoje (nebo `stop_headsign`, pokud je definován)
|
|
308
|
-
- `trip_headsign_icons` – ikony přestupů u cílové zastávky jako řetězec dvouznaková kódů (např. `"MbMcSb"`), nebo `null`
|
|
309
|
-
- `connections` – seznam garantovaných přestupů čekajících na tento spoj, nebo `null`; každý záznam obsahuje:
|
|
310
|
-
- `from_trip_id` – GTFS id spoje, na který se čeká
|
|
311
|
-
- `max_wait_sec` – maximální čekací doba v sekundách
|
|
312
|
-
- Přednačítá se z tabulky `ropidgtfs_precomputed_trip_connections` (původně z `transfers.txt` kde `transfer_type = 1`), JOIN na odjezdy přes `to_trip_id` a `to_stop_id`
|
|
313
|
-
- `wheelchair_accessible` – přístupnost vozidla pro vozíčkáře z GTFS `trips.txt` (`0` = bez informace, `1` = přístupné, `2` = nepřístupné), nebo `null`
|
|
297
|
+
- Hodnota je sorted set, kde score je unix timestamp odjezdu v sekundách a member jsou relevantní informace o odjezdu
|
|
314
298
|
- Existuje záznam pro každou zastávku v GTFS. Pokud v ní ale není žádný odjezd, je vyplněný pouze jeden prázdný member - detekce validní zastávky bez odjezdu
|
|
315
299
|
- TTL 7 hodin
|
|
316
300
|
- Retence dat aktivní, jednou za hodinu se smažou všechny odjezdy starší než 3 hodiny
|
|
317
301
|
- Jednou za hodinu se vygenerují nové odjezdy pro všechny zastávky v intervalu +5 hodin až +7 hodin, po přenačtení JŘ se přegenerují všechny odjezdy v interval -3 hodiny až +7 hodin
|
|
318
302
|
- Ukládá se pomocí `ZADD`, čte se pomocí `ZRANGEBYSCORE` (-inf, now + `minutesAfter`)
|
|
319
303
|
- Využití v public odjezdech
|
|
320
|
-
- Využití v endpointu přestupních tabulí
|
|
304
|
+
- Využití v endpointu přestupních tabulí
|
|
321
305
|
|
|
322
306
|
### Flowchart (refresh)
|
|
323
307
|
|
|
@@ -545,18 +529,6 @@ flowchart LR
|
|
|
545
529
|
|
|
546
530
|
link na .drawio [soubor](../../assets/V4Transferboards.drawio)
|
|
547
531
|
|
|
548
|
-
## Cache pro konfiguraci
|
|
549
|
-
|
|
550
|
-
### config:notPublicVehicles
|
|
551
|
-
|
|
552
|
-
- Klíč `config:notPublicVehicles` (jednoduchý klíč, žádný wildcard)
|
|
553
|
-
- Hodnota je JSON string struktury `INotPublicVehicles`:
|
|
554
|
-
- `tram.registrationNumbers` – seznam evidenčních čísel tramvají bez platného GTFS spoje
|
|
555
|
-
- `road.registrationNumbers` – seznam evidenčních čísel autobusů a trolejbusů bez platného GTFS spoje (`road` pokrývá obě kategorie, protože sdílejí číselnou řadu)
|
|
556
|
-
- `routeIds` – whitelist čísel linek (např. `"861"` pro náhradní autobus X-C při výluce metra C) zobrazovaných i bez platného JŘ spoje
|
|
557
|
-
- TTL žádné – hodnota se přepíše při každém spuštění `SaveStaticDataTask` (po načtení nových JŘ)
|
|
558
|
-
- Zapisuje `NotPublicVehiclesRedisRepository` (IE), čte `TripsRepository` / `PositionsMapper` (IE) a `UpdateRunsGtfsTripIdTask` (IE) pro povolení průchodu vozidel bez GTFS spoje
|
|
559
|
-
|
|
560
532
|
## Manuální refresh cache (EnsureCacheTask)
|
|
561
533
|
|
|
562
534
|
`EnsureCacheTask` slouží jako manuální spouštěč obnovy všech 4 caches, jejichž data nejsou real-time obnovována. Po přijetí prázdné zprávy na frontě `vehicle-positions.ropidgtfs.ensureCache` odešle paralelně prázdné zprávy do všech 4 cílových front. Dvě z nich míří do různých workerů (cross-worker routing přes RabbitMQ exchange), dvě míří do stejného workeru (TimetableWorker).
|