@golemio/parkings 1.6.2-dev.1073199149 → 1.6.2-dev.1078576357

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 (49) hide show
  1. package/db/example/05_mr_parkit.sql +9 -0
  2. package/db/migrations/postgresql/20231113114829-mr-parkit.js +53 -0
  3. package/db/migrations/postgresql/sqls/20231113114829-mr-parkit-down.sql +1 -0
  4. package/db/migrations/postgresql/sqls/20231113114829-mr-parkit-up.sql +9 -0
  5. package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.d.ts +9 -0
  6. package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js +34 -0
  7. package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js.map +1 -0
  8. package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.d.ts +3 -0
  9. package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js +8 -0
  10. package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js.map +1 -0
  11. package/dist/integration-engine/datasources/interfaces/IDataSourceProvider.d.ts +4 -0
  12. package/dist/integration-engine/datasources/interfaces/IDataSourceProvider.js +3 -0
  13. package/dist/integration-engine/datasources/interfaces/IDataSourceProvider.js.map +1 -0
  14. package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.d.ts +10 -0
  15. package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.js +4 -0
  16. package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.js.map +1 -0
  17. package/dist/integration-engine/datasources/mr-parkit/MrParkitDataSourceProvider.d.ts +13 -0
  18. package/dist/integration-engine/datasources/mr-parkit/MrParkitDataSourceProvider.js +51 -0
  19. package/dist/integration-engine/datasources/mr-parkit/MrParkitDataSourceProvider.js.map +1 -0
  20. package/dist/integration-engine/ioc/Di.js +8 -0
  21. package/dist/integration-engine/ioc/Di.js.map +1 -1
  22. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +3 -0
  23. package/dist/integration-engine/ioc/ModuleContainerToken.js +5 -0
  24. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  25. package/dist/integration-engine/transformations/MrParkitGarageTransformation.d.ts +14 -0
  26. package/dist/integration-engine/transformations/MrParkitGarageTransformation.js +61 -0
  27. package/dist/integration-engine/transformations/MrParkitGarageTransformation.js.map +1 -0
  28. package/dist/integration-engine/transformations/interfaces/IMrParkitGarageTransformation.d.ts +10 -0
  29. package/dist/integration-engine/transformations/interfaces/IMrParkitGarageTransformation.js +3 -0
  30. package/dist/integration-engine/transformations/interfaces/IMrParkitGarageTransformation.js.map +1 -0
  31. package/dist/integration-engine/workers/NewParkingsWorker.d.ts +3 -2
  32. package/dist/integration-engine/workers/NewParkingsWorker.js +10 -1
  33. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  34. package/dist/integration-engine/workers/constants.d.ts +1 -0
  35. package/dist/integration-engine/workers/constants.js +5 -0
  36. package/dist/integration-engine/workers/constants.js.map +1 -0
  37. package/dist/integration-engine/workers/tasks/SaveMrParkitDataTask.d.ts +14 -0
  38. package/dist/integration-engine/workers/tasks/SaveMrParkitDataTask.js +115 -0
  39. package/dist/integration-engine/workers/tasks/SaveMrParkitDataTask.js.map +1 -0
  40. package/dist/schema-definitions/datasources/MrParkitJsonSchema.d.ts +3 -0
  41. package/dist/schema-definitions/datasources/MrParkitJsonSchema.js +31 -0
  42. package/dist/schema-definitions/datasources/MrParkitJsonSchema.js.map +1 -0
  43. package/dist/schema-definitions/datasources/interfaces/IMrParkitGarage.d.ts +8 -0
  44. package/dist/schema-definitions/datasources/interfaces/IMrParkitGarage.js +3 -0
  45. package/dist/schema-definitions/datasources/interfaces/IMrParkitGarage.js.map +1 -0
  46. package/dist/schema-definitions/index.js +1 -2
  47. package/dist/schema-definitions/index.js.map +1 -1
  48. package/docs/implementation-documentation.md +34 -0
  49. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ insert into parking_sources(source, open_data, api_v3_allowed, legacy_api_allowed, payment_url, contact) VALUES
