@golemio/parkings 1.9.6-dev.1369532936 → 1.9.6-dev.1371195096
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/12_pmdp_data.sql +3 -0
- package/dist/helpers/data-access/CachedPmdpParkingRepository.d.ts +11 -0
- package/dist/helpers/data-access/CachedPmdpParkingRepository.js +65 -0
- package/dist/helpers/data-access/CachedPmdpParkingRepository.js.map +1 -0
- package/dist/integration-engine/datasources/pmdp/PmdpMeasurementsDataSource.d.ts +14 -0
- package/dist/integration-engine/datasources/pmdp/PmdpMeasurementsDataSource.js +70 -0
- package/dist/integration-engine/datasources/pmdp/PmdpMeasurementsDataSource.js.map +1 -0
- package/dist/integration-engine/ioc/Di.js +8 -0
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +3 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js +5 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/transformations/pmdp/IPmdpMeasurementSchema.d.ts +9 -0
- package/dist/integration-engine/transformations/pmdp/IPmdpMeasurementSchema.js +3 -0
- package/dist/integration-engine/transformations/pmdp/IPmdpMeasurementSchema.js.map +1 -0
- package/dist/integration-engine/transformations/pmdp/PmdpMeasurementTransformation.d.ts +10 -0
- package/dist/integration-engine/transformations/pmdp/PmdpMeasurementTransformation.js +25 -0
- package/dist/integration-engine/transformations/pmdp/PmdpMeasurementTransformation.js.map +1 -0
- package/dist/integration-engine/workers/NewParkingsWorker.js +1 -0
- package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
- package/dist/integration-engine/workers/schemas/PmdpTaskTypeSchema.d.ts +6 -0
- package/dist/integration-engine/workers/schemas/PmdpTaskTypeSchema.js +22 -0
- package/dist/integration-engine/workers/schemas/PmdpTaskTypeSchema.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SavePmdpMeasurementsTask.d.ts +16 -0
- package/dist/integration-engine/workers/tasks/SavePmdpMeasurementsTask.js +88 -0
- package/dist/integration-engine/workers/tasks/SavePmdpMeasurementsTask.js.map +1 -0
- package/dist/schema-definitions/datasources/pmdp/PmdpMeasurementSchema.d.ts +4 -0
- package/dist/schema-definitions/datasources/pmdp/PmdpMeasurementSchema.js +19 -0
- package/dist/schema-definitions/datasources/pmdp/PmdpMeasurementSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement.d.ts +9 -0
- package/dist/schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement.js +3 -0
- package/dist/schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement.js.map +1 -0
- package/dist/schema-definitions/models/ParkingModel.d.ts +33 -0
- package/dist/schema-definitions/models/ParkingModel.js +47 -0
- package/dist/schema-definitions/models/ParkingModel.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParking.d.ts +13 -11
- package/docs/implementation-documentation.md +18 -1
- package/package.json +1 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
INSERT INTO parkings (id,"source",source_id,data_provider,"name",category,date_modified,address,"location",area_served,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,"security",max_vehicle_dimensions,covered,contact,parking_policy) VALUES
|
|
2
|
+
('pmdp-pmdp_001','pmdp','pmdp_001','manual','Parkovací dům Rychtářka',NULL,'2024-07-08 08:50:01.593+02',NULL,'SRID=4326;POLYGON ((13.3804006 49.7501638, 13.3802544 49.7498325, 13.3804147 49.7498033, 13.3804332 49.7497999, 13.3804487 49.7497971, 13.3813665 49.7496298, 13.3814128 49.7497355, 13.3814221 49.7497341, 13.3814381 49.7497707, 13.3814897 49.7497616, 13.3815738 49.7499517, 13.3812636 49.7500078, 13.3804436 49.750156, 13.3804006 49.7501638))',NULL,NULL,NULL,'2024-07-08 08:50:01.594+02',NULL,NULL,'2024-07-08 08:50:01.594+02',NULL,NULL,NULL,NULL,'multi_storey',NULL,'SRID=4326;POINT (13.3809141 49.7498968)',true,NULL,true,NULL,'commercial'),
|
|
3
|
+
('pmdp-pmdp_002','pmdp','pmdp_002','manual','Parkovací dům Nové divadlo',NULL,'2024-07-08 08:50:01.593+02',NULL,'SRID=4326;POLYGON ((13.3726268 49.7498881, 13.3726043 49.7496604, 13.3735115 49.7495817, 13.3735396 49.7498409, 13.3726268 49.7498881))',NULL,NULL,NULL,'2024-07-08 08:50:01.594+02',NULL,NULL,'2024-07-08 08:50:01.594+02',NULL,NULL,NULL,NULL,'multi_storey',NULL,'SRID=4326;POINT (13.37307195 49.7497349)',true,NULL,true,NULL,'commercial');
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IParking } from "../../schema-definitions/models/interfaces/IParking";
|
|
2
|
+
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
3
|
+
import { AbstractCachedRepository } from "@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractCachedRepository";
|
|
4
|
+
import { ILogger } from "@golemio/core/dist/helpers/logger/LoggerProvider";
|
|
5
|
+
export declare class CachedPmdpParkingRepository extends AbstractCachedRepository<IParking> {
|
|
6
|
+
schema: string;
|
|
7
|
+
tableName: string;
|
|
8
|
+
constructor(connector: IDatabaseConnector, log: ILogger, cacheTTLInSeconds?: number);
|
|
9
|
+
getPmdpParking(id: string): Promise<IParking>;
|
|
10
|
+
protected getAllInternal(): Promise<IParking[]>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
var CachedPmdpParkingRepository_1;
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.CachedPmdpParkingRepository = void 0;
|
|
23
|
+
const SourceEnum_1 = require("../constants/SourceEnum");
|
|
24
|
+
const _sch_1 = require("../../schema-definitions");
|
|
25
|
+
const ParkingModel_1 = require("../../schema-definitions/models/ParkingModel");
|
|
26
|
+
const AbstractCachedRepository_1 = require("@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractCachedRepository");
|
|
27
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
28
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
29
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
30
|
+
let CachedPmdpParkingRepository = exports.CachedPmdpParkingRepository = CachedPmdpParkingRepository_1 = class CachedPmdpParkingRepository extends AbstractCachedRepository_1.AbstractCachedRepository {
|
|
31
|
+
constructor(connector, log, cacheTTLInSeconds = 60 * 60) {
|
|
32
|
+
super(connector, log, cacheTTLInSeconds);
|
|
33
|
+
this.schema = _sch_1.Parkings.pgSchema;
|
|
34
|
+
this.tableName = "parkings";
|
|
35
|
+
}
|
|
36
|
+
getPmdpParking(id) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
try {
|
|
39
|
+
const parking = (yield this.getAll()).find((el) => el.id === id);
|
|
40
|
+
if (!parking) {
|
|
41
|
+
throw new Error(`Id ${id} not found`);
|
|
42
|
+
}
|
|
43
|
+
return parking;
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
if (error instanceof golemio_errors_1.AbstractGolemioError) {
|
|
47
|
+
throw error;
|
|
48
|
+
}
|
|
49
|
+
throw new golemio_errors_1.GeneralError(`Unable to get PMDP parking data`, CachedPmdpParkingRepository_1.name, error, 500);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
getAllInternal() {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
return yield this.connector.getConnection().query(`SELECT ${ParkingModel_1.ParkingModel.attributeList.join(",")}
|
|
56
|
+
FROM ${this.schema}.${this.tableName}
|
|
57
|
+
WHERE source = '${SourceEnum_1.SourceEnum.PMDP}'`, { type: sequelize_1.QueryTypes.SELECT, raw: true });
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
exports.CachedPmdpParkingRepository = CachedPmdpParkingRepository = CachedPmdpParkingRepository_1 = __decorate([
|
|
62
|
+
(0, tsyringe_1.injectable)(),
|
|
63
|
+
__metadata("design:paramtypes", [Object, Object, Number])
|
|
64
|
+
], CachedPmdpParkingRepository);
|
|
65
|
+
//# sourceMappingURL=CachedPmdpParkingRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CachedPmdpParkingRepository.js","sourceRoot":"","sources":["../../../src/helpers/data-access/CachedPmdpParkingRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,wDAA2D;AAC3D,mDAAgC;AAEhC,+EAAwD;AAExD,oIAAiI;AAEjI,mEAAiE;AACjE,6EAA8F;AAC9F,iEAAgE;AAGzD,IAAM,2BAA2B,yEAAjC,MAAM,2BAA4B,SAAQ,mDAAkC;IAI/E,YAAY,SAA6B,EAAE,GAAY,EAAE,oBAA4B,EAAE,GAAG,EAAE;QACxF,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAJtC,WAAM,GAAW,eAAQ,CAAC,QAAQ,CAAC;QACnC,cAAS,GAAW,UAAU,CAAC;IAItC,CAAC;IAEY,cAAc,CAAC,EAAU;;YAClC,IAAI;gBACA,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,OAAO,EAAE;oBACV,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;iBACzC;gBACD,OAAO,OAAO,CAAC;aAClB;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,YAAY,qCAAoB,EAAE;oBACvC,MAAM,KAAK,CAAC;iBACf;gBACD,MAAM,IAAI,6BAAY,CAAC,iCAAiC,EAAE,6BAA2B,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aAC3G;QACL,CAAC;KAAA;IAEe,cAAc;;YAC1B,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,CAC7C,UAAU,2BAAY,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;mBACvC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;8BAClB,uBAAU,CAAC,IAAI,GAAG,EACpC,EAAE,IAAI,EAAE,sBAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CACzC,CAAC;QACN,CAAC;KAAA;CACJ,CAAA;sCA/BY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;;GACA,2BAA2B,CA+BvC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IPmdpMeasurement } from "../../../schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement";
|
|
2
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
3
|
+
export declare enum PmdpIdList {
|
|
4
|
+
pmdp_001 = "pmdp-pmdp_001",
|
|
5
|
+
pmdp_002 = "pmdp-pmdp_002"
|
|
6
|
+
}
|
|
7
|
+
export declare class PmdpMeasurementsDataSourceFactory {
|
|
8
|
+
private config;
|
|
9
|
+
private static DATASOURCE_NAME;
|
|
10
|
+
constructor(config: ISimpleConfig);
|
|
11
|
+
getData(code: string): Promise<IPmdpMeasurement>;
|
|
12
|
+
private getProtocolStrategy;
|
|
13
|
+
private getUrlFromCode;
|
|
14
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
15
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
16
|
+
};
|
|
17
|
+
var PmdpMeasurementsDataSourceFactory_1;
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.PmdpMeasurementsDataSourceFactory = exports.PmdpIdList = void 0;
|
|
20
|
+
const PmdpMeasurementSchema_1 = require("../../../schema-definitions/datasources/pmdp/PmdpMeasurementSchema");
|
|
21
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
22
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
23
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
24
|
+
const HTTPFetchProtocolStrategy_1 = require("@golemio/core/dist/integration-engine/datasources/protocol-strategy/HTTPFetchProtocolStrategy");
|
|
25
|
+
const path_1 = __importDefault(require("path"));
|
|
26
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
27
|
+
var PmdpIdList;
|
|
28
|
+
(function (PmdpIdList) {
|
|
29
|
+
PmdpIdList["pmdp_001"] = "pmdp-pmdp_001";
|
|
30
|
+
PmdpIdList["pmdp_002"] = "pmdp-pmdp_002";
|
|
31
|
+
})(PmdpIdList || (exports.PmdpIdList = PmdpIdList = {}));
|
|
32
|
+
let PmdpMeasurementsDataSourceFactory = exports.PmdpMeasurementsDataSourceFactory = PmdpMeasurementsDataSourceFactory_1 = class PmdpMeasurementsDataSourceFactory {
|
|
33
|
+
constructor(config) {
|
|
34
|
+
this.config = config;
|
|
35
|
+
}
|
|
36
|
+
getData(code) {
|
|
37
|
+
return new integration_engine_1.DataSource(PmdpMeasurementsDataSourceFactory_1.DATASOURCE_NAME, this.getProtocolStrategy(code), new integration_engine_1.XMLDataTypeStrategy({
|
|
38
|
+
resultsPath: "ParkingInfo",
|
|
39
|
+
xml2jsParams: { explicitArray: false, ignoreAttrs: true, trim: true, normalize: true, emptyTag: () => null },
|
|
40
|
+
}), new golemio_validator_1.JSONSchemaValidator(PmdpMeasurementsDataSourceFactory_1.DATASOURCE_NAME, PmdpMeasurementSchema_1.PmdpMeasurementSchema)).getAll();
|
|
41
|
+
}
|
|
42
|
+
getProtocolStrategy(code) {
|
|
43
|
+
const url = new URL(this.config.getValue("old.datasources.parking.pmdp.ApiBaseUrl"));
|
|
44
|
+
url.pathname = path_1.default.join(url.pathname, this.getUrlFromCode(code));
|
|
45
|
+
console.log(url.toString());
|
|
46
|
+
return new HTTPFetchProtocolStrategy_1.HTTPFetchProtocolStrategy({
|
|
47
|
+
method: "GET",
|
|
48
|
+
url: url.toString(),
|
|
49
|
+
responseType: "text",
|
|
50
|
+
headers: { "Content-Type": "text/xml" },
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
getUrlFromCode(code) {
|
|
54
|
+
switch (code) {
|
|
55
|
+
case PmdpIdList.pmdp_001:
|
|
56
|
+
return "rychtarka.xml";
|
|
57
|
+
case PmdpIdList.pmdp_002:
|
|
58
|
+
return "jizdecka.xml";
|
|
59
|
+
default:
|
|
60
|
+
throw new Error("Unrecognized parking id");
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
PmdpMeasurementsDataSourceFactory.DATASOURCE_NAME = "PmdpMeasurementsDataSource";
|
|
65
|
+
exports.PmdpMeasurementsDataSourceFactory = PmdpMeasurementsDataSourceFactory = PmdpMeasurementsDataSourceFactory_1 = __decorate([
|
|
66
|
+
(0, tsyringe_1.injectable)(),
|
|
67
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
68
|
+
__metadata("design:paramtypes", [Object])
|
|
69
|
+
], PmdpMeasurementsDataSourceFactory);
|
|
70
|
+
//# sourceMappingURL=PmdpMeasurementsDataSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PmdpMeasurementsDataSource.js","sourceRoot":"","sources":["../../../../src/integration-engine/datasources/pmdp/PmdpMeasurementsDataSource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,8GAAoF;AACpF,8EAAwF;AACxF,mFAAkF;AAClF,iEAAwE;AACxE,6IAA0I;AAC1I,gDAAwB;AAExB,wEAAqE;AAErE,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,wCAA0B,CAAA;IAC1B,wCAA0B,CAAA;AAC9B,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAGM,IAAM,iCAAiC,qFAAvC,MAAM,iCAAiC;IAG1C,YAAoD,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtE,OAAO,CAAC,IAAY;QACvB,OAAO,IAAI,+BAAU,CACjB,mCAAiC,CAAC,eAAe,EACjD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAC9B,IAAI,wCAAmB,CAAC;YACpB,WAAW,EAAE,aAAa;YAC1B,YAAY,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;SAC/G,CAAC,EAEF,IAAI,uCAAmB,CAAC,mCAAiC,CAAC,eAAe,EAAE,6CAAqB,CAAC,CACpG,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACpC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,yCAAyC,CAAC,CAAC,CAAC;QAC7F,GAAG,CAAC,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE5B,OAAO,IAAI,qDAAyB,CAAC;YACjC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;YACnB,YAAY,EAAE,MAAM;YACpB,OAAO,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE;SAC1C,CAAC,CAAC;IACP,CAAC;IAEO,cAAc,CAAC,IAAY;QAC/B,QAAQ,IAAI,EAAE;YACV,KAAK,UAAU,CAAC,QAAQ;gBACpB,OAAO,eAAe,CAAC;YAC3B,KAAK,UAAU,CAAC,QAAQ;gBACpB,OAAO,cAAc,CAAC;YAC1B;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAClD;IACL,CAAC;;AAvCc,iDAAe,GAAG,4BAA4B,AAA/B,CAAgC;4CADrD,iCAAiC;IAD7C,IAAA,qBAAU,GAAE;IAII,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GAHlC,iCAAiC,CAyC7C"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ParkingsContainer = void 0;
|
|
4
|
+
const CachedPmdpParkingRepository_1 = require("../../helpers/data-access/CachedPmdpParkingRepository");
|
|
5
|
+
const PmdpMeasurementsDataSource_1 = require("../datasources/pmdp/PmdpMeasurementsDataSource");
|
|
4
6
|
const ParkingsProhibitionsRepository_1 = require("../repositories/ParkingsProhibitionsRepository");
|
|
5
7
|
const CachedParkingSourcesRepository_1 = require("../../helpers/data-access/CachedParkingSourcesRepository");
|
|
6
8
|
const OpeningHoursParser_1 = require("../../helpers/osm/OpeningHoursParser");
|
|
@@ -40,6 +42,7 @@ const SaveIsphkMeasurementsTask_1 = require("../workers/tasks/SaveIsphkMeasureme
|
|
|
40
42
|
const SaveMrParkitDataTask_1 = require("../workers/tasks/SaveMrParkitDataTask");
|
|
41
43
|
const SaveOsmDataTask_1 = require("../workers/tasks/SaveOsmDataTask");
|
|
42
44
|
const SaveOsmEntrancesDataTask_1 = require("../workers/tasks/SaveOsmEntrancesDataTask");
|
|
45
|
+
const SavePmdpMeasurementsTask_1 = require("../workers/tasks/SavePmdpMeasurementsTask");
|
|
43
46
|
const UpdateSmart4CityLocationsTask_1 = require("../workers/tasks/UpdateSmart4CityLocationsTask");
|
|
44
47
|
const UpdateSmart4CityMeasurementsTask_1 = require("../workers/tasks/UpdateSmart4CityMeasurementsTask");
|
|
45
48
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
@@ -91,6 +94,7 @@ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.
|
|
|
91
94
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.IptOictDataSource, IptOictDataSource_1.IptOictDataSource);
|
|
92
95
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.ParkomatsDataSource, ParkomatsDataSource_1.ParkomatsDataSource);
|
|
93
96
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.IptOictPaymentsDataSource, IptOictPaymentsDataSource_1.IptOictPaymentsDataSource);
|
|
97
|
+
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.PmdpMeasurementsDataSourceFactory, PmdpMeasurementsDataSource_1.PmdpMeasurementsDataSourceFactory);
|
|
94
98
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.IptOictParkingsProhibitionsDataSource, IptOictParkingsProhibitionsDataSource_1.IptOictParkingsProhibitionsDataSource);
|
|
95
99
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.OsmParkingMachinesDataSource, OsmParkingMachinesDataSource_1.OsmParkingMachinesDataSource);
|
|
96
100
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.IptOictEntrancesDataSource, IptOictEntrancesDataSource_1.IptOictEntrancesDataSource);
|
|
@@ -111,6 +115,9 @@ parkingsContainer.register(ModuleContainerToken_1.ModuleContainerToken.Parkomats
|
|
|
111
115
|
parkingsContainer
|
|
112
116
|
.register(ModuleContainerToken_1.ModuleContainerToken.CachedParkingSourcesRepository, {
|
|
113
117
|
useFactory: (c) => new CachedParkingSourcesRepository_1.CachedParkingSourcesRepository(c.resolve(CoreToken_1.CoreToken.PostgresConnector), c.resolve(CoreToken_1.CoreToken.Logger)),
|
|
118
|
+
})
|
|
119
|
+
.register(ModuleContainerToken_1.ModuleContainerToken.CachedPmdpParkingRepository, {
|
|
120
|
+
useFactory: (c) => new CachedPmdpParkingRepository_1.CachedPmdpParkingRepository(c.resolve(CoreToken_1.CoreToken.PostgresConnector), c.resolve(CoreToken_1.CoreToken.Logger)),
|
|
114
121
|
})
|
|
115
122
|
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsRepository, ParkingsRepository_1.ParkingsRepository)
|
|
116
123
|
.register(ModuleContainerToken_1.ModuleContainerToken.ParkingsSecondaryRepository, ParkingsSecondaryRepository_1.ParkingsSecondaryRepository)
|
|
@@ -148,4 +155,5 @@ parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.
|
|
|
148
155
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictEntrancesJobsTask, GenerateIptOictEntrancesJobsTask_1.GenerateIptOictEntrancesJobsTask);
|
|
149
156
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictEntrancesDataTask, SaveIptOictEntrancesDataTask_1.SaveIptOictEntrancesDataTask);
|
|
150
157
|
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.RefreshDataInDbTask, RefreshDataInDbTask_1.RefreshDataInDbTask);
|
|
158
|
+
parkingsContainer.registerSingleton(ModuleContainerToken_1.ModuleContainerToken.SavePmdpMeasurementsTask, SavePmdpMeasurementsTask_1.SavePmdpMeasurementsTask);
|
|
151
159
|
//# sourceMappingURL=Di.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,mGAAiG;AACjG,6GAAqG;AACrG,6EAAqE;AACrE,wEAAsE;AACtE,gGAA8F;AAC9F,sGAAoG;AACpG,4FAA0F;AAC1F,gFAA8E;AAC9E,oGAAkG;AAClG,oEAAkE;AAClE,sFAAoF;AACpF,iHAA+G;AAC/G,yHAAuH;AACvH,yGAAuG;AACvG,2FAAyF;AACzF,6EAA2E;AAC3E,2FAAyF;AACzF,yFAAuF;AACvF,yFAAuF;AACvF,uFAAqF;AACrF,uGAAqG;AACrG,2FAAyF;AACzF,iGAA+F;AAC/F,+GAA6G;AAC7G,2EAAyE;AACzE,6FAA2F;AAC3F,iFAA+E;AAC/E,0GAAwG;AACxG,wGAAsG;AACtG,kGAAgG;AAChG,oGAAkG;AAClG,oGAAkG;AAClG,oGAAkG;AAClG,4FAA0F;AAC1F,8FAA4F;AAC5F,0FAAwF;AACxF,gFAA8E;AAC9E,sEAAoE;AACpE,wFAAsF;AACtF,kGAAgG;AAChG,wGAAsG;AAKtG,wEAAqE;AAGrE,mEAA2E;AAC3E,qEAA0F;AAC1F,iEAAiG;AACjG,iEAA8D;AAC9D,sGAAoG;AACpG,wHAAsH;AACtH,8EAA4E;AAC5E,6EAA2E;AAC3E,wFAAsF;AACtF,sFAAoF;AACpF,4FAA0F;AAC1F,kGAAgG;AAChG,kGAAgG;AAChG,wGAAsG;AACtG,gGAA8F;AAC9F,8GAA4G;AAE5G,wBAAwB;AACxB,MAAM,iBAAiB,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/Di.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,9 @@ declare const ModuleContainerToken: {
|
|
|
24
24
|
MrParkitDataSourceProvider: symbol;
|
|
25
25
|
SaveMrParkitDataTask: symbol;
|
|
26
26
|
SaveIsphkMeasurementsTask: symbol;
|
|
27
|
+
PmdpMeasurementsDataSourceFactory: symbol;
|
|
28
|
+
CachedPmdpParkingRepository: symbol;
|
|
29
|
+
SavePmdpMeasurementsTask: symbol;
|
|
27
30
|
Smart4CityListDataSourceProvider: symbol;
|
|
28
31
|
Smart4CityLocationDataSourceProvider: symbol;
|
|
29
32
|
SmartCityListDatasourceCache: symbol;
|
|
@@ -31,6 +31,11 @@ const ModuleContainerToken = {
|
|
|
31
31
|
//#region Isp HK
|
|
32
32
|
SaveIsphkMeasurementsTask: Symbol(),
|
|
33
33
|
//#endregion
|
|
34
|
+
//#region PMDP
|
|
35
|
+
PmdpMeasurementsDataSourceFactory: Symbol(),
|
|
36
|
+
CachedPmdpParkingRepository: Symbol(),
|
|
37
|
+
SavePmdpMeasurementsTask: Symbol(),
|
|
38
|
+
//#endregion
|
|
34
39
|
//#region Smart4City
|
|
35
40
|
Smart4CityListDataSourceProvider: Symbol(),
|
|
36
41
|
Smart4CityLocationDataSourceProvider: Symbol(),
|
|
@@ -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,8BAA8B,EAAE,MAAM,EAAE;IACxC,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;IACnC,0BAA0B,EAAE,MAAM,EAAE;IACpC,6BAA6B,EAAE,MAAM,EAAE;IACvC,oCAAoC,EAAE,MAAM,EAAE;IAC9C,yBAAyB,EAAE,MAAM,EAAE;IACnC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,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,gBAAgB;IAChB,yBAAyB,EAAE,MAAM,EAAE;IACnC,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,sBAAsB,EAAE,MAAM,EAAE;IAChC,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,kBAAkB;IAClB,eAAe;IACf,iBAAiB,EAAE,MAAM,EAAE;IAC3B,8BAA8B,EAAE,MAAM,EAAE;IACxC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,cAAc;IACd,yBAAyB,EAAE,MAAM,EAAE;IACnC,8BAA8B,EAAE,MAAM,EAAE;IACxC,2BAA2B,EAAE,MAAM,EAAE;IACrC,eAAe;IACf,0BAA0B,EAAE,MAAM,EAAE;IACpC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,4BAA4B,EAAE,MAAM,EAAE;IACtC,YAAY;IAEZ,kBAAkB;IAClB,qCAAqC,EAAE,MAAM,EAAE;IAC/C,wCAAwC,EAAE,MAAM,EAAE;IAClD,mCAAmC,EAAE,MAAM,EAAE;IAC7C,+BAA+B,EAAE,MAAM,EAAE;IACzC,8BAA8B,EAAE,MAAM,EAAE;IACxC,YAAY;IAEZ,2BAA2B;IAC3B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,mBAAmB;IACnB,uBAAuB,EAAE,MAAM,EAAE;IACjC,mBAAmB,EAAE,MAAM,EAAE;IAC7B,mBAAmB,EAAE,MAAM,EAAE;IAC7B,mBAAmB,EAAE,MAAM,EAAE;IAE7B,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,8BAA8B,EAAE,MAAM,EAAE;IACxC,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;IACnC,0BAA0B,EAAE,MAAM,EAAE;IACpC,6BAA6B,EAAE,MAAM,EAAE;IACvC,oCAAoC,EAAE,MAAM,EAAE;IAC9C,yBAAyB,EAAE,MAAM,EAAE;IACnC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,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,gBAAgB;IAChB,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,cAAc;IACd,iCAAiC,EAAE,MAAM,EAAE;IAC3C,2BAA2B,EAAE,MAAM,EAAE;IACrC,wBAAwB,EAAE,MAAM,EAAE;IAClC,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,sBAAsB,EAAE,MAAM,EAAE;IAChC,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,kBAAkB;IAClB,eAAe;IACf,iBAAiB,EAAE,MAAM,EAAE;IAC3B,8BAA8B,EAAE,MAAM,EAAE;IACxC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,cAAc;IACd,yBAAyB,EAAE,MAAM,EAAE;IACnC,8BAA8B,EAAE,MAAM,EAAE;IACxC,2BAA2B,EAAE,MAAM,EAAE;IACrC,eAAe;IACf,0BAA0B,EAAE,MAAM,EAAE;IACpC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,4BAA4B,EAAE,MAAM,EAAE;IACtC,YAAY;IAEZ,kBAAkB;IAClB,qCAAqC,EAAE,MAAM,EAAE;IAC/C,wCAAwC,EAAE,MAAM,EAAE;IAClD,mCAAmC,EAAE,MAAM,EAAE;IAC7C,+BAA+B,EAAE,MAAM,EAAE;IACzC,8BAA8B,EAAE,MAAM,EAAE;IACxC,YAAY;IAEZ,2BAA2B;IAC3B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,mBAAmB;IACnB,uBAAuB,EAAE,MAAM,EAAE;IACjC,mBAAmB,EAAE,MAAM,EAAE;IAC7B,mBAAmB,EAAE,MAAM,EAAE;IAC7B,mBAAmB,EAAE,MAAM,EAAE;IAE7B,YAAY;CACf,CAAC;AACO,oDAAoB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPmdpMeasurementSchema.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/pmdp/IPmdpMeasurementSchema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IPmdpMeasurementSchema } from "./IPmdpMeasurementSchema";
|
|
2
|
+
import { IPmdpMeasurement } from "../../../schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement";
|
|
3
|
+
import { IParking } from "../../../schema-definitions/models/interfaces/IParking";
|
|
4
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
5
|
+
export declare class PmdpMeasurementTransformation extends AbstractTransformation<IPmdpMeasurement & IParking, IPmdpMeasurementSchema> {
|
|
6
|
+
private transformationDate;
|
|
7
|
+
name: string;
|
|
8
|
+
constructor(transformationDate: Date);
|
|
9
|
+
protected transformInternal: (data: IPmdpMeasurement & IParking) => IPmdpMeasurementSchema;
|
|
10
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PmdpMeasurementTransformation = void 0;
|
|
4
|
+
const SourceEnum_1 = require("../../../helpers/constants/SourceEnum");
|
|
5
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
6
|
+
class PmdpMeasurementTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
7
|
+
constructor(transformationDate) {
|
|
8
|
+
super();
|
|
9
|
+
this.transformationDate = transformationDate;
|
|
10
|
+
this.name = "PmdpMeasurementTransformation";
|
|
11
|
+
this.transformInternal = (data) => {
|
|
12
|
+
return {
|
|
13
|
+
source: SourceEnum_1.SourceEnum.PMDP,
|
|
14
|
+
source_id: data.source_id,
|
|
15
|
+
parking_id: data.id,
|
|
16
|
+
total_spot_number: data.total_spot_number,
|
|
17
|
+
available_spot_number: Number(data.volno),
|
|
18
|
+
occupied_spot_number: data.total_spot_number ? data.total_spot_number - Number(data.volno) : null,
|
|
19
|
+
date_modified: this.transformationDate.toISOString(),
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.PmdpMeasurementTransformation = PmdpMeasurementTransformation;
|
|
25
|
+
//# sourceMappingURL=PmdpMeasurementTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PmdpMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/transformations/pmdp/PmdpMeasurementTransformation.ts"],"names":[],"mappings":";;;AAAA,sEAA2D;AAI3D,6GAA0G;AAE1G,MAAa,6BAA8B,SAAQ,+CAA2E;IAG1H,YAAoB,kBAAwB;QACxC,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAM;QAFrC,SAAI,GAAG,+BAA+B,CAAC;QAMpC,sBAAiB,GAAG,CAAC,IAAiC,EAA0B,EAAE;YACxF,OAAO;gBACH,MAAM,EAAE,uBAAU,CAAC,IAAI;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,IAAI,CAAC,EAAE;gBACnB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzC,oBAAoB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;gBACjG,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;aACvD,CAAC;QACN,CAAC,CAAC;IAZF,CAAC;CAaJ;AAlBD,sEAkBC"}
|
|
@@ -33,6 +33,7 @@ class NewParkingsWorker extends integration_engine_1.AbstractWorker {
|
|
|
33
33
|
this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveOsmParkingMachinesTask));
|
|
34
34
|
this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictEntrancesJobsTask));
|
|
35
35
|
this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictEntrancesDataTask));
|
|
36
|
+
this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SavePmdpMeasurementsTask));
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
39
|
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,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAIjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;
|
|
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;IAIjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;QA2B7C,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;QAzBE,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,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,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,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrG,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,2BAA2B,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC9G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACvG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACvG,CAAC;;AA3BL,8CAiCC;AAhCmB,4BAAU,GAAG,oCAAwB,AAA3B,CAA4B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PmdpTaskTypeValidationSchema = void 0;
|
|
13
|
+
const PmdpMeasurementsDataSource_1 = require("../../datasources/pmdp/PmdpMeasurementsDataSource");
|
|
14
|
+
const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
|
|
15
|
+
class PmdpTaskTypeValidationSchema {
|
|
16
|
+
}
|
|
17
|
+
exports.PmdpTaskTypeValidationSchema = PmdpTaskTypeValidationSchema;
|
|
18
|
+
__decorate([
|
|
19
|
+
(0, class_validator_1.IsEnum)(PmdpMeasurementsDataSource_1.PmdpIdList),
|
|
20
|
+
__metadata("design:type", String)
|
|
21
|
+
], PmdpTaskTypeValidationSchema.prototype, "code", void 0);
|
|
22
|
+
//# sourceMappingURL=PmdpTaskTypeSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PmdpTaskTypeSchema.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/schemas/PmdpTaskTypeSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kGAA6E;AAC7E,+EAAmE;AAMnE,MAAa,4BAA4B;CAGxC;AAHD,oEAGC;AADG;IADC,IAAA,wBAAM,EAAC,uCAAU,CAAC;;0DACL"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CachedPmdpParkingRepository } from "../../../helpers/data-access/CachedPmdpParkingRepository";
|
|
2
|
+
import { PmdpMeasurementsDataSourceFactory } from "../../datasources/pmdp/PmdpMeasurementsDataSource";
|
|
3
|
+
import { IPmdpTaskTypeInput, PmdpTaskTypeValidationSchema } from "../schemas/PmdpTaskTypeSchema";
|
|
4
|
+
import { AbstractTask, PostgresModel } from "@golemio/core/dist/integration-engine";
|
|
5
|
+
export declare class SavePmdpMeasurementsTask extends AbstractTask<IPmdpTaskTypeInput> {
|
|
6
|
+
private readonly parkingsMeasurementsRepository;
|
|
7
|
+
private readonly parkingsMeasurementsActualRepository;
|
|
8
|
+
private readonly PmdpMeasurementsDataSourceFactory;
|
|
9
|
+
private readonly cachedPmdpParkingRepository;
|
|
10
|
+
readonly queueName = "savePmdpMeasurements";
|
|
11
|
+
readonly queueTtl: number;
|
|
12
|
+
readonly schema: typeof PmdpTaskTypeValidationSchema;
|
|
13
|
+
private pmdpMeasurementTransformation;
|
|
14
|
+
constructor(parkingsMeasurementsRepository: PostgresModel, parkingsMeasurementsActualRepository: PostgresModel, PmdpMeasurementsDataSourceFactory: PmdpMeasurementsDataSourceFactory, cachedPmdpParkingRepository: CachedPmdpParkingRepository);
|
|
15
|
+
execute(data: IPmdpTaskTypeInput): Promise<void>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
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.SavePmdpMeasurementsTask = void 0;
|
|
25
|
+
const CachedPmdpParkingRepository_1 = require("../../../helpers/data-access/CachedPmdpParkingRepository");
|
|
26
|
+
const PmdpMeasurementsDataSource_1 = require("../../datasources/pmdp/PmdpMeasurementsDataSource");
|
|
27
|
+
const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
|
|
28
|
+
const PmdpMeasurementTransformation_1 = require("../../transformations/pmdp/PmdpMeasurementTransformation");
|
|
29
|
+
const constants_1 = require("../constants");
|
|
30
|
+
const PmdpTaskTypeSchema_1 = require("../schemas/PmdpTaskTypeSchema");
|
|
31
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
32
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
33
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
34
|
+
const golemio_errors_2 = require("@golemio/core/dist/shared/golemio-errors");
|
|
35
|
+
let SavePmdpMeasurementsTask = exports.SavePmdpMeasurementsTask = class SavePmdpMeasurementsTask extends integration_engine_1.AbstractTask {
|
|
36
|
+
constructor(parkingsMeasurementsRepository, parkingsMeasurementsActualRepository, PmdpMeasurementsDataSourceFactory, cachedPmdpParkingRepository) {
|
|
37
|
+
super(constants_1.NEW_PARKINGS_WORKER_NAME);
|
|
38
|
+
this.parkingsMeasurementsRepository = parkingsMeasurementsRepository;
|
|
39
|
+
this.parkingsMeasurementsActualRepository = parkingsMeasurementsActualRepository;
|
|
40
|
+
this.PmdpMeasurementsDataSourceFactory = PmdpMeasurementsDataSourceFactory;
|
|
41
|
+
this.cachedPmdpParkingRepository = cachedPmdpParkingRepository;
|
|
42
|
+
this.queueName = "savePmdpMeasurements";
|
|
43
|
+
this.queueTtl = 60 * 1000;
|
|
44
|
+
this.schema = PmdpTaskTypeSchema_1.PmdpTaskTypeValidationSchema;
|
|
45
|
+
this.pmdpMeasurementTransformation = new PmdpMeasurementTransformation_1.PmdpMeasurementTransformation(new Date());
|
|
46
|
+
}
|
|
47
|
+
execute(data) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
let measurement;
|
|
50
|
+
try {
|
|
51
|
+
measurement = yield this.PmdpMeasurementsDataSourceFactory.getData(data.code);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
if (err instanceof golemio_errors_2.AbstractGolemioError) {
|
|
55
|
+
throw err;
|
|
56
|
+
}
|
|
57
|
+
throw new golemio_errors_2.DatasourceError(`Error while fetching PMDP measurement (${data.code})`, this.constructor.name, err);
|
|
58
|
+
}
|
|
59
|
+
let transformedData;
|
|
60
|
+
try {
|
|
61
|
+
const parking = yield this.cachedPmdpParkingRepository.getPmdpParking(data.code);
|
|
62
|
+
transformedData = this.pmdpMeasurementTransformation.transformElement(Object.assign(Object.assign({}, measurement), parking));
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
throw new golemio_errors_2.TransformationError(`Error while transforming PMDP measurement (${data.code})`, this.constructor.name, err);
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
yield this.parkingsMeasurementsRepository.bulkSave([transformedData]);
|
|
69
|
+
yield this.parkingsMeasurementsActualRepository.bulkSave([transformedData]);
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
throw new golemio_errors_1.GeneralError(`Error while saving PMDP measurements data (${data.code})`, this.constructor.name, err);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
exports.SavePmdpMeasurementsTask = SavePmdpMeasurementsTask = __decorate([
|
|
78
|
+
(0, tsyringe_1.injectable)(),
|
|
79
|
+
__param(0, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsMeasurementRepository)),
|
|
80
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.ParkingsMeasurementsActualRepository)),
|
|
81
|
+
__param(2, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.PmdpMeasurementsDataSourceFactory)),
|
|
82
|
+
__param(3, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.CachedPmdpParkingRepository)),
|
|
83
|
+
__metadata("design:paramtypes", [integration_engine_1.PostgresModel,
|
|
84
|
+
integration_engine_1.PostgresModel,
|
|
85
|
+
PmdpMeasurementsDataSource_1.PmdpMeasurementsDataSourceFactory,
|
|
86
|
+
CachedPmdpParkingRepository_1.CachedPmdpParkingRepository])
|
|
87
|
+
], SavePmdpMeasurementsTask);
|
|
88
|
+
//# sourceMappingURL=SavePmdpMeasurementsTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SavePmdpMeasurementsTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/SavePmdpMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,0GAA+F;AAC/F,kGAAoG;AACpG,yEAAoE;AACpE,4GAAuG;AACvG,4CAAiE;AACjE,sEAA0G;AAE1G,8EAAoF;AACpF,6EAAwE;AACxE,iEAAwE;AACxE,6EAAsH;AAG/G,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,iCAAgC;IAM1E,YAEI,8BAA8D,EAE9D,oCAAoE,EAEpE,iCAAqF,EAErF,2BAAyE;QAEzE,KAAK,CAAC,oCAAwB,CAAC,CAAC;QARf,mCAA8B,GAA9B,8BAA8B,CAAe;QAE7C,yCAAoC,GAApC,oCAAoC,CAAe;QAEnD,sCAAiC,GAAjC,iCAAiC,CAAmC;QAEpE,gCAA2B,GAA3B,2BAA2B,CAA6B;QAb7D,cAAS,GAAG,sBAAsB,CAAC;QACnC,aAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,WAAM,GAAG,iDAA4B,CAAC;QAclD,IAAI,CAAC,6BAA6B,GAAG,IAAI,6DAA6B,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACvF,CAAC;IAEY,OAAO,CAAC,IAAwB;;YACzC,IAAI,WAA6B,CAAC;YAClC,IAAI;gBACA,WAAW,GAAG,MAAM,IAAI,CAAC,iCAAiC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjF;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;gBAED,MAAM,IAAI,gCAAe,CAAC,0CAA0C,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACjH;YAED,IAAI,eAAe,CAAC;YACpB,IAAI;gBACA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjF,eAAe,GAAG,IAAI,CAAC,6BAA6B,CAAC,gBAAgB,iCAAM,WAAW,GAAK,OAAO,EAAG,CAAC;aACzG;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oCAAmB,CAAC,8CAA8C,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACzH;YAED,IAAI;gBACA,MAAM,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBACtE,MAAM,IAAI,CAAC,oCAAoC,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;aAC/E;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,8CAA8C,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAClH;QACL,CAAC;KAAA;CACJ,CAAA;mCA/CY,wBAAwB;IADpC,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAA;IAE1D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,oCAAoC,CAAC,CAAA;IAEjE,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,iCAAiC,CAAC,CAAA;IAE9D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,2BAA2B,CAAC,CAAA;qCALR,kCAAa;QAEP,kCAAa;QAEhB,8DAAiC;QAEvC,yDAA2B;GAdpE,wBAAwB,CA+CpC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PmdpMeasurementSchema = void 0;
|
|
4
|
+
const pmdpMeasurementSchema = {
|
|
5
|
+
type: "object",
|
|
6
|
+
properties: {
|
|
7
|
+
kapacita: { type: "string" },
|
|
8
|
+
kp: { type: "string" },
|
|
9
|
+
dp_bez_rezervace: { type: "string" },
|
|
10
|
+
dp_rezervace: { type: "string" },
|
|
11
|
+
volno: { type: "string" },
|
|
12
|
+
volno_bez_prepoctu: { type: "string" },
|
|
13
|
+
datum_aktualizace: { type: "string" },
|
|
14
|
+
},
|
|
15
|
+
required: ["volno"],
|
|
16
|
+
additionalProperties: true,
|
|
17
|
+
};
|
|
18
|
+
exports.PmdpMeasurementSchema = pmdpMeasurementSchema;
|
|
19
|
+
//# sourceMappingURL=PmdpMeasurementSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PmdpMeasurementSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/pmdp/PmdpMeasurementSchema.ts"],"names":[],"mappings":";;;AAGA,MAAM,qBAAqB,GAAqC;IAC5D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACpC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACxC;IACD,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,oBAAoB,EAAE,IAAI;CAC7B,CAAC;AAEgC,sDAAqB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPmdpMeasurement.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/pmdp/interfaces/IPmdpMeasurement.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { IAddress } from "./interfaces/IAddress";
|
|
2
|
+
import { IContact, IParking } from "./interfaces/IParking";
|
|
3
|
+
import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
|
|
4
|
+
import { IGeoCoordinatesPoint, TGeoCoordinates } from "@golemio/core/dist/output-gateway/Geo";
|
|
5
|
+
export declare class ParkingModel extends Model<IParking> implements IParking {
|
|
6
|
+
static tableName: string;
|
|
7
|
+
id: string;
|
|
8
|
+
source: string;
|
|
9
|
+
source_id: string;
|
|
10
|
+
data_provider: string;
|
|
11
|
+
date_modified: Date;
|
|
12
|
+
location: TGeoCoordinates;
|
|
13
|
+
address: IAddress | null;
|
|
14
|
+
name: string | null;
|
|
15
|
+
area_served: string | null;
|
|
16
|
+
total_spot_number: number | null;
|
|
17
|
+
category: string | null;
|
|
18
|
+
tariff_id: string | null;
|
|
19
|
+
valid_from: Date | null;
|
|
20
|
+
valid_to: Date | null;
|
|
21
|
+
parking_type: string;
|
|
22
|
+
zone_type: string | null;
|
|
23
|
+
centroid: IGeoCoordinatesPoint | null;
|
|
24
|
+
security: boolean | null;
|
|
25
|
+
max_vehicle_dimensions: number[] | null;
|
|
26
|
+
updated_at: Date | null;
|
|
27
|
+
covered: boolean | null;
|
|
28
|
+
contact: IContact | null;
|
|
29
|
+
parking_policy: string | null;
|
|
30
|
+
sanitized_location: TGeoCoordinates;
|
|
31
|
+
static attributeModel: ModelAttributes<ParkingModel>;
|
|
32
|
+
static attributeList: string[];
|
|
33
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParkingModel = void 0;
|
|
4
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
5
|
+
class ParkingModel extends sequelize_1.Model {
|
|
6
|
+
}
|
|
7
|
+
exports.ParkingModel = ParkingModel;
|
|
8
|
+
ParkingModel.tableName = "parkings";
|
|
9
|
+
ParkingModel.attributeModel = {
|
|
10
|
+
id: {
|
|
11
|
+
type: sequelize_1.DataTypes.STRING,
|
|
12
|
+
unique: true,
|
|
13
|
+
},
|
|
14
|
+
source: {
|
|
15
|
+
primaryKey: true,
|
|
16
|
+
type: sequelize_1.DataTypes.STRING,
|
|
17
|
+
},
|
|
18
|
+
source_id: {
|
|
19
|
+
primaryKey: true,
|
|
20
|
+
type: sequelize_1.DataTypes.STRING,
|
|
21
|
+
},
|
|
22
|
+
data_provider: sequelize_1.DataTypes.STRING,
|
|
23
|
+
name: sequelize_1.DataTypes.STRING,
|
|
24
|
+
category: sequelize_1.DataTypes.STRING,
|
|
25
|
+
date_modified: sequelize_1.DataTypes.BIGINT,
|
|
26
|
+
address: sequelize_1.DataTypes.JSON,
|
|
27
|
+
location: sequelize_1.DataTypes.GEOMETRY,
|
|
28
|
+
area_served: sequelize_1.DataTypes.STRING,
|
|
29
|
+
total_spot_number: sequelize_1.DataTypes.INTEGER,
|
|
30
|
+
tariff_id: sequelize_1.DataTypes.STRING,
|
|
31
|
+
valid_from: sequelize_1.DataTypes.DATE,
|
|
32
|
+
valid_to: sequelize_1.DataTypes.DATE,
|
|
33
|
+
parking_type: sequelize_1.DataTypes.STRING,
|
|
34
|
+
zone_type: sequelize_1.DataTypes.STRING,
|
|
35
|
+
centroid: sequelize_1.DataTypes.GEOMETRY,
|
|
36
|
+
security: sequelize_1.DataTypes.BOOLEAN,
|
|
37
|
+
max_vehicle_dimensions: {
|
|
38
|
+
allowNull: true,
|
|
39
|
+
type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.REAL), // height(m), width(m), length(m), weight(kg)
|
|
40
|
+
},
|
|
41
|
+
covered: sequelize_1.DataTypes.BOOLEAN,
|
|
42
|
+
contact: sequelize_1.DataTypes.JSON,
|
|
43
|
+
parking_policy: sequelize_1.DataTypes.STRING,
|
|
44
|
+
sanitized_location: sequelize_1.DataTypes.GEOMETRY,
|
|
45
|
+
};
|
|
46
|
+
ParkingModel.attributeList = Object.keys(ParkingModel.attributeModel);
|
|
47
|
+
//# sourceMappingURL=ParkingModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParkingModel.js","sourceRoot":"","sources":["../../../src/schema-definitions/models/ParkingModel.ts"],"names":[],"mappings":";;;AAEA,mEAAwF;AAGxF,MAAa,YAAa,SAAQ,iBAAe;;AAAjD,oCAmEC;AAlEiB,sBAAS,GAAG,UAAU,CAAC;AA2BvB,2BAAc,GAAkC;IAC1D,EAAE,EAAE;QACA,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,MAAM,EAAE,IAAI;KACf;IACD,MAAM,EAAE;QACJ,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,SAAS,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,aAAa,EAAE,qBAAS,CAAC,MAAM;IAC/B,IAAI,EAAE,qBAAS,CAAC,MAAM;IACtB,QAAQ,EAAE,qBAAS,CAAC,MAAM;IAC1B,aAAa,EAAE,qBAAS,CAAC,MAAM;IAC/B,OAAO,EAAE,qBAAS,CAAC,IAAI;IACvB,QAAQ,EAAE,qBAAS,CAAC,QAAQ;IAC5B,WAAW,EAAE,qBAAS,CAAC,MAAM;IAC7B,iBAAiB,EAAE,qBAAS,CAAC,OAAO;IACpC,SAAS,EAAE,qBAAS,CAAC,MAAM;IAC3B,UAAU,EAAE,qBAAS,CAAC,IAAI;IAC1B,QAAQ,EAAE,qBAAS,CAAC,IAAI;IACxB,YAAY,EAAE,qBAAS,CAAC,MAAM;IAC9B,SAAS,EAAE,qBAAS,CAAC,MAAM;IAC3B,QAAQ,EAAE,qBAAS,CAAC,QAAQ;IAC5B,QAAQ,EAAE,qBAAS,CAAC,OAAO;IAC3B,sBAAsB,EAAE;QACpB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,IAAI,CAAC,EAAE,6CAA6C;KACvF;IACD,OAAO,EAAE,qBAAS,CAAC,OAAO;IAC1B,OAAO,EAAE,qBAAS,CAAC,IAAI;IACvB,cAAc,EAAE,qBAAS,CAAC,MAAM;IAChC,kBAAkB,EAAE,qBAAS,CAAC,QAAQ;CACzC,CAAC;AAEY,0BAAa,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC"}
|
|
@@ -19,22 +19,24 @@ export interface IParking {
|
|
|
19
19
|
data_provider: string;
|
|
20
20
|
date_modified: Date;
|
|
21
21
|
location: TGeoCoordinates;
|
|
22
|
-
address
|
|
22
|
+
address: IAddress | null;
|
|
23
23
|
name: string | null;
|
|
24
|
+
area_served: string | null;
|
|
24
25
|
total_spot_number: number | null;
|
|
25
|
-
category
|
|
26
|
-
tariff_id
|
|
27
|
-
valid_from
|
|
28
|
-
valid_to
|
|
26
|
+
category: string | null;
|
|
27
|
+
tariff_id: string | null;
|
|
28
|
+
valid_from: Date | null;
|
|
29
|
+
valid_to: Date | null;
|
|
29
30
|
parking_type: string;
|
|
30
|
-
zone_type
|
|
31
|
-
centroid
|
|
31
|
+
zone_type: string | null;
|
|
32
|
+
centroid: IGeoCoordinatesPoint | null;
|
|
32
33
|
security: boolean | null;
|
|
33
34
|
max_vehicle_dimensions: number[] | null;
|
|
34
|
-
updated_at
|
|
35
|
-
covered
|
|
36
|
-
contact
|
|
37
|
-
parking_policy
|
|
35
|
+
updated_at: Date | null;
|
|
36
|
+
covered: boolean | null;
|
|
37
|
+
contact: IContact | null;
|
|
38
|
+
parking_policy: string | null;
|
|
39
|
+
sanitized_location: TGeoCoordinates;
|
|
38
40
|
}
|
|
39
41
|
export interface IContact {
|
|
40
42
|
email?: string | null;
|
|
@@ -458,7 +458,6 @@ Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje
|
|
|
458
458
|
- datové zdroje
|
|
459
459
|
- `parking_sources` - záznamy obsahují url datového zdroje v `datasource_prohibitions`
|
|
460
460
|
|
|
461
|
-
|
|
462
461
|
#### Task _SaveIptOictProhibitionsDataTask_
|
|
463
462
|
|
|
464
463
|
- vstupní rabbitmq fronta
|
|
@@ -507,6 +506,24 @@ Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje
|
|
|
507
506
|
- parkingsMeasurementsModel -> `parkings_measurements_part`
|
|
508
507
|
- parkingsMeasurementsActualModel -> `parkings_measurements_actual`
|
|
509
508
|
|
|
509
|
+
#### Task _SavePmdpMeasurementsTask_
|
|
510
|
+
|
|
511
|
+
- vstupní rabbitmq fronta
|
|
512
|
+
- název: `dataplatform.parkings.savePmdpMeasurements`
|
|
513
|
+
- parametry:
|
|
514
|
+
- ([Data example](../src/integration-engine/workers/schemas/PmdpTaskTypeSchema.ts))
|
|
515
|
+
- datové zdroje
|
|
516
|
+
- PmdpMeasurementsDataSourceFactory (http)
|
|
517
|
+
- xml formát
|
|
518
|
+
- dynamická data
|
|
519
|
+
- obohacené o info z `parkings` tabulky (manuální zdroj IPT OICT)
|
|
520
|
+
- transformace
|
|
521
|
+
- [PmdpMeasurementTransformation](../src/integration-engine/transformations/pmdp/PmdpMeasurementTransformation.ts) - transformace measurements
|
|
522
|
+
|
|
523
|
+
- data modely
|
|
524
|
+
- parkingsMeasurementsModel -> `parkings_measurements_part`
|
|
525
|
+
- parkingsMeasurementsActualModel -> `parkings_measurements_actual`
|
|
526
|
+
|
|
510
527
|
#### Task _CalculateAverageOccupancyTask_
|
|
511
528
|
|
|
512
529
|
- vstupní rabbitmq fronta
|