@golemio/pid 2.9.6-dev.1065207585 → 2.9.6-dev.1067843193

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 (31) hide show
  1. package/db/migrations/postgresql/20231101161311-regional-bus-termination.js +53 -0
  2. package/db/migrations/postgresql/sqls/20231101161311-regional-bus-termination-down.sql +1 -0
  3. package/db/migrations/postgresql/sqls/20231101161311-regional-bus-termination-up.sql +1 -0
  4. package/dist/integration-engine/vehicle-positions/workers/runs/schema/RegionalBusTransformedRunsSchema.js +4 -0
  5. package/dist/integration-engine/vehicle-positions/workers/runs/schema/RegionalBusTransformedRunsSchema.js.map +1 -1
  6. package/dist/integration-engine/vehicle-positions/workers/runs/transformations/RegionalBusRunsMessagesTransformation.js +1 -0
  7. package/dist/integration-engine/vehicle-positions/workers/runs/transformations/RegionalBusRunsMessagesTransformation.js.map +1 -1
  8. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.js +3 -1
  9. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.js.map +1 -1
  10. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.d.ts +0 -5
  11. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js +14 -34
  12. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js.map +1 -1
  13. package/dist/output-gateway/public/controllers/v1/IParams.d.ts +1 -1
  14. package/dist/output-gateway/public/controllers/v1/PublicVehiclePositionsController.js +5 -1
  15. package/dist/output-gateway/public/controllers/v1/PublicVehiclePositionsController.js.map +1 -1
  16. package/dist/output-gateway/public/routers/v1/PublicRouter.d.ts +0 -1
  17. package/dist/output-gateway/public/routers/v1/PublicRouter.js +2 -6
  18. package/dist/output-gateway/public/routers/v1/PublicRouter.js.map +1 -1
  19. package/dist/output-gateway/public/routers/v1/helpers/CustomTypeValidator.d.ts +5 -0
  20. package/dist/output-gateway/public/routers/v1/helpers/CustomTypeValidator.js +28 -0
  21. package/dist/output-gateway/public/routers/v1/helpers/CustomTypeValidator.js.map +1 -0
  22. package/dist/output-gateway/public/service/facade/VehiclePositionsFacade.d.ts +1 -1
  23. package/dist/output-gateway/public/service/facade/VehiclePositionsFacade.js +2 -2
  24. package/dist/output-gateway/public/service/facade/VehiclePositionsFacade.js.map +1 -1
  25. package/dist/schema-definitions/vehicle-positions/models/RegionalBusRunsMessagesModel.d.ts +1 -0
  26. package/dist/schema-definitions/vehicle-positions/models/RegionalBusRunsMessagesModel.js +8 -1
  27. package/dist/schema-definitions/vehicle-positions/models/RegionalBusRunsMessagesModel.js.map +1 -1
  28. package/dist/schema-definitions/vehicle-positions/models/interfaces/IRegionalBusRunsMessagesModel.d.ts +1 -0
  29. package/docs/implementation_documentation.md +25 -0
  30. package/docs/openapi-output.yaml +154 -0
  31. package/package.json +1 -1
@@ -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', '20231101161311-regional-bus-termination-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', '20231101161311-regional-bus-termination-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 @@
1
+ alter table vehiclepositions_regional_bus_runs_messages drop column is_terminated;
@@ -0,0 +1 @@
1
+ alter table vehiclepositions_regional_bus_runs_messages add column is_terminated boolean not null default false;
@@ -50,6 +50,10 @@ __decorate([
50
50
  (0, class_validator_1.IsNumber)(),
51
51
  __metadata("design:type", Number)
52
52
  ], RegionalBusTransformedRunMessagesValidationSchema.prototype, "bearing", void 0);
53
+ __decorate([
54
+ (0, class_validator_1.IsBoolean)(),
55
+ __metadata("design:type", Boolean)
56
+ ], RegionalBusTransformedRunMessagesValidationSchema.prototype, "is_terminated", void 0);
53
57
  class RegionalBusTransformedRunsValidationSchema {
54
58
  }
55
59
  exports.RegionalBusTransformedRunsValidationSchema = RegionalBusTransformedRunsValidationSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"RegionalBusTransformedRunsSchema.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/schema/RegionalBusTransformedRunsSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mFAAmE;AACnE,+EAA6H;AAO7H,MAAM,iDAAiD;CA2BtD;AAzBG;IADC,IAAA,0BAAQ,GAAE;;2FACe;AAG1B;IADC,IAAA,0BAAQ,GAAE;;sFACU;AAGrB;IADC,IAAA,0BAAQ,GAAE;;0FACc;AAGzB;IADC,IAAA,0BAAQ,GAAE;;iFACK;AAGhB;IADC,IAAA,0BAAQ,GAAE;;sFACS;AAGpB;IADC,IAAA,2BAAS,GAAE;8BACQ,IAAI;4FAAC;AAGzB;IADC,IAAA,0BAAQ,GAAE;;8FACkB;AAG7B;IADC,IAAA,0BAAQ,GAAE;;oFACQ;AAGnB;IADC,IAAA,0BAAQ,GAAE;;kFACM;AAGrB,MAAa,0CAA0C;CAMtD;AAND,gGAMC;AADG;IAJC,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,iDAAiD,CAAC;;4EACnB"}
1
+ {"version":3,"file":"RegionalBusTransformedRunsSchema.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/schema/RegionalBusTransformedRunsSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mFAAmE;AACnE,+EAQmD;AAOnD,MAAM,iDAAiD;CA8BtD;AA5BG;IADC,IAAA,0BAAQ,GAAE;;2FACe;AAG1B;IADC,IAAA,0BAAQ,GAAE;;sFACU;AAGrB;IADC,IAAA,0BAAQ,GAAE;;0FACc;AAGzB;IADC,IAAA,0BAAQ,GAAE;;iFACK;AAGhB;IADC,IAAA,0BAAQ,GAAE;;sFACS;AAGpB;IADC,IAAA,2BAAS,GAAE;8BACQ,IAAI;4FAAC;AAGzB;IADC,IAAA,0BAAQ,GAAE;;8FACkB;AAG7B;IADC,IAAA,0BAAQ,GAAE;;oFACQ;AAGnB;IADC,IAAA,0BAAQ,GAAE;;kFACM;AAGjB;IADC,IAAA,2BAAS,GAAE;;wFACY;AAG5B,MAAa,0CAA0C;CAMtD;AAND,gGAMC;AADG;IAJC,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,iDAAiD,CAAC;;4EACnB"}
@@ -29,6 +29,7 @@ let RegionalBusRunsMessagesTransformation = exports.RegionalBusRunsMessagesTrans
29
29
  registration_number: messageData.evc && messageData.evc !== "0" ? Number.parseInt(messageData.evc) : null,
