@golemio/parkings 1.6.1 → 1.6.2-dev.1073199149
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/00_clear_test_data.sql +3 -0
- package/db/example/04_tsk_parking_v2.sql +21 -0
- package/db/migrations/postgresql/20230918124250-tsk-v-2-parking-sources.js +53 -0
- package/db/migrations/postgresql/20230918124259-tsk-v-2-parking-machines.js +53 -0
- package/db/migrations/postgresql/20230925090241-tsk-tariffs.js +53 -0
- package/db/migrations/postgresql/20231003115645-tsk-v-2-parking-special-access.js +53 -0
- package/db/migrations/postgresql/20231108130727-ipt-api-v3-allowed.js +53 -0
- package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-up.sql +18 -0
- package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-up.sql +15 -0
- package/db/migrations/postgresql/sqls/20230925090241-tsk-tariffs-down.sql +4 -0
- package/db/migrations/postgresql/sqls/20230925090241-tsk-tariffs-up.sql +4 -0
- package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-up.sql +1 -0
- package/db/migrations/postgresql/sqls/20231108130727-ipt-api-v3-allowed-down.sql +2 -0
- package/db/migrations/postgresql/sqls/20231108130727-ipt-api-v3-allowed-up.sql +2 -0
- package/dist/helpers/const.d.ts +0 -0
- package/dist/helpers/const.js +2 -0
- package/dist/helpers/const.js.map +1 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.d.ts +12 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.js +40 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.js.map +1 -0
- package/dist/helpers/interfaces/IParkingSource.d.ts +8 -0
- package/dist/helpers/interfaces/IParkingSource.js +3 -0
- package/dist/helpers/interfaces/IParkingSource.js.map +1 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.d.ts +9 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.js +40 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.js.map +1 -0
- package/dist/input-gateway/index.d.ts +2 -0
- package/dist/input-gateway/index.js +5 -0
- package/dist/input-gateway/index.js.map +1 -1
- package/dist/input-gateway/routers/ParkingSourcesRouter.d.ts +12 -0
- package/dist/input-gateway/routers/ParkingSourcesRouter.js +39 -0
- package/dist/input-gateway/routers/ParkingSourcesRouter.js.map +1 -0
- package/dist/integration-engine/ParkingInterface.d.ts +6 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.d.ts +8 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js +51 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js.map +1 -0
- package/dist/integration-engine/index.d.ts +5 -1
- package/dist/integration-engine/index.js +5 -1
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/ioc/Di.js +27 -1
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +9 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js +9 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/repositories/ParkingMachinesRepository.d.ts +4 -0
- package/dist/integration-engine/repositories/ParkingMachinesRepository.js +35 -0
- package/dist/integration-engine/repositories/ParkingMachinesRepository.js.map +1 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.d.ts +4 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.js +23 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.d.ts +7 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js +24 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.d.ts +9 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js +42 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.d.ts +10 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.js +66 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.d.ts +14 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.js +84 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.js.map +1 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.d.ts +5 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.js +18 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.js.map +1 -0
- package/dist/integration-engine/workers/TskParkingWorker.d.ts +5 -0
- package/dist/integration-engine/workers/TskParkingWorker.js +31 -0
- package/dist/integration-engine/workers/TskParkingWorker.js.map +1 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.d.ts +9 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js +44 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.d.ts +13 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js +31 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.d.ts +15 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.js +40 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.d.ts +13 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js +41 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.d.ts +11 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.js +33 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.d.ts +14 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.js +36 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.js +79 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.js +78 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.js +70 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.js.map +1 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.d.ts +10 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.js +101 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.js.map +1 -0
- package/dist/output-gateway/data-access/ParkingRepository.d.ts +14 -0
- package/dist/output-gateway/data-access/ParkingRepository.js +141 -0
- package/dist/output-gateway/data-access/ParkingRepository.js.map +1 -0
- package/dist/output-gateway/data-access/TariffRepository.d.ts +10 -0
- package/dist/output-gateway/data-access/TariffRepository.js +99 -0
- package/dist/output-gateway/data-access/TariffRepository.js.map +1 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.d.ts +4 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.js +3 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.d.ts +9 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingParams.d.ts +10 -0
- package/dist/output-gateway/helpers/params/IParkingParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.d.ts +7 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.js.map +1 -0
- package/dist/output-gateway/index.js +9 -1
- package/dist/output-gateway/index.js.map +1 -1
- package/dist/output-gateway/ioc/Di.d.ts +3 -0
- package/dist/output-gateway/ioc/Di.js +30 -0
- package/dist/output-gateway/ioc/Di.js.map +1 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.d.ts +9 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.js +13 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.js.map +1 -0
- package/dist/output-gateway/models/ParkingsLocationModel.d.ts +1 -1
- package/dist/output-gateway/models/ParkingsLocationModel.js +19 -5
- package/dist/output-gateway/models/ParkingsLocationModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsModel.d.ts +6 -4
- package/dist/output-gateway/models/ParkingsModel.js +46 -10
- package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsTariffsModel.d.ts +5 -1
- package/dist/output-gateway/models/ParkingsTariffsModel.js +17 -2
- package/dist/output-gateway/models/ParkingsTariffsModel.js.map +1 -1
- package/dist/output-gateway/models/index.js +4 -2
- package/dist/output-gateway/models/index.js.map +1 -1
- package/dist/output-gateway/routers/constants.d.ts +2 -1
- package/dist/output-gateway/routers/constants.js +1 -0
- package/dist/output-gateway/routers/constants.js.map +1 -1
- package/dist/output-gateway/routers/index.d.ts +3 -0
- package/dist/output-gateway/routers/index.js +3 -0
- package/dist/output-gateway/routers/index.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js +25 -4
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.js +43 -0
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.js +57 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.js +31 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.d.ts +8 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.js +56 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.js.map +1 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.d.ts +27 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.js +3 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.d.ts +9 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js +68 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.d.ts +8 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.js +35 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.d.ts +11 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.js +88 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.js.map +1 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.js +17 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.d.ts +111 -3
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.js +16 -0
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.js.map +1 -1
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js +23 -0
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js +25 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.js +23 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.js +105 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.d.ts +9 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.d.ts +9 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.d.ts +11 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.d.ts +57 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.js.map +1 -0
- package/dist/schema-definitions/index.d.ts +3 -0
- package/dist/schema-definitions/index.js +8 -0
- package/dist/schema-definitions/index.js.map +1 -1
- package/dist/schema-definitions/models/ParkingMachinesModel.d.ts +14 -0
- package/dist/schema-definitions/models/ParkingMachinesModel.js +21 -0
- package/dist/schema-definitions/models/ParkingMachinesModel.js.map +1 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.d.ts +12 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.js +20 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IAddress.d.ts +8 -0
- package/dist/schema-definitions/models/interfaces/IAddress.js +3 -0
- package/dist/schema-definitions/models/interfaces/IAddress.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParking.d.ts +28 -0
- package/dist/schema-definitions/models/interfaces/IParking.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParking.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.d.ts +13 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.d.ts +10 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.js.map +1 -0
- package/dist/schema-definitions/{datasources → models}/interfaces/IParkingTariffDto.d.ts +8 -2
- package/dist/schema-definitions/models/interfaces/IParkingTariffDto.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.d.ts +6 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.js +3 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.js.map +1 -0
- package/docs/implementation-documentation.md +116 -13
- package/docs/openapi-admin-input.yaml +90 -0
- package/docs/openapi-output.yaml +891 -58
- package/package.json +5 -3
- package/dist/schema-definitions/datasources/interfaces/IParkingTariffDto.js.map +0 -1
- /package/dist/schema-definitions/{datasources → models}/interfaces/IParkingTariffDto.js +0 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DataSource } from "@golemio/core/dist/integration-engine/datasources";
|
|
2
|
+
import { IConfiguration } from "@golemio/core/dist/integration-engine/config";
|
|
3
|
+
export declare class TskParkingDataSourceFactory {
|
|
4
|
+
private config;
|
|
5
|
+
private schemas;
|
|
6
|
+
constructor(config: IConfiguration);
|
|
7
|
+
getDataSource(endpoint: string): DataSource;
|
|
8
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.TskParkingDataSourceFactory = void 0;
|
|
16
|
+
const datasources_1 = require("@golemio/core/dist/integration-engine/datasources");
|
|
17
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
18
|
+
const TskParkingMachinesSchema_1 = require("../../schema-definitions/datasources/TskParkingMachinesSchema");
|
|
19
|
+
const TskParkingSectionLevelSchema_1 = require("../../schema-definitions/datasources/TskParkingSectionLevelSchema");
|
|
20
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
21
|
+
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
22
|
+
const TskParkingSectionSchema_1 = require("../../schema-definitions/datasources/TskParkingSectionSchema");
|
|
23
|
+
const TskParkingZoneTariffSchema_1 = require("../../schema-definitions/datasources/TskParkingZoneTariffSchema");
|
|
24
|
+
let TskParkingDataSourceFactory = exports.TskParkingDataSourceFactory = class TskParkingDataSourceFactory {
|
|
25
|
+
constructor(config) {
|
|
26
|
+
this.config = config;
|
|
27
|
+
this.schemas = {
|
|
28
|
+
parkingSections: TskParkingSectionSchema_1.TskParkingSectionSchema,
|
|
29
|
+
parkingSectionLevel251: TskParkingSectionLevelSchema_1.TskParkingSectionLevelSchema,
|
|
30
|
+
parkingSectionLevel253: TskParkingSectionLevelSchema_1.TskParkingSectionLevelSchema,
|
|
31
|
+
parkingMachines: TskParkingMachinesSchema_1.TskParkingMachinesSchema,
|
|
32
|
+
parkingTariffs: TskParkingZoneTariffSchema_1.TskParkingZoneTariffSchema,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
getDataSource(endpoint) {
|
|
36
|
+
const authToken = Buffer.from(this.config.datasources.parking.TskApiCredentials.user + ":" + this.config.datasources.parking.TskApiCredentials.pass).toString("base64");
|
|
37
|
+
return new datasources_1.DataSource(this.schemas[endpoint].name + "DataSource", new datasources_1.HTTPProtocolStrategy({
|
|
38
|
+
headers: {
|
|
39
|
+
Authorization: `Basic ${authToken}`,
|
|
40
|
+
},
|
|
41
|
+
method: "GET",
|
|
42
|
+
url: this.config.datasources.parking.TskApiBaseUrl + this.config.datasources.parking.TskApiEndpoints[endpoint],
|
|
43
|
+
}), new datasources_1.JSONDataTypeStrategy({ resultsPath: "" }), new golemio_validator_1.JSONSchemaValidator(this.schemas[endpoint].name, this.schemas[endpoint].jsonSchema));
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
exports.TskParkingDataSourceFactory = TskParkingDataSourceFactory = __decorate([
|
|
47
|
+
(0, tsyringe_1.injectable)(),
|
|
48
|
+
__param(0, (0, tsyringe_1.inject)(ioc_1.ContainerToken.Config)),
|
|
49
|
+
__metadata("design:paramtypes", [Object])
|
|
50
|
+
], TskParkingDataSourceFactory);
|
|
51
|
+
//# sourceMappingURL=TskParkingDataSourceFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingDataSourceFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/datasources/TskParkingDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mFAA2H;AAC3H,mFAAkF;AAElF,4GAAqF;AACrF,oHAA6F;AAC7F,iEAAwE;AACxE,mEAA2E;AAC3E,0GAAmF;AACnF,gHAAyF;AAUlF,IAAM,2BAA2B,yCAAjC,MAAM,2BAA2B;IASpC,YAA2C,MAA8B;QAAtB,WAAM,GAAN,MAAM,CAAgB;QARjE,YAAO,GAAsB;YACjC,eAAe,EAAE,iDAAuB;YACxC,sBAAsB,EAAE,2DAA4B;YACpD,sBAAsB,EAAE,2DAA4B;YACpD,eAAe,EAAE,mDAAwB;YACzC,cAAc,EAAE,uDAA0B;SAC7C,CAAC;IAE0E,CAAC;IAEtE,aAAa,CAAC,QAAgB;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CACzB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CACxH,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErB,OAAO,IAAI,wBAAU,CACjB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,YAAY,EAC1C,IAAI,kCAAoB,CAAC;YACrB,OAAO,EAAE;gBACL,aAAa,EAAE,SAAS,SAAS,EAAE;aACtC;YACD,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC;SACjH,CAAC,EACF,IAAI,kCAAoB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EAC7C,IAAI,uCAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAC1F,CAAC;IACN,CAAC;CACJ,CAAA;sCA7BY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;IAUI,WAAA,IAAA,iBAAM,EAAC,oBAAc,CAAC,MAAM,CAAC,CAAA;;GATjC,2BAA2B,CA6BvC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { StaticTariffsWorker } from "./workers/StaticTariffsWorker";
|
|
2
2
|
import { UpdateAddressWorker } from "./workers/UpdateAddressWorker";
|
|
3
3
|
import { NewParkingsWorker } from "./workers/NewParkingsWorker";
|
|
4
|
+
import { TskParkingWorker } from "./workers/TskParkingWorker";
|
|
5
|
+
import { ParkingSourcesWorker } from "./workers/ParkingSourcesWorker";
|
|
4
6
|
export * from "./ParkingsWorker";
|
|
5
7
|
export * from "./transformations/KoridParkingDataTransformation";
|
|
6
8
|
export * from "./transformations/KoridParkingConfigTransformation";
|
|
@@ -9,4 +11,6 @@ export * from "./ZtpParkingZones/ZtpParkingZonesDataSourceFactory";
|
|
|
9
11
|
export * from "./ZtpParkingZones/ZtpParkingZonesTransformation";
|
|
10
12
|
export * from "./ZtpParkingZones/ZtpParkingZonesWorker";
|
|
11
13
|
export * from "./workers/StaticTariffsWorker";
|
|
12
|
-
export
|
|
14
|
+
export * from "./workers/TskParkingWorker";
|
|
15
|
+
export * from "./workers/ParkingSourcesWorker";
|
|
16
|
+
export declare const workers: (typeof StaticTariffsWorker | typeof UpdateAddressWorker | typeof NewParkingsWorker | typeof TskParkingWorker | typeof ParkingSourcesWorker)[];
|
|
@@ -19,6 +19,8 @@ exports.workers = void 0;
|
|
|
19
19
|
const StaticTariffsWorker_1 = require("./workers/StaticTariffsWorker");
|
|
20
20
|
const UpdateAddressWorker_1 = require("./workers/UpdateAddressWorker");
|
|
21
21
|
const NewParkingsWorker_1 = require("./workers/NewParkingsWorker");
|
|
22
|
+
const TskParkingWorker_1 = require("./workers/TskParkingWorker");
|
|
23
|
+
const ParkingSourcesWorker_1 = require("./workers/ParkingSourcesWorker");
|
|
22
24
|
__exportStar(require("./ParkingsWorker"), exports);
|
|
23
25
|
__exportStar(require("./transformations/KoridParkingDataTransformation"), exports);
|
|
24
26
|
__exportStar(require("./transformations/KoridParkingConfigTransformation"), exports);
|
|
@@ -27,5 +29,7 @@ __exportStar(require("./ZtpParkingZones/ZtpParkingZonesDataSourceFactory"), expo
|
|
|
27
29
|
__exportStar(require("./ZtpParkingZones/ZtpParkingZonesTransformation"), exports);
|
|
28
30
|
__exportStar(require("./ZtpParkingZones/ZtpParkingZonesWorker"), exports);
|
|
29
31
|
__exportStar(require("./workers/StaticTariffsWorker"), exports);
|
|
30
|
-
|
|
32
|
+
__exportStar(require("./workers/TskParkingWorker"), exports);
|
|
33
|
+
__exportStar(require("./workers/ParkingSourcesWorker"), exports);
|
|
34
|
+
exports.workers = [StaticTariffsWorker_1.StaticTariffsWorker, UpdateAddressWorker_1.UpdateAddressWorker, NewParkingsWorker_1.NewParkingsWorker, TskParkingWorker_1.TskParkingWorker, ParkingSourcesWorker_1.ParkingSourcesWorker];
|
|
31
35
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,uEAAsE;AACtE,uEAAsE;AACtE,mEAAgE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,uEAAsE;AACtE,uEAAsE;AACtE,mEAAgE;AAChE,iEAAgE;AAChE,yEAAwE;AAExE,mDAAiC;AACjC,mFAAiE;AACjE,qFAAmE;AACnE,qDAAmC;AACnC,qFAAmE;AACnE,kFAAgE;AAChE,0EAAwD;AACxD,gEAA8C;AAC9C,6DAA2C;AAC3C,iEAA+C;AAElC,QAAA,OAAO,GAAG,CAAC,yCAAmB,EAAE,yCAAmB,EAAE,qCAAiB,EAAE,mCAAgB,EAAE,2CAAoB,CAAC,CAAC"}
|
|
@@ -2,25 +2,51 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ParkingsContainer = void 0;
|
|
4
4
|
const TskTariffChecker_1 = require("../businessRules/TskTariffChecker");
|
|
5
|
+
const TskParkingDataSourceFactory_1 = require("../datasources/TskParkingDataSourceFactory");
|
|
6
|
+
const ParkingMachinesRepository_1 = require("../repositories/ParkingMachinesRepository");
|
|
5
7
|
const ParkingTariffsRepository_1 = require("../repositories/ParkingTariffsRepository");
|
|
6
8
|
const ParkingsBusinessErrorsRepository_1 = require("../repositories/ParkingsBusinessErrorsRepository");
|
|
9
|
+
const ParkingsLocationRepository_1 = require("../repositories/ParkingsLocationRepository");
|
|
7
10
|
const ParkingsRepository_1 = require("../repositories/ParkingsRepository");
|
|
8
11
|
const ParkingsRedisModel_1 = require("../repositories/redis/ParkingsRedisModel");
|
|
12
|
+
const TskParkingMachinesTransformation_1 = require("../transformations/TskParkingMachinesTransformation");
|
|
13
|
+
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
9
14
|
const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
|
|
15
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
10
16
|
const ModuleContainerToken_1 = require("./ModuleContainerToken");
|
|
11
17
|
//#region Initialization
|
|
12
18
|
const parkingsContainer = Di_1.IntegrationEngineContainer.createChildContainer();
|
|
13
19
|
exports.ParkingsContainer = parkingsContainer;
|
|
20
|
+
const config = Di_1.IntegrationEngineContainer.resolve(ioc_1.ContainerToken.Config);
|
|
21
|
+
const parkingDataSourceFactory = new TskParkingDataSourceFactory_1.TskParkingDataSourceFactory(config);
|
|
14
22
|
//#endregion
|
|
15
23
|
//#region Datasource
|
|
24
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionLevel251DataSource, {
|
|
25
|
+
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSectionLevel251")),
|
|
26
|
+
});
|
|
27
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionLevel253DataSource, {
|
|
28
|
+
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSectionLevel253")),
|
|
29
|
+
});
|
|
30
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingSectionsDataSource, {
|
|
31
|
+
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingSections")),
|
|
32
|
+
});
|
|
33
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesDataSource, {
|
|
34
|
+
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingMachines")),
|
|
35
|
+
});
|
|
36
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingZonesTariffsDataSource, {
|
|
37
|
+
useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingTariffs")),
|
|
38
|
+
});
|
|
16
39
|
//#endregion
|
|
17
40
|
//#region Transformation
|
|
41
|
+
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesTransformation, TskParkingMachinesTransformation_1.TskParkingMachinesTransformation);
|
|
18
42
|
//#endregion
|
|
19
43
|
//#region Repositories
|
|
20
44
|
parkingsContainer
|
|
21
45
|
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository, ParkingsRepository_1.ParkingsRepository)
|
|
46
|
+
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsLocationRepository, ParkingsLocationRepository_1.ParkingsLocationRepository)
|
|
22
47
|
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingTariffsRepository, ParkingTariffsRepository_1.ParkingTariffsRepository)
|
|
23
|
-
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsBusinessErrorsRepository, ParkingsBusinessErrorsRepository_1.ParkingsBusinessErrorsRepository)
|
|
48
|
+
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsBusinessErrorsRepository, ParkingsBusinessErrorsRepository_1.ParkingsBusinessErrorsRepository)
|
|
49
|
+
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingMachinesRepository, ParkingMachinesRepository_1.ParkingMachinesRepository);
|
|
24
50
|
parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.RedisModel, ParkingsRedisModel_1.ParkingsRedisModel);
|
|
25
51
|
//#endregion
|
|
26
52
|
//#region Helpers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,wEAAsE;AACtE,uFAAqF;AACrF,uGAAqG;AACrG,2EAAyE;AACzE,iFAA+E;AAC/E,qEAA0F;AAC1F,iEAA8D;
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,wEAAsE;AACtE,4FAA0F;AAC1F,yFAAuF;AACvF,uFAAqF;AACrF,uGAAqG;AACrG,2FAAyF;AACzF,2EAAyE;AACzE,iFAA+E;AAC/E,0GAAwG;AAOxG,mEAA2E;AAC3E,qEAA0F;AAC1F,iEAAiG;AACjG,iEAA8D;AAE9D,wBAAwB;AACxB,MAAM,iBAAiB,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAmDnE,8CAAiB;AAlD/C,MAAM,MAAM,GAAG,+BAA0B,CAAC,OAAO,CAAiB,oBAAc,CAAC,MAAM,CAAC,CAAC;AACzF,MAAM,wBAAwB,GAAG,IAAI,yDAA2B,CAAC,MAAM,CAAC,CAAC;AACzE,YAAY;AAEZ,oBAAoB;AACpB,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,mCAAmC,EAAE;IACtH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CACnE;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,mCAAmC,EAAE;IACtH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CACnE;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAiC,2CAAoB,CAAC,4BAA4B,EAAE;IAC1G,UAAU,EAAE,IAAA,iCAAsB,EAAiC,GAAG,EAAE,CACpE,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAC5D;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAiC,2CAAoB,CAAC,4BAA4B,EAAE;IAC1G,UAAU,EAAE,IAAA,iCAAsB,EAAiC,GAAG,EAAE,CACpE,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAC5D;CACJ,CAAC,CAAC;AACH,iBAAiB,CAAC,QAAQ,CAAsC,2CAAoB,CAAC,gCAAgC,EAAE;IACnH,UAAU,EAAE,IAAA,iCAAsB,EAAsC,GAAG,EAAE,CACzE,wBAAwB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAC3D;CACJ,CAAC,CAAC;AACH,YAAY;AAEZ,wBAAwB;AACxB,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC,CAAC;AACpH,YAAY;AAEZ,sBAAsB;AACtB,iBAAiB;KACZ,QAAQ,CAAC,2CAAoB,CAAC,kBAAkB,EAAE,uCAAkB,CAAC;KACrE,QAAQ,CAAC,2CAAoB,CAAC,0BAA0B,EAAE,uDAA0B,CAAC;KACrF,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC;KACjF,QAAQ,CAAC,2CAAoB,CAAC,gCAAgC,EAAE,mEAAgC,CAAC;KACjG,QAAQ,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AACzF,iBAAiB,CAAC,QAAQ,CAAqB,2CAAoB,CAAC,UAAU,EAAE,uCAAkB,CAAC,CAAC;AACpG,YAAY;AAEZ,iBAAiB;AACjB,iBAAiB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,gBAAgB,EAAE,mCAAgB,CAAC,CAAC"}
|
|
@@ -2,7 +2,16 @@ declare const ModuleContainerToken: {
|
|
|
2
2
|
TskTariffChecker: symbol;
|
|
3
3
|
RedisModel: symbol;
|
|
4
4
|
ParkingsRepository: symbol;
|
|
5
|
+
ParkingsLocationRepository: symbol;
|
|
5
6
|
ParkingTariffsRepository: symbol;
|
|
6
7
|
ParkingsBusinessErrorsRepository: symbol;
|
|
8
|
+
ParkingMachinesRepository: symbol;
|
|
9
|
+
TskParkingMachinesDataSource: symbol;
|
|
10
|
+
TskParkingMachinesTransformation: symbol;
|
|
11
|
+
TskParkingSectionLevel251DataSource: symbol;
|
|
12
|
+
TskParkingSectionLevel253DataSource: symbol;
|
|
13
|
+
TskParkingSectionsDataSource: symbol;
|
|
14
|
+
TskParkingSectionTransformation: symbol;
|
|
15
|
+
TskParkingZonesTariffsDataSource: symbol;
|
|
7
16
|
};
|
|
8
17
|
export { ModuleContainerToken };
|
|
@@ -5,8 +5,17 @@ const ModuleContainerToken = {
|
|
|
5
5
|
TskTariffChecker: Symbol(),
|
|
6
6
|
RedisModel: Symbol(),
|
|
7
7
|
ParkingsRepository: Symbol(),
|
|
8
|
+
ParkingsLocationRepository: Symbol(),
|
|
8
9
|
ParkingTariffsRepository: Symbol(),
|
|
9
10
|
ParkingsBusinessErrorsRepository: Symbol(),
|
|
11
|
+
ParkingMachinesRepository: Symbol(),
|
|
12
|
+
TskParkingMachinesDataSource: Symbol(),
|
|
13
|
+
TskParkingMachinesTransformation: Symbol(),
|
|
14
|
+
TskParkingSectionLevel251DataSource: Symbol(),
|
|
15
|
+
TskParkingSectionLevel253DataSource: Symbol(),
|
|
16
|
+
TskParkingSectionsDataSource: Symbol(),
|
|
17
|
+
TskParkingSectionTransformation: Symbol(),
|
|
18
|
+
TskParkingZonesTariffsDataSource: Symbol("TskParkingZonesTariffsDataSource"),
|
|
10
19
|
};
|
|
11
20
|
exports.ModuleContainerToken = ModuleContainerToken;
|
|
12
21
|
//# sourceMappingURL=ModuleContainerToken.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,UAAU,EAAE,MAAM,EAAE;IACpB,kBAAkB,EAAE,MAAM,EAAE;IAC5B,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,UAAU,EAAE,MAAM,EAAE;IACpB,kBAAkB,EAAE,MAAM,EAAE;IAC5B,0BAA0B,EAAE,MAAM,EAAE;IACpC,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,yBAAyB,EAAE,MAAM,EAAE;IAEnC,4BAA4B,EAAE,MAAM,EAAE;IACtC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,4BAA4B,EAAE,MAAM,EAAE;IACtC,+BAA+B,EAAE,MAAM,EAAE;IAEzC,gCAAgC,EAAE,MAAM,CAAC,kCAAkC,CAAC;CAC/E,CAAC;AACO,oDAAoB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ParkingMachinesRepository = void 0;
|
|
7
|
+
const models_1 = require("@golemio/core/dist/integration-engine/models");
|
|
8
|
+
const _sch_1 = require("../../schema-definitions");
|
|
9
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
10
|
+
const TskParkingMachinesSchema_1 = require("../../schema-definitions/datasources/TskParkingMachinesSchema");
|
|
11
|
+
const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
|
|
12
|
+
class ParkingMachinesRepository extends models_1.PostgresModel {
|
|
13
|
+
constructor() {
|
|
14
|
+
const parkingMachines = {
|
|
15
|
+
id: {
|
|
16
|
+
primaryKey: true,
|
|
17
|
+
type: sequelize_1.default.STRING,
|
|
18
|
+
},
|
|
19
|
+
source: sequelize_1.default.STRING,
|
|
20
|
+
code: sequelize_1.default.STRING,
|
|
21
|
+
type: sequelize_1.default.STRING,
|
|
22
|
+
location: sequelize_1.default.GEOMETRY,
|
|
23
|
+
validFrom: sequelize_1.default.DATE,
|
|
24
|
+
tariffId: sequelize_1.default.STRING,
|
|
25
|
+
};
|
|
26
|
+
super("ParkingMachinesRepository", {
|
|
27
|
+
outputSequelizeAttributes: parkingMachines,
|
|
28
|
+
pgSchema: _sch_1.Parkings.pgSchema,
|
|
29
|
+
pgTableName: "parking_machines",
|
|
30
|
+
savingType: "insertOrUpdate",
|
|
31
|
+
}, new golemio_validator_1.JSONSchemaValidator("ParkingMachinesRepositoryValidator", TskParkingMachinesSchema_1.TskParkingMachinesSchema));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.ParkingMachinesRepository = ParkingMachinesRepository;
|
|
35
|
+
//# sourceMappingURL=ParkingMachinesRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParkingMachinesRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingMachinesRepository.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAqF;AACrF,mDAAgC;AAChC,mFAAkF;AAClF,4GAAqF;AACrF,oFAA4D;AAE5D,MAAa,yBAA0B,SAAQ,sBAAa;IACxD;QACI,MAAM,eAAe,GAA8B;YAC/C,EAAE,EAAE;gBACA,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,mBAAS,CAAC,MAAM;aACzB;YACD,MAAM,EAAE,mBAAS,CAAC,MAAM;YACxB,IAAI,EAAE,mBAAS,CAAC,MAAM;YACtB,IAAI,EAAE,mBAAS,CAAC,MAAM;YACtB,QAAQ,EAAE,mBAAS,CAAC,QAAQ;YAC5B,SAAS,EAAE,mBAAS,CAAC,IAAI;YACzB,QAAQ,EAAE,mBAAS,CAAC,MAAM;SAC7B,CAAC;QAEF,KAAK,CACD,2BAA2B,EAC3B;YACI,yBAAyB,EAAE,eAAe;YAC1C,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,kBAAkB;YAC/B,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,oCAAoC,EAAE,mDAAwB,CAAC,CAC1F,CAAC;IACN,CAAC;CACJ;AA1BD,8DA0BC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParkingSourcesRepository = void 0;
|
|
4
|
+
const _sch_1 = require("../../schema-definitions");
|
|
5
|
+
const ParkingSourcesModel_1 = require("../../schema-definitions/models/ParkingSourcesModel");
|
|
6
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
7
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
8
|
+
const InputParkingSourceSchema_1 = require("../../schema-definitions/datasources/InputParkingSourceSchema");
|
|
9
|
+
class ParkingSourcesRepository extends integration_engine_1.PostgresModel {
|
|
10
|
+
constructor() {
|
|
11
|
+
super("IEParkingSourcesRepository", {
|
|
12
|
+
outputSequelizeAttributes: ParkingSourcesModel_1.ParkingSourcesModel.attributeModel,
|
|
13
|
+
pgSchema: _sch_1.Parkings.pgSchema,
|
|
14
|
+
pgTableName: ParkingSourcesModel_1.ParkingSourcesModel.tableName,
|
|
15
|
+
savingType: "insertOrUpdate",
|
|
16
|
+
sequelizeAdditionalSettings: {
|
|
17
|
+
timestamps: false,
|
|
18
|
+
},
|
|
19
|
+
}, new golemio_validator_1.JSONSchemaValidator("ParkingSourcePgModelValidator", InputParkingSourceSchema_1.InputParkingSourceSchema));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.ParkingSourcesRepository = ParkingSourcesRepository;
|
|
23
|
+
//# sourceMappingURL=ParkingSourcesRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParkingSourcesRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingSourcesRepository.ts"],"names":[],"mappings":";;;AAAA,mDAAgC;AAChC,6FAAsE;AACtE,8EAA8E;AAC9E,mFAAkF;AAClF,4GAAqF;AAErF,MAAa,wBAAyB,SAAQ,kCAAa;IACvD;QACI,KAAK,CACD,4BAA4B,EAC5B;YACI,yBAAyB,EAAE,yCAAmB,CAAC,cAAc;YAC7D,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,yCAAmB,CAAC,SAAS;YAC1C,UAAU,EAAE,gBAAgB;YAC5B,2BAA2B,EAAE;gBACzB,UAAU,EAAE,KAAK;aACpB;SACJ,EACD,IAAI,uCAAmB,CAAC,+BAA+B,EAAE,mDAAwB,CAAC,CACrF,CAAC;IACN,CAAC;CACJ;AAhBD,4DAgBC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
2
|
+
import { ITskParkingMachine } from "../../schema-definitions/datasources/interfaces/ITskParkingMachine";
|
|
3
|
+
import { IParkingMachine } from "../../schema-definitions/models/interfaces/IParkingMachine";
|
|
4
|
+
export declare class TskParkingMachinesTransformation extends AbstractTransformation<ITskParkingMachine, IParkingMachine> {
|
|
5
|
+
name: string;
|
|
6
|
+
transformInternal: (tskParkingMachine: ITskParkingMachine) => IParkingMachine;
|
|
7
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TskParkingMachinesTransformation = void 0;
|
|
4
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
5
|
+
const wkt_1 = require("@terraformer/wkt");
|
|
6
|
+
class TskParkingMachinesTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.name = "TskParkingMachinesTransformation";
|
|
10
|
+
this.transformInternal = (tskParkingMachine) => {
|
|
11
|
+
return {
|
|
12
|
+
id: tskParkingMachine.idParkMachine,
|
|
13
|
+
source: "tsk_v2",
|
|
14
|
+
code: tskParkingMachine.code,
|
|
15
|
+
type: tskParkingMachine.idStatus == 5 || tskParkingMachine.idStatus == 6 ? "info_box" : "payment_machine",
|
|
16
|
+
location: (0, wkt_1.wktToGeoJSON)(tskParkingMachine.positionWKT),
|
|
17
|
+
validFrom: new Date(tskParkingMachine.activeFrom),
|
|
18
|
+
tariffId: tskParkingMachine.idTariff,
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.TskParkingMachinesTransformation = TskParkingMachinesTransformation;
|
|
24
|
+
//# sourceMappingURL=TskParkingMachinesTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingMachinesTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingMachinesTransformation.ts"],"names":[],"mappings":";;;AAAA,6GAA0G;AAI1G,0CAAgD;AAEhD,MAAa,gCAAiC,SAAQ,+CAA2D;IAAjH;;QACW,SAAI,GAAW,kCAAkC,CAAC;QAEzD,sBAAiB,GAAG,CAAC,iBAAqC,EAAmB,EAAE;YAC3E,OAAO;gBACH,EAAE,EAAE,iBAAiB,CAAC,aAAa;gBACnC,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,iBAAiB,CAAC,IAAI;gBAC5B,IAAI,EAAE,iBAAiB,CAAC,QAAQ,IAAI,CAAC,IAAI,iBAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB;gBACzG,QAAQ,EAAE,IAAA,kBAAY,EAAC,iBAAiB,CAAC,WAAW,CAAa;gBACjE,SAAS,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;gBACjD,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;aACvC,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA;AAdD,4EAcC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
2
|
+
import { IParkingLocation } from "../ParkingInterface";
|
|
3
|
+
import { ITskParkingSectionLevel } from "../../schema-definitions/datasources/interfaces/ITskParkingSectionLevel";
|
|
4
|
+
export declare class TskParkingSectionLevelTransformation extends AbstractTransformation<ITskParkingSectionLevel, IParkingLocation> {
|
|
5
|
+
private specialAccess?;
|
|
6
|
+
name: string;
|
|
7
|
+
constructor(specialAccess?: string | undefined);
|
|
8
|
+
protected transformInternal: (zone: ITskParkingSectionLevel) => IParkingLocation;
|
|
9
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TskParkingSectionLevelTransformation = void 0;
|
|
13
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
14
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
15
|
+
const wkt_1 = require("@terraformer/wkt");
|
|
16
|
+
const GeodataHelper_1 = require("../helpers/GeodataHelper");
|
|
17
|
+
let TskParkingSectionLevelTransformation = exports.TskParkingSectionLevelTransformation = class TskParkingSectionLevelTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
18
|
+
constructor(specialAccess) {
|
|
19
|
+
super();
|
|
20
|
+
this.specialAccess = specialAccess;
|
|
21
|
+
this.name = "TskParkingSectionLevelTransformation";
|
|
22
|
+
this.transformInternal = (zone) => {
|
|
23
|
+
var _a;
|
|
24
|
+
const location = (0, wkt_1.wktToGeoJSON)(zone.borderWKT);
|
|
25
|
+
return {
|
|
26
|
+
id: "tsk_v2-" + zone.idSectionItem,
|
|
27
|
+
data_provider: "www.tsk-praha.cz",
|
|
28
|
+
location,
|
|
29
|
+
centroid: (0, GeodataHelper_1.getPointOnFeature)(location),
|
|
30
|
+
total_spot_number: zone.projectedCapacity,
|
|
31
|
+
source: "tsk_v2",
|
|
32
|
+
source_id: zone.idSection,
|
|
33
|
+
special_access: (_a = this.specialAccess) !== null && _a !== void 0 ? _a : undefined,
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
exports.TskParkingSectionLevelTransformation = TskParkingSectionLevelTransformation = __decorate([
|
|
39
|
+
(0, tsyringe_1.injectable)(),
|
|
40
|
+
__metadata("design:paramtypes", [String])
|
|
41
|
+
], TskParkingSectionLevelTransformation);
|
|
42
|
+
//# sourceMappingURL=TskParkingSectionLevelTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingSectionLevelTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingSectionLevelTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6GAA0G;AAG1G,iEAAgE;AAChE,0CAAgD;AAEhD,4DAA8D;AAGvD,IAAM,oCAAoC,kDAA1C,MAAM,oCAAqC,SAAQ,+CAAiE;IAGvH,YAAoB,aAAsB;QACtC,KAAK,EAAE,CAAC;QADQ,kBAAa,GAAb,aAAa,CAAS;QAF1C,SAAI,GAAW,sCAAsC,CAAC;QAM5C,sBAAiB,GAAG,CAAC,IAA6B,EAAoB,EAAE;;YAC9E,MAAM,QAAQ,GAAG,IAAA,kBAAY,EAAC,IAAI,CAAC,SAAS,CAAoB,CAAC;YACjE,OAAO;gBACH,EAAE,EAAE,SAAS,GAAG,IAAI,CAAC,aAAa;gBAClC,aAAa,EAAE,kBAAkB;gBACjC,QAAQ;gBACR,QAAQ,EAAE,IAAA,iCAAiB,EAAC,QAAQ,CAAC;gBACrC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,cAAc,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,SAAS;aAClD,CAAC;QACN,CAAC,CAAC;IAdF,CAAC;CAeJ,CAAA;+CApBY,oCAAoC;IADhD,IAAA,qBAAU,GAAE;;GACA,oCAAoC,CAoBhD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
2
|
+
import { IParking } from "../ParkingInterface";
|
|
3
|
+
import { ITskParkingSection } from "../../schema-definitions/datasources/interfaces/ITskParkingSection";
|
|
4
|
+
export declare class TskParkingSectionTransformation extends AbstractTransformation<ITskParkingSection, IParking> {
|
|
5
|
+
private transformationDate;
|
|
6
|
+
name: string;
|
|
7
|
+
constructor(transformationDate: Date);
|
|
8
|
+
protected transformInternal: (section: ITskParkingSection) => IParking;
|
|
9
|
+
private getSectionCat;
|
|
10
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TskParkingSectionTransformation = void 0;
|
|
13
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
14
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
15
|
+
const wkt_1 = require("@terraformer/wkt");
|
|
16
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
17
|
+
const GeodataHelper_1 = require("../helpers/GeodataHelper");
|
|
18
|
+
const helpers_1 = require("@golemio/core/dist/helpers");
|
|
19
|
+
let TskParkingSectionTransformation = exports.TskParkingSectionTransformation = class TskParkingSectionTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
20
|
+
constructor(transformationDate) {
|
|
21
|
+
super();
|
|
22
|
+
this.transformationDate = transformationDate;
|
|
23
|
+
this.name = "TskParkingSectionTransformation";
|
|
24
|
+
this.transformInternal = (section) => {
|
|
25
|
+
const location = (0, wkt_1.wktToGeoJSON)(section.borderWKT);
|
|
26
|
+
const valid_from = helpers_1.DateTime.fromISO(section.activeFrom, { timeZone: "Europe/Prague" }).toISOString();
|
|
27
|
+
return {
|
|
28
|
+
id: "tsk2-" + section.sectionCode,
|
|
29
|
+
source: "tsk_v2",
|
|
30
|
+
source_id: section.idSection,
|
|
31
|
+
data_provider: "www.tsk-praha.cz",
|
|
32
|
+
location,
|
|
33
|
+
name: section.sectionCode,
|
|
34
|
+
total_spot_number: section.projectedCapacity,
|
|
35
|
+
category: this.getSectionCat(section.sectionCat),
|
|
36
|
+
tariff_id: section.idTariff ? section.idTariff : undefined,
|
|
37
|
+
valid_from,
|
|
38
|
+
parking_type: "on_street",
|
|
39
|
+
zone_type: "zone",
|
|
40
|
+
date_modified: this.transformationDate.toISOString(),
|
|
41
|
+
centroid: (0, GeodataHelper_1.getPointOnFeature)(location),
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
getSectionCat(catNo) {
|
|
46
|
+
switch (catNo) {
|
|
47
|
+
case 1:
|
|
48
|
+
return "blue";
|
|
49
|
+
case 2:
|
|
50
|
+
return "violet";
|
|
51
|
+
case 3:
|
|
52
|
+
return "orange";
|
|
53
|
+
case 6:
|
|
54
|
+
return "other";
|
|
55
|
+
case 7:
|
|
56
|
+
return "other";
|
|
57
|
+
default:
|
|
58
|
+
throw new golemio_errors_1.GeneralError(`Unknown section category ${catNo} in TSK parking zones.`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
exports.TskParkingSectionTransformation = TskParkingSectionTransformation = __decorate([
|
|
63
|
+
(0, tsyringe_1.injectable)(),
|
|
64
|
+
__metadata("design:paramtypes", [Date])
|
|
65
|
+
], TskParkingSectionTransformation);
|
|
66
|
+
//# sourceMappingURL=TskParkingSectionTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingSectionTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingSectionTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6GAA0G;AAE1G,iEAAgE;AAChE,0CAAgD;AAEhD,6EAAwE;AAExE,4DAA8D;AAC9D,wDAAsD;AAG/C,IAAM,+BAA+B,6CAArC,MAAM,+BAAgC,SAAQ,+CAAoD;IAGrG,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAF5C,SAAI,GAAW,iCAAiC,CAAC;QAMvC,sBAAiB,GAAG,CAAC,OAA2B,EAAY,EAAE;YACpE,MAAM,QAAQ,GAAG,IAAA,kBAAY,EAAC,OAAO,CAAC,SAAS,CAAoB,CAAC;YACpE,MAAM,UAAU,GAAG,kBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAErG,OAAO;gBACH,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW;gBACjC,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,aAAa,EAAE,kBAAkB;gBACjC,QAAQ;gBACR,IAAI,EAAE,OAAO,CAAC,WAAW;gBACzB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;gBAChD,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBAC1D,UAAU;gBACV,YAAY,EAAE,WAAW;gBACzB,SAAS,EAAE,MAAM;gBACjB,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACpD,QAAQ,EAAE,IAAA,iCAAiB,EAAC,QAAQ,CAAC;aACxC,CAAC;QACN,CAAC,CAAC;IAtBF,CAAC;IAwBO,aAAa,CAAC,KAAa;QAC/B,QAAQ,KAAK,EAAE;YACX,KAAK,CAAC;gBACF,OAAO,MAAM,CAAC;YAClB,KAAK,CAAC;gBACF,OAAO,QAAQ,CAAC;YACpB,KAAK,CAAC;gBACF,OAAO,QAAQ,CAAC;YACpB,KAAK,CAAC;gBACF,OAAO,OAAO,CAAC;YACnB,KAAK,CAAC;gBACF,OAAO,OAAO,CAAC;YACnB;gBACI,MAAM,IAAI,6BAAY,CAAC,4BAA4B,KAAK,wBAAwB,CAAC,CAAC;SACzF;IACL,CAAC;CACJ,CAAA;0CA7CY,+BAA+B;IAD3C,IAAA,qBAAU,GAAE;qCAI+B,IAAI;GAHnC,+BAA+B,CA6C3C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
2
|
+
import { ITskParkingZoneTariff } from "../../schema-definitions/datasources/interfaces/ITskParkingZoneTariff";
|
|
3
|
+
import { IParkingTariff } from "../ParkingInterface";
|
|
4
|
+
export declare class TskParkingZonesTariffsTransformation extends AbstractTransformation<ITskParkingZoneTariff, IParkingTariff[]> {
|
|
5
|
+
private transformationDate;
|
|
6
|
+
name: string;
|
|
7
|
+
orderIdx: number;
|
|
8
|
+
constructor(transformationDate: Date);
|
|
9
|
+
transformInternal: (item: ITskParkingZoneTariff) => IParkingTariff[];
|
|
10
|
+
private getChargeOther;
|
|
11
|
+
private getChargeMinimums;
|
|
12
|
+
private getChargeMaximums;
|
|
13
|
+
private getTariffPeriods;
|
|
14
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TskParkingZonesTariffsTransformation = void 0;
|
|
4
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
5
|
+
const helpers_1 = require("@golemio/core/dist/helpers");
|
|
6
|
+
var DaysInWeekEnum;
|
|
7
|
+
(function (DaysInWeekEnum) {
|
|
8
|
+
DaysInWeekEnum["monday"] = "Mo";
|
|
9
|
+
DaysInWeekEnum["tuesday"] = "Tu";
|
|
10
|
+
DaysInWeekEnum["wednesday"] = "We";
|
|
11
|
+
DaysInWeekEnum["thursday"] = "Th";
|
|
12
|
+
DaysInWeekEnum["friday"] = "Fr";
|
|
13
|
+
DaysInWeekEnum["saturday"] = "Sa";
|
|
14
|
+
DaysInWeekEnum["sunday"] = "Su";
|
|
15
|
+
})(DaysInWeekEnum || (DaysInWeekEnum = {}));
|
|
16
|
+
class TskParkingZonesTariffsTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
17
|
+
constructor(transformationDate) {
|
|
18
|
+
super();
|
|
19
|
+
this.transformationDate = transformationDate;
|
|
20
|
+
this.name = "TskParkingZonesTariffsTransformation";
|
|
21
|
+
this.orderIdx = 0;
|
|
22
|
+
this.transformInternal = (item) => {
|
|
23
|
+
this.orderIdx = 0;
|
|
24
|
+
const result = [];
|
|
25
|
+
const tariffCommonInfo = {
|
|
26
|
+
tariff_id: item.id,
|
|
27
|
+
source: "tsk_v2",
|
|
28
|
+
last_updated: this.transformationDate.toISOString(),
|
|
29
|
+
payment_mode: "pre_paid",
|
|
30
|
+
free_of_charge: false,
|
|
31
|
+
charge_band_name: item.name || "",
|
|
32
|
+
accepts_mobile_payment: true,
|
|
33
|
+
accepts_litacka: true,
|
|
34
|
+
charge_currency: "czk",
|
|
35
|
+
};
|
|
36
|
+
for (const tg of item.tariffGroups || []) {
|
|
37
|
+
for (const td of tg.tariffDefinitions || []) {
|
|
38
|
+
const validityFrom = helpers_1.DateTime.max(helpers_1.DateTime.fromISO(td.activeFrom, { timeZone: "Europe/Prague" }).toISOString(), helpers_1.DateTime.fromISO(tg.activeFrom, { timeZone: "Europe/Prague" }).toISOString(), helpers_1.DateTime.fromISO(item.activeFrom, { timeZone: "Europe/Prague" }).toISOString());
|
|
39
|
+
const validityTo = helpers_1.DateTime.min(helpers_1.DateTime.fromISO(td.activeTo, { timeZone: "Europe/Prague" }).toISOString(), helpers_1.DateTime.fromISO(tg.activeTo, { timeZone: "Europe/Prague" }).toISOString(), helpers_1.DateTime.fromISO(item.activeTo, { timeZone: "Europe/Prague" }).toISOString());
|
|
40
|
+
tariffCommonInfo.valid_from = validityFrom.setTimeZone("Europe/Prague").toISOString();
|
|
41
|
+
tariffCommonInfo.valid_to = validityTo.setTimeZone("Europe/Prague").toISOString();
|
|
42
|
+
const periodsOfTime = this.getTariffPeriods(tg, td, item.maxPriceHoliday !== null);
|
|
43
|
+
if (validityTo > (0, helpers_1.dateTime)(this.transformationDate)) {
|
|
44
|
+
if (!!td.minPriceItem) {
|
|
45
|
+
const chargeInfoMinimum = this.getChargeMinimums(td.minPriceItem, periodsOfTime, tariffCommonInfo);
|
|
46
|
+
result.push(...chargeInfoMinimum);
|
|
47
|
+
}
|
|
48
|
+
const charges = this.getChargeOther(td, item.maxHour, periodsOfTime, tariffCommonInfo);
|
|
49
|
+
result.push(...charges);
|
|
50
|
+
if (!!td.maxPriceItem) {
|
|
51
|
+
const chargeInfoMaximum = this.getChargeMaximums(td.maxPriceItem, periodsOfTime, tariffCommonInfo);
|
|
52
|
+
result.push(...chargeInfoMaximum);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return result;
|
|
58
|
+
};
|
|
59
|
+
this.getChargeOther = (definition, maxHour, periods, tariffCommonInfo) => periods.map((period) => (Object.assign(Object.assign(Object.assign(Object.assign({}, tariffCommonInfo), { charge_order_index: this.orderIdx++, charge: definition.pricePerHour / 60, charge_type: "other", charge_interval: 60, max_iterations_of_charge: definition.minuteTo - definition.minuteFrom, min_iterations_of_charge: 1 }), (maxHour && { maximum_duration_seconds: maxHour * 3600 })), { periods_of_time: period })));
|
|
60
|
+
this.getChargeMinimums = (price, periods, tariffCommonInfo) => periods.map((period) => (Object.assign(Object.assign({}, tariffCommonInfo), { charge_order_index: this.orderIdx++, charge: price, charge_type: "minimum", periods_of_time: period })));
|
|
61
|
+
this.getChargeMaximums = (price, periods, tariffCommonInfo) => periods.map((period) => (Object.assign(Object.assign({}, tariffCommonInfo), { charge_order_index: this.orderIdx++, charge: price, charge_type: "maximum", periods_of_time: period })));
|
|
62
|
+
this.getTariffPeriods = (group, definition, hasHolidayTariff) => {
|
|
63
|
+
const result = [];
|
|
64
|
+
for (const day of Object.keys(DaysInWeekEnum)) {
|
|
65
|
+
if (group[day]) {
|
|
66
|
+
result.push({
|
|
67
|
+
day_in_week: DaysInWeekEnum[day],
|
|
68
|
+
start: definition.timeFrom,
|
|
69
|
+
end: helpers_1.DateTime.fromFormat(definition.timeTo, "HH:mm:ss", { timeZone: "Europe/Prague" })
|
|
70
|
+
.subtract(1, "minutes")
|
|
71
|
+
.format("HH:mm:ss"),
|
|
72
|
+
ph: "PH_off",
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (hasHolidayTariff) {
|
|
77
|
+
return [result, result.map((el) => (Object.assign(Object.assign({}, el), { ph: "PH_only" })))];
|
|
78
|
+
}
|
|
79
|
+
return [result];
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.TskParkingZonesTariffsTransformation = TskParkingZonesTariffsTransformation;
|
|
84
|
+
//# sourceMappingURL=TskParkingZonesTariffsTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingZonesTariffsTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TskParkingZonesTariffsTransformation.ts"],"names":[],"mappings":"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"}
|