2
+ ('mr_parkit', false, true, false,
3
+ null,
4
+ '{
5
+ "email": "info@mrparkit.com",
6
+ "phone": "+420 277 277 977",
7
+ "web_url": "https://www.mrparkit.com/",
8
+ "term_of_use_url": "https://www.mrparkit.com/cs/pravni-dokumenty"
9
+ }');
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ var dbm;
4
+ var type;
5
+ var seed;
6
+ var fs = require('fs');
7
+ var path = require('path');
8
+ var Promise;
9
+
10
+ /**
11
+ * We receive the dbmigrate dependency from dbmigrate initially.
12
+ * This enables us to not have to rely on NODE_PATH.
13
+ */
14
+ exports.setup = function(options, seedLink) {
15
+ dbm = options.dbmigrate;
16
+ type = dbm.dataType;
17
+ seed = seedLink;
18
+ Promise = options.Promise;
19
+ };
20
+
21
+ exports.up = function(db) {
22
+ var filePath = path.join(__dirname, 'sqls', '20231113114829-mr-parkit-up.sql');
23
+ return new Promise( function( resolve, reject ) {
24
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
25
+ if (err) return reject(err);
26
+ console.log('received data: ' + data);
27
+
28
+ resolve(data);
29
+ });
30
+ })
31
+ .then(function(data) {
32
+ return db.runSql(data);
33
+ });
34
+ };
35
+
36
+ exports.down = function(db) {
37
+ var filePath = path.join(__dirname, 'sqls', '20231113114829-mr-parkit-down.sql');
38
+ return new Promise( function( resolve, reject ) {
39
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
40
+ if (err) return reject(err);
41
+ console.log('received data: ' + data);
42
+
43
+ resolve(data);
44
+ });
45
+ })
46
+ .then(function(data) {
47
+ return db.runSql(data);
48
+ });
49
+ };
50
+
51
+ exports._meta = {
52
+ "version": 1
53
+ };
@@ -0,0 +1 @@
1
+ delete from parking_sources where source = 'mr_parkit';
@@ -0,0 +1,9 @@
1
+ insert into parking_sources(source, open_data, api_v3_allowed, legacy_api_allowed, payment_url, contact) VALUES
2
+ ('mr_parkit', false, true, false,
3
+ null,
4
+ '{
5
+ "email": "info@mrparkit.com",
6
+ "phone": "+420 277 277 977",
7
+ "web_url": "https://www.mrparkit.com/",
8
+ "term_of_use_url": "https://www.mrparkit.com/cs/pravni-dokumenty"
9
+ }');
@@ -0,0 +1,9 @@
1
+ import { IMrParkitGarage } from "../../schema-definitions/datasources/interfaces/IMrParkitGarage";
2
+ import { ParkingProvider } from "./helpers/ParkingProviderEnum";
3
+ import { IDataSourceProvider } from "./interfaces/IDataSourceProvider";
4
+ import { DataSourceProviderDict, DataSourceReturnType, IParkingProviderDataSourceFactory } from "./interfaces/IParkingProviderDataSourceFactory";
5
+ export declare class ParkingProviderDataSourceFactory implements IParkingProviderDataSourceFactory {
6
+ private readonly dataSourceProviderDict;
7
+ constructor(mrParkitDataSourceProvider: IDataSourceProvider<IMrParkitGarage[]>);
8
+ getDataSource<T extends ParkingProvider>(presetLogsProvider: T, ...params: Parameters<DataSourceProviderDict[T]["getDataSource"]>): DataSourceReturnType<T>;
9
+ }
@@ -0,0 +1,34 @@
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.ParkingProviderDataSourceFactory = void 0;
16
+ const ModuleContainerToken_1 = require("../ioc/ModuleContainerToken");
17
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
18
+ const ParkingProviderEnum_1 = require("./helpers/ParkingProviderEnum");
19
+ let ParkingProviderDataSourceFactory = exports.ParkingProviderDataSourceFactory = class ParkingProviderDataSourceFactory {
20
+ constructor(mrParkitDataSourceProvider) {
21
+ this.dataSourceProviderDict = {
22
+ [ParkingProviderEnum_1.ParkingProvider.MrParkit]: mrParkitDataSourceProvider,
23
+ };
24
+ }
25
+ getDataSource(presetLogsProvider, ...params) {
26
+ return this.dataSourceProviderDict[presetLogsProvider].getDataSource(...params);
27
+ }
28
+ };
29
+ exports.ParkingProviderDataSourceFactory = ParkingProviderDataSourceFactory = __decorate([
30
+ (0, tsyringe_1.injectable)(),
31
+ __param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.SaveMrParkitDataTask)),
32
+ __metadata("design:paramtypes", [Object])
33
+ ], ParkingProviderDataSourceFactory);
34
+ //# sourceMappingURL=ParkingProviderDataSourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParkingProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/datasources/ParkingProviderDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sEAAoE;AAEpE,iEAAwE;AACxE,uEAAgE;AASzD,IAAM,gCAAgC,8CAAtC,MAAM,gCAAgC;IAGzC,YAEI,0BAAkE;QAElE,IAAI,CAAC,sBAAsB,GAAG;YAC1B,CAAC,qCAAe,CAAC,QAAQ,CAAC,EAAE,0BAA0B;SACzD,CAAC;IACN,CAAC;IAEM,aAAa,CAChB,kBAAqB,EACrB,GAAG,MAA8D;QAEjE,OAAO,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAA4B,CAAC;IAC/G,CAAC;CACJ,CAAA;2CAlBY,gCAAgC;IAD5C,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,oBAAoB,CAAC,CAAA;;GAJ7C,gCAAgC,CAkB5C"}
@@ -0,0 +1,3 @@
1
+ export declare enum ParkingProvider {
2
+ MrParkit = "MrParkit"
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ParkingProvider = void 0;
4
+ var ParkingProvider;
5
+ (function (ParkingProvider) {
6
+ ParkingProvider["MrParkit"] = "MrParkit";
7
+ })(ParkingProvider || (exports.ParkingProvider = ParkingProvider = {}));
8
+ //# sourceMappingURL=ParkingProviderEnum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParkingProviderEnum.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/helpers/ParkingProviderEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAEX;AAFD,WAAY,eAAe;IACvB,wCAAqB,CAAA;AACzB,CAAC,EAFW,eAAe,+BAAf,eAAe,QAE1B"}
@@ -0,0 +1,4 @@
1
+ import { IDataSource } from "@golemio/core/dist/integration-engine/datasources";
2
+ export interface IDataSourceProvider<T> {
3
+ getDataSource: (...args: any[]) => IDataSource<T>;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IDataSourceProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDataSourceProvider.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/interfaces/IDataSourceProvider.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { IMrParkitGarage } from "../../../schema-definitions/datasources/interfaces/IMrParkitGarage";
2
+ import { ParkingProvider } from "../helpers/ParkingProviderEnum";
3
+ import { IDataSourceProvider } from "./IDataSourceProvider";
4
+ export type DataSourceProviderDict = {
5
+ [ParkingProvider.MrParkit]: IDataSourceProvider<IMrParkitGarage[]>;
6
+ };
7
+ export type DataSourceReturnType<T extends ParkingProvider> = ReturnType<DataSourceProviderDict[T]["getDataSource"]>;
8
+ export interface IParkingProviderDataSourceFactory {
9
+ getDataSource<T extends ParkingProvider>(presetLogsProvider: T, ...params: Parameters<DataSourceProviderDict[T]["getDataSource"]>): DataSourceReturnType<T>;
10
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ParkingProviderEnum_1 = require("../helpers/ParkingProviderEnum");
4
+ //# sourceMappingURL=IParkingProviderDataSourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IParkingProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.ts"],"names":[],"mappings":";;AACA,wEAAiE"}
@@ -0,0 +1,13 @@
1
+ import { IMrParkitGarage } from "../../../schema-definitions/datasources/interfaces/IMrParkitGarage";
2
+ import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
3
+ import { IDataSource } from "@golemio/core/dist/integration-engine";
4
+ import { IDataSourceProvider } from "../interfaces/IDataSourceProvider";
5
+ type MrParkitDto = IMrParkitGarage[];
6
+ export declare class MrParkitDataSourceProvider implements IDataSourceProvider<MrParkitDto> {
7
+ private config;
8
+ private static DATASOURCE_NAME;
9
+ constructor(config: ISimpleConfig);
10
+ getDataSource(): IDataSource<MrParkitDto>;
11
+ private getProtocolStrategy;
12
+ }
13
+ export {};
@@ -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
+ var MrParkitDataSourceProvider_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.MrParkitDataSourceProvider = void 0;
17
+ const MrParkitJsonSchema_1 = require("../../../schema-definitions/datasources/MrParkitJsonSchema");
18
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
19
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
20
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
21
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
22
+ let MrParkitDataSourceProvider = exports.MrParkitDataSourceProvider = MrParkitDataSourceProvider_1 = class MrParkitDataSourceProvider {
23
+ constructor(config) {
24
+ this.config = config;
25
+ }
26
+ getDataSource() {
27
+ const url = this.config.getValue("old.datasources.parking.mrParkit.datasource.url");
28
+ const apiVersion = this.config.getValue("old.datasources.parking.mrParkit.datasource.apiVersion");
29
+ const apiKey = this.config.getValue("old.datasources.parking.mrParkit.datasource.apiKey");
30
+ return new integration_engine_1.DataSource(MrParkitDataSourceProvider_1.DATASOURCE_NAME, this.getProtocolStrategy(url, apiVersion, apiKey), new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "garages" }), new golemio_validator_1.JSONSchemaValidator(MrParkitDataSourceProvider_1.DATASOURCE_NAME, MrParkitJsonSchema_1.mrParkitJsonSchema));
31
+ }
32
+ getProtocolStrategy(url, apiVersion, apiKey) {
33
+ return new integration_engine_1.HTTPProtocolStrategy({
34
+ method: "GET",
35
+ url: url,
36
+ headers: {
37
+ "Content-Type": "application/json",
38
+ "x-api-version": apiVersion,
39
+ "x-api-key": apiKey,
40
+ },
41
+ timeout: 20000, // 20 seconds
42
+ });
43
+ }
44
+ };
45
+ MrParkitDataSourceProvider.DATASOURCE_NAME = "MrParkitDataSource";
46
+ exports.MrParkitDataSourceProvider = MrParkitDataSourceProvider = MrParkitDataSourceProvider_1 = __decorate([
47
+ (0, tsyringe_1.injectable)(),
48
+ __param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
49
+ __metadata("design:paramtypes", [Object])
50
+ ], MrParkitDataSourceProvider);
51
+ //# sourceMappingURL=MrParkitDataSourceProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MrParkitDataSourceProvider.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/mr-parkit/MrParkitDataSourceProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mGAAyE;AAGzE,wEAAqE;AACrE,8EAA4H;AAC5H,mFAAkF;AAClF,iEAAwE;AAMjE,IAAM,0BAA0B,uEAAhC,MAAM,0BAA0B;IAGnC,YAAoD,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtE,aAAa;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,iDAAiD,CAAC,CAAC;QAC5F,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,wDAAwD,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,oDAAoD,CAAC,CAAC;QAElG,OAAO,IAAI,+BAAU,CACjB,4BAA0B,CAAC,eAAe,EAC1C,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EACjD,IAAI,yCAAoB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,EACpD,IAAI,uCAAmB,CAAC,4BAA0B,CAAC,eAAe,EAAE,uCAAkB,CAAC,CAC1F,CAAC;IACN,CAAC;IAEO,mBAAmB,CAAC,GAAW,EAAE,UAAkB,EAAE,MAAc;QACvE,OAAO,IAAI,yCAAoB,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG;YACR,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU;gBAC3B,WAAW,EAAE,MAAM;aACtB;YACD,OAAO,EAAE,KAAK,EAAE,aAAa;SAChC,CAAC,CAAC;IACP,CAAC;;AA5Bc,0CAAe,GAAG,oBAAoB,AAAvB,CAAwB;qCAD7C,0BAA0B;IADtC,IAAA,qBAAU,GAAE;IAII,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GAHlC,0BAA0B,CA8BtC"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ParkingsContainer = void 0;
4
4
  const TskTariffChecker_1 = require("../businessRules/TskTariffChecker");
5
+ const ParkingProviderDataSourceFactory_1 = require("../datasources/ParkingProviderDataSourceFactory");
5
6
  const TskParkingDataSourceFactory_1 = require("../datasources/TskParkingDataSourceFactory");
7
+ const MrParkitDataSourceProvider_1 = require("../datasources/mr-parkit/MrParkitDataSourceProvider");
6
8
  const ParkingMachinesRepository_1 = require("../repositories/ParkingMachinesRepository");
7
9
  const ParkingTariffsRepository_1 = require("../repositories/ParkingTariffsRepository");
8
10
  const ParkingsBusinessErrorsRepository_1 = require("../repositories/ParkingsBusinessErrorsRepository");
@@ -10,6 +12,7 @@ const ParkingsLocationRepository_1 = require("../repositories/ParkingsLocationRe
10
12
  const ParkingsRepository_1 = require("../repositories/ParkingsRepository");
11
13
  const ParkingsRedisModel_1 = require("../repositories/redis/ParkingsRedisModel");
12
14
  const TskParkingMachinesTransformation_1 = require("../transformations/TskParkingMachinesTransformation");
15
+ const SaveMrParkitDataTask_1 = require("../workers/tasks/SaveMrParkitDataTask");
13
16
  const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
14
17
  const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
15
18
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
@@ -36,6 +39,8 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkin
36
39
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingZonesTariffsDataSource, {
37
40
  useFactory: (0, tsyringe_1.instanceCachingFactory)(() => parkingDataSourceFactory.getDataSource("parkingTariffs")),
38
41
  });
42
+ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.MrParkitDataSourceProvider, MrParkitDataSourceProvider_1.MrParkitDataSourceProvider);
43
+ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkingProviderDataSourceFactory, ParkingProviderDataSourceFactory_1.ParkingProviderDataSourceFactory);
39
44
  //#endregion
