@golemio/parkings 1.7.8-dev.1155950809 → 1.7.8-dev.1169344829

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 (63) hide show
  1. package/db/example/04_tsk_parking_v2.sql +2 -2
  2. package/db/migrations/postgresql/20240205092121-osm-attributes.js +53 -0
  3. package/db/migrations/postgresql/sqls/20240205092121-osm-attributes-down.sql +6 -0
  4. package/db/migrations/postgresql/sqls/20240205092121-osm-attributes-up.sql +12 -0
  5. package/dist/helpers/SourceEnum.d.ts +10 -0
  6. package/dist/helpers/SourceEnum.js +15 -0
  7. package/dist/helpers/SourceEnum.js.map +1 -0
  8. package/dist/integration-engine/ParkingInterface.d.ts +6 -3
  9. package/dist/integration-engine/datasources/osm/OsmDataSource.d.ts +12 -0
  10. package/dist/integration-engine/datasources/osm/OsmDataSource.js +64 -0
  11. package/dist/integration-engine/datasources/osm/OsmDataSource.js.map +1 -0
  12. package/dist/integration-engine/datasources/osm/interfaces/IGenericFeature.d.ts +4 -0
  13. package/dist/integration-engine/datasources/osm/interfaces/IGenericFeature.js +3 -0
  14. package/dist/integration-engine/datasources/osm/interfaces/IGenericFeature.js.map +1 -0
  15. package/dist/integration-engine/ioc/Di.js +11 -5
  16. package/dist/integration-engine/ioc/Di.js.map +1 -1
  17. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +3 -0
  18. package/dist/integration-engine/ioc/ModuleContainerToken.js +5 -0
  19. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  20. package/dist/integration-engine/repositories/ParkingsSecondaryRepository.d.ts +6 -0
  21. package/dist/integration-engine/repositories/ParkingsSecondaryRepository.js +41 -0
  22. package/dist/integration-engine/repositories/ParkingsSecondaryRepository.js.map +1 -0
  23. package/dist/integration-engine/transformations/osm/OsmParkingSpaceTransformation.d.ts +8 -0
  24. package/dist/integration-engine/transformations/osm/OsmParkingSpaceTransformation.js +28 -0
  25. package/dist/integration-engine/transformations/osm/OsmParkingSpaceTransformation.js.map +1 -0
  26. package/dist/integration-engine/transformations/osm/OsmParkingTransformation.d.ts +10 -0
  27. package/dist/integration-engine/transformations/osm/OsmParkingTransformation.js +41 -0
  28. package/dist/integration-engine/transformations/osm/OsmParkingTransformation.js.map +1 -0
  29. package/dist/integration-engine/workers/NewParkingsWorker.d.ts +3 -2
  30. package/dist/integration-engine/workers/NewParkingsWorker.js +1 -0
  31. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  32. package/dist/integration-engine/workers/tasks/SaveOsmDataTask.d.ts +17 -0
  33. package/dist/integration-engine/workers/tasks/SaveOsmDataTask.js +78 -0
  34. package/dist/integration-engine/workers/tasks/SaveOsmDataTask.js.map +1 -0
  35. package/dist/output-gateway/data-access/ParkingRepository.js +9 -2
  36. package/dist/output-gateway/data-access/ParkingRepository.js.map +1 -1
  37. package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js +11 -5
  38. package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js.map +1 -1
  39. package/dist/schema-definitions/datasources/ParkingsDtoSchema.js +26 -5
  40. package/dist/schema-definitions/datasources/ParkingsDtoSchema.js.map +1 -1
  41. package/dist/schema-definitions/datasources/interfaces/IParkingsDto.d.ts +3 -0
  42. package/dist/schema-definitions/datasources/osm/FeatureCollectionSchemaGenerator.d.ts +60 -0
  43. package/dist/schema-definitions/datasources/osm/FeatureCollectionSchemaGenerator.js +44 -0
  44. package/dist/schema-definitions/datasources/osm/FeatureCollectionSchemaGenerator.js.map +1 -0
  45. package/dist/schema-definitions/datasources/osm/OsmParkingSchema.d.ts +3 -0
  46. package/dist/schema-definitions/datasources/osm/OsmParkingSchema.js +34 -0
  47. package/dist/schema-definitions/datasources/osm/OsmParkingSchema.js.map +1 -0
  48. package/dist/schema-definitions/datasources/osm/OsmParkingSpacesSchema.d.ts +3 -0
  49. package/dist/schema-definitions/datasources/osm/OsmParkingSpacesSchema.js +36 -0
  50. package/dist/schema-definitions/datasources/osm/OsmParkingSpacesSchema.js.map +1 -0
  51. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingProperties.d.ts +16 -0
  52. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingProperties.js +3 -0
  53. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingProperties.js.map +1 -0
  54. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties.d.ts +7 -0
  55. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties.js +3 -0
  56. package/dist/schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties.js.map +1 -0
  57. package/dist/schema-definitions/index.js +2 -0
  58. package/dist/schema-definitions/index.js.map +1 -1
  59. package/dist/schema-definitions/models/interfaces/IParking.d.ts +9 -2
  60. package/docs/assets/parkings_erd.png +0 -0
  61. package/docs/implementation-documentation.md +22 -3
  62. package/docs/openapi-output.yaml +23 -0
  63. package/package.json +1 -1