30
30
  speed_kmh: Number.parseInt(messageData.rych),
31
31
  bearing: Number.parseInt(messageData.smer),
32
+ is_terminated: messageData.conn === "0" || messageData.line === "0",
32
33
  };
33
34
  };
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RegionalBusRunsMessagesTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/transformations/RegionalBusRunsMessagesTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAOzD,IAAM,qCAAqC,mDAA3C,MAAM,qCAAsC,SAAQ,+CAAiD;IAArG;;QACI,SAAI,GAAG,uCAAuC,CAAC;QAE5C,sBAAiB,GAAG,CAAC,IAAiB,EAAgB,EAAE;;YAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;YAE3B,OAAO;gBACH,gBAAgB,EAAE,WAAW,CAAC,IAAI;gBAClC,WAAW,EAAE,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBACnF,eAAe,EAAE,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;gBACxG,MAAM,EAAE,MAAA,WAAW,CAAC,MAAM,mCAAI,EAAE;gBAChC,WAAW,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACxF;gBACD,iBAAiB,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,GAAG,CAAC;gBACjD,mBAAmB,EAAE,WAAW,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;gBACzG,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC5C,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;aAC7C,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;gDArBY,qCAAqC;IADjD,IAAA,qBAAU,GAAE;GACA,qCAAqC,CAqBjD"}
1
+ {"version":3,"file":"RegionalBusRunsMessagesTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/runs/transformations/RegionalBusRunsMessagesTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAOzD,IAAM,qCAAqC,mDAA3C,MAAM,qCAAsC,SAAQ,+CAAiD;IAArG;;QACI,SAAI,GAAG,uCAAuC,CAAC;QAE5C,sBAAiB,GAAG,CAAC,IAAiB,EAAgB,EAAE;;YAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;YAE3B,OAAO;gBACH,gBAAgB,EAAE,WAAW,CAAC,IAAI;gBAClC,WAAW,EAAE,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBACnF,eAAe,EAAE,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;gBACxG,MAAM,EAAE,MAAA,WAAW,CAAC,MAAM,mCAAI,EAAE;gBAChC,WAAW,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACxF;gBACD,iBAAiB,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,GAAG,CAAC;gBACjD,mBAAmB,EAAE,WAAW,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;gBACzG,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC5C,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC1C,aAAa,EAAE,WAAW,CAAC,IAAI,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,KAAK,GAAG;aACtE,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;gDAtBY,qCAAqC;IADjD,IAAA,qBAAU,GAAE;GACA,qCAAqC,CAsBjD"}
@@ -61,6 +61,8 @@ class PositionsMapper {
61
61
  };
62
62
  }
