@golemio/pid 2.23.2 → 2.23.3-dev.1527535265

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 (68) hide show
  1. package/db/example/03_ropidgtfs_dump.sql +7 -1
  2. package/db/example/09_departureboards_testdata_nogapfilter.sql +4 -1
  3. package/db/example/20_jis_infotexts.sql +6 -0
  4. package/db/migrations/postgresql/20241104000200-transfer-boards.js +53 -0
  5. package/db/migrations/postgresql/sqls/20241104000200-transfer-boards-down.sql +1 -0
  6. package/db/migrations/postgresql/sqls/20241104000200-transfer-boards-up.sql +96 -0
  7. package/dist/helpers/StopEnums.d.ts +12 -0
  8. package/dist/helpers/StopEnums.js +17 -0
  9. package/dist/helpers/StopEnums.js.map +1 -0
  10. package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateTrainDelayTask.js.map +1 -1
  11. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.d.ts +13 -0
  12. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js +116 -0
  13. package/dist/output-gateway/pid/controllers/v3/V3TransferBoardsController.js.map +1 -0
  14. package/dist/output-gateway/pid/data-access/DeparturesRepository.d.ts +14 -14
  15. package/dist/output-gateway/pid/data-access/DeparturesRepository.js +86 -34
  16. package/dist/output-gateway/pid/data-access/DeparturesRepository.js.map +1 -1
  17. package/dist/output-gateway/pid/data-access/interfaces/DepartureInterfaces.d.ts +16 -0
  18. package/dist/output-gateway/pid/data-access/interfaces/DepartureInterfaces.js +3 -0
  19. package/dist/output-gateway/pid/data-access/interfaces/DepartureInterfaces.js.map +1 -0
  20. package/dist/output-gateway/pid/domain/InfotextInterfaces.d.ts +5 -0
  21. package/dist/output-gateway/pid/helpers/DepartureBoardMapper.d.ts +0 -7
  22. package/dist/output-gateway/pid/helpers/DepartureBoardMapper.js +5 -16
  23. package/dist/output-gateway/pid/helpers/DepartureBoardMapper.js.map +1 -1
  24. package/dist/output-gateway/pid/index.d.ts +31 -0
  25. package/dist/output-gateway/pid/index.js.map +1 -1
  26. package/dist/output-gateway/pid/ioc/Di.js +19 -0
  27. package/dist/output-gateway/pid/ioc/Di.js.map +1 -1
  28. package/dist/output-gateway/pid/ioc/OgPidToken.d.ts +8 -0
  29. package/dist/output-gateway/pid/ioc/OgPidToken.js +10 -0
  30. package/dist/output-gateway/pid/ioc/OgPidToken.js.map +1 -1
  31. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +4 -2
  32. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
  33. package/dist/output-gateway/pid/models/helpers/FilterHelper.d.ts +4 -4
  34. package/dist/output-gateway/pid/models/helpers/FilterHelper.js.map +1 -1
  35. package/dist/output-gateway/pid/models/helpers/PIDDepartureModel.d.ts +4 -3
  36. package/dist/output-gateway/pid/models/helpers/PIDDepartureModel.js +31 -8
  37. package/dist/output-gateway/pid/models/helpers/PIDDepartureModel.js.map +1 -1
  38. package/dist/output-gateway/pid/models/helpers/interfaces/IPIDDepartureQueryOptions.d.ts +1 -0
  39. package/dist/output-gateway/pid/routers/v3/V3PIDRouter.d.ts +1 -0
  40. package/dist/output-gateway/pid/routers/v3/V3PIDRouter.js +10 -0
  41. package/dist/output-gateway/pid/routers/v3/V3PIDRouter.js.map +1 -1
  42. package/dist/output-gateway/pid/service/facade/InfotextFacade.d.ts +13 -0
  43. package/dist/output-gateway/pid/service/facade/InfotextFacade.js +62 -0
  44. package/dist/output-gateway/pid/service/facade/InfotextFacade.js.map +1 -0
  45. package/dist/output-gateway/pid/service/facade/StopFacade.d.ts +9 -0
  46. package/dist/output-gateway/pid/service/facade/StopFacade.js +76 -0
  47. package/dist/output-gateway/pid/service/facade/StopFacade.js.map +1 -0
  48. package/dist/output-gateway/pid/service/facade/TransferFacade.d.ts +20 -0
  49. package/dist/output-gateway/pid/service/facade/TransferFacade.js +104 -0
  50. package/dist/output-gateway/pid/service/facade/TransferFacade.js.map +1 -0
  51. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.d.ts +10 -0
  52. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.js +20 -0
  53. package/dist/output-gateway/pid/service/helpers/PlatformCodeResolver.js.map +1 -0
  54. package/dist/output-gateway/pid/service/transformations/JISInfotextTransferTransformation.d.ts +11 -0
  55. package/dist/output-gateway/pid/service/transformations/JISInfotextTransferTransformation.js +30 -0
  56. package/dist/output-gateway/pid/service/transformations/JISInfotextTransferTransformation.js.map +1 -0
  57. package/dist/output-gateway/pid/service/transformations/TransferDepartureTransformation.d.ts +22 -0
  58. package/dist/output-gateway/pid/service/transformations/TransferDepartureTransformation.js +52 -0
  59. package/dist/output-gateway/pid/service/transformations/TransferDepartureTransformation.js.map +1 -0
  60. package/dist/output-gateway/ropid-gtfs/data-access/CisStopGroupRepository.d.ts +11 -0
  61. package/dist/output-gateway/ropid-gtfs/data-access/CisStopGroupRepository.js +65 -0
  62. package/dist/output-gateway/ropid-gtfs/data-access/CisStopGroupRepository.js.map +1 -0
  63. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.d.ts +4 -0
  64. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.js +25 -2
  65. package/dist/output-gateway/ropid-gtfs/models/GTFSStopModel.js.map +1 -1
  66. package/docs/implementation_documentation.md +4 -0
  67. package/docs/openapi-output.yaml +152 -1
  68. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfotextFacade.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/facade/InfotextFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,mFAAkF;AAElF,qDAAoD;AACpD,6EAA8F;AAE9F,iEAAwE;AACxE,4GAAyG;AAGlG,IAAM,cAAc,4BAApB,MAAM,cAAc;IACvB,YACsD,kBAAyC,EAC7B,sBAAyD;QADrE,uBAAkB,GAAlB,kBAAkB,CAAuB;QAC7B,2BAAsB,GAAtB,sBAAsB,CAAmC;IACxH,CAAC;IAEJ;;OAEG;IACU,6BAA6B,CACtC,OAAiB,EACjB,aAAqB,EACrB,QAAuB;;YAEvB,IAAI,SAAS,GAAiC,EAAE,CAAC;YACjD,IAAI;gBACA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAC3E,OAAO,EACP,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CACxD,CAAC;gBAEF,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;aAC5E;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBAED,MAAM,IAAI,6BAAY,CAAC,8BAA8B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aAC7F;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;KAAA;CACJ,CAAA;yBAhCY,cAAc;IAD1B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,qBAAqB,CAAC,CAAA;IACxC,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,iCAAiC,CAAC,CAAA;qCADiB,6CAAqB;QACL,qEAAiC;GAHlH,cAAc,CAgC1B"}