40
45
  //#region Transformation
41
46
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesTransformation, TskParkingMachinesTransformation_1.TskParkingMachinesTransformation);
@@ -51,4 +56,7 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.RedisMode
51
56
  //#endregion
52
57
  //#region Helpers
53
58
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskTariffChecker, TskTariffChecker_1.TskTariffChecker);
59
+ //#endregion
60
+ //#region Tasks
61
+ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveMrParkitDataTask, SaveMrParkitDataTask_1.SaveMrParkitDataTask);
54
62
  //# sourceMappingURL=Di.js.map
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,8 @@ declare const ModuleContainerToken: {
13
13
  TskParkingSectionsDataSource: symbol;
14
14
  TskParkingSectionTransformation: symbol;
15
15
  TskParkingZonesTariffsDataSource: symbol;
16
+ ParkingProviderDataSourceFactory: symbol;
17
+ MrParkitDataSourceProvider: symbol;
18
+ SaveMrParkitDataTask: symbol;
16
19
  };
17
20
  export { ModuleContainerToken };
@@ -16,6 +16,11 @@ const ModuleContainerToken = {
16
16
  TskParkingSectionsDataSource: Symbol(),
17
17
  TskParkingSectionTransformation: Symbol(),
18
18
  TskParkingZonesTariffsDataSource: Symbol("TskParkingZonesTariffsDataSource"),
19
+ ParkingProviderDataSourceFactory: Symbol(),
20
+ //#region MR.PARKIT
21
+ MrParkitDataSourceProvider: Symbol(),
22
+ SaveMrParkitDataTask: Symbol(),
23
+ //#endregion
19
24
  };