@@ -7,8 +7,8 @@ INSERT INTO parking_sources ("source",open_data,api_v3_allowed, legacy_api_allow
7
7
  INSERT INTO "parking_machines" (id,"source",code,"type","location",valid_from,tariff_id) VALUES
8
8
  ('4521afac-66db-4680-abc5-0006837d977a','tsk_v2','10000088','info_box','SRID=4326;POINT (14.509560372775391 50.08336146182989)','2023-03-27 16:22:55.370','bdd68c37-2462-4825-befa-1eeab518dfbd');
9
9
 
10
- INSERT INTO parkings (id,"source",source_id,data_provider,"name",category,date_modified,address,"location",area_served,web_app_payment_url,total_spot_number,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by,tariff_id,valid_from,valid_to,parking_type,zone_type,centroid,android_app_payment_url,ios_app_payment_url) VALUES
11
- ('tsk2-P1-0586','tsk_v2','c66bb668-eab6-49da-bc84-002263e1dce0','www.tsk-praha.cz','P1-0586','blue','2023-10-13 06:47:17.196','{"address_country":"Česko","address_formatted":"Na Poříčí, 11000 Praha Nové Město, Česko","address_locality":"Praha","address_region":"Nové Město","postal_code":"11000","street_address":"Na Poříčí"}','SRID=4326;MULTIPOLYGON (((14.435146686704691 50.09031935764648, 14.435158778421304 50.090037674196914, 14.436496591004804 50.090271939573704, 14.436891101497103 50.09057582442722, 14.436584596966501 50.090700574765144, 14.436361060659229 50.09071081877421, 14.435146686704691 50.09031935764648)), ((14.432518050883488 50.08963880488788, 14.432849963583294 50.08974602637074, 14.433520760939317 50.08983654654372, 14.434026273297146 50.08989232808531, 14.433980344589223 50.0900468365997, 14.433568068617168 50.09014494638063, 14.4326828562706 50.08990536564012, 14.432518050883488 50.08963880488788)), ((14.43054520416443 50.089075595822536, 14.431267236152568 50.08895539557057, 14.431701029418882 50.089166218961886, 14.432130432442564 50.089421387255, 14.432518050883488 50.08963880488788, 14.43220935744498 50.089735597324186, 14.432069970660601 50.08973394311176, 14.431747143504648 50.08969881144357, 14.4308507378023 50.08944361428869, 14.43054520416443 50.089075595822536)))',NULL,NULL,42,NULL,'2023-10-04 22:05:34.589',NULL,NULL,'2023-10-13 06:47:28.150',NULL,'0639c53f-c555-49ac-b5e0-bb3d50acf588','2023-06-12 02:03:43.000',NULL,'on_street','zone','SRID=4326;POINT (14.433520760939317 50.08983654654372)',NULL,NULL);
10
+ INSERT INTO parkings (id,"source",source_id,data_provider,"name",category,date_modified,address,"location",area_served,web_app_payment_url,total_spot_number,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by,tariff_id,valid_from,valid_to,parking_type,zone_type,centroid,android_app_payment_url,ios_app_payment_url,contact) VALUES
11
+ ('tsk2-P1-0586','tsk_v2','c66bb668-eab6-49da-bc84-002263e1dce0','www.tsk-praha.cz','P1-0586','blue','2023-10-13 06:47:17.196','{"address_country":"Česko","address_formatted":"Na Poříčí, 11000 Praha Nové Město, Česko","address_locality":"Praha","address_region":"Nové Město","postal_code":"11000","street_address":"Na Poříčí"}','SRID=4326;MULTIPOLYGON (((14.435146686704691 50.09031935764648, 14.435158778421304 50.090037674196914, 14.436496591004804 50.090271939573704, 14.436891101497103 50.09057582442722, 14.436584596966501 50.090700574765144, 14.436361060659229 50.09071081877421, 14.435146686704691 50.09031935764648)), ((14.432518050883488 50.08963880488788, 14.432849963583294 50.08974602637074, 14.433520760939317 50.08983654654372, 14.434026273297146 50.08989232808531, 14.433980344589223 50.0900468365997, 14.433568068617168 50.09014494638063, 14.4326828562706 50.08990536564012, 14.432518050883488 50.08963880488788)), ((14.43054520416443 50.089075595822536, 14.431267236152568 50.08895539557057, 14.431701029418882 50.089166218961886, 14.432130432442564 50.089421387255, 14.432518050883488 50.08963880488788, 14.43220935744498 50.089735597324186, 14.432069970660601 50.08973394311176, 14.431747143504648 50.08969881144357, 14.4308507378023 50.08944361428869, 14.43054520416443 50.089075595822536)))',NULL,NULL,42,NULL,'2023-10-04 22:05:34.589',NULL,NULL,'2023-10-13 06:47:28.150',NULL,'0639c53f-c555-49ac-b5e0-bb3d50acf588','2023-06-12 02:03:43.000',NULL,'on_street','zone','SRID=4326;POINT (14.433520760939317 50.08983654654372)',NULL,NULL,'{"email":"test@golemio.cz","phone":null,"website":null}');
12
12
 
13
13
  INSERT INTO parkings_location (id,"source",source_id,data_provider,"location",centroid,address,total_spot_number,create_batch_id,created_at,created_by,update_batch_id,updated_at,updated_by,special_access) VALUES
14
14
  ('tsk2-P1-0586','tsk_v2','c66bb668-eab6-49da-bc84-002263e1dce0','www.tsk-praha.cz','SRID=4326;POLYGON ((14.430752009766316 50.08911821177594, 14.430769229998441 50.08910172868469, 14.430963092041813 50.089173302203854, 14.431121142940848 50.089229729083705, 14.431288241809778 50.089282708701234, 14.431380867359115 50.089311873860034, 14.4314096437366 50.08932032789265, 14.431440597404489 50.089328628720935, 14.431480187766274 50.0893393542484, 14.431531156892785 50.08935234952796, 14.432034928912303 50.08948101755296, 14.432024626323633 50.08950011783093, 14.431408883289269 50.08933960160983, 14.431288556785107 50.08930381070842, 14.43119927473038 50.089275437868416, 14.430947745128789 50.08918874462976, 14.430752009766316 50.08911821177594))','SRID=4326;POINT (14.431380867359115 50.089311873860034)','{"address_country":"Česko","address_formatted":"Na Poříčí, 11000 Praha Nové Město, Česko","address_locality":"Praha","address_region":"Nové Město","postal_code":"11000","street_address":"Na Poříčí"}',16,NULL,'2023-10-04 09:38:30.821',NULL,NULL,'2023-10-04 09:38:30.821',NULL,'disabled');
@@ -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', '20240205092121-osm-attributes-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', '20240205092121-osm-attributes-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,6 @@
1
+ ALTER TABLE parkings_secondary NO INHERIT parkings;
2
+
3
+ DROP TABLE parkings_secondary;
4
+
5
+ ALTER TABLE parkings DROP COLUMN covered;
6
+ ALTER TABLE parkings DROP COLUMN contact;
@@ -0,0 +1,12 @@
1
+ ALTER TABLE parkings ADD covered boolean NULL;
2
+ ALTER TABLE parkings ADD contact json NULL;
3
+
4
+ create table "parkings_secondary" (like parkings INCLUDING CONSTRAINTS including indexes);
5
+
6
+ ALTER TABLE "parkings_secondary" INHERIT parkings;
7
+
8
+ COMMENT ON TABLE "parkings_secondary" IS 'List of parking places from secondary sources, that can contain same parking places as in main parking table.';
9
+
10
+ INSERT INTO "parking_sources" ("source", open_data, api_v3_allowed, payment_url, contact, legacy_api_allowed)
11
+ VALUES ('osm', false, true, NULL, NULL, false);
12
+
@@ -0,0 +1,10 @@
1
+ export declare enum SourceEnum {
2
+ TSK = "tsk",
3
+ TSK_V2 = "tsk_v2",
4
+ IPR = "ipr",
5
+ Smart4City = "smart4city",
6
+ Korid = "korid",
7
+ Mr_Parkit = "mr_parkit",
8
+ Manual = "manual",
9
+ OSM = "osm"
10
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SourceEnum = void 0;
4
+ var SourceEnum;
5
+ (function (SourceEnum) {
6
+ SourceEnum["TSK"] = "tsk";
7
+ SourceEnum["TSK_V2"] = "tsk_v2";
8
+ SourceEnum["IPR"] = "ipr";
9
+ SourceEnum["Smart4City"] = "smart4city";
10
+ SourceEnum["Korid"] = "korid";
11
+ SourceEnum["Mr_Parkit"] = "mr_parkit";
12
+ SourceEnum["Manual"] = "manual";
13
+ SourceEnum["OSM"] = "osm";
14
+ })(SourceEnum || (exports.SourceEnum = SourceEnum = {}));
15
+ //# sourceMappingURL=SourceEnum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SourceEnum.js","sourceRoot":"","sources":["../../src/helpers/SourceEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,UASX;AATD,WAAY,UAAU;IAClB,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,uCAAyB,CAAA;IACzB,6BAAe,CAAA;IACf,qCAAuB,CAAA;IACvB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;AACf,CAAC,EATW,UAAU,0BAAV,UAAU,QASrB"}
@@ -1,6 +1,7 @@
1
- import { TGeoCoordinates, IGeoCoordinatesPoint } from "@golemio/core/dist/output-gateway/Geo";
2
- import { IPostalAddress } from "@golemio/core/dist/integration-engine";
1
+ import { IContact } from "../schema-definitions/models/interfaces/IParking";
3
2
  import { IParkingTariffPeriod } from "../schema-definitions/models/interfaces/tariff/IParkingTariffPeriod";
3
+ import { IPostalAddress } from "@golemio/core/dist/integration-engine";
4
+ import { IGeoCoordinatesPoint, TGeoCoordinates } from "@golemio/core/dist/output-gateway/Geo";
4
5
  export interface IParking {
5
6
  id: string;
6
7
  source: string;
@@ -9,7 +10,7 @@ export interface IParking {
9
10
  date_modified: string;
10
11
  location: TGeoCoordinates;
11
12
  address?: IPostalAddress;
12
- name: string;
13
+ name: string | null;
13
14
  web_app_payment_url?: string;
14
15
  android_app_payment_url?: string;
15
16
  ios_app_payment_url?: string;
@@ -23,6 +24,8 @@ export interface IParking {
23
24
  centroid?: IGeoCoordinatesPoint;
24
25
  security?: boolean | null;
25
26
  max_vehicle_dimensions?: number[] | null;
27
+ covered?: boolean | null;
28
+ contact?: IContact | null;
26
29
  }
27
30
  export interface IParkingLocation {
28
31
  id: string;
@@ -0,0 +1,12 @@
1
+ import { IOsmParkingProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingProperties";
2
+ import { IOsmParkingSpacesProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties";
3
+ import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
4
+ import { IGenericFeature } from "./interfaces/IGenericFeature";
5
+ export declare class OsmDataSource {
6
+ private config;
7
+ private parkingsUrl;
8
+ private parkingsLocation;
9
+ constructor(config: ISimpleConfig);
10
+ getParkingsData(): Promise<Array<IGenericFeature<IOsmParkingProperties>>>;
11
+ getParkingsLocationData(): Promise<Array<IGenericFeature<IOsmParkingSpacesProperties>>>;
12
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.OsmDataSource = void 0;
25
+ const FeatureCollectionSchemaGenerator_1 = require("../../../schema-definitions/datasources/osm/FeatureCollectionSchemaGenerator");
26
+ const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
27
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
28
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
29
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
30
+ let OsmDataSource = exports.OsmDataSource = class OsmDataSource {
31
+ constructor(config) {
32
+ this.config = config;
33
+ this.parkingsUrl = this.config.getValue("old.datasources.parking.osm.datasource.parkingUrl");
34
+ this.parkingsLocation = this.config.getValue("old.datasources.parking.osm.datasource.parkingLocationUrl");
35
+ }
36
+ getParkingsData() {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ return new integration_engine_1.DataSource("ParkingOsmDataSource", new integration_engine_1.HTTPProtocolStrategy({
39
+ method: "GET",
40
+ url: this.parkingsUrl,
41
+ headers: {
42
+ "Content-Type": "application/json",
43
+ },
44
+ }), new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "features" }), new golemio_validator_1.JSONSchemaValidator("ParkingOsmDataSourceValidator", FeatureCollectionSchemaGenerator_1.OsmSchemaGenerator.getParkingSchema().properties.features)).getAll();
45
+ });
46
+ }
47
+ getParkingsLocationData() {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ return new integration_engine_1.DataSource("ParkingSpacesOsmDataSource", new integration_engine_1.HTTPProtocolStrategy({
50
+ method: "GET",
51
+ url: this.parkingsLocation,
52
+ headers: {
53
+ "Content-Type": "application/json",
54
+ },
55
+ }), new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "features" }), new golemio_validator_1.JSONSchemaValidator("ParkingOsmDataSourceValidator", FeatureCollectionSchemaGenerator_1.OsmSchemaGenerator.getParkingSpacesSchema().properties.features)).getAll();
56
+ });
57
+ }
58
+ };
59
+ exports.OsmDataSource = OsmDataSource = __decorate([
60
+ (0, tsyringe_1.injectable)(),
61
+ __param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
62
+ __metadata("design:paramtypes", [Object])
63
+ ], OsmDataSource);
64
+ //# sourceMappingURL=OsmDataSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OsmDataSource.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/osm/OsmDataSource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,mIAA2F;AAI3F,wEAAqE;AACrE,8EAA+G;AAC/G,mFAAkF;AAClF,iEAAwE;AAIjE,IAAM,aAAa,2BAAnB,MAAM,aAAa;IAItB,YAAoD,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;QACrE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,mDAAmD,CAAC,CAAC;QACrG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,2DAA2D,CAAC,CAAC;IACtH,CAAC;IAEY,eAAe;;YACxB,OAAO,IAAI,+BAAU,CACjB,sBAAsB,EACtB,IAAI,yCAAoB,CAAC;gBACrB,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;aACJ,CAAC,EACF,IAAI,yCAAoB,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EACrD,IAAI,uCAAmB,CAAC,+BAA+B,EAAE,qDAAkB,CAAC,gBAAgB,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CACtH,CAAC,MAAM,EAAE,CAAC;QACf,CAAC;KAAA;IAEY,uBAAuB;;YAChC,OAAO,IAAI,+BAAU,CACjB,4BAA4B,EAC5B,IAAI,yCAAoB,CAAC;gBACrB,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,IAAI,CAAC,gBAAgB;gBAC1B,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;aACJ,CAAC,EACF,IAAI,yCAAoB,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EACrD,IAAI,uCAAmB,CACnB,+BAA+B,EAC/B,qDAAkB,CAAC,sBAAsB,EAAE,CAAC,UAAU,CAAC,QAAQ,CAClE,CACJ,CAAC,MAAM,EAAE,CAAC;QACf,CAAC;KAAA;CACJ,CAAA;wBAzCY,aAAa;IADzB,IAAA,qBAAU,GAAE;IAKI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GAJlC,aAAa,CAyCzB"}
@@ -0,0 +1,4 @@
1
+ import { Feature } from "@golemio/core/dist/shared/geojson";
2
+ export interface IGenericFeature<T extends object> extends Feature {
3
+ properties: T;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IGenericFeature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IGenericFeature.js","sourceRoot":"","sources":["../../../../../src/integration-engine/datasources/osm/interfaces/IGenericFeature.ts"],"names":[],"mappings":""}
@@ -3,9 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ParkingsContainer = void 0;
4
4
  const TskTariffChecker_1 = require("../businessRules/TskTariffChecker");
5
5
  const ParkingProviderDataSourceFactory_1 = require("../datasources/ParkingProviderDataSourceFactory");
6
- const SmartCityListDatasourceCache_1 = require("../datasources/smart4city/SmartCityListDatasourceCache");
7
6
  const TskParkingDataSourceFactory_1 = require("../datasources/TskParkingDataSourceFactory");
8
7
  const MrParkitDataSourceProvider_1 = require("../datasources/mr-parkit/MrParkitDataSourceProvider");
8
+ const OsmDataSource_1 = require("../datasources/osm/OsmDataSource");
9
+ const Smart4CityListDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityListDataSourceProvider");
10
+ const Smart4CityLocationDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityLocationDataSourceProvider");
11
+ const SmartCityListDatasourceCache_1 = require("../datasources/smart4city/SmartCityListDatasourceCache");
9
12
  const ParkingMachinesRepository_1 = require("../repositories/ParkingMachinesRepository");
10
13
  const ParkingTariffsRepository_1 = require("../repositories/ParkingTariffsRepository");
11
14
  const ParkingsBusinessErrorsRepository_1 = require("../repositories/ParkingsBusinessErrorsRepository");
@@ -13,16 +16,16 @@ const ParkingsLocationRepository_1 = require("../repositories/ParkingsLocationRe
13
16
  const ParkingsRepository_1 = require("../repositories/ParkingsRepository");
14
17
  const ParkingsRedisModel_1 = require("../repositories/redis/ParkingsRedisModel");
15
18
  const TskParkingMachinesTransformation_1 = require("../transformations/TskParkingMachinesTransformation");
19
+ const GenerateSmart4CityTaskListTask_1 = require("../workers/tasks/GenerateSmart4CityTaskListTask");
16
20
  const SaveMrParkitDataTask_1 = require("../workers/tasks/SaveMrParkitDataTask");
21
+ const SaveOsmDataTask_1 = require("../workers/tasks/SaveOsmDataTask");
22
+ const UpdateSmart4CityLocationsTask_1 = require("../workers/tasks/UpdateSmart4CityLocationsTask");
17
23
  const UpdateSmart4CityMeasurementsTask_1 = require("../workers/tasks/UpdateSmart4CityMeasurementsTask");
18
24
  const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
19
25
  const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
20
26
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
21
27
  const ModuleContainerToken_1 = require("./ModuleContainerToken");
22
- const GenerateSmart4CityTaskListTask_1 = require("../workers/tasks/GenerateSmart4CityTaskListTask");
23
- const UpdateSmart4CityLocationsTask_1 = require("../workers/tasks/UpdateSmart4CityLocationsTask");
24
- const Smart4CityListDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityListDataSourceProvider");
25
- const Smart4CityLocationDataSourceProvider_1 = require("../datasources/smart4city/Smart4CityLocationDataSourceProvider");
28
+ const ParkingsSecondaryRepository_1 = require("../repositories/ParkingsSecondaryRepository");
26
29
  //#region Initialization
27
30
  const parkingsContainer = Di_1.IntegrationEngineContainer.createChildContainer();
28
31
  exports.ParkingsContainer = parkingsContainer;
@@ -50,6 +53,7 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.Smart4Cit
50
53
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.Smart4CityLocationDataSourceProvider, Smart4CityLocationDataSourceProvider_1.Smart4CityLocationDataSourceProvider);
51
54
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.SmartCityListDatasourceCache, SmartCityListDatasourceCache_1.SmartCityListDatasourceCache);
52
55
  parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkingProviderDataSourceFactory, ParkingProviderDataSourceFactory_1.ParkingProviderDataSourceFactory);