@@ -0,0 +1,9 @@
1
+ import { CisStopGroupRepository } from "../../../ropid-gtfs/data-access/CisStopGroupRepository";
2
+ export declare class StopFacade {
3
+ private cisStopGroupsRepository;
4
+ constructor(cisStopGroupsRepository: CisStopGroupRepository);
5
+ /**
6
+ * Retrieves ASW node ID for given CIS ID and then returns GTFS stop IDs for this ASW node
7
+ */
8
+ getStopIdsForTransferBoards(cisId: string): Promise<string[]>;
9
+ }
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.StopFacade = void 0;
25
+ const OgPidToken_1 = require("../../ioc/OgPidToken");
26
+ const CisStopGroupRepository_1 = require("../../../ropid-gtfs/data-access/CisStopGroupRepository");
27
+ const models_1 = require("../../../ropid-gtfs/models");
28
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
29
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
30
+ let StopFacade = exports.StopFacade = class StopFacade {
31
+ constructor(cisStopGroupsRepository) {
32
+ this.cisStopGroupsRepository = cisStopGroupsRepository;
33
+ }
34
+ /**
35
+ * Retrieves ASW node ID for given CIS ID and then returns GTFS stop IDs for this ASW node
36
+ */
37
+ getStopIdsForTransferBoards(cisId) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ //#region CIS stop node
40
+ let aswNode;
41
+ try {
42
+ const cisStopNode = yield this.cisStopGroupsRepository.getNodeByCisId(cisId);
43
+ if (cisStopNode === null) {
44
+ return [];
45
+ }
46
+ aswNode = cisStopNode;
47
+ }
48
+ catch (error) {
49
+ if (error instanceof golemio_errors_1.AbstractGolemioError) {
50
+ throw error;
51
+ }
52
+ throw new golemio_errors_1.GeneralError("Failed to retrieve CIS stop node", this.constructor.name, error, 500);
53
+ }
54
+ //#endregion
55
+ //#region GTFS stop IDs
56
+ let stopIds = [];
57
+ try {
58
+ stopIds = yield models_1.models.GTFSStopModel.getMultipleIdsByAswNode(aswNode);
59
+ }
60
+ catch (error) {
61
+ if (error instanceof golemio_errors_1.AbstractGolemioError) {
62
+ throw error;
63
+ }
64
+ throw new golemio_errors_1.GeneralError("Failed to retrieve GTFS stops", this.constructor.name, error, 500);
65
+ }
66
+ //#endregion
67
+ return stopIds;
68
+ });
69
+ }
70
+ };
71
+ exports.StopFacade = StopFacade = __decorate([
72
+ (0, tsyringe_1.injectable)(),
73
+ __param(0, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.CisStopGroupRepository)),
74
+ __metadata("design:paramtypes", [CisStopGroupRepository_1.CisStopGroupRepository])
75
+ ], StopFacade);
76
+ //# sourceMappingURL=StopFacade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StopFacade.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/facade/StopFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAoD;AACpD,mGAA2F;AAC3F,uDAA+C;AAC/C,6EAA8F;AAC9F,iEAAwE;AAGjE,IAAM,UAAU,wBAAhB,MAAM,UAAU;IACnB,YAA+D,uBAA+C;QAA/C,4BAAuB,GAAvB,uBAAuB,CAAwB;IAAG,CAAC;IAElH;;OAEG;IACU,2BAA2B,CAAC,KAAa;;YAClD,uBAAuB;YACvB,IAAI,OAAe,CAAC;YACpB,IAAI;gBACA,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC7E,IAAI,WAAW,KAAK,IAAI,EAAE;oBACtB,OAAO,EAAE,CAAC;iBACb;gBAED,OAAO,GAAG,WAAW,CAAC;aACzB;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBAED,MAAM,IAAI,6BAAY,CAAC,kCAAkC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACjG;YACD,YAAY;YAEZ,uBAAuB;YACvB,IAAI,OAAO,GAAa,EAAE,CAAC;YAC3B,IAAI;gBACA,OAAO,GAAG,MAAM,eAAM,CAAC,aAAa,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;aACzE;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBAED,MAAM,IAAI,6BAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aAC9F;YACD,YAAY;YAEZ,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;CACJ,CAAA;qBAxCY,UAAU;IADtB,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,sBAAsB,CAAC,CAAA;qCAAkC,+CAAsB;GADrG,UAAU,CAwCtB"}
@@ -0,0 +1,20 @@
1
+ import { ITransferOutputDto } from "../..";
2
+ import { DeparturesRepository } from "../../data-access";
3
+ import { Moment } from "@golemio/core/dist/shared/moment-timezone";
4
+ import { TransferDepartureTransformation } from "../transformations/TransferDepartureTransformation";
5
+ export declare class TransferFacade {
6
+ private departureRepository;
7
+ private departureTransformation;
8
+ constructor(departureRepository: DeparturesRepository, departureTransformation: TransferDepartureTransformation);
9
+ /**
10
+ * Retrieves transfer departures for given GTFS stop IDs
11
+ * - Get transfer departures from DB
12
+ * - Process them (filter, sort, etc.)
13
+ * - Transform them to DTO
14
+ */
15
+ getTransferDepartures(stopIds: string[], tripNumber: string, currentMoment: Moment, minutesOffset: number, timeZone?: string): Promise<ITransferOutputDto[]>;
16
+ /**
17
+ * Fallback options as defined by ROPID
18
+ */
19
+ private get defaultOptions();
20
+ }
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ var __importDefault = (this && this.__importDefault) || function (mod) {
24
+ return (mod && mod.__esModule) ? mod : { "default": mod };
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.TransferFacade = void 0;
28
+ const pid_1 = require("../..");
29
+ const data_access_1 = require("../../data-access");
30
+ const OgPidToken_1 = require("../../ioc/OgPidToken");
31
+ const PIDDepartureModel_1 = __importDefault(require("../../models/helpers/PIDDepartureModel"));
32
+ const IPIDDepartureQueryOptions_1 = __importDefault(require("../../models/helpers/interfaces/IPIDDepartureQueryOptions"));
33
+ const shared_1 = require("../../../shared");
34
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
35
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
36
+ const TransferDepartureTransformation_1 = require("../transformations/TransferDepartureTransformation");
37
+ let TransferFacade = exports.TransferFacade = class TransferFacade {
38
+ constructor(departureRepository, departureTransformation) {
39
+ this.departureRepository = departureRepository;
40
+ this.departureTransformation = departureTransformation;
41
+ }
42
+ /**
43
+ * Retrieves transfer departures for given GTFS stop IDs
44
+ * - Get transfer departures from DB
45
+ * - Process them (filter, sort, etc.)
46
+ * - Transform them to DTO
47
+ */
48
+ getTransferDepartures(stopIds, tripNumber, currentMoment, minutesOffset, timeZone = shared_1.RopidRouterUtils.TIMEZONE) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ let departureEntities = [];
51
+ try {
52
+ departureEntities = yield this.departureRepository.getTransferDepartures({
53
+ stopsIds: stopIds,
54
+ currentMoment,
55
+ minutesOffset,
56
+ });
57
+ }
58
+ catch (error) {
59
+ if (error instanceof golemio_errors_1.AbstractGolemioError) {
60
+ throw error;
61
+ }
62
+ throw new golemio_errors_1.GeneralError("Failed to retrieve transfer departures", this.constructor.name, error, 500);
63
+ }
64
+ if (departureEntities.length === 0) {
65
+ return [];
66
+ }
67
+ let transferDepartures = [];
68
+ try {
69
+ const processedDepartures = new PIDDepartureModel_1.default(departureEntities, Object.assign(Object.assign({}, this.defaultOptions), { timezone: timeZone, tripNumber })).processAndReturnTransfers();
70
+ transferDepartures = this.departureTransformation.transformArray(processedDepartures);
71
+ }
72
+ catch (error) {
73
+ if (error instanceof golemio_errors_1.AbstractGolemioError) {
74
+ throw error;
75
+ }
76
+ throw new golemio_errors_1.GeneralError("Failed to process transfer departures", this.constructor.name, error, 500);
77
+ }
78
+ return transferDepartures;
79
+ });
80
+ }
81
+ /**
82
+ * Fallback options as defined by ROPID
83
+ */
84
+ get defaultOptions() {
85
+ return {
86
+ limit: 16,
87
+ total: 16,
88
+ offset: 0,
89
+ mode: pid_1.DepartureMode.DEPARTURES,
90
+ order: pid_1.DepartureOrder.REAL,
91
+ filter: pid_1.DepartureFilter.ROUTE_HEADING_ONCE_NOGAP_FILL,
92
+ skip: [pid_1.DepartureSkip.CANCELED],
93
+ departuresDirections: [],
94
+ };
95
+ }
96
+ };
97
+ exports.TransferFacade = TransferFacade = __decorate([
98
+ (0, tsyringe_1.injectable)(),
99
+ __param(0, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.DeparturesRepository)),
100
+ __param(1, (0, tsyringe_1.inject)(OgPidToken_1.OgPidToken.TransferDepartureTransformation)),
101
+ __metadata("design:paramtypes", [data_access_1.DeparturesRepository,
102
+ TransferDepartureTransformation_1.TransferDepartureTransformation])
103
+ ], TransferFacade);
104
+ //# sourceMappingURL=TransferFacade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferFacade.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/facade/TransferFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAgI;AAChI,mDAA2D;AAC3D,qDAAoD;AACpD,+FAA0E;AAC1E,0HAAoG;AACpG,4CAA8C;AAC9C,6EAA8F;AAE9F,iEAAwE;AACxE,wGAAqG;AAG9F,IAAM,cAAc,4BAApB,MAAM,cAAc;IACvB,YACqD,mBAAyC,EAC9B,uBAAwD;QADnE,wBAAmB,GAAnB,mBAAmB,CAAsB;QAC9B,4BAAuB,GAAvB,uBAAuB,CAAiC;IACrH,CAAC;IAEJ;;;;;OAKG;IACU,qBAAqB,CAC9B,OAAiB,EACjB,UAAkB,EAClB,aAAqB,EACrB,aAAqB,EACrB,QAAQ,GAAG,yBAAgB,CAAC,QAAQ;;YAEpC,IAAI,iBAAiB,GAAyB,EAAE,CAAC;YACjD,IAAI;gBACA,iBAAiB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC;oBACrE,QAAQ,EAAE,OAAO;oBACjB,aAAa;oBACb,aAAa;iBAChB,CAAC,CAAC;aACN;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBAED,MAAM,IAAI,6BAAY,CAAC,wCAAwC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACvG;YAED,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;gBAChC,OAAO,EAAE,CAAC;aACb;YAED,IAAI,kBAAkB,GAAyB,EAAE,CAAC;YAClD,IAAI;gBACA,MAAM,mBAAmB,GAAG,IAAI,2BAAkB,CAAC,iBAAiB,kCAC7D,IAAI,CAAC,cAAc,KACtB,QAAQ,EAAE,QAAQ,EAClB,UAAU,IACZ,CAAC,yBAAyB,EAAE,CAAC;gBAE/B,kBAAkB,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;aACzF;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBAED,MAAM,IAAI,6BAAY,CAAC,uCAAuC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACtG;YAED,OAAO,kBAAkB,CAAC;QAC9B,CAAC;KAAA;IAED;;OAEG;IACH,IAAY,cAAc;QACtB,OAAO;YACH,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,mBAAa,CAAC,UAAU;YAC9B,KAAK,EAAE,oBAAc,CAAC,IAAI;YAC1B,MAAM,EAAE,qBAAe,CAAC,6BAA6B;YACrD,IAAI,EAAE,CAAC,mBAAa,CAAC,QAAQ,CAAC;YAC9B,oBAAoB,EAAE,EAAE;SAC3B,CAAC;IACN,CAAC;CACJ,CAAA;yBAzEY,cAAc;IAD1B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,oBAAoB,CAAC,CAAA;IACvC,WAAA,IAAA,iBAAM,EAAC,uBAAU,CAAC,+BAA+B,CAAC,CAAA;qCADmB,kCAAoB;QACL,iEAA+B;GAH/G,cAAc,CAyE1B"}
@@ -0,0 +1,10 @@
1
+ import { ITransferDeparture } from "../..";
2
+ export declare class PlatformCodeResolver {
3
+ /**
4
+ * Platform code is determined by the following rules:
5
+ * - for trains, the last stop platform code is used (CIS) if available
6
+ * - otherwise, the departure platform code is used (GTFS)
7
+ * - for other route types, the departure platform code is used (GTFS)
8
+ */
9
+ static resolve(departure: ITransferDeparture): string | null;
10
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlatformCodeResolver = void 0;
4
+ const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
5
+ class PlatformCodeResolver {
6
+ /**
7
+ * Platform code is determined by the following rules:
8
+ * - for trains, the last stop platform code is used (CIS) if available
9
+ * - otherwise, the departure platform code is used (GTFS)
10
+ * - for other route types, the departure platform code is used (GTFS)
11
+ */
12
+ static resolve(departure) {
13
+ if (departure.route_type === RouteTypeEnums_1.GTFSRouteTypeEnum.TRAIN && departure["trip.cis_stop_platform_code"] !== null) {
14
+ return departure["trip.cis_stop_platform_code"];
15
+ }
16
+ return departure.platform_code;
17
+ }
18
+ }
19
+ exports.PlatformCodeResolver = PlatformCodeResolver;
20
+ //# sourceMappingURL=PlatformCodeResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlatformCodeResolver.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/helpers/PlatformCodeResolver.ts"],"names":[],"mappings":";;;AAAA,uEAA4D;AAG5D,MAAa,oBAAoB;IAC7B;;;;;OAKG;IACI,MAAM,CAAC,OAAO,CAAC,SAA6B;QAC/C,IAAI,SAAS,CAAC,UAAU,KAAK,kCAAiB,CAAC,KAAK,IAAI,SAAS,CAAC,6BAA6B,CAAC,KAAK,IAAI,EAAE;YACvG,OAAO,SAAS,CAAC,6BAA6B,CAAC,CAAC;SACnD;QAED,OAAO,SAAS,CAAC,aAAa,CAAC;IACnC,CAAC;CACJ;AAdD,oDAcC"}
@@ -0,0 +1,11 @@
1
+ import { IInfotextTransferOutputDto } from "../../domain/InfotextInterfaces";
2
+ import { JISInfotextsModel } from "../../../../schema-definitions/jis/models/JISInfotextsModel";
3
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
4
+ export declare class JISInfotextTransferTransformation extends AbstractTransformation<JISInfotextsModel, IInfotextTransferOutputDto> {
5
+ name: string;
6
+ protected transformInternal: (infotext: JISInfotextsModel) => {
7
+ display_type: import("../../domain/InfotextDisplayTypeEnum").InfotextDisplayType;
8
+ text: string;
9
+ text_en: string | null;
10
+ };
11
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.JISInfotextTransferTransformation = void 0;
10
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
11
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
12
+ const DisplayTypeMapper_1 = require("../helpers/DisplayTypeMapper");
13
+ let JISInfotextTransferTransformation = exports.JISInfotextTransferTransformation = class JISInfotextTransferTransformation extends AbstractTransformation_1.AbstractTransformation {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.name = "JISInfotextTransferTransformation";
17
+ this.transformInternal = (infotext) => {
18
+ var _a;
19
+ return {
20
+ display_type: DisplayTypeMapper_1.DisplayTypeMapper.mapInputToOutputDisplayType(infotext.display_type),
21
+ text: infotext.description_text.cs,
22
+ text_en: (_a = infotext.description_text.en) !== null && _a !== void 0 ? _a : null,
23
+ };
24
+ };
25
+ }
26
+ };
27
+ exports.JISInfotextTransferTransformation = JISInfotextTransferTransformation = __decorate([
28
+ (0, tsyringe_1.injectable)()
29
+ ], JISInfotextTransferTransformation);
30
+ //# sourceMappingURL=JISInfotextTransferTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JISInfotextTransferTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/JISInfotextTransferTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAEA,6GAA0G;AAC1G,iEAAgE;AAChE,oEAAiE;AAG1D,IAAM,iCAAiC,+CAAvC,MAAM,iCAAkC,SAAQ,+CAAqE;IAArH;;QACI,SAAI,GAAG,mCAAmC,CAAC;QAExC,sBAAiB,GAAG,CAAC,QAA2B,EAAE,EAAE;;YAC1D,OAAO;gBACH,YAAY,EAAE,qCAAiB,CAAC,2BAA2B,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAClF,IAAI,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE;gBAClC,OAAO,EAAE,MAAA,QAAQ,CAAC,gBAAgB,CAAC,EAAE,mCAAI,IAAI;aAChD,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;4CAVY,iCAAiC;IAD7C,IAAA,qBAAU,GAAE;GACA,iCAAiC,CAU7C"}
@@ -0,0 +1,22 @@
1
+ import { ITransferDeparture, ITransferOutputDto } from "../..";
2
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
3
+ export declare class TransferDepartureTransformation extends AbstractTransformation<ITransferDeparture, ITransferOutputDto> {
4
+ name: string;
5
+ protected transformInternal: (departure: ITransferDeparture) => {
6
+ departure_timestamp: {
7
+ minutes: string | null;
8
+ };
9
+ route: {
10
+ short_name: string | null;
11
+ type: import("../../../../helpers/RouteTypeEnums").GTFSRouteTypeEnum;
12
+ };
13
+ stop: {
14
+ platform_code: string | null;
15
+ };
16
+ trip: {
17
+ headsign: string;
18
+ id: string;
19
+ };
20
+ };
21
+ private calculateDepartureMinutes;
22
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TransferDepartureTransformation = void 0;
10
+ const DepartureCalculator_1 = require("../../../shared/DepartureCalculator");
11
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
12
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
13
+ const PlatformCodeResolver_1 = require("../helpers/PlatformCodeResolver");
14
+ let TransferDepartureTransformation = exports.TransferDepartureTransformation = class TransferDepartureTransformation extends AbstractTransformation_1.AbstractTransformation {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.name = "TransferDepartureTransformation";
18
+ this.transformInternal = (departure) => {
19
+ var _a;
20
+ return {
21
+ departure_timestamp: {
22
+ minutes: this.calculateDepartureMinutes(departure.departure_datetime_real),
23
+ },
24
+ route: {
25
+ short_name: departure.route_short_name,
26
+ type: departure.route_type,
27
+ },
28
+ stop: {
29
+ platform_code: PlatformCodeResolver_1.PlatformCodeResolver.resolve(departure),
30
+ },
31
+ trip: {
32
+ headsign: (_a = departure.stop_headsign) !== null && _a !== void 0 ? _a : departure.trip_headsign,
33
+ id: departure.trip_id,
34
+ },
35
+ };
36
+ };
37
+ }
38
+ calculateDepartureMinutes(predicted) {
39
+ if (!predicted) {
40
+ return null;
41
+ }
42
+ const departure_minutes = DepartureCalculator_1.DepartureCalculator.getDepartureMinutes(predicted);
43
+ if (departure_minutes < 1) {
44
+ return "<1";
45
+ }
46
+ return departure_minutes.toString();
47
+ }
48
+ };
49
+ exports.TransferDepartureTransformation = TransferDepartureTransformation = __decorate([
50
+ (0, tsyringe_1.injectable)()
51
+ ], TransferDepartureTransformation);
52
+ //# sourceMappingURL=TransferDepartureTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransferDepartureTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/TransferDepartureTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6EAAqE;AACrE,6GAA0G;AAC1G,iEAAgE;AAChE,0EAAuE;AAGhE,IAAM,+BAA+B,6CAArC,MAAM,+BAAgC,SAAQ,+CAA8D;IAA5G;;QACI,SAAI,GAAG,iCAAiC,CAAC;QAEtC,sBAAiB,GAAG,CAAC,SAA6B,EAAE,EAAE;;YAC5D,OAAO;gBACH,mBAAmB,EAAE;oBACjB,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,uBAAuB,CAAC;iBAC7E;gBACD,KAAK,EAAE;oBACH,UAAU,EAAE,SAAS,CAAC,gBAAgB;oBACtC,IAAI,EAAE,SAAS,CAAC,UAAU;iBAC7B;gBACD,IAAI,EAAE;oBACF,aAAa,EAAE,2CAAoB,CAAC,OAAO,CAAC,SAAS,CAAC;iBACzD;gBACD,IAAI,EAAE;oBACF,QAAQ,EAAE,MAAA,SAAS,CAAC,aAAa,mCAAI,SAAS,CAAC,aAAa;oBAC5D,EAAE,EAAE,SAAS,CAAC,OAAO;iBACxB;aACJ,CAAC;QACN,CAAC,CAAC;IAcN,CAAC;IAZW,yBAAyB,CAAC,SAAsB;QACpD,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,IAAI,CAAC;SACf;QAED,MAAM,iBAAiB,GAAG,yCAAmB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC7E,IAAI,iBAAiB,GAAG,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;CACJ,CAAA;0CAlCY,+BAA+B;IAD3C,IAAA,qBAAU,GAAE;GACA,+BAA+B,CAkC3C"}
@@ -0,0 +1,11 @@
1
+ import { ILogger } from "@golemio/core/dist/helpers";
2
+ import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
3
+ import { AbstractBasicRepository } from "@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractBasicRepository";
4
+ import { ModelStatic } from "@golemio/core/dist/shared/sequelize";
5
+ export declare class CisStopGroupRepository extends AbstractBasicRepository {
6
+ schema: string;
7
+ tableName: any;
8
+ sequelizeModel: ModelStatic<any>;
9
+ constructor(connector: IDatabaseConnector, logger: ILogger);
10
+ getNodeByCisId(cisId: string): Promise<string | null>;
11
+ }
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.CisStopGroupRepository = void 0;
25
+ const const_1 = require("../../../schema-definitions/const");
26
+ const ropid_gtfs_1 = require("../../../schema-definitions/ropid-gtfs");
27
+ const AbstractBasicRepository_1 = require("@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractBasicRepository");
28
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
29
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
30
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
31
+ let CisStopGroupRepository = exports.CisStopGroupRepository = class CisStopGroupRepository extends AbstractBasicRepository_1.AbstractBasicRepository {
32
+ constructor(connector, logger) {
33
+ super(connector, logger);
34
+ this.schema = const_1.PG_SCHEMA;
35
+ this.tableName = ropid_gtfs_1.RopidGTFS.cis_stop_groups.pgTableName;
36
+ this.sequelizeModel = connector
37
+ .getConnection()
38
+ .define(this.tableName, ropid_gtfs_1.RopidGTFS.cis_stop_groups.outputSequelizeAttributes, { schema: this.schema });
39
+ }
40
+ getNodeByCisId(cisId) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ try {
43
+ const cisStopGroup = yield this.sequelizeModel.findOne({
44
+ attributes: ["node"],
45
+ raw: true,
46
+ where: { cis: cisId },
47
+ });
48
+ if (!cisStopGroup || cisStopGroup.node === null) {
49
+ return null;
50
+ }
51
+ return cisStopGroup.node;
52
+ }
53
+ catch (error) {
54
+ throw new golemio_errors_1.GeneralError("Error while getting CIS stop groups", this.constructor.name, error, 500);
55
+ }
56
+ });
57
+ }
58
+ };
59
+ exports.CisStopGroupRepository = CisStopGroupRepository = __decorate([
60
+ (0, tsyringe_1.injectable)(),
61
+ __param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.PostgresConnector)),
62
+ __param(1, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
63
+ __metadata("design:paramtypes", [Object, Object])
64
+ ], CisStopGroupRepository);
65
+ //# sourceMappingURL=CisStopGroupRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CisStopGroupRepository.js","sourceRoot":"","sources":["../../../../src/output-gateway/ropid-gtfs/data-access/CisStopGroupRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAAuC;AACvC,uEAA4C;AAG5C,kIAA+H;AAC/H,wEAAqE;AACrE,6EAAwE;AAExE,iEAAwE;AAGjE,IAAM,sBAAsB,oCAA5B,MAAM,sBAAuB,SAAQ,iDAAuB;IAK/D,YAAiD,SAA6B,EAA4B,MAAe;QACrH,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QALtB,WAAM,GAAG,iBAAS,CAAC;QACnB,cAAS,GAAG,sBAAS,CAAC,eAAe,CAAC,WAAW,CAAC;QAMrD,IAAI,CAAC,cAAc,GAAG,SAAS;aAC1B,aAAa,EAAE;aACf,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAS,CAAC,eAAe,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9G,CAAC;IAEY,cAAc,CAAC,KAAa;;YACrC,IAAI;gBACA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACnD,UAAU,EAAE,CAAC,MAAM,CAAC;oBACpB,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;iBACxB,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,KAAK,IAAI,EAAE;oBAC7C,OAAO,IAAI,CAAC;iBACf;gBAED,OAAO,YAAY,CAAC,IAAI,CAAC;aAC5B;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,IAAI,6BAAY,CAAC,qCAAqC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACpG;QACL,CAAC;KAAA;CACJ,CAAA;iCA9BY,sBAAsB;IADlC,IAAA,qBAAU,GAAE;IAMI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,iBAAiB,CAAC,CAAA;IAAiC,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;;GALhG,sBAAsB,CA8BlC"}
@@ -10,6 +10,10 @@ export declare class GTFSStopModel extends SequelizeModel {
10
10
  * Retrieve all gtfs stops
11
11
  */
12
12
  GetAll<T extends boolean = false>(options: GetAllOptions<T>): Promise<T extends true ? IGTFSStopGetAllOutput[] : IGeoJSONFeatureCollection>;
13
+ /**
14
+ * Retrieve multiple GTFS stop ids by ASW node id
15
+ */
16
+ getMultipleIdsByAswNode: (aswNodeId: string) => Promise<string[]>;
13
17
  /**
14
18
  * Retrieve specific gtfs stop
15
19
  */
@@ -13,15 +13,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.GTFSStopModel = void 0;
16
+ const StopEnums_1 = require("../../../helpers/StopEnums");
16
17
  const const_1 = require("../../../schema-definitions/const");
17
18
  const ropid_gtfs_1 = require("../../../schema-definitions/ropid-gtfs");
18
19
  const StopDto_1 = require("../../../schema-definitions/ropid-gtfs/models/StopDto");
20
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
19
21
  const Geo_1 = require("@golemio/core/dist/output-gateway/Geo");
22
+ const ioc_1 = require("@golemio/core/dist/output-gateway/ioc");
20
23
  const models_1 = require("@golemio/core/dist/output-gateway/models");
21
24
  const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
22
25
  const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
23
- const ioc_1 = require("@golemio/core/dist/output-gateway/ioc");
24
- const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
25
26
  class GTFSStopModel extends models_1.SequelizeModel {
26
27
  constructor() {
27
28
  super(ropid_gtfs_1.RopidGTFS.stops.name, ropid_gtfs_1.RopidGTFS.stops.pgTableName, StopDto_1.StopDto.attributeModel, {
@@ -35,6 +36,28 @@ class GTFSStopModel extends models_1.SequelizeModel {
35
36
  sourceKey: "asw_node_id",
36
37
  });
37
38
  };
39
+ /**
40
+ * Retrieve multiple GTFS stop ids by ASW node id
41
+ */
42
+ this.getMultipleIdsByAswNode = (aswNodeId) => __awaiter(this, void 0, void 0, function* () {
43
+ try {
44
+ const stops = yield this.sequelizeModel.findAll({
45
+ attributes: ["stop_id"],
46
+ raw: true,
47
+ where: {
48
+ asw_node_id: aswNodeId,
49
+ location_type: StopEnums_1.GtfsStopLocationType.StopOrPlatform,
50
+ },
51
+ });
52
+ if (!stops || stops.length === 0) {
53
+ return [];
54
+ }
55
+ return stops.map((stop) => stop.stop_id);
56
+ }
57
+ catch (error) {
58
+ throw new golemio_errors_1.GeneralError("Error while getting GTFS stop ids", this.constructor.name, error, 500);
59
+ }
60
+ });
38
61
  /**
39
62
  * Retrieve specific gtfs stop
40
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GTFSStopModel.js","sourceRoot":"","sources":["../../../../src/output-gateway/ropid-gtfs/models/GTFSStopModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GTFSStopModel.js","sourceRoot":"","sources":["../../../../src/output-gateway/ropid-gtfs/models/GTFSStopModel.ts"],"names":[],"mappings":"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"}
@@ -1305,6 +1305,10 @@ Worker má na starost stahování VYMI (JIS) infotextů, jejich transformaci a u
1305
1305
 
1306
1306
  ### PID Departure Boards v3
1307
1307
 
1308
+ #### _/v3/pid/transferboards_
1309
+
1310
+ - načte odjezdy pro přestupní tabule ve vozidlech a aktivní infotexty exportované z aplikace VYMI (JIS) Infotexty
1311
+
1308
1312
  #### _/v3/pid/infotexts_
1309
1313
 
1310
1314
  - načte aktivní infotexty exportované z aplikace VYMI (JIS) Infotexty