20
25
  exports.ModuleContainerToken = ModuleContainerToken;
21
26
  //# 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,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"}
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;IAC5E,gCAAgC,EAAE,MAAM,EAAE;IAE1C,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,YAAY;CACf,CAAC;AACO,oDAAoB"}
@@ -0,0 +1,14 @@
1
+ import { IMrParkitGarage } from "../../schema-definitions/datasources/interfaces/IMrParkitGarage";
2
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
3
+ import { IMrParkingTranasformationDto, IMrParkitGarageTransformation } from "./interfaces/IMrParkitGarageTransformation";
4
+ type TransformIn = IMrParkitGarage;
5
+ type TransformOut = IMrParkingTranasformationDto;
6
+ export declare class MrParkitGarageTransformation extends AbstractTransformation<TransformIn, TransformOut> implements IMrParkitGarageTransformation {
7
+ private transformationDate;
8
+ name: string;
9
+ constructor(transformationDate: Date);
10
+ protected transformInternal: (data: TransformIn) => TransformOut;
11
+ private transformLocation;
12
+ private transformMeasurement;
13
+ }
14
+ export {};
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MrParkitGarageTransformation = void 0;
4
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
5
+ const output_gateway_1 = require("@golemio/core/dist/output-gateway");
6
+ class MrParkitGarageTransformation extends AbstractTransformation_1.AbstractTransformation {
7
+ constructor(transformationDate) {
8
+ super();
9
+ this.transformationDate = transformationDate;
10
+ this.name = "MrParkitGarageTransformation";
11
+ this.transformInternal = (data) => {
12
+ const location = {
13
+ type: output_gateway_1.GeoCoordinatesType.Point,
14
+ coordinates: [data.longitude, data.latitude],
15
+ };
16
+ const parking = {
17
+ id: `mr_parkit-${data.id}`,
18
+ source: "mr_parkit",
19
+ source_id: data.id,
20
+ data_provider: "www.mrparkit.com",
21
+ name: data.name,
22
+ location,
23
+ centroid: location,
24
+ total_spot_number: 1,
25
+ date_modified: this.transformationDate.toISOString(),
26
+ parking_type: "park_sharing",
27
+ address: {
28
+ address_country: "Česko",
29
+ address_formatted: data.address,
30
+ },
31
+ };
32
+ return Object.assign(Object.assign({}, parking), { parkingLocation: this.transformLocation(parking), parkingMeasurement: this.transformMeasurement(parking, data) });
33
+ };
34
+ this.transformLocation = (parking) => {
35
+ return {
36
+ id: parking.id,
37
+ source: parking.source,
38
+ source_id: parking.source_id,
39
+ data_provider: parking.data_provider,
40
+ location: parking.location,
41
+ centroid: parking.centroid,
42
+ total_spot_number: parking.total_spot_number,
43
+ address: parking.address,
44
+ special_access: "all",
45
+ };
46
+ };
47
+ this.transformMeasurement = (parking, data) => {
48
+ return {
49
+ parking_id: parking.id,
50
+ source: parking.source,
51
+ source_id: parking.source_id,
52
+ available_spot_number: data.free ? 1 : 0,
53
+ date_modified: this.transformationDate.toISOString(),
54
+ occupied_spot_number: data.free ? 0 : 1,
55
+ total_spot_number: parking.total_spot_number,
56
+ };
57
+ };
58
+ }
59
+ }
60
+ exports.MrParkitGarageTransformation = MrParkitGarageTransformation;
61
+ //# sourceMappingURL=MrParkitGarageTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MrParkitGarageTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/MrParkitGarageTransformation.ts"],"names":[],"mappings":";;;AAGA,6GAA0G;AAC1G,sEAA6F;AAM7F,MAAa,4BACT,SAAQ,+CAAiD;IAKzD,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAFrC,SAAI,GAAG,8BAA8B,CAAC;QAMnC,sBAAiB,GAAG,CAAC,IAAiB,EAAgB,EAAE;YAC9D,MAAM,QAAQ,GAAyB;gBACnC,IAAI,EAAE,mCAAkB,CAAC,KAAK;gBAC9B,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;aAC/C,CAAC;YAEF,MAAM,OAAO,GAAa;gBACtB,EAAE,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE;gBAC1B,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,aAAa,EAAE,kBAAkB;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ;gBACR,QAAQ,EAAE,QAAQ;gBAClB,iBAAiB,EAAE,CAAC;gBACpB,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACpD,YAAY,EAAE,cAAc;gBAC5B,OAAO,EAAE;oBACL,eAAe,EAAE,OAAO;oBACxB,iBAAiB,EAAE,IAAI,CAAC,OAAO;iBAClC;aACJ,CAAC;YAEF,uCACO,OAAO,KACV,eAAe,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAChD,kBAAkB,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,IAC9D;QACN,CAAC,CAAC;QAEM,sBAAiB,GAAG,CAAC,OAAiB,EAAoB,EAAE;YAChE,OAAO;gBACH,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,cAAc,EAAE,KAAK;aACxB,CAAC;QACN,CAAC,CAAC;QAEM,yBAAoB,GAAG,CAAC,OAAiB,EAAE,IAAiB,EAAwB,EAAE;YAC1F,OAAO;gBACH,UAAU,EAAE,OAAO,CAAC,EAAE;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACpD,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;aAC/C,CAAC;QACN,CAAC,CAAC;IAxDF,CAAC;CAyDJ;AAjED,oEAiEC"}
@@ -0,0 +1,10 @@
1
+ import { IParking, IParkingMeasurements } from "../../ParkingInterface";
2
+ import { IMrParkitGarage } from "../../../schema-definitions/datasources/interfaces/IMrParkitGarage";
3
+ import { IParkingLocation } from "../../../schema-definitions/models/interfaces/IParkingLocation";
4
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
+ export interface IMrParkingTranasformationDto extends IParking {
6
+ parkingLocation: IParkingLocation;
7
+ parkingMeasurement: IParkingMeasurements;
8
+ }
9
+ export interface IMrParkitGarageTransformation extends AbstractTransformation<IMrParkitGarage, IMrParkingTranasformationDto> {
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IMrParkitGarageTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMrParkitGarageTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/interfaces/IMrParkitGarageTransformation.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
- import { AbstractWorker } from "@golemio/core/dist/integration-engine";
1
+ import { AbstractTask, AbstractWorker } from "@golemio/core/dist/integration-engine";
2
2
  export declare class NewParkingsWorker extends AbstractWorker {
3
- protected readonly name: string;
3
+ protected readonly name = "Parkings";
4
4
  constructor();
5
+ registerTask: (task: AbstractTask<any>) => void;
5
6
  }
@@ -1,12 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NewParkingsWorker = void 0;
4
+ const Di_1 = require("../ioc/Di");
5
+ const ModuleContainerToken_1 = require("../ioc/ModuleContainerToken");
4
6
  const integration_engine_1 = require("@golemio/core/dist/integration-engine");
7
+ const constants_1 = require("./constants");
5
8
  const SaveParkingZonesPrague_1 = require("./tasks/SaveParkingZonesPrague");
6
9
  class NewParkingsWorker extends integration_engine_1.AbstractWorker {
7
10
  constructor() {
8
11
  super();
9
- this.name = "Parkings";
12
+ this.name = constants_1.NEW_PARKINGS_WORKER_NAME;
13
+ this.registerTask = (task) => {
14
+ super.registerTask(task);
15
+ task.queuePrefix = this.getQueuePrefix();
16
+ };
17
+ // Register tasks
18
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveMrParkitDataTask));
10
19
  this.registerTask(new SaveParkingZonesPrague_1.SaveParkingZonesPrague(this.getQueuePrefix()));
11
20
  }