56
+ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.OsmDataSource, OsmDataSource_1.OsmDataSource);
53
57
  //#endregion
54
58
  //#region Transformation
55
59
  parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkingMachinesTransformation, TskParkingMachinesTransformation_1.TskParkingMachinesTransformation);
@@ -57,6 +61,7 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.TskParkin
57
61
  //#region Repositories
58
62
  parkingsContainer
59
63
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository, ParkingsRepository_1.ParkingsRepository)
64
+ .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsSecondaryRepository, ParkingsSecondaryRepository_1.ParkingsSecondaryRepository)
60
65
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsLocationRepository, ParkingsLocationRepository_1.ParkingsLocationRepository)
61
66
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingTariffsRepository, ParkingTariffsRepository_1.ParkingTariffsRepository)
62
67
  .register(ModuleContainerToken_1.ModuleContainerToken.ParkingsBusinessErrorsRepository, ParkingsBusinessErrorsRepository_1.ParkingsBusinessErrorsRepository)
@@ -71,4 +76,5 @@ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.
71
76
  parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateSmart4CityTaskListTask, GenerateSmart4CityTaskListTask_1.GenerateSmart4CityTaskListTask);
72
77
  parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityLocationsTask, UpdateSmart4CityLocationsTask_1.UpdateSmart4CityLocationsTask);