63
63
  static mapRegionalBusRunToDto(isCurrent, gtfsTrip, runMessage) {
64
+ const isBeforeTrack = new Date() < new Date(gtfsTrip.start_timestamp);
65
+ const isTracked = isCurrent && !isBeforeTrack && !runMessage.is_terminated;
64
66
  return {
65
67
  trips_id: TripsIdGenerator_1.default.generateFromRegionalBusRun(gtfsTrip, runMessage),
66
68
  bearing: runMessage.bearing,
@@ -71,7 +73,7 @@ class PositionsMapper {
71
73
  state_position: const_1.StatePositionEnum.UNKNOWN,
72
74
  state_process: const_1.StateProcessEnum.TCP_INPUT,
73
75
  speed: runMessage.speed_kmh,
74
- is_tracked: isCurrent,
76
+ is_tracked: isTracked,
75
77
  tcp_event: runMessage.events,
76
78
  };
77
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PositionsMapper.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PositionsMapper.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/PositionsMapper.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { IVPTripsLastPositionContext } from "../../../../../../schema-definitions/vehicle-positions/models/interfaces/VPTripsLastPositionInterfaces";
2
2
  import { IPositionToUpdate, IProcessedPositions, ITripPositionsWithGTFS, IUpdatePositionsIteratorOptions } from "../../interfaces/VPInterfaces";
3
3
  export declare class RegionalBusPositionsManager {
4
- private static ruler;
5
4
  /**
6
5
  * Compute positions and return computed positions
7
6
  *
@@ -66,10 +65,6 @@ export declare class RegionalBusPositionsManager {
66
65
  * @returns {number} - Result delay in seconds, can be negative for trip ahead
67
66
  */
68
67
  private static getCorrectedTimeDelay;
69
- /**
70
- * Get delay in seconds for positions before track to ensure correct delay propagation
71
- */
72
- private static getDelayBeforeTrack;
73
68
  /**
74
69
  * Compute UTC timestamp of start of day when trip starts
75
70
  *
@@ -38,7 +38,6 @@ var _a;
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.RegionalBusPositionsManager = void 0;
40
40
  const turf = __importStar(require("@turf/turf"));
41
- const cheap_ruler_1 = __importDefault(require("cheap-ruler"));
42
41
  const moment_timezone_1 = __importDefault(require("moment-timezone"));
43
42
  const const_1 = require("../../../../../../const");
44
43
  const PositionCalculator_1 = __importDefault(require("../PositionCalculator"));
@@ -46,22 +45,9 @@ const PositionHandlerEnum_1 = require("../PositionHandlerEnum");
46
45
  const ValidToCalculator_1 = __importDefault(require("../ValidToCalculator"));
47
46
  const RegionalBusComputeDelayHelper_1 = require("./compute-positions/RegionalBusComputeDelayHelper");
48
47
  class RegionalBusPositionsManager {
49
- /**
50
- * Get delay in seconds for positions before track to ensure correct delay propagation
51
- */
52
- static getDelayBeforeTrack(lastPositionDelay, firstStopDepartureTime, positionOriginUnixTimestamp, startDayUnixTimestamp) {
53
- if (typeof lastPositionDelay !== "number") {
54
- return null;
55
- }
56
- const departureTimeInSeconds = startDayUnixTimestamp / 1000 + firstStopDepartureTime;
57
- const positionOriginTimeInSeconds = positionOriginUnixTimestamp / 1000;
58
- return Math.max(lastPositionDelay, positionOriginTimeInSeconds - departureTimeInSeconds);
59
- }
60
48
  }
61
49
  exports.RegionalBusPositionsManager = RegionalBusPositionsManager;
62
50
  _a = RegionalBusPositionsManager;
63
- // TODO: Part of a temporary hotfix of issue pid#320
64
- RegionalBusPositionsManager.ruler = (0, cheap_ruler_1.default)(50, "meters");
65
51
  /**
66
52
  * Compute positions and return computed positions
67
53
  *
@@ -87,7 +73,7 @@ RegionalBusPositionsManager.computePositions = (tripPositions) => __awaiter(void
87
73
  * Takes position one by one, set proper handler for type of position, and do the process of position
88
74
  */
89
75
  RegionalBusPositionsManager.updatePositions = (options) => __awaiter(void 0, void 0, void 0, function* () {
90
- var _b, _c, _d, _e;
76
+ var _b, _c, _d;
91
77
  const { tripPositions, startDayTimestamp, startTimestamp, context, computedPositions, gtfsRouteType } = options;
92
78
  for (let i = 0; i < tripPositions.positions.length; i++) {
93
79
  const position = tripPositions.positions[i];
@@ -110,17 +96,11 @@ RegionalBusPositionsManager.updatePositions = (options) => __awaiter(void 0, voi
110
96
  // if there is no previous positions with tracking status, set position as before_track
111
97
  if (context.lastPositionTracking === null) {
112
98
  const firstStopTime = tripPositions.gtfsData.stop_times[0];
113
- // if there is propagated delay we can use it for new position
114
- const lastPositionDelayed = context.lastPositionBeforeTrackDelayed;
115
99
  positionToUpdate = Object.assign({ id: position.id, next_stop_arrival_time: new Date(startDayTimestamp + firstStopTime.arrival_time_seconds * 1000), next_stop_departure_time: new Date(startDayTimestamp + firstStopTime.departure_time_seconds * 1000), next_stop_id: firstStopTime.stop_id, next_stop_sequence: firstStopTime.stop_sequence, next_stop_name: firstStopTime.stop.stop_name, shape_dist_traveled: firstStopTime.shape_dist_traveled, state_position: const_1.StatePositionEnum.BEFORE_TRACK, state_process: const_1.StateProcessEnum.PROCESSED }, (firstStopTime.stop_headsign && {
116
100
  last_stop_headsign: firstStopTime.stop_headsign,
117
101
  }));
118
102
  if (positionToUpdate.state_position === const_1.StatePositionEnum.BEFORE_TRACK) {
119
- positionToUpdate.delay = _a.getDelayBeforeTrack((_b = lastPositionDelayed === null || lastPositionDelayed === void 0 ? void 0 : lastPositionDelayed.delay) !== null && _b !== void 0 ? _b : position.delay, firstStopTime.departure_time_seconds, position.origin_timestamp.getTime(), startDayTimestamp);
120
- // TODO: Part of a temporary hotfix of issue pid#320
121
- if (RegionalBusPositionsManager.ruler.distance([position.lng, position.lat], tripPositions.gtfsData.shapes_anchor_points[0].coordinates) > 500) {
122
- positionToUpdate.delay = null;
123
- }
103
+ positionToUpdate.delay = 0;
124
104
  }
125
105
  }
126
106
  else {
@@ -144,7 +124,7 @@ RegionalBusPositionsManager.updatePositions = (options) => __awaiter(void 0, voi
144
124
  }
145
125
  // if not null push to update
146
126
  if (positionToUpdate) {
147
- (_c = positionToUpdate.is_tracked) !== null && _c !== void 0 ? _c : (positionToUpdate.is_tracked = position.is_tracked);
127
+ (_b = positionToUpdate.is_tracked) !== null && _b !== void 0 ? _b : (positionToUpdate.is_tracked = position.is_tracked);
148
128
  positionToUpdate.valid_to = ValidToCalculator_1.default.getValidToAttribute(positionToUpdate, position, gtfsRouteType, tripPositions.gtfsData, startTimestamp, startDayTimestamp);
149
129
  computedPositions.push(positionToUpdate);
150
130
  }
@@ -155,8 +135,8 @@ RegionalBusPositionsManager.updatePositions = (options) => __awaiter(void 0, voi
155
135
  // set last known BEFORE_TRACK_DELAYED position
156
136
  if (position.state_position === const_1.StatePositionEnum.BEFORE_TRACK_DELAYED) {
157
137
  context.lastPositionBeforeTrackDelayed = {
158
- delay: (_d = positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.delay) !== null && _d !== void 0 ? _d : position.delay,
159
- origin_timestamp: (_e = positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.origin_timestamp) !== null && _e !== void 0 ? _e : position.origin_timestamp,
138
+ delay: (_c = positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.delay) !== null && _c !== void 0 ? _c : position.delay,
139
+ origin_timestamp: (_d = positionToUpdate === null || positionToUpdate === void 0 ? void 0 : positionToUpdate.origin_timestamp) !== null && _d !== void 0 ? _d : position.origin_timestamp,
160
140
  };
161
141
  }
162
142
  // set last position tracking (only for at_stop and on_track)
@@ -250,22 +230,22 @@ RegionalBusPositionsManager.setPositionUpdateHandler = (position) => {
250
230
  * @returns {IPositionToUpdate} - Position object to update
251
231
  */
252
232
  RegionalBusPositionsManager.getEstimatedPoint = (tripGtfsData, currentPosition, context, startDayTimestamp) => __awaiter(void 0, void 0, void 0, function* () {
253
- var _f, _g, _h, _j, _k, _l, _m, _o;
233
+ var _e, _f, _g, _h, _j, _k, _l, _m;
254
234
  // init radius around GPS position ( 200 meters radius, 16 points polygon aka circle)
255
235
  const radius = 0.2;
256
236
  const defaultStatePosition = const_1.StatePositionEnum.OFF_TRACK;
257
237
  // Initial value
258
238
  let estimatedPoint = Object.assign({ id: currentPosition.properties.id, state_position: defaultStatePosition, state_process: const_1.StateProcessEnum.PROCESSED, tcp_event: currentPosition.properties.tcp_event, valid_to: ValidToCalculator_1.default.getDefaultValidToAttribute(currentPosition.properties.origin_timestamp) }, (context &&
259
- ((_f = context.lastPositionTracking) === null || _f === void 0 ? void 0 : _f.properties.last_stop_sequence) && {
260
- shape_dist_traveled: (_g = context.lastPositionTracking) === null || _g === void 0 ? void 0 : _g.properties.shape_dist_traveled,
261
- last_stop_arrival_time: ((_h = context.lastPositionTracking) === null || _h === void 0 ? void 0 : _h.properties.last_stop_arrival_time)
262
- ? new Date((_j = context.lastPositionTracking) === null || _j === void 0 ? void 0 : _j.properties.last_stop_arrival_time)
239
+ ((_e = context.lastPositionTracking) === null || _e === void 0 ? void 0 : _e.properties.last_stop_sequence) && {
240
+ shape_dist_traveled: (_f = context.lastPositionTracking) === null || _f === void 0 ? void 0 : _f.properties.shape_dist_traveled,
241
+ last_stop_arrival_time: ((_g = context.lastPositionTracking) === null || _g === void 0 ? void 0 : _g.properties.last_stop_arrival_time)
242
+ ? new Date((_h = context.lastPositionTracking) === null || _h === void 0 ? void 0 : _h.properties.last_stop_arrival_time)
263
243
  : undefined,
264
- last_stop_departure_time: ((_k = context.lastPositionTracking) === null || _k === void 0 ? void 0 : _k.properties.last_stop_departure_time)
265
- ? new Date((_l = context.lastPositionTracking) === null || _l === void 0 ? void 0 : _l.properties.last_stop_departure_time)
244
+ last_stop_departure_time: ((_j = context.lastPositionTracking) === null || _j === void 0 ? void 0 : _j.properties.last_stop_departure_time)
245
+ ? new Date((_k = context.lastPositionTracking) === null || _k === void 0 ? void 0 : _k.properties.last_stop_departure_time)
266
246
  : undefined,
267
- last_stop_sequence: (_m = context.lastPositionTracking) === null || _m === void 0 ? void 0 : _m.properties.last_stop_sequence,
268
- last_stop_id: (_o = context.lastPositionTracking) === null || _o === void 0 ? void 0 : _o.properties.last_stop_id,
247
+ last_stop_sequence: (_l = context.lastPositionTracking) === null || _l === void 0 ? void 0 : _l.properties.last_stop_sequence,
248
+ last_stop_id: (_m = context.lastPositionTracking) === null || _m === void 0 ? void 0 : _m.properties.last_stop_id,
269
249
  }));
270
250
  // returns array of segments (row of points) of shape anchor points around gps
271
251
  const ptsInRadius = yield PositionCalculator_1.default.getShapePointsAroundPosition(tripGtfsData.shapes_anchor_points, currentPosition, radius, tripGtfsData.trip_id);
@@ -1 +1 @@
1
- {"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import { IBoundingBox } from "../../domain/IBoudingBox";
3
3
  export interface IParams {
4
4
  boundingBox: IBoundingBox;
5
5
  routeShortName: string | undefined;
6
- type: GTFSRouteTypeEnum | undefined;
6
+ type: GTFSRouteTypeEnum[] | undefined;
7
7
  }
@@ -39,7 +39,11 @@ class PublicVehiclePositionsController {
39
39
  bottomRightLatitude: boundingBox ? boundingBox[2] : const_1.DEFAULT_BOUDINGBOX.bottomRightLatitude,
40
40
  },
41
41
  routeShortName: query.routeShortName ? query.routeShortName : undefined,
42
- type: query.type ? (0, RouteTypeEnums_1.getGtfsRouteType)(query.type) : undefined,
42
+ type: query.routeType
43
+ ? query.routeType instanceof Array
44
+ ? query.routeType.map((type) => (0, RouteTypeEnums_1.getGtfsRouteType)(type))
45
+ : [(0, RouteTypeEnums_1.getGtfsRouteType)(query.routeType)]
46
+ : undefined,
43
47
  };
44
48
  }
45
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PublicVehiclePositionsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/controllers/v1/PublicVehiclePositionsController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA6D;AAC7D,qCAAsD;AACtD,2DAA6D;AAK7D,uEAA2D;AAE3D,MAAa,gCAAgC;IACzC;QAEO,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,sBAAiB,CAAC,OAAO,CAA+B,6BAAa,CAAC,4BAA4B,CAAC,CAAC;gBACnH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBAE3F,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACpB;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;IAZa,CAAC;IAcT,WAAW,CAAC,KAAe;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAE,KAAK,CAAC,WAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvH,mEAAmE;QACnE,OAAO;YACH,WAAW,EAAE;gBACT,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,gBAAgB;gBACpF,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,eAAe;gBAClF,oBAAoB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,oBAAoB;gBAC5F,mBAAmB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,mBAAmB;aAC7F;YACD,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAE,KAAK,CAAC,cAAyB,CAAC,CAAC,CAAC,SAAS;YACnF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,iCAAgB,EAAC,KAAK,CAAC,IAAc,CAAC,CAAC,CAAC,CAAC,SAAS;SACxE,CAAC;IACN,CAAC;CACJ;AA7BD,4EA6BC"}
1
+ {"version":3,"file":"PublicVehiclePositionsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/controllers/v1/PublicVehiclePositionsController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA6D;AAC7D,qCAAsD;AACtD,2DAA6D;AAK7D,uEAA2D;AAE3D,MAAa,gCAAgC;IACzC;QAEO,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,sBAAiB,CAAC,OAAO,CAA+B,6BAAa,CAAC,4BAA4B,CAAC,CAAC;gBACnH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBAE3F,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACpB;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;IAZa,CAAC;IAcT,WAAW,CAAC,KAAe;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAE,KAAK,CAAC,WAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvH,mEAAmE;QACnE,OAAO;YACH,WAAW,EAAE;gBACT,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,gBAAgB;gBACpF,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,eAAe;gBAClF,oBAAoB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,oBAAoB;gBAC5F,mBAAmB,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAAkB,CAAC,mBAAmB;aAC7F;YACD,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAE,KAAK,CAAC,cAAyB,CAAC,CAAC,CAAC,SAAS;YACnF,IAAI,EAAE,KAAK,CAAC,SAAS;gBACjB,CAAC,CAAC,KAAK,CAAC,SAAS,YAAY,KAAK;oBAC9B,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,iCAAgB,EAAC,IAAc,CAAC,CAAC;oBACjE,CAAC,CAAC,CAAC,IAAA,iCAAgB,EAAC,KAAK,CAAC,SAAmB,CAAC,CAAC;gBACnD,CAAC,CAAC,SAAS;SAClB,CAAC;IACN,CAAC;CACJ;AAjCD,4EAiCC"}
@@ -4,7 +4,6 @@ export declare class PublicRouter {
4
4
  router: Router;
5
5
  private controller;
6
6
  private redisSubscriber;
7
- private supportedTypes;
8
7
  constructor();
9
8
  protected initRoutes(expire?: string | number | undefined): void;
10
9
  }
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.v1PublicRouter = exports.PublicRouter = void 0;
4
- const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
5
4
  const PublicVehiclePositionsController_1 = require("../../controllers/v1/PublicVehiclePositionsController");
6
5
  const Di_1 = require("../../ioc/Di");
7
6
  const OgModuleToken_1 = require("../../ioc/OgModuleToken");
8
7
  const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
9
8
  const express_1 = require("@golemio/core/dist/shared/express");
10
9
  const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
10
+ const CustomTypeValidator_1 = require("./helpers/CustomTypeValidator");
11
11
  class PublicRouter {
12
12
  constructor() {
13
13
  this.router = (0, express_1.Router)();
@@ -15,7 +15,6 @@ class PublicRouter {
15
15
  this.initRoutes();
16
16
  this.redisSubscriber = Di_1.OgPublicContainer.resolve(OgModuleToken_1.OgModuleToken.VPSubscriber);
17
17
  this.redisSubscriber.initialize();
18
- this.supportedTypes = (0, RouteTypeEnums_1.getGtfsRouteTypesAsStrings)();
19
18
  }
20
19
  initRoutes(expire) {
21
20
  this.router.get("/vehiclepositions", [
@@ -24,10 +23,7 @@ class PublicRouter {
24
23
  .isString()
25
24
  .matches(/^\d+\.?\d*(,\d+\.?\d*){3}$/),
26
25
  (0, express_validator_1.query)("routeShortName").optional().isString(),
27
- (0, express_validator_1.oneOf)([
28
- [(0, express_validator_1.query)("type").optional().isArray(), (0, express_validator_1.query)("type.*").optional().isString().isIn(this.supportedTypes)],
29
- (0, express_validator_1.query)("type").optional().isString().isIn(this.supportedTypes),
30
- ]),
26
+ (0, express_validator_1.query)("routeType").optional().custom(CustomTypeValidator_1.CustomTypeValidator.validate),
31
27
  ], Validation_1.checkErrors, this.controller.getAll);
32
28
  }
33
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PublicRouter.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/routers/v1/PublicRouter.ts"],"names":[],"mappings":";;;AAAA,uEAAqE;AACrE,4GAA8G;AAC9G,qCAAsD;AACtD,2DAA6D;AAE7D,6EAA2E;AAC3E,+DAA2D;AAC3D,mFAA2E;AAE3E,MAAa,YAAY;IAMrB;QACI,IAAI,CAAC,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,mEAAgC,EAAE,CAAC;QACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,sBAAiB,CAAC,OAAO,CAAe,6BAAa,CAAC,YAAY,CAAC,CAAC;QAC3F,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,IAAA,2CAA0B,GAAE,CAAC;IACvD,CAAC;IAES,UAAU,CAAC,MAAoC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,mBAAmB,EACnB;YACI,IAAA,yBAAK,EAAC,aAAa,CAAC;iBACf,QAAQ,EAAE;iBACV,QAAQ,EAAE;iBACV,OAAO,CAAC,4BAA4B,CAAC;YAC1C,IAAA,yBAAK,EAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC7C,IAAA,yBAAK,EAAC;gBACF,CAAC,IAAA,yBAAK,EAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACrG,IAAA,yBAAK,EAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;aAChE,CAAC;SACL,EACD,wBAAW,EACX,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ;AAjCD,oCAiCC;AAED,MAAM,cAAc,GAAG,IAAI,YAAY,EAAE,CAAC,MAAM,CAAC;AAExC,wCAAc"}
1
+ {"version":3,"file":"PublicRouter.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/routers/v1/PublicRouter.ts"],"names":[],"mappings":";;;AACA,4GAA8G;AAC9G,qCAAsD;AACtD,2DAA6D;AAE7D,6EAA2E;AAC3E,+DAA2D;AAC3D,mFAAoE;AACpE,uEAAoE;AAEpE,MAAa,YAAY;IAKrB;QACI,IAAI,CAAC,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,mEAAgC,EAAE,CAAC;QACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,sBAAiB,CAAC,OAAO,CAAe,6BAAa,CAAC,YAAY,CAAC,CAAC;QAC3F,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;IACtC,CAAC;IAES,UAAU,CAAC,MAAoC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,mBAAmB,EACnB;YACI,IAAA,yBAAK,EAAC,aAAa,CAAC;iBACf,QAAQ,EAAE;iBACV,QAAQ,EAAE;iBACV,OAAO,CAAC,4BAA4B,CAAC;YAC1C,IAAA,yBAAK,EAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC7C,IAAA,yBAAK,EAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,yCAAmB,CAAC,QAAQ,CAAC;SACrE,EACD,wBAAW,EACX,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ;AA5BD,oCA4BC;AAED,MAAM,cAAc,GAAG,IAAI,YAAY,EAAE,CAAC,MAAM,CAAC;AAExC,wCAAc"}
@@ -0,0 +1,5 @@
1
+ import { CustomValidator } from "@golemio/core/dist/shared/express-validator";
2
+ export declare class CustomTypeValidator {
3
+ static allowedTypes: string[];
4
+ static validate: CustomValidator;
5
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var _a;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CustomTypeValidator = void 0;
14
+ const RouteTypeEnums_1 = require("../../../../../helpers/RouteTypeEnums");
15
+ class CustomTypeValidator {
16
+ }
17
+ exports.CustomTypeValidator = CustomTypeValidator;
18
+ _a = CustomTypeValidator;
19
+ CustomTypeValidator.allowedTypes = (0, RouteTypeEnums_1.getGtfsRouteTypesAsStrings)();
20
+ CustomTypeValidator.validate = (value, options) => __awaiter(void 0, void 0, void 0, function* () {
21
+ if (value instanceof Array) {
22
+ return value.every((source) => _a.allowedTypes.includes(source));
23
+ }
24
+ else {
25
+ return _a.allowedTypes.includes(value);
26
+ }
27
+ });
28
+ //# sourceMappingURL=CustomTypeValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomTypeValidator.js","sourceRoot":"","sources":["../../../../../../src/output-gateway/public/routers/v1/helpers/CustomTypeValidator.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,0EAAqE;AAGrE,MAAa,mBAAmB;;AAAhC,kDAUC;;AATiB,gCAAY,GAAa,IAAA,2CAA0B,GAAE,AAAzC,CAA0C;AAEtD,4BAAQ,GAAoB,CAAO,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/D,IAAI,KAAK,YAAY,KAAK,EAAE;QACxB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,EAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;KAC9E;SAAM;QACH,OAAO,EAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC5C;AACL,CAAC,CAAA,AANqB,CAMpB"}
@@ -8,6 +8,6 @@ export declare class PublicVehiclePositionsFacade {
8
8
  private log;
9
9
  private transformation;
10
10
  constructor(repository: IVehiclePositionsRepository, log: ILogger);
11
- getAll(boundingBox: IBoundingBox, routeShortName: string | undefined, type: GTFSRouteTypeEnum | undefined): Promise<IGeoJSONFeatureCollection>;
11
+ getAll(boundingBox: IBoundingBox, routeShortName: string | undefined, type: GTFSRouteTypeEnum[] | undefined): Promise<IGeoJSONFeatureCollection>;
12
12
  private filterClientSide;
13
13
  }
@@ -28,11 +28,11 @@ class PublicVehiclePositionsFacade {
28
28
  return (0, output_gateway_1.buildGeojsonFeatureCollection)(this.transformation.transformArray(filteredResults));
29
29
  });
30
30
  }
31
- filterClientSide(el, routeShortName, type) {
31
+ filterClientSide(el, routeShortName, types) {
32
32
  if (routeShortName && el.gtfs_route_short_name !== routeShortName) {
33
33
  return false;
34
34
  }
35
- if (type && el.gtfs_route_type !== type) {
35
+ if (types && types.every((type) => type !== el.gtfs_route_type)) {
36
36
  return false;
37
37
  }
38
38
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"VehiclePositionsFacade.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/service/facade/VehiclePositionsFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA,sEAA6G;AAC7G,oEAAiE;AACjE,kHAA+G;AAE/G,MAAa,4BAA4B;IAGrC,YAAoB,UAAuC,EAAU,GAAY;QAA7D,eAAU,GAAV,UAAU,CAA6B;QAAU,QAAG,GAAH,GAAG,CAAS;QAC7E,IAAI,CAAC,cAAc,GAAG,IAAI,2EAAoC,EAAE,CAAC;IACrE,CAAC;IAEY,MAAM,CACf,WAAyB,EACzB,cAAkC,EAClC,IAAmC;;YAEnC,MAAM,qBAAqB,GAAG,qCAAiB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAC/E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,qBAAqB,CAAC,KAAK,cAAc,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC;YAEnG,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;YAC7F,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;YAEzG,OAAO,IAAA,8CAA6B,EAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC;QAC9F,CAAC;KAAA;IAEO,gBAAgB,CACpB,EAAsB,EACtB,cAAkC,EAClC,IAAmC;QAEnC,IAAI,cAAc,IAAI,EAAE,CAAC,qBAAqB,KAAK,cAAc,EAAE;YAC/D,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,IAAI,IAAI,EAAE,CAAC,eAAe,KAAK,IAAI,EAAE;YACrC,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AApCD,oEAoCC"}
1
+ {"version":3,"file":"VehiclePositionsFacade.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/service/facade/VehiclePositionsFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA,sEAA6G;AAC7G,oEAAiE;AACjE,kHAA+G;AAE/G,MAAa,4BAA4B;IAGrC,YAAoB,UAAuC,EAAU,GAAY;QAA7D,eAAU,GAAV,UAAU,CAA6B;QAAU,QAAG,GAAH,GAAG,CAAS;QAC7E,IAAI,CAAC,cAAc,GAAG,IAAI,2EAAoC,EAAE,CAAC;IACrE,CAAC;IAEY,MAAM,CACf,WAAyB,EACzB,cAAkC,EAClC,IAAqC;;YAErC,MAAM,qBAAqB,GAAG,qCAAiB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAC/E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,qBAAqB,CAAC,KAAK,cAAc,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC;YAEnG,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;YAC7F,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;YAEzG,OAAO,IAAA,8CAA6B,EAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC;QAC9F,CAAC;KAAA;IAEO,gBAAgB,CACpB,EAAsB,EACtB,cAAkC,EAClC,KAAsC;QAEtC,IAAI,cAAc,IAAI,EAAE,CAAC,qBAAqB,KAAK,cAAc,EAAE;YAC/D,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,eAAe,CAAC,EAAE;YAC7D,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AApCD,oEAoCC"}
@@ -13,6 +13,7 @@ export declare class RegionalBusRunsMessagesModel extends Model<RegionalBusRunsM
13
13
  registration_number: number | null;
14
14
  speed_kmh: number;
15
15
  bearing: number;
16
+ is_terminated: boolean;
16
17
  static attributeModel: ModelAttributes<RegionalBusRunsMessagesModel>;
17
18
  static arrayJsonSchema: JSONSchemaType<IRegionalBusRunsMessagesModel[]>;
18
19
  }
@@ -41,6 +41,10 @@ RegionalBusRunsMessagesModel.attributeModel = {
41
41
  type: sequelize_1.DataTypes.SMALLINT,
42
42
  allowNull: false,
43
43
  },
44
+ is_terminated: {
45
+ type: sequelize_1.DataTypes.BOOLEAN,
46
+ allowNull: false,
47
+ },
44
48
  };
45
49
  RegionalBusRunsMessagesModel.arrayJsonSchema = {
46
50
  type: "array",
@@ -75,8 +79,11 @@ RegionalBusRunsMessagesModel.arrayJsonSchema = {
75
79
  bearing: {
76
80
  type: "integer",
77
81
  },
82
+ is_terminated: {
83
+ type: "boolean",
84
+ },
78
85
  },
79
- required: ["external_trip_id", "events", "coordinates", "vehicle_timestamp", "speed_kmh", "bearing"],
86
+ required: ["external_trip_id", "events", "coordinates", "vehicle_timestamp", "speed_kmh", "bearing", "is_terminated"],
80
87
  },
81
88
  definitions: {
82
89
  // @ts-expect-error
@@ -1 +1 @@
1
- {"version":3,"file":"RegionalBusRunsMessagesModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/vehicle-positions/models/RegionalBusRunsMessagesModel.ts"],"names":[],"mappings":";;;AAAA,8EAA6E;AAG7E,mEAAwF;AAGxF,MAAa,4BAA6B,SAAQ,iBAAmC;;AAArF,oEA0FC;AAzFiB,uCAAU,GAAG,6CAA6C,CAAC;AAY3D,2CAAc,GAAkD;IAC1E,gBAAgB,EAAE;QACd,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3B,UAAU,EAAE,IAAI;KACnB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;KAC7B;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;IACD,iBAAiB,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,UAAU,EAAE,IAAI;KACnB;IACD,mBAAmB,EAAE;QACjB,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,4CAAe,GAAoD;IAC7E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,gBAAgB,EAAE;gBACd,IAAI,EAAE,QAAQ;aACjB;YACD,WAAW,EAAE;gBACT,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC3B;YACD,eAAe,EAAE;gBACb,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC3B;YACD,MAAM,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACjB;YACD,WAAW,EAAE;gBACT,IAAI,EAAE,wBAAwB;aACjC;YACD,iBAAiB,EAAE;gBACf,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC5B;YACD,mBAAmB,EAAE;gBACjB,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAC5B;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,SAAS;aAClB;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,SAAS;aAClB;SACJ;QACD,QAAQ,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,SAAS,CAAC;KACvG;IACD,WAAW,EAAE;QACT,mBAAmB;QACnB,QAAQ,EAAE,yCAAoB,CAAC,QAAQ;KAC1C;CACJ,CAAC"}
1
+ {"version":3,"file":"RegionalBusRunsMessagesModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/vehicle-positions/models/RegionalBusRunsMessagesModel.ts"],"names":[],"mappings":";;;AAAA,8EAA6E;AAG7E,mEAAwF;AAGxF,MAAa,4BAA6B,SAAQ,iBAAmC;;AAArF,oEAkGC;AAjGiB,uCAAU,GAAG,6CAA6C,CAAC;AAa3D,2CAAc,GAAkD;IAC1E,gBAAgB,EAAE;QACd,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3B,UAAU,EAAE,IAAI;KACnB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;KAC7B;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;IACD,iBAAiB,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,UAAU,EAAE,IAAI;KACnB;IACD,mBAAmB,EAAE;QACjB,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK;KACnB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,4CAAe,GAAoD;IAC7E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,gBAAgB,EAAE;gBACd,IAAI,EAAE,QAAQ;aACjB;YACD,WAAW,EAAE;gBACT,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC3B;YACD,eAAe,EAAE;gBACb,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC3B;YACD,MAAM,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACjB;YACD,WAAW,EAAE;gBACT,IAAI,EAAE,wBAAwB;aACjC;YACD,iBAAiB,EAAE;gBACf,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC5B;YACD,mBAAmB,EAAE;gBACjB,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAC5B;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,SAAS;aAClB;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,SAAS;aAClB;YACD,aAAa,EAAE;gBACX,IAAI,EAAE,SAAS;aAClB;SACJ;QACD,QAAQ,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,CAAC;KACxH;IACD,WAAW,EAAE;QACT,mBAAmB;QACnB,QAAQ,EAAE,yCAAoB,CAAC,QAAQ;KAC1C;CACJ,CAAC"}
@@ -9,4 +9,5 @@ export interface IRegionalBusRunsMessagesModel {
9
9
  registration_number: number | null;
10
10
  speed_kmh: number;
11
11
  bearing: number;
12
+ is_terminated: boolean;
12
13
  }
@@ -832,6 +832,23 @@ Worker má na starost zpracování a transformaci polohových dat, výpočet zpo
832
832
  - VPTripsModel `vehiclepositions_trips`
833
833
  - VPTripsHistoryModel `vehiclepositions_trips_history`
834
834
 
835
+ #### _task: RefreshPublicCache_
836
+
837
+ - vstupní rabbitmq fronta
838
+ - název: vehicle-positions.vehiclepositions.refreshPublicCache
839
+ - TTL: 1s
840
+ - parametry: žádné
841
+ - závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
842
+ - `vehicle-positions.vehiclepositions.refreshPublicCache` task se spouští sám sebe a cron plní doplňující funkci.
843
+ - popis
844
+ - před samotným spuštěním se zkontroluje pomocí semaforu zdali task již někde neběží
845
+ - připraví zjednodušené informace o aktuálních pozicích, které se odešlou do redisu
846
+ - pomocí pub/sub se pak pošle do og informace o novém setu v redisu
847
+ - data modely
848
+ - VPPositionsModel `vehiclepositions_positions`
849
+ - VPTripsModel `vehiclepositions_trips`
850
+
851
+
835
852
  ### _RunsWorker_
836
853
 
837
854
  Worker má na starost zpracování a transformaci TCP oběhů
@@ -1218,3 +1235,11 @@ Worker má na starost stahování informací o vozidlech (např. dostupnost klim
1218
1235
 
1219
1236
  - zdrojové tabulky
1220
1237
  - `ropidvymi_events`, `ropidvymi_events_stops`, `ropidvymi_events_routes`, `ropidgtfs_stops`
1238
+
1239
+ ### Public
1240
+
1241
+ #### _/public/vehiclepositions_
1242
+
1243
+ - načte aktuální polohy vozidel z redisu a vrátí je ve formátu geojson
1244
+ - možno filtrovat dle bouding box na straně redisu
1245
+ - podle typu vozidla a gtfs route number na klientské straně
@@ -31,6 +31,9 @@ tags:
31
31
  - name: 🚏 PID Departure Boards
32
32
  description: ""
33
33
 
34
+ - name: 🕐 Public Vehicle Positions
35
+ description: ""
36
+
34
37
  paths:
35
38
  /gtfs/services:
36
39
  get:
@@ -949,6 +952,61 @@ paths:
949
952
  "404":
950
953
  description: Not found
951
954
 
955
+ /public/vehiclepositions:
956
+ get:
957
+ tags:
958
+ - 🕐 Public Vehicle Positions
959
+ summary: GET All Vehicle Positions
960
+ parameters:
961
+ - name: boundingBox
962
+ in: query
963
+ schema:
964
+ type: string
965
+ example: '50.123,14.243,50.017,14.573'
966
+ description: 'Filter by bounding box in format "topLeft.lat,topLeft.lon,bottomRight.lat,bottomRight.lon", polygons that fit only partialy to selected bounding box are included'
967
+ - name: routeShortName
968
+ in: query
969
+ schema:
970
+ type: string
971
+ example: '705'
972
+ description: 'Filter by short name of route'
973
+ - name: routeType
974
+ in: query
975
+ schema:
976
+ type: array
977
+ items:
978
+ type: string
979
+ enum:
980
+ - tram
981
+ - metro
982
+ - train
983
+ - bus
984
+ - ferry
985
+ - funicular
986
+ - trolleybus
987
+ example: 'metro'
988
+ description: 'filter by transport type'
989
+ responses:
990
+ 200:
991
+ description: OK
992
+ content:
993
+ application/json; charset=utf-8:
994
+ schema:
995
+ type: object
996
+ properties:
997
+ features:
998
+ type: array
999
+ items:
1000
+ $ref: '#/components/schemas/VehiclePositionsFeature'
1001
+ type:
1002
+ type: string
1003
+ example: FeatureCollection
1004
+ 401:
1005
+ $ref: "#/components/responses/UnauthorizedError"
1006
+ 404:
1007
+ description: Not found
1008
+
1009
+
952
1010
  components:
953
1011
  responses:
954
1012
  UnauthorizedError:
@@ -1864,3 +1922,99 @@ components:
1864
1922
  - is_night
1865
1923
  - is_regional
1866
1924
  - is_substitute_transport
1925
+
1926
+ VehiclePositionsFeature:
1927
+ type: object
1928
+ properties:
1929
+ geometry:
1930
+ type: object
1931
+ description: GeoJson geometry
1932
+ properties:
1933
+ coordinates:
1934
+ oneOf:
1935
+ - type: array
1936
+ items:
1937
+ type: number
1938
+ example: [14.441252, 50.109318]
1939
+ description: Point
1940
+ - type: array
1941
+ items:
1942
+ type: array
1943
+ items:
1944
+ type: array
1945
+ items:
1946
+ type: number
1947
+ example:
1948
+ [[
1949
+ [14.50823156003554, 50.10498927328214],
1950
+ [14.505782430390298, 50.1031042405622],
1951
+ [14.509701037821998, 50.1029471511537],
1952
+ [14.50823156003554, 50.10498927328214]
1953
+ ]]
1954
+ description: Polygon
1955
+ - type: array
1956
+ items:
1957
+ type: array
1958
+ items:
1959
+ type: array
1960
+ items:
1961
+ type: array
1962
+ items:
1963
+ type: number
1964
+ example:
1965
+ [
1966
+ [[
1967
+ [14.50823156003554, 50.10498927328214],
1968
+ [14.505782430390298, 50.1031042405622],
1969
+ [14.509701037821998, 50.1029471511537],
1970
+ [14.50823156003554, 50.10498927328214]
1971
+ ]],
1972
+ [[
1973
+ [14.50823156003554, 50.10498927328214],
1974
+ [14.505782430390298, 50.1031042405622],
1975
+ [14.509701037821998, 50.1029471511537],
1976
+ [14.50823156003554, 50.10498927328214]
1977
+ ]]
1978
+ ]
1979
+ description: MultiPolygon
1980
+ type:
1981
+ type: string
1982
+ enum:
1983
+ - Point
1984
+ - Polygon
1985
+ - MultiPolygon
1986
+ properties:
1987
+ type: object
1988
+ properties:
1989
+ gtfs_trip_id:
1990
+ type: string
1991
+ example: 705_735_231002
1992
+ gtfs_route_type:
1993
+ type: string
1994
+ example: bus
1995
+ gtfs_route_short_name:
1996
+ type: string
1997
+ example: '705'
1998
+ run_number:
1999
+ type: number
2000
+ nullable: true
2001
+ example: 29
2002
+ vehicle_registration_number:
2003
+ type: number
2004
+ nullable: true
2005
+ example: 8585
2006
+ bearing:
2007
+ type: number
2008
+ nullable: true
2009
+ example: 221
2010
+ delay:
2011
+ type: number
2012
+ nullable: true
2013
+ example: 20
2014
+ required:
2015
+ - gtfs_trip_id
2016
+ - gtfs_route_type
2017
+ - gtfs_route_short_name
2018
+ type:
2019
+ type: string
2020
+ example: Feature
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/pid",
3
- "version": "2.9.6-dev.1065207585",
3
+ "version": "2.9.6-dev.1067843193",
4
4
  "description": "Golemio PID Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",