12
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAuE;AACvE,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAGjD;QACI,KAAK,EAAE,CAAC;QAHO,SAAI,GAAW,UAAU,CAAC;QAKzC,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;CACJ;AARD,8CAQC"}
1
+ {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAqF;AACrF,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAGjD;QACI,KAAK,EAAE,CAAC;QAHO,SAAI,GAAG,oCAAwB,CAAC;QAU5C,iBAAY,GAAG,CAAC,IAAuB,EAAQ,EAAE;YACpD,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QARE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAC,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;CAMJ;AAfD,8CAeC"}
@@ -0,0 +1 @@
1
+ export declare const NEW_PARKINGS_WORKER_NAME = "Parkings";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NEW_PARKINGS_WORKER_NAME = void 0;
4
+ exports.NEW_PARKINGS_WORKER_NAME = "Parkings";
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,wBAAwB,GAAG,UAAU,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { IParkingProviderDataSourceFactory } from "../../datasources/interfaces/IParkingProviderDataSourceFactory";
2
+ import { ParkingsLocationRepository } from "../../repositories/ParkingsLocationRepository";
3
+ import { ParkingsRepository } from "../../repositories/ParkingsRepository";
4
+ import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers/AbstractEmptyTask";
5
+ export declare class SaveMrParkitDataTask extends AbstractEmptyTask {
6
+ private dataSourceFactory;
7
+ private parkingRepository;
8
+ private parkingLocationRepository;
9
+ readonly queueName = "saveMrParkitData";
10
+ readonly queueTtl: number;
11
+ private measurementsRepository;
12
+ constructor(dataSourceFactory: IParkingProviderDataSourceFactory, parkingRepository: ParkingsRepository, parkingLocationRepository: ParkingsLocationRepository);
13
+ protected execute(): Promise<void>;
14
+ }
@@ -0,0 +1,115 @@
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 __rest = (this && this.__rest) || function (s, e) {
24
+ var t = {};
25
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
26
+ t[p] = s[p];
27
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
28
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
29
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
30
+ t[p[i]] = s[p[i]];
31
+ }
32
+ return t;
33
+ };
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ exports.SaveMrParkitDataTask = void 0;
36
+ const ParkingProviderEnum_1 = require("../../datasources/helpers/ParkingProviderEnum");
37
+ const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
38
+ const ParkingsLocationRepository_1 = require("../../repositories/ParkingsLocationRepository");
39
+ const ParkingsRepository_1 = require("../../repositories/ParkingsRepository");
40
+ const MrParkitGarageTransformation_1 = require("../../transformations/MrParkitGarageTransformation");
41
+ const _sch_1 = require("../../../schema-definitions");
42
+ const ParkingMeasurementsDtoSchema_1 = require("../../../schema-definitions/datasources/ParkingMeasurementsDtoSchema");
43
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
44
+ const AbstractEmptyTask_1 = require("@golemio/core/dist/integration-engine/workers/AbstractEmptyTask");
45
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
46
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
47
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
48
+ const constants_1 = require("../constants");
49
+ let SaveMrParkitDataTask = exports.SaveMrParkitDataTask = class SaveMrParkitDataTask extends AbstractEmptyTask_1.AbstractEmptyTask {
50
+ constructor(dataSourceFactory, parkingRepository, parkingLocationRepository) {
51
+ super(constants_1.NEW_PARKINGS_WORKER_NAME);
52
+ this.dataSourceFactory = dataSourceFactory;
53
+ this.parkingRepository = parkingRepository;
54
+ this.parkingLocationRepository = parkingLocationRepository;
55
+ this.queueName = "saveMrParkitData";
56
+ this.queueTtl = 15 * 60 * 1000; // 15min
57
+ this.measurementsRepository = new integration_engine_1.PostgresModel(_sch_1.Parkings.measurements.name + "Model", {
58
+ outputSequelizeAttributes: _sch_1.Parkings.measurements.outputSequelizeAttributes,
59
+ pgSchema: _sch_1.Parkings.pgSchema,
60
+ pgTableName: _sch_1.Parkings.measurements.pgTableName,
61
+ savingType: "insertOrUpdate",
62
+ }, new golemio_validator_1.JSONSchemaValidator(_sch_1.Parkings.measurements.name + "PgModelValidator", ParkingMeasurementsDtoSchema_1.ParkingMeasurementsDtoSchema));
63
+ }
64
+ execute() {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ const dataSource = this.dataSourceFactory.getDataSource(ParkingProviderEnum_1.ParkingProvider.MrParkit);
67
+ let garageResult = [];
68
+ try {
69
+ garageResult = yield dataSource.getAll();
70
+ }
71
+ catch (err) {
72
+ if (err instanceof golemio_errors_1.AbstractGolemioError) {
73
+ throw err;
74
+ }
75
+ throw new golemio_errors_1.DatasourceError("Error while fetching MR.PARKIT garages", this.constructor.name, err);
76
+ }
77
+ const transformationDate = new Date();
78
+ const garageTransformation = new MrParkitGarageTransformation_1.MrParkitGarageTransformation(transformationDate);
79
+ let transformedGarages = [];
80
+ let transformedLocations = [];
81
+ let transformedMeasurements = [];
82
+ try {
83
+ for (const garage of garageResult) {
84
+ const _a = garageTransformation.transformElement(garage), { parkingLocation, parkingMeasurement } = _a, parking = __rest(_a, ["parkingLocation", "parkingMeasurement"]);
85
+ transformedGarages.push(parking);
86
+ transformedLocations.push(parkingLocation);
87
+ transformedMeasurements.push(parkingMeasurement);
88
+ }
89
+ }
90
+ catch (err) {
91
+ throw new golemio_errors_1.TransformationError("Error while transforming MR.PARKIT garages", this.constructor.name, err);
92
+ }
93
+ if (!transformedGarages.length) {
94
+ return;
95
+ }
96
+ try {
97
+ yield this.measurementsRepository.bulkSave(transformedMeasurements);
98
+ yield this.parkingLocationRepository.bulkSave(transformedLocations);
99
+ yield this.parkingRepository.bulkSave(transformedGarages);
100
+ }
101
+ catch (err) {
102
+ throw new golemio_errors_1.GeneralError("Error while saving MR.PARKIT data", this.constructor.name, err);
103
+ }
104
+ });
105
+ }
106
+ };
107
+ exports.SaveMrParkitDataTask = SaveMrParkitDataTask = __decorate([
108
+ (0, tsyringe_1.injectable)(),
109
+ __param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingProviderDataSourceFactory)),
110
+ __param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository)),
111
+ __param(2, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsLocationRepository)),
112
+ __metadata("design:paramtypes", [Object, ParkingsRepository_1.ParkingsRepository,
113
+ ParkingsLocationRepository_1.ParkingsLocationRepository])
114
+ ], SaveMrParkitDataTask);
115
+ //# sourceMappingURL=SaveMrParkitDataTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SaveMrParkitDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/SaveMrParkitDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uFAA8E;AAE9E,yEAAoE;AACpE,8FAAyF;AACzF,8EAAyE;AACzE,qGAAgG;AAChG,sDAAgC;AAChC,uHAA6F;AAG7F,8EAAsE;AACtE,uGAAoG;AACpG,6EAKkD;AAClD,mFAAkF;AAClF,iEAAwE;AACxE,4CAAwD;AAGjD,IAAM,oBAAoB,kCAA1B,MAAM,oBAAqB,SAAQ,qCAAiB;IAMvD,YAEI,iBAA4D,EACX,iBAA6C,EACrC,yBAA6D;QAEtH,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJxB,sBAAiB,GAAjB,iBAAiB,CAAmC;QACH,sBAAiB,GAAjB,iBAAiB,CAAoB;QAC7B,8BAAyB,GAAzB,yBAAyB,CAA4B;QAT1G,cAAS,GAAG,kBAAkB,CAAC;QAC/B,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ;QAY/C,IAAI,CAAC,sBAAsB,GAAG,IAAI,kCAAa,CAC3C,eAAQ,CAAC,YAAY,CAAC,IAAI,GAAG,OAAO,EACpC;YACI,yBAAyB,EAAE,eAAQ,CAAC,YAAY,CAAC,yBAAyB;YAC1E,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,eAAQ,CAAC,YAAY,CAAC,WAAW;YAC9C,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,eAAQ,CAAC,YAAY,CAAC,IAAI,GAAG,kBAAkB,EAAE,2DAA4B,CAAC,CACzG,CAAC;IACN,CAAC;IAEe,OAAO;;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,qCAAe,CAAC,QAAQ,CAAC,CAAC;YAClF,IAAI,YAAY,GAAsB,EAAE,CAAC;YAEzC,IAAI;gBACA,YAAY,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;aAC5C;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;gBAED,MAAM,IAAI,gCAAe,CAAC,wCAAwC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACnG;YAED,MAAM,kBAAkB,GAAG,IAAI,IAAI,EAAE,CAAC;YACtC,MAAM,oBAAoB,GAAG,IAAI,2DAA4B,CAAC,kBAAkB,CAAC,CAAC;YAElF,IAAI,kBAAkB,GAAe,EAAE,CAAC;YACxC,IAAI,oBAAoB,GAAuB,EAAE,CAAC;YAClD,IAAI,uBAAuB,GAA2B,EAAE,CAAC;YAEzD,IAAI;gBACA,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;oBAC/B,MAAM,KAAsD,oBAAoB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAnG,EAAE,eAAe,EAAE,kBAAkB,OAA8D,EAAzD,OAAO,cAAjD,yCAAmD,CAAgD,CAAC;oBAE1G,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACjC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAC3C,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;iBACpD;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oCAAmB,CAAC,4CAA4C,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC3G;YAED,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;gBAC5B,OAAO;aACV;YAED,IAAI;gBACA,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;aAC7D;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,mCAAmC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC3F;QACL,CAAC;KAAA;CACJ,CAAA;+BAvEY,oBAAoB;IADhC,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,gCAAgC,CAAC,CAAA;IAE7D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,kBAAkB,CAAC,CAAA;IAC/C,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,0BAA0B,CAAC,CAAA;6CADoB,uCAAkB;QACF,uDAA0B;GAVjH,oBAAoB,CAuEhC"}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
2
+ import { IMrParkitGarage } from "./interfaces/IMrParkitGarage";
3
+ export declare const mrParkitJsonSchema: JSONSchemaType<IMrParkitGarage[]>;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mrParkitJsonSchema = void 0;
4
+ exports.mrParkitJsonSchema = {
5
+ type: "array",
6
+ items: {
7
+ type: "object",
8
+ properties: {
9
+ id: {
10
+ type: "string",
11
+ },
12
+ name: {
13
+ type: "string",
14
+ },
15
+ address: {
16
+ type: "string",
17
+ },
18
+ free: {
19
+ type: "boolean",
20
+ },
21
+ latitude: {
22
+ type: "number",
23
+ },
24
+ longitude: {
25
+ type: "number",
26
+ },
27
+ },
28
+ required: ["id", "name", "free", "address", "latitude", "longitude"],
29
+ },
30
+ };
31
+ //# sourceMappingURL=MrParkitJsonSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MrParkitJsonSchema.js","sourceRoot":"","sources":["../../../src/schema-definitions/datasources/MrParkitJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,kBAAkB,GAAsC;IACjE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE;gBACA,IAAI,EAAE,QAAQ;aACjB;YACD,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;aACjB;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;aACjB;YACD,IAAI,EAAE;gBACF,IAAI,EAAE,SAAS;aAClB;YACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC;KACvE;CACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ export interface IMrParkitGarage {
2
+ id: string;
3
+ name: string;
4
+ address: string;
5
+ free: boolean;
6
+ latitude: number;
7
+ longitude: number;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IMrParkitGarage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IMrParkitGarage.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/interfaces/IMrParkitGarage.ts"],"names":[],"mappings":""}
@@ -369,8 +369,7 @@ const outputLocationJsonSchema = {
369
369
  };