73
78
  parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityMeasurementsTask, UpdateSmart4CityMeasurementsTask_1.UpdateSmart4CityMeasurementsTask);
79
+ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveOsmDataTask, SaveOsmDataTask_1.SaveOsmDataTask);
74
80
  //# sourceMappingURL=Di.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ declare const ModuleContainerToken: {
2
2
  TskTariffChecker: symbol;
3
3
  RedisModel: symbol;
4
4
  ParkingsRepository: symbol;
5
+ ParkingsSecondaryRepository: symbol;
5
6
  ParkingsLocationRepository: symbol;
6
7
  ParkingTariffsRepository: symbol;
7
8
  ParkingsBusinessErrorsRepository: symbol;
@@ -22,5 +23,7 @@ declare const ModuleContainerToken: {
22
23
  GenerateSmart4CityTaskListTask: symbol;
23
24
  UpdateSmart4CityLocationsTask: symbol;
24
25
  UpdateSmart4CityMeasurementsTask: symbol;
26
+ OsmDataSource: symbol;
27
+ SaveOsmDataTask: symbol;
25
28
  };
26
29
  export { ModuleContainerToken };
@@ -5,6 +5,7 @@ const ModuleContainerToken = {
5
5
  TskTariffChecker: Symbol(),
6
6
  RedisModel: Symbol(),
7
7
  ParkingsRepository: Symbol(),
8
+ ParkingsSecondaryRepository: Symbol(),
8
9
  ParkingsLocationRepository: Symbol(),
9
10
  ParkingTariffsRepository: Symbol(),
10
11
  ParkingsBusinessErrorsRepository: Symbol(),
@@ -29,6 +30,10 @@ const ModuleContainerToken = {
29
30
  UpdateSmart4CityLocationsTask: Symbol(),
30
31
  UpdateSmart4CityMeasurementsTask: Symbol(),
31
32
  //#endregion
33
+ //#region OSM
34
+ OsmDataSource: Symbol(),
35
+ SaveOsmDataTask: Symbol(),
36
+ //#endregion
32
37
  };
33
38
  exports.ModuleContainerToken = ModuleContainerToken;
34
39
  //# 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;IAC5E,gCAAgC,EAAE,MAAM,EAAE;IAE1C,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,YAAY;IAEZ,oBAAoB;IACpB,gCAAgC,EAAE,MAAM,EAAE;IAC1C,oCAAoC,EAAE,MAAM,EAAE;IAC9C,4BAA4B,EAAE,MAAM,EAAE;IACtC,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,YAAY;CACf,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,2BAA2B,EAAE,MAAM,EAAE;IACrC,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;IAEZ,oBAAoB;IACpB,gCAAgC,EAAE,MAAM,EAAE;IAC1C,oCAAoC,EAAE,MAAM,EAAE;IAC9C,4BAA4B,EAAE,MAAM,EAAE;IACtC,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,YAAY;IAEZ,aAAa;IACb,aAAa,EAAE,MAAM,EAAE;IACvB,eAAe,EAAE,MAAM,EAAE;IACzB,YAAY;CACf,CAAC;AACO,oDAAoB"}
@@ -0,0 +1,6 @@
1
+ import { IParking } from "../ParkingInterface";
2
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
3
+ export declare class ParkingsSecondaryRepository extends PostgresModel implements IModel {
4
+ constructor();
5
+ GetOne: (id: string) => Promise<IParking | null>;
6
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ParkingsSecondaryRepository = void 0;
13
+ const _sch_1 = require("../../schema-definitions");
14
+ const ParkingsDtoSchema_1 = require("../../schema-definitions/datasources/ParkingsDtoSchema");
15
+ const models_1 = require("@golemio/core/dist/integration-engine/models");
16
+ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
17
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
18
+ class ParkingsSecondaryRepository extends models_1.PostgresModel {
19
+ constructor() {
20
+ super(_sch_1.Parkings.name + "Model", {
21
+ outputSequelizeAttributes: _sch_1.Parkings.parkings.outputSequelizeAttributes,
22
+ pgSchema: _sch_1.Parkings.pgSchema,
23
+ pgTableName: "parkings_secondary",
24
+ savingType: "insertOrUpdate",
25
+ }, new golemio_validator_1.JSONSchemaValidator(_sch_1.Parkings.name + "SecondaryPgModelValidator", ParkingsDtoSchema_1.ParkingsDtoSchema));
26
+ this.GetOne = (id) => __awaiter(this, void 0, void 0, function* () {
27
+ try {
28
+ return yield this.sequelizeModel.findOne({
29
+ where: { id },
30
+ raw: true,
31
+ nest: true,
32
+ });
33
+ }
34
+ catch (err) {
35
+ throw new golemio_errors_1.GeneralError("Database error", "ParkingsModel", err, 500);
36
+ }
37
+ });
38
+ }
39
+ }
40
+ exports.ParkingsSecondaryRepository = ParkingsSecondaryRepository;
41
+ //# sourceMappingURL=ParkingsSecondaryRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParkingsSecondaryRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingsSecondaryRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,mDAAgC;AAChC,8FAAuE;AACvE,yEAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAElF,MAAa,2BAA4B,SAAQ,sBAAa;IAC1D;QACI,KAAK,CACD,eAAQ,CAAC,IAAI,GAAG,OAAO,EACvB;YACI,yBAAyB,EAAE,eAAQ,CAAC,QAAQ,CAAC,yBAAyB;YACtE,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,oBAAoB;YACjC,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,eAAQ,CAAC,IAAI,GAAG,2BAA2B,EAAE,qCAAiB,CAAC,CAC1F,CAAC;QAGC,WAAM,GAAG,CAAO,EAAU,EAA4B,EAAE;YAC3D,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,KAAK,EAAE,EAAE,EAAE,EAAE;oBACb,GAAG,EAAE,IAAI;oBACT,IAAI,EAAE,IAAI;iBACb,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,gBAAgB,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACvE;QACL,CAAC,CAAA,CAAC;IAZF,CAAC;CAaJ;AAzBD,kEAyBC"}
@@ -0,0 +1,8 @@
1
+ import { IGenericFeature } from "../../datasources/osm/interfaces/IGenericFeature";
2
+ import { IOsmParkingSpacesProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingSpacesProperties";
3
+ import { IParkingLocation } from "../../../schema-definitions/models/interfaces/IParkingLocation";
4
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
+ export declare class OsmParkingSpaceTransformation extends AbstractTransformation<IGenericFeature<IOsmParkingSpacesProperties>, IParkingLocation> {
6
+ name: string;
7
+ protected transformInternal: (element: IGenericFeature<IOsmParkingSpacesProperties>) => IParkingLocation;
8
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OsmParkingSpaceTransformation = void 0;
4
+ const SourceEnum_1 = require("../../../helpers/SourceEnum");
5
+ const GeodataHelper_1 = require("../../helpers/GeodataHelper");
6
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
7
+ class OsmParkingSpaceTransformation extends AbstractTransformation_1.AbstractTransformation {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.name = "OsmParkingSpaceTransformation";
11
+ this.transformInternal = (element) => {
12
+ var _a, _b;
13
+ const transformed = {
14
+ id: `${SourceEnum_1.SourceEnum.OSM}-${(_a = element.properties.osm_id) !== null && _a !== void 0 ? _a : element.properties.parking_id}`,
15
+ source: SourceEnum_1.SourceEnum.OSM,
16
+ source_id: element.properties.parking_id,
17
+ data_provider: "www.openstreetmap.org",
18
+ location: element.geometry,
19
+ centroid: (0, GeodataHelper_1.getPointOnFeature)(element.geometry),
20
+ total_spot_number: element.properties.capacity,
21
+ special_access: (_b = element.properties.access) !== null && _b !== void 0 ? _b : null,
22
+ };
23
+ return transformed;
24
+ };
25
+ }
26
+ }
27
+ exports.OsmParkingSpaceTransformation = OsmParkingSpaceTransformation;
28
+ //# sourceMappingURL=OsmParkingSpaceTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OsmParkingSpaceTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/osm/OsmParkingSpaceTransformation.ts"],"names":[],"mappings":";;;AAAA,4DAAiD;AAEjD,+DAA8D;AAG9D,6GAA0G;AAG1G,MAAa,6BAA8B,SAAQ,+CAGlD;IAHD;;QAIW,SAAI,GAAW,+BAA+B,CAAC;QAE5C,sBAAiB,GAAG,CAAC,OAAqD,EAAE,EAAE;;YACpF,MAAM,WAAW,GAAqB;gBAClC,EAAE,EAAE,GAAG,uBAAU,CAAC,GAAG,IAAI,MAAA,OAAO,CAAC,UAAU,CAAC,MAAM,mCAAI,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE;gBACrF,MAAM,EAAE,uBAAU,CAAC,GAAG;gBACtB,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU;gBACxC,aAAa,EAAE,uBAAuB;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAA2B;gBAC7C,QAAQ,EAAE,IAAA,iCAAiB,EAAC,OAAO,CAAC,QAA2B,CAAC;gBAChE,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ;gBAC9C,cAAc,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,MAAM,mCAAI,IAAI;aACpD,CAAC;YAEF,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;IACN,CAAC;CAAA;AApBD,sEAoBC"}
@@ -0,0 +1,10 @@
1
+ import { IParking } from "../../ParkingInterface";
2
+ import { IGenericFeature } from "../../datasources/osm/interfaces/IGenericFeature";
3
+ import { IOsmParkingProperties } from "../../../schema-definitions/datasources/osm/interfaces/IOsmParkingProperties";
4
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
+ export declare class OsmParkingTransformation extends AbstractTransformation<IGenericFeature<IOsmParkingProperties>, IParking> {
6
+ private transformationDate;
7
+ name: string;
8
+ constructor(transformationDate: Date);
9
+ protected transformInternal: (element: IGenericFeature<IOsmParkingProperties>) => IParking;
10
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OsmParkingTransformation = void 0;
4
+ const SourceEnum_1 = require("../../../helpers/SourceEnum");
5
+ const GeodataHelper_1 = require("../../helpers/GeodataHelper");
6
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
7
+ class OsmParkingTransformation extends AbstractTransformation_1.AbstractTransformation {
8
+ constructor(transformationDate) {
9
+ super();
10
+ this.transformationDate = transformationDate;
11
+ this.name = "OsmParkingTransformation";
12
+ this.transformInternal = (element) => {
13
+ var _a, _b, _c;
14
+ const transformed = {
15
+ id: `${SourceEnum_1.SourceEnum.OSM}-${element.properties.osm_id}`,
16
+ source: SourceEnum_1.SourceEnum.OSM,
17
+ source_id: element.properties.osm_id,
18
+ data_provider: "www.openstreetmap.org",
19
+ location: element.geometry,
20
+ name: element.properties.name,
21
+ parking_type: element.properties.parking_structure ? element.properties.parking_structure : "other",
22
+ centroid: (0, GeodataHelper_1.getPointOnFeature)(element.geometry),
23
+ covered: element.properties.covered ? element.properties.covered === "yes" : null,
24
+ security: element.properties.supervised ? element.properties.supervised === "yes" : null,
25
+ contact: element.properties.email || element.properties.phone || element.properties.website
26
+ ? {
27
+ email: (_a = element.properties.email) !== null && _a !== void 0 ? _a : null,
28
+ phone: (_b = element.properties.phone) !== null && _b !== void 0 ? _b : null,
29
+ website: (_c = element.properties.website) !== null && _c !== void 0 ? _c : null,
30
+ }
31
+ : null,
32
+ date_modified: this.transformationDate.toISOString(),
33
+ total_spot_number: null,
34
+ max_vehicle_dimensions: null,
35
+ };
36
+ return transformed;
37
+ };
38
+ }
39
+ }
40
+ exports.OsmParkingTransformation = OsmParkingTransformation;
41
+ //# sourceMappingURL=OsmParkingTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OsmParkingTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/osm/OsmParkingTransformation.ts"],"names":[],"mappings":";;;AAAA,4DAAiD;AAGjD,+DAA8D;AAE9D,6GAA0G;AAG1G,MAAa,wBAAyB,SAAQ,+CAAwE;IAGlH,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAFrC,SAAI,GAAW,0BAA0B,CAAC;QAMvC,sBAAiB,GAAG,CAAC,OAA+C,EAAE,EAAE;;YAC9E,MAAM,WAAW,GAAa;gBAC1B,EAAE,EAAE,GAAG,uBAAU,CAAC,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE;gBACpD,MAAM,EAAE,uBAAU,CAAC,GAAG;gBACtB,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;gBACpC,aAAa,EAAE,uBAAuB;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAA2B;gBAC7C,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI;gBAC7B,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO;gBACnG,QAAQ,EAAE,IAAA,iCAAiB,EAAC,OAAO,CAAC,QAA2B,CAAC;gBAChE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI;gBACjF,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI;gBACxF,OAAO,EACH,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO;oBAC9E,CAAC,CAAC;wBACI,KAAK,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,KAAK,mCAAI,IAAI;wBACvC,KAAK,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,KAAK,mCAAI,IAAI;wBACvC,OAAO,EAAE,MAAA,OAAO,CAAC,UAAU,CAAC,OAAO,mCAAI,IAAI;qBAC9C;oBACH,CAAC,CAAC,IAAI;gBACd,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACpD,iBAAiB,EAAE,IAAI;gBACvB,sBAAsB,EAAE,IAAI;aAC/B,CAAC;YAEF,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;IA5BF,CAAC;CA6BJ;AAlCD,4DAkCC"}
@@ -1,6 +1,7 @@
1
- import { AbstractTask, AbstractWorker } from "@golemio/core/dist/integration-engine";
1
+ import { AbstractWorker } from "@golemio/core/dist/integration-engine";
2
+ import { ITask } from "@golemio/core/dist/integration-engine/workers/interfaces/ITask";
2
3
  export declare class NewParkingsWorker extends AbstractWorker {
3
4
  readonly name = "Parkings";
4
5
  constructor();
5
- registerTask: (task: AbstractTask<any>) => void;
6
+ registerTask: (task: ITask) => void;
6
7
  }
@@ -20,6 +20,7 @@ class NewParkingsWorker extends integration_engine_1.AbstractWorker {
20
20
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityLocationsTask));
21
21
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.UpdateSmart4CityMeasurementsTask));
22
22
  this.registerTask(new SaveParkingZonesPrague_1.SaveParkingZonesPrague(this.getQueuePrefix()));
23
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveOsmDataTask));
23
24
  }
