@golemio/energetics 1.2.12-dev.1217823104 → 1.2.12-dev.1218865526
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/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.d.ts +2 -2
- package/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.js +4 -2
- package/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.d.ts +2 -1
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js +1 -0
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js.map +1 -1
- package/dist/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.d.ts +4 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.d.ts +14 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.js +80 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.d.ts +31 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.js +93 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams.d.ts +7 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams.js +3 -0
- package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/ioc/Di.js +6 -0
- package/dist/integration-engine/commodity-providers/ioc/Di.js.map +1 -1
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.d.ts +3 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js +3 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +9 -0
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +41 -0
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js +1 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.d.ts +5 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.js +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.d.ts +6 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.js +23 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.d.ts +9 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.js +36 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js +2 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.js +12 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.d.ts +27 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js +169 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.d.ts +3 -4
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js +3 -19
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map +1 -1
- package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.js +15 -0
- package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.js +16 -0
- package/dist/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto.d.ts +4 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto.js +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.d.ts +5 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.js +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.js.map +1 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.d.ts +3 -1
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js +2 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { CommodityProvider } from "./helpers/CommodityProviderEnum";
|
|
2
|
-
import { DataSourceProviderDict, DataSourceReturnType, ICommodityProviderDataSourceFactory } from "./interfaces/ICommodityProviderDataSourceFactory";
|
|
2
|
+
import { AveApiDtoUnion, CemApiDtoUnion, DataSourceProviderDict, DataSourceReturnType, ICommodityProviderDataSourceFactory } from "./interfaces/ICommodityProviderDataSourceFactory";
|
|
3
3
|
import { IDataSourceProvider } from "./interfaces/IDataSourceProvider";
|
|
4
4
|
export declare class CommodityProviderDataSourceFactory implements ICommodityProviderDataSourceFactory {
|
|
5
5
|
private readonly dataSourceProviderDict;
|
|
6
|
-
constructor(cemApiDataSourceProvider: IDataSourceProvider<
|
|
6
|
+
constructor(cemApiDataSourceProvider: IDataSourceProvider<CemApiDtoUnion[]>, ppasAveApiDataSourceProvider: IDataSourceProvider<AveApiDtoUnion[]>);
|
|
7
7
|
getDataSource<T extends CommodityProvider>(presetLogsProvider: T, ...params: Parameters<DataSourceProviderDict[T]["getDataSource"]>): DataSourceReturnType<T>;
|
|
8
8
|
}
|
|
@@ -17,9 +17,10 @@ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
|
17
17
|
const WorkerContainerToken_1 = require("../ioc/WorkerContainerToken");
|
|
18
18
|
const CommodityProviderEnum_1 = require("./helpers/CommodityProviderEnum");
|
|
19
19
|
let CommodityProviderDataSourceFactory = exports.CommodityProviderDataSourceFactory = class CommodityProviderDataSourceFactory {
|
|
20
|
-
constructor(cemApiDataSourceProvider) {
|
|
20
|
+
constructor(cemApiDataSourceProvider, ppasAveApiDataSourceProvider) {
|
|
21
21
|
this.dataSourceProviderDict = {
|
|
22
22
|
[CommodityProviderEnum_1.CommodityProvider.UnimonitorCemApi]: cemApiDataSourceProvider,
|
|
23
|
+
[CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi]: ppasAveApiDataSourceProvider,
|
|
23
24
|
};
|
|
24
25
|
}
|
|
25
26
|
getDataSource(presetLogsProvider, ...params) {
|
|
@@ -29,6 +30,7 @@ let CommodityProviderDataSourceFactory = exports.CommodityProviderDataSourceFact
|
|
|
29
30
|
exports.CommodityProviderDataSourceFactory = CommodityProviderDataSourceFactory = __decorate([
|
|
30
31
|
(0, tsyringe_1.injectable)(),
|
|
31
32
|
__param(0, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.CemApiDataSourceProvider)),
|
|
32
|
-
|
|
33
|
+
__param(1, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.PpasAveApiDataSourceProvider)),
|
|
34
|
+
__metadata("design:paramtypes", [Object, Object])
|
|
33
35
|
], CommodityProviderDataSourceFactory);
|
|
34
36
|
//# sourceMappingURL=CommodityProviderDataSourceFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iEAAwE;AACxE,sEAAmE;AACnE,2EAAoE;
|
|
1
|
+
{"version":3,"file":"CommodityProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iEAAwE;AACxE,sEAAmE;AACnE,2EAAoE;AAW7D,IAAM,kCAAkC,gDAAxC,MAAM,kCAAkC;IAG3C,YAEI,wBAA+D,EAE/D,4BAAmE;QAEnE,IAAI,CAAC,sBAAsB,GAAG;YAC1B,CAAC,yCAAiB,CAAC,gBAAgB,CAAC,EAAE,wBAAwB;YAC9D,CAAC,yCAAiB,CAAC,kBAAkB,CAAC,EAAE,4BAA4B;SACvE,CAAC;IACN,CAAC;IAEM,aAAa,CAChB,kBAAqB,EACrB,GAAG,MAA8D;QAEjE,OAAO,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAA4B,CAAC;IAC/G,CAAC;CACJ,CAAA;6CArBY,kCAAkC;IAD9C,IAAA,qBAAU,GAAE;IAKJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,wBAAwB,CAAC,CAAA;IAErD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,4BAA4B,CAAC,CAAA;;GANrD,kCAAkC,CAqB9C"}
|
package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js
CHANGED
|
@@ -4,5 +4,6 @@ exports.CommodityProvider = void 0;
|
|
|
4
4
|
var CommodityProvider;
|
|
5
5
|
(function (CommodityProvider) {
|
|
6
6
|
CommodityProvider["UnimonitorCemApi"] = "cem_api";
|
|
7
|
+
CommodityProvider["PpasInternetAveApi"] = "ppas_ave_api";
|
|
7
8
|
})(CommodityProvider || (exports.CommodityProvider = CommodityProvider = {}));
|
|
8
9
|
//# sourceMappingURL=CommodityProviderEnum.js.map
|
package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityProviderEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"CommodityProviderEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IACzB,iDAA4B,CAAA;IAC5B,wDAAmC,CAAA;AACvC,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
|
+
import { IAveApiDeviceDataDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto";
|
|
2
|
+
import { IAveApiPlaceDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto";
|
|
1
3
|
import { ICemApiCounterDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto";
|
|
2
4
|
import { ICemApiDeviceDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto";
|
|
3
5
|
import { ICemApiMeasurementDto } from "../../../../schema-definitions/datasources/commodity-providers/interfaces/ICemApiMeasurementDto";
|
|
4
6
|
import { CommodityProvider } from "../helpers/CommodityProviderEnum";
|
|
5
7
|
import { IDataSourceProvider } from "./IDataSourceProvider";
|
|
6
8
|
export type CemApiDtoUnion = ICemApiDeviceDto | ICemApiCounterDto | ICemApiMeasurementDto;
|
|
9
|
+
export type AveApiDtoUnion = IAveApiPlaceDto | IAveApiDeviceDataDto;
|
|
7
10
|
export type DataSourceProviderDict = {
|
|
8
11
|
[CommodityProvider.UnimonitorCemApi]: IDataSourceProvider<CemApiDtoUnion[]>;
|
|
12
|
+
[CommodityProvider.PpasInternetAveApi]: IDataSourceProvider<AveApiDtoUnion[]>;
|
|
9
13
|
};
|
|
10
14
|
export type DataSourceReturnType<T extends CommodityProvider> = ReturnType<DataSourceProviderDict[T]["getDataSource"]>;
|
|
11
15
|
export interface ICommodityProviderDataSourceFactory {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ICommodityProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"ICommodityProviderDataSourceFactory.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.ts"],"names":[],"mappings":";;AAKA,4EAAqE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
2
|
+
import { IDataSource } from "@golemio/core/dist/integration-engine";
|
|
3
|
+
import { CemApiDtoUnion } from "../interfaces/ICommodityProviderDataSourceFactory";
|
|
4
|
+
import { IDataSourceProvider } from "../interfaces/IDataSourceProvider";
|
|
5
|
+
import { IAveApiDeviceDataParams } from "./interfaces/IAveApiDeviceDataParams";
|
|
6
|
+
export declare class PpasAveApiDataSourceProvider implements IDataSourceProvider<CemApiDtoUnion[]> {
|
|
7
|
+
private config;
|
|
8
|
+
private static readonly DATASOURCE_NAME;
|
|
9
|
+
constructor(config: ISimpleConfig);
|
|
10
|
+
getDataSource(resourceType: string, sessionId: string, params?: IAveApiDeviceDataParams): IDataSource<CemApiDtoUnion[]>;
|
|
11
|
+
private getProtocolStrategy;
|
|
12
|
+
private getDataTypeStrategy;
|
|
13
|
+
private getJsonSchemaValidator;
|
|
14
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
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 PpasAveApiDataSourceProvider_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.PpasAveApiDataSourceProvider = void 0;
|
|
17
|
+
const AveApiDeviceDataJsonSchema_1 = require("../../../../schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema");
|
|
18
|
+
const AveApiPlacesJsonSchema_1 = require("../../../../schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema");
|
|
19
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
20
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
21
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
22
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
23
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
24
|
+
const PpasAveApiHelper_1 = require("./helpers/PpasAveApiHelper");
|
|
25
|
+
let PpasAveApiDataSourceProvider = exports.PpasAveApiDataSourceProvider = PpasAveApiDataSourceProvider_1 = class PpasAveApiDataSourceProvider {
|
|
26
|
+
constructor(config) {
|
|
27
|
+
this.config = config;
|
|
28
|
+
}
|
|
29
|
+
getDataSource(resourceType, sessionId, params) {
|
|
30
|
+
const baseUrl = this.config.getValue("module.energetics.commodityProviders.ppas_ave_api.baseUrl");
|
|
31
|
+
const url = new URL(baseUrl);
|
|
32
|
+
url.pathname += "/" + resourceType;
|
|
33
|
+
url.searchParams.append("sessionId", sessionId);
|
|
34
|
+
if (params) {
|
|
35
|
+
url.searchParams.append("placeId", params.placeId.toString());
|
|
36
|
+
url.searchParams.append("dateFrom", params.dateFrom);
|
|
37
|
+
url.searchParams.append("dateTo", params.dateTo);
|
|
38
|
+
url.searchParams.append("isoDate", params.isoDate);
|
|
39
|
+
url.searchParams.append("dataType", params.dataType);
|
|
40
|
+
}
|
|
41
|
+
return new integration_engine_1.DataSource(PpasAveApiDataSourceProvider_1.DATASOURCE_NAME, this.getProtocolStrategy(url, sessionId), this.getDataTypeStrategy(resourceType), this.getJsonSchemaValidator(resourceType));
|
|
42
|
+
}
|
|
43
|
+
getProtocolStrategy(url, sessionId) {
|
|
44
|
+
return new integration_engine_1.HTTPProtocolStrategy({
|
|
45
|
+
method: "GET",
|
|
46
|
+
headers: {
|
|
47
|
+
Accept: "application/json",
|
|
48
|
+
},
|
|
49
|
+
timeout: 20000,
|
|
50
|
+
url: url.toString(),
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
getDataTypeStrategy(resourceType) {
|
|
54
|
+
switch (resourceType) {
|
|
55
|
+
case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.Places:
|
|
56
|
+
return new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "PageItems" });
|
|
57
|
+
case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.DeviceData:
|
|
58
|
+
return new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "" });
|
|
59
|
+
default:
|
|
60
|
+
throw new golemio_errors_1.GeneralError(`Unknown resource type: ${resourceType}`, PpasAveApiDataSourceProvider_1.name);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
getJsonSchemaValidator(resourceType) {
|
|
64
|
+
switch (resourceType) {
|
|
65
|
+
case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.Places:
|
|
66
|
+
return new golemio_validator_1.JSONSchemaValidator(PpasAveApiDataSourceProvider_1.DATASOURCE_NAME + "Places", AveApiPlacesJsonSchema_1.aveApiPlacesJsonSchema);
|
|
67
|
+
case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.DeviceData:
|
|
68
|
+
return new golemio_validator_1.JSONSchemaValidator(PpasAveApiDataSourceProvider_1.DATASOURCE_NAME + "DeviceData", AveApiDeviceDataJsonSchema_1.aveApiDeviceDataJsonSchema);
|
|
69
|
+
default:
|
|
70
|
+
throw new golemio_errors_1.GeneralError(`Unknown resource type: ${resourceType}`, PpasAveApiDataSourceProvider_1.name);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
PpasAveApiDataSourceProvider.DATASOURCE_NAME = "PpasAveApiDataSource";
|
|
75
|
+
exports.PpasAveApiDataSourceProvider = PpasAveApiDataSourceProvider = PpasAveApiDataSourceProvider_1 = __decorate([
|
|
76
|
+
(0, tsyringe_1.injectable)(),
|
|
77
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
78
|
+
__metadata("design:paramtypes", [Object])
|
|
79
|
+
], PpasAveApiDataSourceProvider);
|
|
80
|
+
//# sourceMappingURL=PpasAveApiDataSourceProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PpasAveApiDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export interface IAveConfig {
|
|
2
|
+
user: string;
|
|
3
|
+
pass: string;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Helper class for requesting additional data from PPAS InternetAVE API
|
|
7
|
+
*/
|
|
8
|
+
declare class PpasAveApiHelper {
|
|
9
|
+
private baseUrl;
|
|
10
|
+
private config;
|
|
11
|
+
static API_DATE_TZ: string;
|
|
12
|
+
constructor(baseUrl: string, config: IAveConfig);
|
|
13
|
+
/**
|
|
14
|
+
* Create API session and return session ID
|
|
15
|
+
*/
|
|
16
|
+
createSession: () => Promise<string>;
|
|
17
|
+
/**
|
|
18
|
+
* Terminate current session/invalidate session ID
|
|
19
|
+
*/
|
|
20
|
+
terminateSession: (sessionId: string) => Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Return resource types/identifiers
|
|
23
|
+
*/
|
|
24
|
+
static get resourceType(): {
|
|
25
|
+
readonly Logon: "logon.rails";
|
|
26
|
+
readonly LogOff: "LogOff.rails";
|
|
27
|
+
readonly Places: "GetPlaces.rails";
|
|
28
|
+
readonly DeviceData: "GetDeviceData.rails";
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export { PpasAveApiHelper };
|
|
@@ -0,0 +1,93 @@
|
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.PpasAveApiHelper = void 0;
|
|
16
|
+
const axios_1 = __importDefault(require("@golemio/core/dist/shared/axios"));
|
|
17
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
18
|
+
/**
|
|
19
|
+
* Helper class for requesting additional data from PPAS InternetAVE API
|
|
20
|
+
*/
|
|
21
|
+
class PpasAveApiHelper {
|
|
22
|
+
constructor(baseUrl, config) {
|
|
23
|
+
this.baseUrl = baseUrl;
|
|
24
|
+
this.config = config;
|
|
25
|
+
/**
|
|
26
|
+
* Create API session and return session ID
|
|
27
|
+
*/
|
|
28
|
+
this.createSession = () => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
const { user, pass } = this.config;
|
|
30
|
+
try {
|
|
31
|
+
const url = new URL(this.baseUrl);
|
|
32
|
+
url.pathname += "/" + PpasAveApiHelper.resourceType.Logon;
|
|
33
|
+
const { data } = yield axios_1.default.request({
|
|
34
|
+
method: "post",
|
|
35
|
+
url: url.toString(),
|
|
36
|
+
headers: {
|
|
37
|
+
Accept: "application/json",
|
|
38
|
+
"Content-Type": "application/x-www-form-urlencoded",
|
|
39
|
+
},
|
|
40
|
+
timeout: 10000,
|
|
41
|
+
data: new URLSearchParams({
|
|
42
|
+
name: user,
|
|
43
|
+
password: pass,
|
|
44
|
+
}),
|
|
45
|
+
});
|
|
46
|
+
if ((data === null || data === void 0 ? void 0 : data.success) && typeof (data === null || data === void 0 ? void 0 : data.sessionId) === "string") {
|
|
47
|
+
return data.sessionId;
|
|
48
|
+
}
|
|
49
|
+
throw new golemio_errors_1.GeneralError("Cannot parse PPAS AVE Session ID from the server response", PpasAveApiHelper.name);
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
if (err instanceof golemio_errors_1.AbstractGolemioError) {
|
|
53
|
+
throw err;
|
|
54
|
+
}
|
|
55
|
+
throw new golemio_errors_1.GeneralError("Cannot retrieve PPAS AVE Session ID", PpasAveApiHelper.name, err);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* Terminate current session/invalidate session ID
|
|
60
|
+
*/
|
|
61
|
+
this.terminateSession = (sessionId) => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
try {
|
|
63
|
+
const url = new URL(this.baseUrl);
|
|
64
|
+
url.pathname += "/" + PpasAveApiHelper.resourceType.LogOff;
|
|
65
|
+
yield axios_1.default.request({
|
|
66
|
+
method: "get",
|
|
67
|
+
url: url.toString(),
|
|
68
|
+
params: {
|
|
69
|
+
sessionId,
|
|
70
|
+
},
|
|
71
|
+
timeout: 10000,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
throw new golemio_errors_1.GeneralError("Cannot terminate PPAS AVE API session", PpasAveApiHelper.name, err);
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Return resource types/identifiers
|
|
81
|
+
*/
|
|
82
|
+
static get resourceType() {
|
|
83
|
+
return {
|
|
84
|
+
Logon: "logon.rails",
|
|
85
|
+
LogOff: "LogOff.rails",
|
|
86
|
+
Places: "GetPlaces.rails",
|
|
87
|
+
DeviceData: "GetDeviceData.rails",
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.PpasAveApiHelper = PpasAveApiHelper;
|
|
92
|
+
PpasAveApiHelper.API_DATE_TZ = "Europe/Prague";
|
|
93
|
+
//# sourceMappingURL=PpasAveApiHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PpasAveApiHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4EAAoD;AACpD,6EAA8F;AAM9F;;GAEG;AACH,MAAM,gBAAgB;IAGlB,YAAoB,OAAe,EAAU,MAAkB;QAA3C,YAAO,GAAP,OAAO,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAY;QAC/D;;WAEG;QACI,kBAAa,GAAG,GAA0B,EAAE;YAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YAEnC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,GAAG,CAAC,QAAQ,IAAI,GAAG,GAAG,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC;gBAE1D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,OAAO,CAAC;oBACjC,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;oBACnB,OAAO,EAAE;wBACL,MAAM,EAAE,kBAAkB;wBAC1B,cAAc,EAAE,mCAAmC;qBACtD;oBACD,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI,eAAe,CAAC;wBACtB,IAAI,EAAE,IAAI;wBACV,QAAQ,EAAE,IAAI;qBACjB,CAAC;iBACL,CAAC,CAAC;gBAEH,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,KAAI,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,CAAA,KAAK,QAAQ,EAAE;oBACtD,OAAO,IAAI,CAAC,SAAS,CAAC;iBACzB;gBAED,MAAM,IAAI,6BAAY,CAAC,2DAA2D,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;aAC9G;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;gBAED,MAAM,IAAI,6BAAY,CAAC,qCAAqC,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC7F;QACL,CAAC,CAAA,CAAC;QAEF;;WAEG;QACI,qBAAgB,GAAG,CAAO,SAAiB,EAAiB,EAAE;YACjE,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,GAAG,CAAC,QAAQ,IAAI,GAAG,GAAG,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC;gBAE3D,MAAM,eAAK,CAAC,OAAO,CAAC;oBAChB,MAAM,EAAE,KAAK;oBACb,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;oBACnB,MAAM,EAAE;wBACJ,SAAS;qBACZ;oBACD,OAAO,EAAE,KAAK;iBACjB,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,uCAAuC,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC/F;QACL,CAAC,CAAA,CAAC;IA1DgE,CAAC;IA4DnE;;OAEG;IACI,MAAM,KAAK,YAAY;QAC1B,OAAO;YACH,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,iBAAiB;YACzB,UAAU,EAAE,qBAAqB;SAC3B,CAAC;IACf,CAAC;;AAGI,4CAAgB;AA3EP,4BAAW,GAAG,eAAe,AAAlB,CAAmB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAveApiDeviceDataParams.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams.ts"],"names":[],"mappings":""}
|
|
@@ -9,8 +9,11 @@ const CemMeasurementTransformation_1 = require("../transformations/CemMeasuremen
|
|
|
9
9
|
const FetchMeasurementOptionsStaticDataTask_1 = require("../workers/tasks/FetchMeasurementOptionsStaticDataTask");
|
|
10
10
|
const FetchVeoliaMeasurementsTask_1 = require("../workers/tasks/FetchVeoliaMeasurementsTask");
|
|
11
11
|
const Di_1 = require("../../ioc/Di");
|
|
12
|
+
const PpasAveApiDataSourceProvider_1 = require("../datasources/ppas-ave-api/PpasAveApiDataSourceProvider");
|
|
12
13
|
const StaticMeterSettingsRepository_1 = require("../repositories/StaticMeterSettingsRepository");
|
|
14
|
+
const AveMeasurementTransformation_1 = require("../transformations/AveMeasurementTransformation");
|
|
13
15
|
const FetchMeasurementsFromProvidersTask_1 = require("../workers/tasks/FetchMeasurementsFromProvidersTask");
|
|
16
|
+
const FetchPpasMeasurementsTask_1 = require("../workers/tasks/FetchPpasMeasurementsTask");
|
|
14
17
|
const WorkerContainerToken_1 = require("./WorkerContainerToken");
|
|
15
18
|
//#region Initialization
|
|
16
19
|
const CommodityContainer = Di_1.VPalaceContainer.createChildContainer();
|
|
@@ -18,6 +21,7 @@ exports.CommodityContainer = CommodityContainer;
|
|
|
18
21
|
//#endregion
|
|
19
22
|
//#region Datasource
|
|
20
23
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.CemApiDataSourceProvider, CemApiDataSourceProvider_1.CemApiDataSourceProvider);
|
|
24
|
+
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.PpasAveApiDataSourceProvider, PpasAveApiDataSourceProvider_1.PpasAveApiDataSourceProvider);
|
|
21
25
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.CommodityProviderDataSourceFactory, CommodityProviderDataSourceFactory_1.CommodityProviderDataSourceFactory);
|
|
22
26
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.StaticMeterSettingsDataSourceProvider, StaticMeterSettingsDataSourceProvider_1.StaticMeterSettingsDataSourceProvider);
|
|
23
27
|
//#endregion
|
|
@@ -27,11 +31,13 @@ CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.StaticMe
|
|
|
27
31
|
//#endregion
|
|
28
32
|
//#region Transformation
|
|
29
33
|
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.CemMeasurementTransformation, CemMeasurementTransformation_1.CemMeasurementTransformation);
|
|
34
|
+
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.AveMeasurementTransformation, AveMeasurementTransformation_1.AveMeasurementTransformation);
|
|
30
35
|
//#endregion
|
|
31
36
|
//#region Factory
|
|
32
37
|
//#endregion
|
|
33
38
|
//#region Tasks
|
|
34
39
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchMeasurementsFromProvidersTask, FetchMeasurementsFromProvidersTask_1.FetchMeasurementsFromProvidersTask);
|
|
35
40
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchVeoliaMeasurementsTask, FetchVeoliaMeasurementsTask_1.FetchVeoliaMeasurementsTask);
|
|
41
|
+
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchPpasMeasurementsTask, FetchPpasMeasurementsTask_1.FetchPpasMeasurementsTask);
|
|
36
42
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchMeasurementOptionsStaticDataTask, FetchMeasurementOptionsStaticDataTask_1.FetchMeasurementOptionsStaticDataTask);
|
|
37
43
|
//# sourceMappingURL=Di.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,0GAA4H;AAC5H,8FAAgH;AAChH,4HAA8I;AAC9I,iFAAmG;AACnG,kGAAoH;AACpH,kHAAoI;AACpI,8FAAgH;AAChH,qCAA8C;AAE9C,iGAA8F;AAC9F,4GAAyG;AACzG,iEAA8D;AAE9D,wBAAwB;AACxB,MAAM,kBAAkB,GAAwB,qBAAgB,CAAC,oBAAoB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,0GAA4H;AAC5H,8FAAgH;AAChH,4HAA8I;AAC9I,iFAAmG;AACnG,kGAAoH;AACpH,kHAAoI;AACpI,8FAAgH;AAChH,qCAA8C;AAE9C,2GAAwG;AACxG,iGAA8F;AAC9F,kGAA+F;AAC/F,4GAAyG;AACzG,0FAAuF;AACvF,iEAA8D;AAE9D,wBAAwB;AACxB,MAAM,kBAAkB,GAAwB,qBAAgB,CAAC,oBAAoB,EAAE,CAAC;AA8B/E,gDAAkB;AA7B3B,YAAY;AAEZ,oBAAoB;AACpB,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AACrG,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AAC7G,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,kCAAkC,EAAE,uEAAkC,CAAC,CAAC;AACzH,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,qCAAqC,EAAE,6EAAqC,CAAC,CAAC;AAC/H,YAAY;AAEZ,sBAAsB;AACtB,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,qBAAqB,EAAE,6CAAqB,CAAC,CAAC;AAC/F,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC,CAAC;AAC/G,YAAY;AAEZ,wBAAwB;AACxB,kBAAkB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AACtH,kBAAkB,CAAC,iBAAiB,CAAC,2CAAoB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AACtH,YAAY;AAEZ,iBAAiB;AACjB,YAAY;AAEZ,eAAe;AACf,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,kCAAkC,EAAE,uEAAkC,CAAC,CAAC;AACzH,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC;AAC3G,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AACvG,kBAAkB,CAAC,QAAQ,CAAC,2CAAoB,CAAC,qCAAqC,EAAE,6EAAqC,CAAC,CAAC"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
declare const WorkerContainerToken: {
|
|
2
2
|
CemApiDataSourceProvider: symbol;
|
|
3
|
+
PpasAveApiDataSourceProvider: symbol;
|
|
3
4
|
CommodityProviderDataSourceFactory: symbol;
|
|
4
5
|
StaticMeterSettingsDataSourceProvider: symbol;
|
|
5
6
|
CemMeasurementTransformation: symbol;
|
|
7
|
+
AveMeasurementTransformation: symbol;
|
|
6
8
|
MeasurementRepository: symbol;
|
|
7
9
|
StaticMeterSettingsRepository: symbol;
|
|
8
10
|
FetchMeasurementsFromProvidersTask: symbol;
|
|
9
11
|
FetchVeoliaMeasurementsTask: symbol;
|
|
12
|
+
FetchPpasMeasurementsTask: symbol;
|
|
10
13
|
FetchMeasurementOptionsStaticDataTask: symbol;
|
|
11
14
|
};
|
|
12
15
|
export { WorkerContainerToken };
|
|
@@ -3,13 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.WorkerContainerToken = void 0;
|
|
4
4
|
const WorkerContainerToken = {
|
|
5
5
|
CemApiDataSourceProvider: Symbol(),
|
|
6
|
+
PpasAveApiDataSourceProvider: Symbol(),
|
|
6
7
|
CommodityProviderDataSourceFactory: Symbol(),
|
|
7
8
|
StaticMeterSettingsDataSourceProvider: Symbol(),
|
|
8
9
|
CemMeasurementTransformation: Symbol(),
|
|
10
|
+
AveMeasurementTransformation: Symbol(),
|
|
9
11
|
MeasurementRepository: Symbol(),
|
|
10
12
|
StaticMeterSettingsRepository: Symbol(),
|
|
11
13
|
FetchMeasurementsFromProvidersTask: Symbol(),
|
|
12
14
|
FetchVeoliaMeasurementsTask: Symbol(),
|
|
15
|
+
FetchPpasMeasurementsTask: Symbol(),
|
|
13
16
|
FetchMeasurementOptionsStaticDataTask: Symbol(),
|
|
14
17
|
};
|
|
15
18
|
exports.WorkerContainerToken = WorkerContainerToken;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/WorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,wBAAwB,EAAE,MAAM,EAAE;IAClC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,qCAAqC,EAAE,MAAM,EAAE;IAC/C,4BAA4B,EAAE,MAAM,EAAE;IACtC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,2BAA2B,EAAE,MAAM,EAAE;IACrC,qCAAqC,EAAE,MAAM,EAAE;CAClD,CAAC;AAEO,oDAAoB"}
|
|
1
|
+
{"version":3,"file":"WorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/WorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,qCAAqC,EAAE,MAAM,EAAE;IAC/C,4BAA4B,EAAE,MAAM,EAAE;IACtC,4BAA4B,EAAE,MAAM,EAAE;IACtC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,2BAA2B,EAAE,MAAM,EAAE;IACrC,yBAAyB,EAAE,MAAM,EAAE;IACnC,qCAAqC,EAAE,MAAM,EAAE;CAClD,CAAC;AAEO,oDAAoB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IAveApiDeviceDataDto } from "../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto";
|
|
2
|
+
import { IMeasurementOption } from "../../../schema-definitions/datasources/interfaces/IStaticMeterSettings";
|
|
3
|
+
import { IMeasurementDto } from "../../../schema-definitions/models/interfaces/IMeasurementDto";
|
|
4
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
5
|
+
export declare class AveMeasurementTransformation extends AbstractTransformation<IMeasurementOption & IAveApiDeviceDataDto, IMeasurementDto> {
|
|
6
|
+
name: string;
|
|
7
|
+
protected transformInternal: (data: IMeasurementOption & IAveApiDeviceDataDto) => IMeasurementDto;
|
|
8
|
+
private formatAddress;
|
|
9
|
+
}
|
package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.AveMeasurementTransformation = void 0;
|
|
10
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
11
|
+
const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
12
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
13
|
+
const CommodityProviderEnum_1 = require("../datasources/helpers/CommodityProviderEnum");
|
|
14
|
+
const PpasAveApiHelper_1 = require("../datasources/ppas-ave-api/helpers/PpasAveApiHelper");
|
|
15
|
+
let AveMeasurementTransformation = exports.AveMeasurementTransformation = class AveMeasurementTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.name = "AveMeasurementTransformation";
|
|
19
|
+
this.transformInternal = (data) => {
|
|
20
|
+
return {
|
|
21
|
+
source: CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi,
|
|
22
|
+
measurement_category: data.Name,
|
|
23
|
+
addr: this.formatAddress(data.Addr, data.Var),
|
|
24
|
+
meter: data.Meter,
|
|
25
|
+
timestamp: luxon_1.DateTime.fromISO(data.Timestamp, {
|
|
26
|
+
zone: PpasAveApiHelper_1.PpasAveApiHelper.API_DATE_TZ,
|
|
27
|
+
}).toJSDate(),
|
|
28
|
+
variable: data.Var,
|
|
29
|
+
type: data.Type,
|
|
30
|
+
value: data.ConvertDifference,
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
this.formatAddress = (address, variable) => {
|
|
34
|
+
return address + "/" + variable;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
exports.AveMeasurementTransformation = AveMeasurementTransformation = __decorate([
|
|
39
|
+
(0, tsyringe_1.injectable)()
|
|
40
|
+
], AveMeasurementTransformation);
|
|
41
|
+
//# sourceMappingURL=AveMeasurementTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AveMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAGA,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAChE,wFAAiF;AACjF,2FAAwF;AAGjF,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAAC,IAA+C,EAAmB,EAAE;YAC/F,OAAO;gBACH,MAAM,EAAE,yCAAiB,CAAC,kBAAkB;gBAC5C,oBAAoB,EAAE,IAAI,CAAC,IAAI;gBAC/B,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;gBAC7C,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,gBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;oBACxC,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,iBAAiB;aAChC,CAAC;QACN,CAAC,CAAC;QAEM,kBAAa,GAAG,CAAC,OAAe,EAAE,QAAgB,EAAU,EAAE;YAClE,OAAO,OAAO,GAAG,GAAG,GAAG,QAAQ,CAAC;QACpC,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCAxBY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CAwBxC"}
|
|
@@ -17,6 +17,7 @@ class CommodityWorker extends integration_engine_1.AbstractWorker {
|
|
|
17
17
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchMeasurementsFromProvidersTask));
|
|
18
18
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchMeasurementOptionsStaticDataTask));
|
|
19
19
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchVeoliaMeasurementsTask));
|
|
20
|
+
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchPpasMeasurementsTask));
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
exports.CommodityWorker = CommodityWorker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/workers/CommodityWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAqF;AACrF,4CAA2C;AAC3C,kCAA+C;AAC/C,sEAAmE;
|
|
1
|
+
{"version":3,"file":"CommodityWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/workers/CommodityWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAqF;AACrF,4CAA2C;AAC3C,kCAA+C;AAC/C,sEAAmE;AAMnE,MAAa,eAAgB,SAAQ,mCAAc;IAG/C;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,uBAAW,CAAC;QAyBtB,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;QAvBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CACb,uBAAkB,CAAC,OAAO,CACtB,2CAAoB,CAAC,kCAAkC,CAC1D,CACJ,CAAC;QAEF,IAAI,CAAC,YAAY,CACb,uBAAkB,CAAC,OAAO,CACtB,2CAAoB,CAAC,qCAAqC,CAC7D,CACJ,CAAC;QAEF,IAAI,CAAC,YAAY,CACb,uBAAkB,CAAC,OAAO,CAA8B,2CAAoB,CAAC,2BAA2B,CAAC,CAC5G,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAA4B,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAC7H,CAAC;CAMJ;AA9BD,0CA8BC"}
|
package/dist/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { CommodityProviderType } from "../../../../schema-definitions/models/helpers/CommodityProviderTypeEnum";
|
|
2
|
+
import { IMeasurementsParams } from "./IMeasurementsParams";
|
|
3
|
+
export interface IPpasMeasurementsParams extends IMeasurementsParams {
|
|
4
|
+
providerType: CommodityProviderType.PpasAveV | CommodityProviderType.PpasAveM;
|
|
5
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPpasMeasurementsParams.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.ts"],"names":[],"mappings":""}
|
package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CommodityProviderType } from "../../../../schema-definitions/models/helpers/CommodityProviderTypeEnum";
|
|
2
|
+
import { IPpasMeasurementsParams } from "../interfaces/IPpasMeasurementsParams";
|
|
3
|
+
import { MeasurementsValidationSchema } from "./MeasurementsSchema";
|
|
4
|
+
export declare class PpasMeasurementsValidationSchema extends MeasurementsValidationSchema implements IPpasMeasurementsParams {
|
|
5
|
+
providerType: CommodityProviderType.PpasAveV | CommodityProviderType.PpasAveM;
|
|
6
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
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.PpasMeasurementsValidationSchema = void 0;
|
|
13
|
+
const CommodityProviderTypeEnum_1 = require("../../../../schema-definitions/models/helpers/CommodityProviderTypeEnum");
|
|
14
|
+
const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
|
|
15
|
+
const MeasurementsSchema_1 = require("./MeasurementsSchema");
|
|
16
|
+
class PpasMeasurementsValidationSchema extends MeasurementsSchema_1.MeasurementsValidationSchema {
|
|
17
|
+
}
|
|
18
|
+
exports.PpasMeasurementsValidationSchema = PpasMeasurementsValidationSchema;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, class_validator_1.IsEnum)([CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveV, CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveM]),
|
|
21
|
+
__metadata("design:type", String)
|
|
22
|
+
], PpasMeasurementsValidationSchema.prototype, "providerType", void 0);
|
|
23
|
+
//# sourceMappingURL=PpasMeasurementsSchema.js.map
|
package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PpasMeasurementsSchema.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uHAAsF;AACtF,+EAAmE;AAEnE,6DAAoE;AAEpE,MAAa,gCAAiC,SAAQ,iDAA4B;CAGjF;AAHD,4EAGC;AADG;IADC,IAAA,wBAAM,EAAC,CAAC,iDAAqB,CAAC,QAAQ,EAAE,iDAAqB,CAAC,QAAQ,CAAC,CAAC;;sEACM"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MeasurementRepository } from "../../repositories/MeasurementRepository";
|
|
2
|
+
import { IMeasurementDto } from "../../../../schema-definitions/models/interfaces/IMeasurementDto";
|
|
3
|
+
import { AbstractTask } from "@golemio/core/dist/integration-engine";
|
|
4
|
+
import { IMeasurementsParams } from "../interfaces/IMeasurementsParams";
|
|
5
|
+
export declare abstract class AbstractFetchMeasurementsTask<T extends IMeasurementsParams> extends AbstractTask<T> {
|
|
6
|
+
protected abstract measurementRepository: MeasurementRepository;
|
|
7
|
+
constructor();
|
|
8
|
+
protected saveConsumptionData(data: IMeasurementDto[]): Promise<void>;
|
|
9
|
+
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
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.AbstractFetchMeasurementsTask = void 0;
|
|
13
|
+
const constants_1 = require("../../constants");
|
|
14
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
15
|
+
const MEASUREMENTS_BATCH_SIZE = 5000;
|
|
16
|
+
class AbstractFetchMeasurementsTask extends integration_engine_1.AbstractTask {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(constants_1.WORKER_NAME);
|
|
19
|
+
}
|
|
20
|
+
saveConsumptionData(data) {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
for (let i = 0; i < data.length; i += MEASUREMENTS_BATCH_SIZE) {
|
|
23
|
+
let batch = data.slice(i, i + MEASUREMENTS_BATCH_SIZE);
|
|
24
|
+
// Remove duplicated measurements from the batch
|
|
25
|
+
batch = batch.filter((item, index, self) => index ===
|
|
26
|
+
self.findIndex((t) => t.timestamp.getTime() === item.timestamp.getTime() &&
|
|
27
|
+
t.addr === item.addr &&
|
|
28
|
+
t.variable === item.variable &&
|
|
29
|
+
t.meter === item.meter));
|
|
30
|
+
yield this.measurementRepository.bulkSave(batch);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.AbstractFetchMeasurementsTask = AbstractFetchMeasurementsTask;
|
|
36
|
+
//# sourceMappingURL=AbstractFetchMeasurementsTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractFetchMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/AbstractFetchMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAgE;AAGhE,8EAAqE;AAGrE,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,MAAsB,6BAA6D,SAAQ,iCAAe;IAGtG;QACI,KAAK,CAAC,uBAAW,CAAC,CAAC;IACvB,CAAC;IAEe,mBAAmB,CAAC,IAAuB;;YACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE;gBAC3D,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;gBAEvD,gDAAgD;gBAChD,KAAK,GAAG,KAAK,CAAC,MAAM,CAChB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAClB,KAAK;oBACL,IAAI,CAAC,SAAS,CACV,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;wBAClD,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;wBACpB,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;wBAC5B,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAC7B,CACR,CAAC;gBAEF,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACpD;QACL,CAAC;KAAA;CACJ;AA3BD,sEA2BC"}
|
|
@@ -35,6 +35,8 @@ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
|
35
35
|
const optionLookupKeys = {
|
|
36
36
|
[CommodityProviderTypeEnum_1.CommodityProviderType.CemApiVeoliaWater]: "CemWaterOptions",
|
|
37
37
|
[CommodityProviderTypeEnum_1.CommodityProviderType.CemApiVeoliaElectro]: "CemElectroOptions",
|
|
38
|
+
[CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveV]: "AveVOptions",
|
|
39
|
+
[CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveM]: "AveMOptions",
|
|
38
40
|
};
|
|
39
41
|
let FetchMeasurementOptionsStaticDataTask = exports.FetchMeasurementOptionsStaticDataTask = class FetchMeasurementOptionsStaticDataTask extends AbstractEmptyTask_1.AbstractEmptyTask {
|
|
40
42
|
constructor(logger, staticDataSourceProvider, meterSettingsRepository) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchMeasurementOptionsStaticDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,+HAA8I;AAC9I,yEAAwF;AACxF,oGAAmH;AAEnH,uHAAsF;AACtF,yHAAwF;AACxF,wEAAqE;AAErE,uGAAoG;AACpG,6EAAwE;AACxE,iEAAwE;AAExE,MAAM,gBAAgB,GAAG;IACrB,CAAC,iDAAqB,CAAC,iBAAiB,CAAC,EAAE,iBAAiB;IAC5D,CAAC,iDAAqB,CAAC,mBAAmB,CAAC,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"FetchMeasurementOptionsStaticDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,+HAA8I;AAC9I,yEAAwF;AACxF,oGAAmH;AAEnH,uHAAsF;AACtF,yHAAwF;AACxF,wEAAqE;AAErE,uGAAoG;AACpG,6EAAwE;AACxE,iEAAwE;AAExE,MAAM,gBAAgB,GAAG;IACrB,CAAC,iDAAqB,CAAC,iBAAiB,CAAC,EAAE,iBAAiB;IAC5D,CAAC,iDAAqB,CAAC,mBAAmB,CAAC,EAAE,mBAAmB;IAChE,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,aAAa;IAC/C,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,aAAa;CAClD,CAAC;AAGK,IAAM,qCAAqC,mDAA3C,MAAM,qCAAsC,SAAQ,qCAAiB;IAIxE,YAC8B,MAAuB,EAEjD,wBAAuE,EAEvE,uBAA8D;QAE9D,KAAK,CAAC,uBAAW,CAAC,CAAC;QANe,WAAM,GAAN,MAAM,CAAS;QAEzC,6BAAwB,GAAxB,wBAAwB,CAAuC;QAE/D,4BAAuB,GAAvB,uBAAuB,CAA+B;QARlD,cAAS,GAAG,mCAAmC,CAAC;QAChD,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ;IAUnD,CAAC;IAEe,OAAO;;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,aAAa,EAAE,CAAC;YACjE,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;YAEhD,KAAK,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;gBACrE,MAAM,OAAO,GAAG,IAAI,CAAC,8BAA8B,CAAC,aAAa,EAAE,GAAiC,CAAC,CAAC;gBACtG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtB,SAAS;iBACZ;gBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,MAAM,4BAA4B,iBAAiB,EAAE,CAAC,CAAC;gBAC3F,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CACvC,iBAA0C,EAC1C,mDAAsB,CAAC,kBAAkB,EACzC,OAAO,CACV,CAAC;aACL;QACL,CAAC;KAAA;IAEO,8BAA8B,CAClC,aAAmC,EACnC,GAA+B;QAE/B,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,CAAA,EAAE;YAC/B,MAAM,IAAI,6BAAY,CAAC,0CAA0C,GAAG,EAAE,CAAC,CAAC;SAC3E;QACD,OAAO,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,CAAC;IACxC,CAAC;CACJ,CAAA;gDA3CY,qCAAqC;IADjD,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;IACxB,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,qCAAqC,CAAC,CAAA;IAElE,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAA;6CADzB,6EAAqC;QAEtC,6DAA6B;GATzD,qCAAqC,CA2CjD"}
|
|
@@ -35,6 +35,7 @@ let FetchMeasurementsFromProvidersTask = exports.FetchMeasurementsFromProvidersT
|
|
|
35
35
|
execute(data) {
|
|
36
36
|
return __awaiter(this, void 0, void 0, function* () {
|
|
37
37
|
for (const { dateFrom, dateTo } of this.generateDateParams(data)) {
|
|
38
|
+
// Veolia
|
|
38
39
|
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, "fetchVeoliaMeasurements", {
|
|
39
40
|
providerType: CommodityProviderTypeEnum_1.CommodityProviderType.CemApiVeoliaWater,
|
|
40
41
|
dateFrom,
|
|
@@ -45,6 +46,17 @@ let FetchMeasurementsFromProvidersTask = exports.FetchMeasurementsFromProvidersT
|
|
|
45
46
|
dateFrom,
|
|
46
47
|
dateTo,
|
|
47
48
|
});
|
|
49
|
+
// PPAS - Pražská plynárenská
|
|
50
|
+
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, "fetchPpasMeasurements", {
|
|
51
|
+
providerType: CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveV,
|
|
52
|
+
dateFrom,
|
|
53
|
+
dateTo,
|
|
54
|
+
});
|
|
55
|
+
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, "fetchPpasMeasurements", {
|
|
56
|
+
providerType: CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveM,
|
|
57
|
+
dateFrom,
|
|
58
|
+
dateTo,
|
|
59
|
+
});
|
|
48
60
|
}
|
|
49
61
|
});
|
|
50
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchMeasurementsFromProvidersTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,uHAAsF;AACtF,8EAAmF;AACnF,2DAAqE;AACrE,iEAAgE;AAGhE,yEAAgF;AAGzE,IAAM,kCAAkC,gDAAxC,MAAM,kCAAmC,SAAQ,iCAAmC;IAKvF;QACI,KAAK,CAAC,uBAAW,CAAC,CAAC;QALP,cAAS,GAAG,gCAAgC,CAAC;QAC7C,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,qDAA8B,CAAC;IAIxD,CAAC;IAEY,OAAO,CAAC,IAA2B;;YAC5C,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBAC9D,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,yBAAyB,EAAE;oBAC5E,YAAY,EAAE,iDAAqB,CAAC,iBAAiB;oBACrD,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;gBAEH,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,yBAAyB,EAAE;oBAC5E,YAAY,EAAE,iDAAqB,CAAC,mBAAmB;oBACvD,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;aACN;QACL,CAAC;KAAA;IAEO,CAAC,kBAAkB,CAAC,IAA2B;QACnD,MAAM,WAAW,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAE9G,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAExC,MAAM;gBACF,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE;gBAC3B,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE;aAC1B,CAAC;SACL;IACL,CAAC;CACJ,CAAA;
|
|
1
|
+
{"version":3,"file":"FetchMeasurementsFromProvidersTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,uHAAsF;AACtF,8EAAmF;AACnF,2DAAqE;AACrE,iEAAgE;AAGhE,yEAAgF;AAGzE,IAAM,kCAAkC,gDAAxC,MAAM,kCAAmC,SAAQ,iCAAmC;IAKvF;QACI,KAAK,CAAC,uBAAW,CAAC,CAAC;QALP,cAAS,GAAG,gCAAgC,CAAC;QAC7C,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,qDAA8B,CAAC;IAIxD,CAAC;IAEY,OAAO,CAAC,IAA2B;;YAC5C,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBAC9D,SAAS;gBACT,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,yBAAyB,EAAE;oBAC5E,YAAY,EAAE,iDAAqB,CAAC,iBAAiB;oBACrD,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;gBAEH,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,yBAAyB,EAAE;oBAC5E,YAAY,EAAE,iDAAqB,CAAC,mBAAmB;oBACvD,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,EAAE;oBAC1E,YAAY,EAAE,iDAAqB,CAAC,QAAQ;oBAC5C,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;gBAEH,iCAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,EAAE;oBAC1E,YAAY,EAAE,iDAAqB,CAAC,QAAQ;oBAC5C,QAAQ;oBACR,MAAM;iBACT,CAAC,CAAC;aACN;QACL,CAAC;KAAA;IAEO,CAAC,kBAAkB,CAAC,IAA2B;QACnD,MAAM,WAAW,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAE9G,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAExC,MAAM;gBACF,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE;gBAC3B,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE;aAC1B,CAAC;SACL;IACL,CAAC;CACJ,CAAA;6CAtDY,kCAAkC;IAD9C,IAAA,qBAAU,GAAE;;GACA,kCAAkC,CAsD9C"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ICommodityProviderDataSourceFactory } from "../../datasources/interfaces/ICommodityProviderDataSourceFactory";
|
|
2
|
+
import { MeasurementRepository } from "../../repositories/MeasurementRepository";
|
|
3
|
+
import { StaticMeterSettingsRepository } from "../../repositories/StaticMeterSettingsRepository";
|
|
4
|
+
import { AveMeasurementTransformation } from "../../transformations/AveMeasurementTransformation";
|
|
5
|
+
import { ILogger } from "@golemio/core/dist/helpers";
|
|
6
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
7
|
+
import { IPpasMeasurementsParams } from "../interfaces/IPpasMeasurementsParams";
|
|
8
|
+
import { PpasMeasurementsValidationSchema } from "../schema/PpasMeasurementsSchema";
|
|
9
|
+
import { AbstractFetchMeasurementsTask } from "./AbstractFetchMeasurementsTask";
|
|
10
|
+
export declare class FetchPpasMeasurementsTask extends AbstractFetchMeasurementsTask<IPpasMeasurementsParams> {
|
|
11
|
+
private config;
|
|
12
|
+
private logger;
|
|
13
|
+
private dataSourceFactory;
|
|
14
|
+
private measurementTransformation;
|
|
15
|
+
protected measurementRepository: MeasurementRepository;
|
|
16
|
+
private meterSettingsRepository;
|
|
17
|
+
readonly queueName = "fetchPpasMeasurements";
|
|
18
|
+
readonly queueTtl: number;
|
|
19
|
+
readonly schema: typeof PpasMeasurementsValidationSchema;
|
|
20
|
+
constructor(config: ISimpleConfig, logger: ILogger, dataSourceFactory: ICommodityProviderDataSourceFactory, measurementTransformation: AveMeasurementTransformation, measurementRepository: MeasurementRepository, meterSettingsRepository: StaticMeterSettingsRepository);
|
|
21
|
+
execute(data: IPpasMeasurementsParams): Promise<void>;
|
|
22
|
+
private getProviderConfig;
|
|
23
|
+
/** Splits the measurement options into individual options (multiple variables) */
|
|
24
|
+
private splitOptionsByVars;
|
|
25
|
+
private generateMeasurements;
|
|
26
|
+
private getDataFromDataSource;
|
|
27
|
+
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
24
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
25
|
+
var m = o[Symbol.asyncIterator], i;
|
|
26
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
27
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
28
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
29
|
+
};
|
|
30
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
31
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
32
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
33
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
34
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
35
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
36
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
37
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
38
|
+
function fulfill(value) { resume("next", value); }
|
|
39
|
+
function reject(value) { resume("throw", value); }
|
|
40
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
41
|
+
};
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.FetchPpasMeasurementsTask = void 0;
|
|
44
|
+
const CommodityProviderEnum_1 = require("../../datasources/helpers/CommodityProviderEnum");
|
|
45
|
+
const PpasAveApiHelper_1 = require("../../datasources/ppas-ave-api/helpers/PpasAveApiHelper");
|
|
46
|
+
const WorkerContainerToken_1 = require("../../ioc/WorkerContainerToken");
|
|
47
|
+
const MeasurementRepository_1 = require("../../repositories/MeasurementRepository");
|
|
48
|
+
const StaticMeterSettingsRepository_1 = require("../../repositories/StaticMeterSettingsRepository");
|
|
49
|
+
const AveMeasurementTransformation_1 = require("../../transformations/AveMeasurementTransformation");
|
|
50
|
+
const StaticDataResourceTypeEnum_1 = require("../../../../schema-definitions/models/helpers/StaticDataResourceTypeEnum");
|
|
51
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
52
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
53
|
+
const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
54
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
55
|
+
const PpasMeasurementsSchema_1 = require("../schema/PpasMeasurementsSchema");
|
|
56
|
+
const AbstractFetchMeasurementsTask_1 = require("./AbstractFetchMeasurementsTask");
|
|
57
|
+
let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchPpasMeasurementsTask extends AbstractFetchMeasurementsTask_1.AbstractFetchMeasurementsTask {
|
|
58
|
+
constructor(config, logger, dataSourceFactory, measurementTransformation, measurementRepository, meterSettingsRepository) {
|
|
59
|
+
super();
|
|
60
|
+
this.config = config;
|
|
61
|
+
this.logger = logger;
|
|
62
|
+
this.dataSourceFactory = dataSourceFactory;
|
|
63
|
+
this.measurementTransformation = measurementTransformation;
|
|
64
|
+
this.measurementRepository = measurementRepository;
|
|
65
|
+
this.meterSettingsRepository = meterSettingsRepository;
|
|
66
|
+
this.queueName = "fetchPpasMeasurements";
|
|
67
|
+
this.queueTtl = 60 * 60 * 1000;
|
|
68
|
+
this.schema = PpasMeasurementsSchema_1.PpasMeasurementsValidationSchema;
|
|
69
|
+
}
|
|
70
|
+
execute(data) {
|
|
71
|
+
var _a, e_1, _b, _c;
|
|
72
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
+
let measurementOptions = yield this.meterSettingsRepository.getData(data.providerType, StaticDataResourceTypeEnum_1.StaticDataResourceType.MeasurementOptions);
|
|
74
|
+
if (!measurementOptions) {
|
|
75
|
+
throw new golemio_errors_1.GeneralError("Measurement options not found", this.constructor.name);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
measurementOptions = this.splitOptionsByVars(measurementOptions);
|
|
79
|
+
}
|
|
80
|
+
const { baseUrl, config } = this.getProviderConfig(data);
|
|
81
|
+
const aveApiHelper = new PpasAveApiHelper_1.PpasAveApiHelper(baseUrl, config);
|
|
82
|
+
const sessionId = yield aveApiHelper.createSession();
|
|
83
|
+
try {
|
|
84
|
+
const places = yield this.getDataFromDataSource("Places", sessionId);
|
|
85
|
+
let consumptionData = [];
|
|
86
|
+
for (const place of places) {
|
|
87
|
+
const options = measurementOptions.filter((item) => item.MeterSerialNumber === place.DeviceSerialNumber && item.Meter === place.Eic);
|
|
88
|
+
if (options.length === 0) {
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
this.logger.info(`Fetching data for device ${place.DeviceSerialNumber}`);
|
|
92
|
+
const measurementChunkGenerator = this.generateMeasurements(Object.assign(Object.assign({}, data), { placeId: place.Id }), sessionId);
|
|
93
|
+
try {
|
|
94
|
+
for (var _d = true, measurementChunkGenerator_1 = (e_1 = void 0, __asyncValues(measurementChunkGenerator)), measurementChunkGenerator_1_1; measurementChunkGenerator_1_1 = yield measurementChunkGenerator_1.next(), _a = measurementChunkGenerator_1_1.done, !_a; _d = true) {
|
|
95
|
+
_c = measurementChunkGenerator_1_1.value;
|
|
96
|
+
_d = false;
|
|
97
|
+
const measurements = _c;
|
|
98
|
+
for (const option of options) {
|
|
99
|
+
const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement(Object.assign(Object.assign({}, item), option)));
|
|
100
|
+
consumptionData = consumptionData.concat(consumptionBatch);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
105
|
+
finally {
|
|
106
|
+
try {
|
|
107
|
+
if (!_d && !_a && (_b = measurementChunkGenerator_1.return)) yield _b.call(measurementChunkGenerator_1);
|
|
108
|
+
}
|
|
109
|
+
finally { if (e_1) throw e_1.error; }
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
yield this.saveConsumptionData(consumptionData);
|
|
113
|
+
}
|
|
114
|
+
finally {
|
|
115
|
+
yield aveApiHelper.terminateSession(sessionId);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
getProviderConfig(data) {
|
|
120
|
+
return {
|
|
121
|
+
baseUrl: this.config.getValue("module.energetics.commodityProviders.ppas_ave_api.baseUrl"),
|
|
122
|
+
config: this.config.getValue(`module.energetics.commodityProviders.${data.providerType}`),
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/** Splits the measurement options into individual options (multiple variables) */
|
|
126
|
+
splitOptionsByVars(options) {
|
|
127
|
+
let result = [];
|
|
128
|
+
for (const option of options) {
|
|
129
|
+
const vars = option.Var.split("|");
|
|
130
|
+
result = result.concat(vars.map((v) => (Object.assign(Object.assign({}, option), { Var: v }))));
|
|
131
|
+
}
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
generateMeasurements(data, sessionId) {
|
|
135
|
+
return __asyncGenerator(this, arguments, function* generateMeasurements_1() {
|
|
136
|
+
const dateFrom = luxon_1.DateTime.fromISO(data.dateFrom).startOf("day");
|
|
137
|
+
const dateTo = luxon_1.DateTime.fromISO(data.dateTo).startOf("day");
|
|
138
|
+
const intervals = luxon_1.Interval.fromDateTimes(dateFrom, dateTo).splitBy({ days: 5 });
|
|
139
|
+
for (const interval of intervals) {
|
|
140
|
+
const start = interval.start.startOf("day");
|
|
141
|
+
const end = interval.end.startOf("day");
|
|
142
|
+
yield yield __await(this.getDataFromDataSource("DeviceData", sessionId, {
|
|
143
|
+
placeId: data.placeId,
|
|
144
|
+
dateFrom: start.toISODate(),
|
|
145
|
+
dateTo: end.toISODate(),
|
|
146
|
+
isoDate: "1",
|
|
147
|
+
dataType: "2", // fill all measurement values (we need the ConvertDifference value)
|
|
148
|
+
}));
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
getDataFromDataSource(resourceTypeKey, sessionId, params) {
|
|
153
|
+
const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi, PpasAveApiHelper_1.PpasAveApiHelper.resourceType[resourceTypeKey], sessionId, params);
|
|
154
|
+
return dataSource.getAll();
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
exports.FetchPpasMeasurementsTask = FetchPpasMeasurementsTask = __decorate([
|
|
158
|
+
(0, tsyringe_1.injectable)(),
|
|
159
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
160
|
+
__param(1, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
|
|
161
|
+
__param(2, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.CommodityProviderDataSourceFactory)),
|
|
162
|
+
__param(3, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.AveMeasurementTransformation)),
|
|
163
|
+
__param(4, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.MeasurementRepository)),
|
|
164
|
+
__param(5, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.StaticMeterSettingsRepository)),
|
|
165
|
+
__metadata("design:paramtypes", [Object, Object, Object, AveMeasurementTransformation_1.AveMeasurementTransformation,
|
|
166
|
+
MeasurementRepository_1.MeasurementRepository,
|
|
167
|
+
StaticMeterSettingsRepository_1.StaticMeterSettingsRepository])
|
|
168
|
+
], FetchPpasMeasurementsTask);
|
|
169
|
+
//# sourceMappingURL=FetchPpasMeasurementsTask.js.map
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchPpasMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.d.ts
CHANGED
|
@@ -4,15 +4,15 @@ import { StaticMeterSettingsRepository } from "../../repositories/StaticMeterSet
|
|
|
4
4
|
import { CemMeasurementTransformation } from "../../transformations/CemMeasurementTransformation";
|
|
5
5
|
import { ILogger } from "@golemio/core/dist/helpers";
|
|
6
6
|
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
7
|
-
import { AbstractTask } from "@golemio/core/dist/integration-engine";
|
|
8
7
|
import { IVeoliaMeasurementsParams } from "../interfaces/IVeoliaMeasurementsParams";
|
|
9
8
|
import { VeoliaMeasurementsValidationSchema } from "../schema/VeoliaMeasurementsSchema";
|
|
10
|
-
|
|
9
|
+
import { AbstractFetchMeasurementsTask } from "./AbstractFetchMeasurementsTask";
|
|
10
|
+
export declare class FetchVeoliaMeasurementsTask extends AbstractFetchMeasurementsTask<IVeoliaMeasurementsParams> {
|
|
11
11
|
private config;
|
|
12
12
|
private logger;
|
|
13
13
|
private dataSourceFactory;
|
|
14
14
|
private measurementTransformation;
|
|
15
|
-
|
|
15
|
+
protected measurementRepository: MeasurementRepository;
|
|
16
16
|
private meterSettingsRepository;
|
|
17
17
|
readonly queueName = "fetchVeoliaMeasurements";
|
|
18
18
|
readonly queueTtl: number;
|
|
@@ -22,5 +22,4 @@ export declare class FetchVeoliaMeasurementsTask extends AbstractTask<IVeoliaMea
|
|
|
22
22
|
private getProviderConfig;
|
|
23
23
|
private generateMeasurements;
|
|
24
24
|
private getDataFromDataSource;
|
|
25
|
-
private saveConsumptionData;
|
|
26
25
|
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js
CHANGED
|
@@ -41,7 +41,6 @@ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _ar
|
|
|
41
41
|
};
|
|
42
42
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
43
|
exports.FetchVeoliaMeasurementsTask = void 0;
|
|
44
|
-
const constants_1 = require("../../constants");
|
|
45
44
|
const CommodityProviderEnum_1 = require("../../datasources/helpers/CommodityProviderEnum");
|
|
46
45
|
const WorkerContainerToken_1 = require("../../ioc/WorkerContainerToken");
|
|
47
46
|
const MeasurementRepository_1 = require("../../repositories/MeasurementRepository");
|
|
@@ -50,15 +49,14 @@ const CemMeasurementTransformation_1 = require("../../transformations/CemMeasure
|
|
|
50
49
|
const helpers_1 = require("../../../helpers");
|
|
51
50
|
const StaticDataResourceTypeEnum_1 = require("../../../../schema-definitions/models/helpers/StaticDataResourceTypeEnum");
|
|
52
51
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
53
|
-
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
54
52
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
55
53
|
const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
56
54
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
57
55
|
const VeoliaMeasurementsSchema_1 = require("../schema/VeoliaMeasurementsSchema");
|
|
58
|
-
const
|
|
59
|
-
let FetchVeoliaMeasurementsTask = exports.FetchVeoliaMeasurementsTask = class FetchVeoliaMeasurementsTask extends
|
|
56
|
+
const AbstractFetchMeasurementsTask_1 = require("./AbstractFetchMeasurementsTask");
|
|
57
|
+
let FetchVeoliaMeasurementsTask = exports.FetchVeoliaMeasurementsTask = class FetchVeoliaMeasurementsTask extends AbstractFetchMeasurementsTask_1.AbstractFetchMeasurementsTask {
|
|
60
58
|
constructor(config, logger, dataSourceFactory, measurementTransformation, measurementRepository, meterSettingsRepository) {
|
|
61
|
-
super(
|
|
59
|
+
super();
|
|
62
60
|
this.config = config;
|
|
63
61
|
this.logger = logger;
|
|
64
62
|
this.dataSourceFactory = dataSourceFactory;
|
|
@@ -143,20 +141,6 @@ let FetchVeoliaMeasurementsTask = exports.FetchVeoliaMeasurementsTask = class Fe
|
|
|
143
141
|
const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.UnimonitorCemApi, helpers_1.UnimonitorCemApiHelper.resourceType[resourceTypeKey], authCookie, params);
|
|
144
142
|
return dataSource.getAll();
|
|
145
143
|
}
|
|
146
|
-
saveConsumptionData(data) {
|
|
147
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
for (let i = 0; i < data.length; i += MEASUREMENTS_BATCH_SIZE) {
|
|
149
|
-
let batch = data.slice(i, i + MEASUREMENTS_BATCH_SIZE);
|
|
150
|
-
// Remove duplicated measurements from the batch
|
|
151
|
-
batch = batch.filter((item, index, self) => index ===
|
|
152
|
-
self.findIndex((t) => t.timestamp.getTime() === item.timestamp.getTime() &&
|
|
153
|
-
t.addr === item.addr &&
|
|
154
|
-
t.variable === item.variable &&
|
|
155
|
-
t.meter === item.meter));
|
|
156
|
-
yield this.measurementRepository.bulkSave(batch);
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
144
|
};
|
|
161
145
|
exports.FetchVeoliaMeasurementsTask = FetchVeoliaMeasurementsTask = __decorate([
|
|
162
146
|
(0, tsyringe_1.injectable)(),
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchVeoliaMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"FetchVeoliaMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.aveApiDeviceDataJsonSchema = void 0;
|
|
4
|
+
exports.aveApiDeviceDataJsonSchema = {
|
|
5
|
+
type: "array",
|
|
6
|
+
items: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
Timestamp: { type: "string" },
|
|
10
|
+
ConvertDifference: { type: "number" },
|
|
11
|
+
},
|
|
12
|
+
required: ["Timestamp", "ConvertDifference"],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=AveApiDeviceDataJsonSchema.js.map
|
package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AveApiDeviceDataJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,0BAA0B,GAA2C;IAC9E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SACxC;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,mBAAmB,CAAC;KAC/C;CACJ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.aveApiPlacesJsonSchema = void 0;
|
|
4
|
+
exports.aveApiPlacesJsonSchema = {
|
|
5
|
+
type: "array",
|
|
6
|
+
items: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
Id: { type: "number" },
|
|
10
|
+
Eic: { type: "string" },
|
|
11
|
+
DeviceSerialNumber: { type: "string" },
|
|
12
|
+
},
|
|
13
|
+
required: ["Id", "Eic", "DeviceSerialNumber"],
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=AveApiPlacesJsonSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AveApiPlacesJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,sBAAsB,GAAsC;IACrE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SACzC;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC;KAChD;CACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAveApiDeviceDataDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto.ts"],"names":[],"mappings":""}
|
package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAveApiPlaceDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.ts"],"names":[],"mappings":""}
|
|
@@ -5,5 +5,7 @@ var CommodityProviderType;
|
|
|
5
5
|
(function (CommodityProviderType) {
|
|
6
6
|
CommodityProviderType["CemApiVeoliaWater"] = "cem_api_veolia_water";
|
|
7
7
|
CommodityProviderType["CemApiVeoliaElectro"] = "cem_api_veolia_electro";
|
|
8
|
+
CommodityProviderType["PpasAveV"] = "ppas_ave_api_v";
|
|
9
|
+
CommodityProviderType["PpasAveM"] = "ppas_ave_api_m";
|
|
8
10
|
})(CommodityProviderType || (exports.CommodityProviderType = CommodityProviderType = {}));
|
|
9
11
|
//# sourceMappingURL=CommodityProviderTypeEnum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityProviderTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/CommodityProviderTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"CommodityProviderTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/CommodityProviderTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC7B,mEAA0C,CAAA;IAC1C,uEAA8C,CAAA;IAC9C,oDAA2B,CAAA;IAC3B,oDAA2B,CAAA;AAC/B,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC"}
|