370
370
  const outputLocationSDMA = {
371
371
  id: {
372
- autoIncrement: true,
373
- type: sequelize_1.default.BIGINT,
372
+ type: sequelize_1.default.STRING,
374
373
  primaryKey: true,
375
374
  },
376
375
  source: sequelize_1.default.STRING,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":"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"}
@@ -182,6 +182,26 @@ Parkoviště, která nemají tarif (je null), mohou dostat tarif ze statického
182
182
 
183
183
  Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje IPT (výměna bodu za multipolygon). Původní bod je uložen do centroidu.
184
184
 
185
+ #### _MR.PARKIT Garages_
186
+
187
+ - zdroj dat
188
+ - url: config.datasources.parkings.mrParkit.datasource.url
189
+ - parametry dotazu:
190
+ - apiVersion: config.datasources.parkings.mrParkit.datasource.apiVersion
191
+ - apiKey: config.datasources.parkings.mrParkit.datasource.apiKey
192
+ - formát dat
193
+ - protokol: http
194
+ - datový typ: json
195
+ - validační schéma: [mrParkitJsonSchema](../src/schema-definitions/datasources/MrParkitJsonSchema.ts)
196
+ - příklad vstupnich dat: [InputDataFixture](../test/integration-engine/data/MrParkitInputDataFixture.ts)
197
+ - frekvence stahování
198
+ - cron definice:
199
+ - cron.dataplatform.parkings.saveMrParkitData
200
+ - rabin `0 */15 * * * *`
201
+ - prod `0 */15 * * * *`
202
+ - názvy rabbitmq front
203
+ - dataplatform.parkings.saveMrParkitData
204
+
185
205
  ## Zpracování dat / transformace
186
206
 
187
207
  Při transformaci dat lokací data obohacujeme o adresu parkoviště, která vychází z centroidu geometrie daného parkoviště a získává se z Photon API metodou `GeocodeApi.getAddressByLatLngFromPhoton` v modulu Core.
@@ -215,6 +235,20 @@ Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje
215
235
  - Další zpracování TariffTSK
216
236
  - před uložením jsou ceníky zkontrolovány podle pravidel: `ZeroMaxParkingTime`, `MaxChargeIterationsRule`, `MaxPriceRule`. Pokud jedno z pravidel není splněno tak se všechny položky se stejným cTariff přeskočí a tudíž neuloží do databáze. Záznam o tom, které položky neprošly kontrolou se uloží do tabulky `parkings_business_errors`
217
237
 
238
+ #### Task _SaveMrParkitData_
239
+
240
+ - vstupní rabbitmq fronta
241
+ - název: `dataplatform.parkings.saveMrParkitData`
242
+ - bez parametrů
243
+ - datové zdroje
244
+ - dataSourceMrParkit (http)
245
+ - transformace
246
+ - [MrParkitGarageTransformation](../src/integration-engine/workers/tasks/SaveMrParkitDataTask.ts) - transformace parkovišť, lokací i measurementů (pro každou garáž nálezí vždy jeden business objekt od každého)
247
+ - data modely
248
+ - parkingsModel -> (schéma parkings) `parkings`
249
+ - parkingsLocationModel -> (schéma parkings) `parkings_location`
250
+ - parkingsMeasurementsModel -> (schéma parkings) `parkings_measurements`
251
+
218
252
  ### Worker *ParkingsWorker*
219
253
 
220
254
  #### *saveParkingLotsPrague*
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/parkings",
3
- "version": "1.6.2-dev.1073199149",
3
+ "version": "1.6.2-dev.1078576357",
4
4
  "description": "Golemio Parkings Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",