24
25
  }
25
26
  exports.NewParkingsWorker = NewParkingsWorker;
@@ -1 +1 @@
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;QAHI,SAAI,GAAG,oCAAwB,CAAC;QAazC,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;QAXE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAC,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAC,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAClG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACjG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAC,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;CAMJ;AAlBD,8CAkBC"}
1
+ {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAGjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,oCAAwB,CAAC;QAczC,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAZE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9F,CAAC;CAMJ;AAnBD,8CAmBC"}
@@ -0,0 +1,17 @@
1
+ import { OsmDataSource } from "../../datasources/osm/OsmDataSource";
2
+ import { ParkingsLocationRepository } from "../../repositories/ParkingsLocationRepository";
3
+ import { ParkingsSecondaryRepository } from "../../repositories/ParkingsSecondaryRepository";
4
+ import { ILogger } from "@golemio/core/dist/helpers/logger/LoggerProvider";
5
+ import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers/AbstractEmptyTask";
6
+ export declare class SaveOsmDataTask extends AbstractEmptyTask {
7
+ private osmDataSource;
8
+ private parkingSecondaryRepository;
9
+ private parkingLocationRepository;
10
+ private logger;
11
+ readonly queueName = "saveOsmDataTask";
12
+ readonly queueTtl: number;
13
+ constructor(osmDataSource: OsmDataSource, parkingSecondaryRepository: ParkingsSecondaryRepository, parkingLocationRepository: ParkingsLocationRepository, logger: ILogger);
14
+ protected execute(): Promise<void>;
15
+ private updateParkingsData;
16
+ private updateParkingsLocationData;
17
+ }