@golemio/energetics 1.4.13 → 1.5.0-dev.2088126876
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/00_clear_test_data.sql +2 -1
- package/db/migrations/postgresql/20250213141826-add-device-serial-id.js +53 -0
- package/db/migrations/postgresql/20250819094030-enapo-pre.js +53 -0
- package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-up.sql +1 -0
- package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-down.sql +3 -0
- package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-up.sql +31 -0
- package/dist/input-gateway/pre/PreInputRouter.js +5 -6
- package/dist/input-gateway/pre/PreInputRouter.js.map +1 -1
- package/dist/input-gateway/pre/PreJsonInputController.d.ts +2 -4
- package/dist/input-gateway/pre/PreJsonInputController.js +8 -12
- package/dist/input-gateway/pre/PreJsonInputController.js.map +1 -1
- package/dist/integration-engine/commodity-providers/helper/EnapoMeasurementsDataNormalizer.d.ts +1 -1
- package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.d.ts +1 -2
- package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.js +4 -4
- package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +3 -2
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +2 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.d.ts +2 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js +2 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js +2 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js +3 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js +4 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/enapo/helpers/MeasurementsDataNormalizer.d.ts +1 -1
- package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.d.ts +17 -0
- package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.js +3 -0
- package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.js.map +1 -0
- package/dist/integration-engine/enapo/ioc/Di.js +14 -5
- package/dist/integration-engine/enapo/ioc/Di.js.map +1 -1
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.d.ts +6 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js +6 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/enapo/repositories/EnapoMeasurementsRepository.js +1 -1
- package/dist/integration-engine/enapo/repositories/EnapoMeasurementsRepository.js.map +1 -1
- package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.d.ts +5 -0
- package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js +32 -0
- package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.d.ts +1 -1
- package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js +4 -3
- package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.d.ts +8 -0
- package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js +64 -0
- package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.d.ts +7 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js +66 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.d.ts +7 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js +43 -0
- package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.d.ts +4 -0
- package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js +35 -0
- package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js.map +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js.map +1 -1
- package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.d.ts +1 -1
- package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js +1 -1
- package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.d.ts +26 -0
- package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js +81 -0
- package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js.map +1 -0
- package/dist/output-gateway/controllers/helpers/parsePaginationParams.d.ts +1 -1
- package/dist/output-gateway/controllers/helpers/parsePaginationParams.js +4 -2
- package/dist/output-gateway/controllers/helpers/parsePaginationParams.js.map +1 -1
- package/dist/output-gateway/controllers/v2/BuildingsController.js +3 -1
- package/dist/output-gateway/controllers/v2/BuildingsController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2MeasurementsController.js +13 -10
- package/dist/output-gateway/controllers/v2/V2MeasurementsController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js +3 -1
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2DevicesRouter.js +1 -1
- package/dist/output-gateway/routers/v2/V2DevicesRouter.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2MeasurementsRouter.js +2 -2
- package/dist/output-gateway/routers/v2/V2MeasurementsRouter.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2OrganizationsRouter.js +1 -1
- package/dist/output-gateway/routers/v2/V2OrganizationsRouter.js.map +1 -1
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js +4 -3
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js.map +1 -1
- package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js +113 -0
- package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.d.ts +6 -1
- package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.js +5 -0
- package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.js.map +1 -1
- package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.d.ts +3 -2
- package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.d.ts +17 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.d.ts +18 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.d.ts +37 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.js.map +1 -0
- package/dist/schema-definitions/models/MeasurementsModel.d.ts +1 -0
- package/dist/schema-definitions/models/MeasurementsModel.js +15 -1
- package/dist/schema-definitions/models/MeasurementsModel.js.map +1 -1
- package/dist/schema-definitions/models/{EnapoMeasurementsModel.d.ts → enapo/EnapoMeasurementsModel.d.ts} +2 -1
- package/dist/schema-definitions/models/{EnapoMeasurementsModel.js → enapo/EnapoMeasurementsModel.js} +9 -5
- package/dist/schema-definitions/models/enapo/EnapoMeasurementsModel.js.map +1 -0
- package/dist/schema-definitions/models/enapo/EnapoMetadataModel.d.ts +18 -0
- package/dist/schema-definitions/models/enapo/EnapoMetadataModel.js +60 -0
- package/dist/schema-definitions/models/enapo/EnapoMetadataModel.js.map +1 -0
- package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.d.ts +26 -0
- package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js +89 -0
- package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js.map +1 -0
- package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.d.ts +4 -0
- package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.js +9 -0
- package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.js.map +1 -0
- package/dist/schema-definitions/models/{interfaces → enapo/interfaces}/IEnapoMeasurmentsDto.d.ts +2 -1
- package/dist/schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IMeasurementDto.d.ts +1 -0
- package/docs/implementation_documentation.md +30 -3
- package/docs/openapi-input.yaml +27 -1
- package/package.json +4 -4
- package/dist/input-gateway/helpers/PreDataExtractor.d.ts +0 -5
- package/dist/input-gateway/helpers/PreDataExtractor.js +0 -20
- package/dist/input-gateway/helpers/PreDataExtractor.js.map +0 -1
- package/dist/schema-definitions/models/EnapoMeasurementsModel.js.map +0 -1
- package/dist/schema-definitions/models/interfaces/IEnapoMeasurmentsDto.js.map +0 -1
- /package/dist/schema-definitions/models/{interfaces → enapo/interfaces}/IEnapoMeasurmentsDto.js +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface IPrediMetadata {
|
|
2
|
+
year: number;
|
|
3
|
+
month: number;
|
|
4
|
+
month_name: string;
|
|
5
|
+
days_in_stored_month: number;
|
|
6
|
+
id_company: string;
|
|
7
|
+
trade_name: string;
|
|
8
|
+
ean: string;
|
|
9
|
+
address: string;
|
|
10
|
+
tarif_type: string;
|
|
11
|
+
tarif_1T2T: string;
|
|
12
|
+
phases: string;
|
|
13
|
+
circuit_breaker: string;
|
|
14
|
+
location_type: string;
|
|
15
|
+
type_B_meter: "YES" | "NO";
|
|
16
|
+
meter_replaced: "YES" | "NO";
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPrediMetadata.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/interfaces/predi/IPrediMetadata.ts"],"names":[],"mappings":""}
|
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EnapoContainer = void 0;
|
|
4
|
+
const CommodityProviderDataSourceFactory_1 = require("../../commodity-providers/datasources/CommodityProviderDataSourceFactory");
|
|
5
|
+
const CemApiDataSourceProvider_1 = require("../../commodity-providers/datasources/cem-api/CemApiDataSourceProvider");
|
|
6
|
+
const PpasAveApiDataSourceProvider_1 = require("../../commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider");
|
|
7
|
+
const WorkerContainerToken_1 = require("../../commodity-providers/ioc/WorkerContainerToken");
|
|
4
8
|
const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
|
|
5
9
|
const EnapoMeasurementsRepository_1 = require("../repositories/EnapoMeasurementsRepository");
|
|
6
10
|
const PPasMeasurementTransformation_1 = require("../transformations/PPasMeasurementTransformation");
|
|
11
|
+
const PreDailyMeasurementsTransformation_1 = require("../transformations/pre/PreDailyMeasurementsTransformation");
|
|
12
|
+
const PreMeasurementsTransformation_1 = require("../transformations/pre/PreMeasurementsTransformation");
|
|
13
|
+
const PreMetadataTransfromation_1 = require("../transformations/pre/PreMetadataTransfromation");
|
|
7
14
|
const EnapoPpasTask_1 = require("../workers/task/EnapoPpasTask");
|
|
15
|
+
const EnapoPrediTask_1 = require("../workers/task/EnapoPrediTask");
|
|
8
16
|
const EnapoWorkerContainerToken_1 = require("./EnapoWorkerContainerToken");
|
|
9
|
-
const
|
|
10
|
-
const PpasAveApiDataSourceProvider_1 = require("../../commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider");
|
|
11
|
-
const CemApiDataSourceProvider_1 = require("../../commodity-providers/datasources/cem-api/CemApiDataSourceProvider");
|
|
12
|
-
const WorkerContainerToken_1 = require("../../commodity-providers/ioc/WorkerContainerToken");
|
|
17
|
+
const PreIncomingDataLogRepository_1 = require("../repositories/PreIncomingDataLogRepository");
|
|
13
18
|
//#region Initialization
|
|
14
19
|
const EnapoContainer = Di_1.IntegrationEngineContainer.createChildContainer();
|
|
15
20
|
exports.EnapoContainer = EnapoContainer;
|
|
@@ -20,11 +25,15 @@ EnapoContainer.register(WorkerContainerToken_1.WorkerContainerToken.PpasAveApiDa
|
|
|
20
25
|
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.CommodityProviderDataSourceFactory, CommodityProviderDataSourceFactory_1.CommodityProviderDataSourceFactory);
|
|
21
26
|
//#endregion
|
|
22
27
|
//#region Repositories
|
|
23
|
-
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMeasurementsRepository, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository);
|
|
28
|
+
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMeasurementsRepository, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository).register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreIncomingDataLogRepository, PreIncomingDataLogRepository_1.PreIncomingDataLogRepository);
|
|
24
29
|
//#endregion
|
|
25
30
|
//#region Transformation
|
|
26
31
|
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PPasMeasurementTransformation, PPasMeasurementTransformation_1.PPasMeasurementTransformation);
|
|
32
|
+
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreMeasurementsTransformation, PreMeasurementsTransformation_1.PreMeasurementsTransformation);
|
|
33
|
+
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreDailyMeasurementsTransformation, PreDailyMeasurementsTransformation_1.PreDailyMeasurementsTransformation);
|
|
34
|
+
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreMetadataTransformation, PreMetadataTransfromation_1.PreMetadataTransformation);
|
|
27
35
|
//#endregion
|
|
28
36
|
//#region Tasks
|
|
29
37
|
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasTask, EnapoPpasTask_1.EnapoPpasTask);
|
|
38
|
+
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPrediTask, EnapoPrediTask_1.EnapoPrediTask);
|
|
30
39
|
//# sourceMappingURL=Di.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,qEAA0F;AAE1F,6FAA0F;AAC1F,oGAAiG;AACjG,
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,iIAA4H;AAC5H,qHAAgH;AAChH,kIAA6H;AAC7H,6FAAwF;AACxF,qEAA0F;AAE1F,6FAA0F;AAC1F,oGAAiG;AACjG,kHAA+G;AAC/G,wGAAqG;AACrG,gGAA6F;AAC7F,iEAA8D;AAC9D,mEAAgE;AAChE,2EAAwE;AACxE,+FAA4F;AAE5F,wBAAwB;AACxB,MAAM,cAAc,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAiCrF,wCAAc;AAhCvB,YAAY;AAEZ,oBAAoB;AACpB,cAAc,CAAC,QAAQ,CAAC,2CAAoB,CAAC,wBAAwB,EAAE,mDAAwB,CAAC,CAAC;AACjG,cAAc,CAAC,QAAQ,CAAC,2CAAoB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AACzG,cAAc,CAAC,QAAQ,CAAC,qDAAyB,CAAC,kCAAkC,EAAE,uEAAkC,CAAC,CAAC;AAC1H,YAAY;AAEZ,sBAAsB;AACtB,cAAc,CAAC,QAAQ,CAAC,qDAAyB,CAAC,2BAA2B,EAAE,yDAA2B,CAAC,CAAC,QAAQ,CAChH,qDAAyB,CAAC,4BAA4B,EACtD,2DAA4B,CAC/B,CAAC;AACF,YAAY;AAEZ,wBAAwB;AACxB,cAAc,CAAC,iBAAiB,CAAC,qDAAyB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC,CAAC;AACzH,cAAc,CAAC,iBAAiB,CAAC,qDAAyB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC,CAAC;AACzH,cAAc,CAAC,iBAAiB,CAC5B,qDAAyB,CAAC,kCAAkC,EAC5D,uEAAkC,CACrC,CAAC;AACF,cAAc,CAAC,iBAAiB,CAAC,qDAAyB,CAAC,yBAAyB,EAAE,qDAAyB,CAAC,CAAC;AACjH,YAAY;AAEZ,eAAe;AACf,cAAc,CAAC,QAAQ,CAAC,qDAAyB,CAAC,aAAa,EAAE,6BAAa,CAAC,CAAC;AAChF,cAAc,CAAC,QAAQ,CAAC,qDAAyB,CAAC,cAAc,EAAE,+BAAc,CAAC,CAAC"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
declare const EnapoWorkerContainerToken: {
|
|
2
2
|
CommodityProviderDataSourceFactory: symbol;
|
|
3
3
|
EnapoMeasurementsRepository: symbol;
|
|
4
|
+
EnapoMetadataRepository: symbol;
|
|
5
|
+
PreIncomingDataLogRepository: symbol;
|
|
4
6
|
PPasMeasurementTransformation: symbol;
|
|
7
|
+
PreMeasurementsTransformation: symbol;
|
|
8
|
+
PreDailyMeasurementsTransformation: symbol;
|
|
9
|
+
PreMetadataTransformation: symbol;
|
|
5
10
|
EnapoPpasTask: symbol;
|
|
11
|
+
EnapoPrediTask: symbol;
|
|
6
12
|
};
|
|
7
13
|
export { EnapoWorkerContainerToken };
|
|
@@ -7,12 +7,18 @@ const EnapoWorkerContainerToken = {
|
|
|
7
7
|
//#endregion
|
|
8
8
|
//#region Repositories
|
|
9
9
|
EnapoMeasurementsRepository: Symbol(),
|
|
10
|
+
EnapoMetadataRepository: Symbol(),
|
|
11
|
+
PreIncomingDataLogRepository: Symbol(),
|
|
10
12
|
//#endregion
|
|
11
13
|
//#region Transformations
|
|
12
14
|
PPasMeasurementTransformation: Symbol(),
|
|
15
|
+
PreMeasurementsTransformation: Symbol(),
|
|
16
|
+
PreDailyMeasurementsTransformation: Symbol(),
|
|
17
|
+
PreMetadataTransformation: Symbol(),
|
|
13
18
|
//#endregion
|
|
14
19
|
//#region Tasks
|
|
15
20
|
EnapoPpasTask: Symbol(),
|
|
21
|
+
EnapoPrediTask: Symbol(),
|
|
16
22
|
//#endregion
|
|
17
23
|
};
|
|
18
24
|
exports.EnapoWorkerContainerToken = EnapoWorkerContainerToken;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnapoWorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/EnapoWorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,yBAAyB,GAAG;IAC9B,oBAAoB;IACpB,kCAAkC,EAAE,MAAM,EAAE;IAC5C,YAAY;IAEZ,sBAAsB;IACtB,2BAA2B,EAAE,MAAM,EAAE;IACrC,YAAY;
|
|
1
|
+
{"version":3,"file":"EnapoWorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/EnapoWorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,yBAAyB,GAAG;IAC9B,oBAAoB;IACpB,kCAAkC,EAAE,MAAM,EAAE;IAC5C,YAAY;IAEZ,sBAAsB;IACtB,2BAA2B,EAAE,MAAM,EAAE;IACrC,uBAAuB,EAAE,MAAM,EAAE;IACjC,4BAA4B,EAAE,MAAM,EAAE;IACtC,YAAY;IAEZ,yBAAyB;IACzB,6BAA6B,EAAE,MAAM,EAAE;IACvC,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,eAAe;IACf,aAAa,EAAE,MAAM,EAAE;IACvB,cAAc,EAAE,MAAM,EAAE;IACxB,YAAY;CACf,CAAC;AAEO,8DAAyB"}
|
|
@@ -11,7 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.EnapoMeasurementsRepository = void 0;
|
|
13
13
|
const _sch_1 = require("../../../schema-definitions");
|
|
14
|
-
const EnapoMeasurementsModel_1 = require("../../../schema-definitions/models/EnapoMeasurementsModel");
|
|
14
|
+
const EnapoMeasurementsModel_1 = require("../../../schema-definitions/models/enapo/EnapoMeasurementsModel");
|
|
15
15
|
const PostgresModel_1 = require("@golemio/core/dist/integration-engine/models/PostgresModel");
|
|
16
16
|
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
17
17
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnapoMeasurementsRepository.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/repositories/EnapoMeasurementsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"EnapoMeasurementsRepository.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/repositories/EnapoMeasurementsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAwC;AACxC,4GAAkF;AAElF,8FAA2F;AAC3F,mFAAkF;AAClF,iEAAgE;AAGzD,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,6BAAa;IAC1D;QACI,KAAK,CACD,+CAAsB,CAAC,eAAe,EACtC;YACI,WAAW,EAAE,+CAAsB,CAAC,UAAU;YAC9C,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,+CAAsB,CAAC,cAAc;YAChE,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,+CAAsB,CAAC,0BAA0B,EAAE,+CAAsB,CAAC,UAAU,CAAC,CAChH,CAAC;IACN,CAAC;CACJ,CAAA;sCAbY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;;GACA,2BAA2B,CAavC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IModel } from "@golemio/core/dist/integration-engine/models/IModel";
|
|
2
|
+
import { PostgresModel } from "@golemio/core/dist/integration-engine/models/PostgresModel";
|
|
3
|
+
export declare class PreIncomingDataLogRepository extends PostgresModel implements IModel {
|
|
4
|
+
constructor();
|
|
5
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
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.PreIncomingDataLogRepository = void 0;
|
|
13
|
+
const _sch_1 = require("../../../schema-definitions");
|
|
14
|
+
const PreIncomingDataLogModel_1 = require("../../../schema-definitions/models/enapo/PreIncomingDataLogModel");
|
|
15
|
+
const PostgresModel_1 = require("@golemio/core/dist/integration-engine/models/PostgresModel");
|
|
16
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
17
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
18
|
+
let PreIncomingDataLogRepository = exports.PreIncomingDataLogRepository = class PreIncomingDataLogRepository extends PostgresModel_1.PostgresModel {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(PreIncomingDataLogModel_1.PreIncomingDataLogModel.REPOSITORY_NAME, {
|
|
21
|
+
pgTableName: PreIncomingDataLogModel_1.PreIncomingDataLogModel.TABLE_NAME,
|
|
22
|
+
pgSchema: _sch_1.EnergeticsSchema.pgSchema,
|
|
23
|
+
outputSequelizeAttributes: PreIncomingDataLogModel_1.PreIncomingDataLogModel.attributeModel,
|
|
24
|
+
savingType: "insertOrUpdate",
|
|
25
|
+
}, new golemio_validator_1.JSONSchemaValidator(PreIncomingDataLogModel_1.PreIncomingDataLogModel.JSON_SCHEMA_VALIDATOR_NAME, PreIncomingDataLogModel_1.PreIncomingDataLogModel.jsonSchema));
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
exports.PreIncomingDataLogRepository = PreIncomingDataLogRepository = __decorate([
|
|
29
|
+
(0, tsyringe_1.injectable)(),
|
|
30
|
+
__metadata("design:paramtypes", [])
|
|
31
|
+
], PreIncomingDataLogRepository);
|
|
32
|
+
//# sourceMappingURL=PreIncomingDataLogRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreIncomingDataLogRepository.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/repositories/PreIncomingDataLogRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAwC;AACxC,8GAAoF;AAEpF,8FAA2F;AAC3F,mFAAkF;AAClF,iEAAgE;AAGzD,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,6BAAa;IAC3D;QACI,KAAK,CACD,iDAAuB,CAAC,eAAe,EACvC;YACI,WAAW,EAAE,iDAAuB,CAAC,UAAU;YAC/C,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,iDAAuB,CAAC,cAAc;YACjE,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,iDAAuB,CAAC,0BAA0B,EAAE,iDAAuB,CAAC,UAAU,CAAC,CAClH,CAAC;IACN,CAAC;CACJ,CAAA;uCAbY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;;GACA,4BAA4B,CAaxC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IAveApiDeviceDataDto } from "../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto";
|
|
2
|
-
import { IEnapoMeasurementsDto } from "../../../schema-definitions/models/interfaces/IEnapoMeasurmentsDto";
|
|
2
|
+
import { IEnapoMeasurementsDto } from "../../../schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto";
|
|
3
3
|
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
4
4
|
import { IPPasPlaces } from "../interfaces/IPPasPlaces";
|
|
5
5
|
export declare class PPasMeasurementTransformation extends AbstractTransformation<IAveApiDeviceDataDto & IPPasPlaces, {
|
|
@@ -7,9 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.PPasMeasurementTransformation = void 0;
|
|
10
|
-
const CommodityProviderEnum_1 = require("../../commodity-providers/datasources/helpers/CommodityProviderEnum");
|
|
11
10
|
const PpasAveApiHelper_1 = require("../../commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper");
|
|
12
11
|
const MeasurementVariableEnum_1 = require("../../../schema-definitions/datasources/helpers/MeasurementVariableEnum");
|
|
12
|
+
const ProviderTypeEnum_1 = require("../../../schema-definitions/models/enapo/helpers/ProviderTypeEnum");
|
|
13
13
|
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
14
14
|
const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
15
15
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
@@ -19,11 +19,12 @@ let PPasMeasurementTransformation = exports.PPasMeasurementTransformation = clas
|
|
|
19
19
|
this.name = "PPasMeasurementTransformation";
|
|
20
20
|
this.transformInternal = (data) => {
|
|
21
21
|
const baseData = {
|
|
22
|
-
|
|
22
|
+
id: data.Eic,
|
|
23
|
+
id_type: "eic",
|
|
23
24
|
timestamp: luxon_1.DateTime.fromISO(data.StandardTime, {
|
|
24
25
|
zone: PpasAveApiHelper_1.PpasAveApiHelper.API_DATE_TZ,
|
|
25
26
|
}).toJSDate(),
|
|
26
|
-
source:
|
|
27
|
+
source: ProviderTypeEnum_1.ProviderType.PpasInternetAveApi,
|
|
27
28
|
place_id: data.PlaceId,
|
|
28
29
|
device_serial_number: data.DeviceSerialNumber,
|
|
29
30
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PPasMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/transformations/PPasMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"PPasMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/transformations/PPasMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,kHAA6G;AAE7G,qHAAuF;AACvF,wGAA0E;AAE1E,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAIzD,IAAM,6BAA6B,2CAAnC,MAAM,6BAA8B,SAAQ,+CAGlD;IAHM;;QAII,SAAI,GAAG,+BAA+B,CAAC;QAEpC,sBAAiB,GAAG,CAC1B,IAAwC,EAK1C,EAAE;YACA,MAAM,QAAQ,GAAG;gBACb,EAAE,EAAE,IAAI,CAAC,GAAG;gBACZ,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,gBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;oBAC3C,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,MAAM,EAAE,+BAAY,CAAC,kBAAkB;gBACvC,QAAQ,EAAE,IAAI,CAAC,OAAO;gBACtB,oBAAoB,EAAE,IAAI,CAAC,kBAAkB;aAChD,CAAC;YAEF,OAAO;gBACH,eAAe,EAAE;oBACb,KAAK,EAAE,IAAI,CAAC,eAAe;oBAC3B,GAAG,EAAE,6CAAmB,CAAC,IAAI;oBAC7B,GAAG,QAAQ;iBACd;gBACD,iBAAiB,EAAE;oBACf,KAAK,EAAE,IAAI,CAAC,iBAAiB;oBAC7B,GAAG,EAAE,6CAAmB,CAAC,KAAK;oBAC9B,GAAG,QAAQ;iBACd;gBACD,mBAAmB,EAAE;oBACjB,KAAK,EAAE,IAAI,CAAC,mBAAmB;oBAC/B,GAAG,EAAE,6CAAmB,CAAC,QAAQ;oBACjC,GAAG,QAAQ;iBACd;aACJ,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;wCA1CY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;GACA,6BAA6B,CA0CzC"}
|
package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IPrediInputData } from "../../../../schema-definitions/datasources/interfaces/enapo/IPrediInputData";
|
|
2
|
+
import { IEnapoMeasurementsDto } from "../../../../schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto";
|
|
3
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
4
|
+
export declare class PreDailyMeasurementsTransformation extends AbstractTransformation<IPrediInputData, IEnapoMeasurementsDto[]> {
|
|
5
|
+
name: string;
|
|
6
|
+
protected transformInternal: (data: IPrediInputData) => IEnapoMeasurementsDto[];
|
|
7
|
+
private prepareMeasurement;
|
|
8
|
+
}
|
package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PreDailyMeasurementsTransformation = void 0;
|
|
10
|
+
const MeasurementVariableEnum_1 = require("../../../../schema-definitions/datasources/helpers/MeasurementVariableEnum");
|
|
11
|
+
const ProviderTypeEnum_1 = require("../../../../schema-definitions/models/enapo/helpers/ProviderTypeEnum");
|
|
12
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
13
|
+
const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
14
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
15
|
+
const DeviceSerialNumberExtractor_1 = require("./helpers/DeviceSerialNumberExtractor");
|
|
16
|
+
let PreDailyMeasurementsTransformation = exports.PreDailyMeasurementsTransformation = class PreDailyMeasurementsTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
this.name = "PreDailyMeasurementsTransformation";
|
|
20
|
+
this.transformInternal = (data) => {
|
|
21
|
+
const output = [];
|
|
22
|
+
for (const company of Object.keys(data.stored_month.companies)) {
|
|
23
|
+
const companyData = data.stored_month.companies[company];
|
|
24
|
+
for (const ean of Object.keys(companyData.EAN_list)) {
|
|
25
|
+
const eanData = companyData.EAN_list[ean];
|
|
26
|
+
const t1WhTotalArray = eanData.daily_data_Wh_per_EAN.T1_Wh_total;
|
|
27
|
+
for (let index = 0; index < t1WhTotalArray.length; index++) {
|
|
28
|
+
const element = t1WhTotalArray[index];
|
|
29
|
+
output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_DaySum, eanData.meter_replaced));
|
|
30
|
+
}
|
|
31
|
+
const t2WhTotalArray = eanData.daily_data_Wh_per_EAN.T2_Wh_total;
|
|
32
|
+
for (let index = 0; index < t2WhTotalArray.length; index++) {
|
|
33
|
+
const element = t2WhTotalArray[index];
|
|
34
|
+
output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_NT_DaySum, eanData.meter_replaced));
|
|
35
|
+
}
|
|
36
|
+
const t1t2WhTotalArray = eanData.daily_data_Wh_per_EAN.T1_plus_T2_Wh_total;
|
|
37
|
+
for (let index = 0; index < t1t2WhTotalArray.length; index++) {
|
|
38
|
+
const element = t1t2WhTotalArray[index];
|
|
39
|
+
output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_NT_DaySum, eanData.meter_replaced));
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return output;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
prepareMeasurement(ean, data, index, placeId, element, type, meter_replaced) {
|
|
47
|
+
const currentDate = luxon_1.DateTime.fromObject({ year: data.stored_month.year, month: data.stored_month.month, day: index + 1 }, { zone: "UTC" }).toJSDate();
|
|
48
|
+
const deviceSerialNumber = DeviceSerialNumberExtractor_1.DeviceSerialNumberExtractor.extractActual(meter_replaced, currentDate, true);
|
|
49
|
+
return {
|
|
50
|
+
id: ean,
|
|
51
|
+
id_type: "ean",
|
|
52
|
+
timestamp: currentDate,
|
|
53
|
+
source: ProviderTypeEnum_1.ProviderType.PREdi,
|
|
54
|
+
place_id: placeId,
|
|
55
|
+
device_serial_number: deviceSerialNumber,
|
|
56
|
+
value: Number(element),
|
|
57
|
+
var: type,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
exports.PreDailyMeasurementsTransformation = PreDailyMeasurementsTransformation = __decorate([
|
|
62
|
+
(0, tsyringe_1.injectable)()
|
|
63
|
+
], PreDailyMeasurementsTransformation);
|
|
64
|
+
//# sourceMappingURL=PreDailyMeasurementsTransformation.js.map
|
package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreDailyMeasurementsTransformation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,wHAAuF;AAEvF,2GAA0E;AAE1E,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAChE,uFAAoF;AAG7E,IAAM,kCAAkC,gDAAxC,MAAM,kCAAmC,SAAQ,+CAAgE;IAAjH;;QACI,SAAI,GAAG,oCAAoC,CAAC;QAEzC,sBAAiB,GAAG,CAAC,IAAqB,EAA2B,EAAE;YAC7E,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;gBAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;oBACjD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAC1C,MAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,CAAC,WAAW,CAAC;oBAEjE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;wBACxD,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;wBACtC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,kBAAkB,CACnB,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,CAAC,iBAAiB,EACzB,OAAO,EACP,6CAAmB,CAAC,eAAe,EACnC,OAAO,CAAC,cAAc,CACzB,CACJ,CAAC;qBACL;oBAED,MAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,CAAC,WAAW,CAAC;oBAEjE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;wBACxD,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;wBACtC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,kBAAkB,CACnB,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,CAAC,iBAAiB,EACzB,OAAO,EACP,6CAAmB,CAAC,eAAe,EACnC,OAAO,CAAC,cAAc,CACzB,CACJ,CAAC;qBACL;oBAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,qBAAqB,CAAC,mBAAmB,CAAC;oBAE3E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;wBAC1D,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;wBACxC,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,kBAAkB,CACnB,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,CAAC,iBAAiB,EACzB,OAAO,EACP,6CAAmB,CAAC,kBAAkB,EACtC,OAAO,CAAC,cAAc,CACzB,CACJ,CAAC;qBACL;iBACJ;aACJ;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;IA4BN,CAAC;IA1BW,kBAAkB,CACtB,GAAW,EACX,IAAqB,EACrB,KAAa,EACb,OAAe,EACf,OAAe,EACf,IAAyB,EACzB,cAAsB;QAEtB,MAAM,WAAW,GAAG,gBAAQ,CAAC,UAAU,CACnC,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,EAChF,EAAE,IAAI,EAAE,KAAK,EAAE,CAClB,CAAC,QAAQ,EAAE,CAAC;QACb,MAAM,kBAAkB,GAAG,yDAA2B,CAAC,aAAa,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAExG,OAAO;YACH,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,WAAW;YACtB,MAAM,EAAE,+BAAY,CAAC,KAAK;YAC1B,QAAQ,EAAE,OAAO;YACjB,oBAAoB,EAAE,kBAAkB;YACxC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;YACtB,GAAG,EAAE,IAAI;SACa,CAAC;IAC/B,CAAC;CACJ,CAAA;6CA1FY,kCAAkC;IAD9C,IAAA,qBAAU,GAAE;GACA,kCAAkC,CA0F9C"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IPrediInputData } from "../../../../schema-definitions/datasources/interfaces/enapo/IPrediInputData";
|
|
2
|
+
import { IEnapoMeasurementsDto } from "../../../../schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto";
|
|
3
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
4
|
+
export declare class PreMeasurementsTransformation extends AbstractTransformation<IPrediInputData, IEnapoMeasurementsDto[]> {
|
|
5
|
+
name: string;
|
|
6
|
+
protected transformInternal: (data: IPrediInputData) => IEnapoMeasurementsDto[];
|
|
7
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PreMeasurementsTransformation = void 0;
|
|
10
|
+
const PreMeasurementFilter_1 = require("../../../commodity-providers/helper/PreMeasurementFilter");
|
|
11
|
+
const MeasurementVariableEnum_1 = require("../../../../schema-definitions/datasources/helpers/MeasurementVariableEnum");
|
|
12
|
+
const ProviderTypeEnum_1 = require("../../../../schema-definitions/models/enapo/helpers/ProviderTypeEnum");
|
|
13
|
+
const helpers_1 = require("@golemio/core/dist/helpers");
|
|
14
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
15
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
16
|
+
const DeviceSerialNumberExtractor_1 = require("./helpers/DeviceSerialNumberExtractor");
|
|
17
|
+
let PreMeasurementsTransformation = exports.PreMeasurementsTransformation = class PreMeasurementsTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
this.name = "PreMeasurementsTransformation";
|
|
21
|
+
this.transformInternal = (data) => {
|
|
22
|
+
const output = [];
|
|
23
|
+
for (const company of Object.keys(data.stored_month.companies)) {
|
|
24
|
+
const companyData = data.stored_month.companies[company];
|
|
25
|
+
for (const ean of Object.keys(companyData.EAN_list)) {
|
|
26
|
+
const eanData = companyData.EAN_list[ean];
|
|
27
|
+
const measurementsT1 = PreMeasurementFilter_1.PreMeasurementFilter.sumDuplicates(eanData.daily_data_Wh_per_EAN.T1_Wh_raw_data.flat());
|
|
28
|
+
for (const measurement of measurementsT1) {
|
|
29
|
+
const date = helpers_1.DateTime.fromFormat(measurement[0], "dd.MM.yyyy T", { timeZone: "UTC" }).toDate();
|
|
30
|
+
const deviceSerialNumber = DeviceSerialNumberExtractor_1.DeviceSerialNumberExtractor.extractActual(eanData.meter_replaced, date);
|
|
31
|
+
output.push({
|
|
32
|
+
id: ean,
|
|
33
|
+
id_type: "ean",
|
|
34
|
+
timestamp: date,
|
|
35
|
+
source: ProviderTypeEnum_1.ProviderType.PREdi,
|
|
36
|
+
place_id: eanData.consumption_point,
|
|
37
|
+
device_serial_number: deviceSerialNumber,
|
|
38
|
+
value: Number(measurement[1]),
|
|
39
|
+
var: MeasurementVariableEnum_1.MeasurementVariable.EFwActi_VT,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
const measurementsT2 = PreMeasurementFilter_1.PreMeasurementFilter.sumDuplicates(eanData.daily_data_Wh_per_EAN.T2_Wh_raw_data.flat());
|
|
43
|
+
for (const measurement of measurementsT2) {
|
|
44
|
+
const date = helpers_1.DateTime.fromFormat(measurement[0], "dd.MM.yyyy T", { timeZone: "UTC" }).toDate();
|
|
45
|
+
const deviceSerialNumber = DeviceSerialNumberExtractor_1.DeviceSerialNumberExtractor.extractActual(eanData.meter_replaced, date);
|
|
46
|
+
output.push({
|
|
47
|
+
id: ean,
|
|
48
|
+
id_type: "ean",
|
|
49
|
+
timestamp: date,
|
|
50
|
+
source: ProviderTypeEnum_1.ProviderType.PREdi,
|
|
51
|
+
place_id: eanData.consumption_point,
|
|
52
|
+
device_serial_number: deviceSerialNumber,
|
|
53
|
+
value: Number(measurement[1]),
|
|
54
|
+
var: MeasurementVariableEnum_1.MeasurementVariable.EFwActi_NT,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return output;
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
exports.PreMeasurementsTransformation = PreMeasurementsTransformation = __decorate([
|
|
64
|
+
(0, tsyringe_1.injectable)()
|
|
65
|
+
], PreMeasurementsTransformation);
|
|
66
|
+
//# sourceMappingURL=PreMeasurementsTransformation.js.map
|
package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreMeasurementsTransformation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mGAA2F;AAC3F,wHAAuF;AAEvF,2GAA0E;AAE1E,wDAAsD;AACtD,6GAA0G;AAC1G,iEAAgE;AAChE,uFAAoF;AAG7E,IAAM,6BAA6B,2CAAnC,MAAM,6BAA8B,SAAQ,+CAAgE;IAA5G;;QACI,SAAI,GAAG,+BAA+B,CAAC;QAEpC,sBAAiB,GAAG,CAAC,IAAqB,EAA2B,EAAE;YAC7E,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;gBAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;oBACjD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAC1C,MAAM,cAAc,GAAG,2CAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;oBAE/G,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE;wBACtC,MAAM,IAAI,GAAG,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;wBAC/F,MAAM,kBAAkB,GAAG,yDAA2B,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;wBACnG,MAAM,CAAC,IAAI,CAAC;4BACR,EAAE,EAAE,GAAG;4BACP,OAAO,EAAE,KAAK;4BACd,SAAS,EAAE,IAAI;4BACf,MAAM,EAAE,+BAAY,CAAC,KAAK;4BAC1B,QAAQ,EAAE,OAAO,CAAC,iBAAiB;4BACnC,oBAAoB,EAAE,kBAAkB;4BACxC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;4BAC7B,GAAG,EAAE,6CAAmB,CAAC,UAAU;yBACb,CAAC,CAAC;qBAC/B;oBAED,MAAM,cAAc,GAAG,2CAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;oBAE/G,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE;wBACtC,MAAM,IAAI,GAAG,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;wBAC/F,MAAM,kBAAkB,GAAG,yDAA2B,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;wBACnG,MAAM,CAAC,IAAI,CAAC;4BACR,EAAE,EAAE,GAAG;4BACP,OAAO,EAAE,KAAK;4BACd,SAAS,EAAE,IAAI;4BACf,MAAM,EAAE,+BAAY,CAAC,KAAK;4BAC1B,QAAQ,EAAE,OAAO,CAAC,iBAAiB;4BACnC,oBAAoB,EAAE,kBAAkB;4BACxC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;4BAC7B,GAAG,EAAE,6CAAmB,CAAC,UAAU;yBACb,CAAC,CAAC;qBAC/B;iBACJ;aACJ;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;wCA9CY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;GACA,6BAA6B,CA8CzC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IPreIncomingDataLog } from "../../../../schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog";
|
|
2
|
+
import { IPrediInputData } from "../../../../schema-definitions/datasources/interfaces/enapo/IPrediInputData";
|
|
3
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
4
|
+
export declare class PreMetadataTransformation extends AbstractTransformation<IPrediInputData, IPreIncomingDataLog[]> {
|
|
5
|
+
name: string;
|
|
6
|
+
protected transformInternal: (element: IPrediInputData) => IPreIncomingDataLog[];
|
|
7
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PreMetadataTransformation = void 0;
|
|
4
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
5
|
+
class PreMetadataTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.name = "PreMetadataTransformation";
|
|
9
|
+
this.transformInternal = (element) => {
|
|
10
|
+
const header = {
|
|
11
|
+
year: element.stored_month.year,
|
|
12
|
+
month: element.stored_month.month,
|
|
13
|
+
month_name: element.stored_month.month_name,
|
|
14
|
+
days_in_stored_month: element.stored_month.days_in_stored_month,
|
|
15
|
+
};
|
|
16
|
+
const log = [];
|
|
17
|
+
for (const company of Object.keys(element.stored_month.companies)) {
|
|
18
|
+
const companyData = element.stored_month.companies[company];
|
|
19
|
+
for (const ean of Object.keys(companyData.EAN_list)) {
|
|
20
|
+
const eanData = companyData.EAN_list[ean];
|
|
21
|
+
log.push({
|
|
22
|
+
...header,
|
|
23
|
+
ean: ean,
|
|
24
|
+
consumption_point: eanData.consumption_point,
|
|
25
|
+
address: eanData.address,
|
|
26
|
+
location_type: eanData.location_type,
|
|
27
|
+
company_name: companyData.trade_name,
|
|
28
|
+
company_id: company,
|
|
29
|
+
tarif_type: eanData.tarif_type,
|
|
30
|
+
tarif_1t2t: eanData.tarif_1T2T,
|
|
31
|
+
phases: eanData.phases,
|
|
32
|
+
circuit_breaker: eanData.circuit_breaker,
|
|
33
|
+
type_b_meter: eanData.type_B_meter,
|
|
34
|
+
meter_replaced: eanData.meter_replaced,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return log;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.PreMetadataTransformation = PreMetadataTransformation;
|
|
43
|
+
//# sourceMappingURL=PreMetadataTransfromation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreMetadataTransfromation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.ts"],"names":[],"mappings":";;;AAEA,6GAA0G;AAE1G,MAAa,yBAA0B,SAAQ,+CAA8D;IAA7G;;QACW,SAAI,GAAG,2BAA2B,CAAC;QAEhC,sBAAiB,GAAG,CAAC,OAAwB,EAAyB,EAAE;YAC9E,MAAM,MAAM,GAAG;gBACX,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;gBAC/B,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK;gBACjC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,UAAU;gBAC3C,oBAAoB,EAAE,OAAO,CAAC,YAAY,CAAC,oBAAoB;aAClC,CAAC;YAElC,MAAM,GAAG,GAA0B,EAAE,CAAC;YAEtC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;gBAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC5D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;oBACjD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAE1C,GAAG,CAAC,IAAI,CAAC;wBACL,GAAG,MAAM;wBACT,GAAG,EAAE,GAAG;wBACR,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;wBAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,YAAY,EAAE,WAAW,CAAC,UAAU;wBACpC,UAAU,EAAE,OAAO;wBACnB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,eAAe,EAAE,OAAO,CAAC,eAAe;wBACxC,YAAY,EAAE,OAAO,CAAC,YAAY;wBAClC,cAAc,EAAE,OAAO,CAAC,cAAc;qBAClB,CAAC,CAAC;iBAC7B;aACJ;YAED,OAAO,GAAG,CAAC;QACf,CAAC,CAAC;IACN,CAAC;CAAA;AAtCD,8DAsCC"}
|
package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeviceSerialNumberExtractor = void 0;
|
|
4
|
+
const DateTime_1 = require("@golemio/core/dist/helpers/DateTime");
|
|
5
|
+
class DeviceSerialNumberExtractor {
|
|
6
|
+
/* Změna elekroměru na odběrném místě v daném měsíci je indikována takto:
|
|
7
|
+
* "meter_replaced": "53435572" ==> beze změny
|
|
8
|
+
* "meter_replaced": "2025-06-19|54292510|55505332" ==> změna "datumZměny|starý|nový"
|
|
9
|
+
* "meter_replaced": "2025-06-19|54292510|55505332|2025-06-30|55505332|96933662" ==> případně dvě a více změn
|
|
10
|
+
*/
|
|
11
|
+
static extractActual(meterReplaced, date, isDaily = false) {
|
|
12
|
+
if (!meterReplaced.includes("|")) {
|
|
13
|
+
return meterReplaced;
|
|
14
|
+
}
|
|
15
|
+
const changes = meterReplaced.split("|");
|
|
16
|
+
let actualMeter = changes[1];
|
|
17
|
+
for (let i = 0; i < changes.length / 3; i++) {
|
|
18
|
+
const changeDate = isDaily
|
|
19
|
+
? DateTime_1.DateTime.fromFormat(changes[i * 3], "yyyy-MM-dd", { timeZone: "Europe/Prague" }).toDate()
|
|
20
|
+
: DateTime_1.DateTime.fromFormat(changes[i * 3], "yyyy-MM-dd", { timeZone: "Europe/Prague" })
|
|
21
|
+
.add(10, "hours")
|
|
22
|
+
.toDate();
|
|
23
|
+
if (date >= changeDate) {
|
|
24
|
+
actualMeter = changes[i * 3 + 2];
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return actualMeter;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.DeviceSerialNumberExtractor = DeviceSerialNumberExtractor;
|
|
34
|
+
DeviceSerialNumberExtractor.DEFAULT_CHANGE_TIME = "10:00";
|
|
35
|
+
//# sourceMappingURL=DeviceSerialNumberExtractor.js.map
|
package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceSerialNumberExtractor.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAE/D,MAAa,2BAA2B;IAEpC;;;;OAIG;IACI,MAAM,CAAC,aAAa,CAAC,aAAqB,EAAE,IAAU,EAAE,UAAmB,KAAK;QACnF,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC9B,OAAO,aAAa,CAAC;SACxB;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,OAAO;gBACtB,CAAC,CAAC,mBAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;gBAC3F,CAAC,CAAC,mBAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;qBAC3E,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC;qBAChB,MAAM,EAAE,CAAC;YACpB,IAAI,IAAI,IAAI,UAAU,EAAE;gBACpB,WAAW,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;aACpC;iBAAM;gBACH,MAAM;aACT;SACJ;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;;AA7BL,kEA8BC;AA7B2B,+CAAmB,GAAG,OAAO,CAAC"}
|
|
@@ -15,6 +15,7 @@ class EnapoWorker extends integration_engine_1.AbstractWorker {
|
|
|
15
15
|
};
|
|
16
16
|
// Register tasks
|
|
17
17
|
this.registerTask(Di_1.EnapoContainer.resolve(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasTask));
|
|
18
|
+
this.registerTask(Di_1.EnapoContainer.resolve(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPrediTask));
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
exports.EnapoWorker = EnapoWorker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnapoWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/workers/EnapoWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAuE;AAEvE,4CAAiD;AACjD,kCAA2C;AAC3C,gFAA6E;AAE7E,MAAa,WAAY,SAAQ,mCAAc;IAG3C;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,6BAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"EnapoWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/workers/EnapoWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAuE;AAEvE,4CAAiD;AACjD,kCAA2C;AAC3C,gFAA6E;AAE7E,MAAa,WAAY,SAAQ,mCAAc;IAG3C;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,6BAAiB,CAAC;QAU5B,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;QARE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,mBAAc,CAAC,OAAO,CAAQ,qDAAyB,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,mBAAc,CAAC,OAAO,CAAQ,qDAAyB,CAAC,cAAc,CAAC,CAAC,CAAC;IAC/F,CAAC;CAMJ;AAfD,kCAeC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EnapoMeasurementsRepository } from "../../repositories/EnapoMeasurementsRepository";
|
|
2
|
-
import { IEnapoMeasurementsDto } from "../../../../schema-definitions/models/interfaces/IEnapoMeasurmentsDto";
|
|
2
|
+
import { IEnapoMeasurementsDto } from "../../../../schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto";
|
|
3
3
|
import { AbstractTask } from "@golemio/core/dist/integration-engine";
|
|
4
4
|
export declare abstract class AbstractEnapoFetchMeasurementsTask<T extends object> extends AbstractTask<T> {
|
|
5
5
|
protected abstract measurementsRepository: EnapoMeasurementsRepository;
|
|
@@ -17,7 +17,7 @@ class AbstractEnapoFetchMeasurementsTask extends integration_engine_1.AbstractTa
|
|
|
17
17
|
}
|
|
18
18
|
const uniqueValues = new Set();
|
|
19
19
|
batch = batch.filter((item) => {
|
|
20
|
-
const key = `${item.timestamp.getTime()}_${item.var}_${item.place_id}_${item.
|
|
20
|
+
const key = `${item.timestamp.getTime()}_${item.var}_${item.place_id}_${item.id}`;
|
|
21
21
|
if (uniqueValues.has(key))
|
|
22
22
|
return false;
|
|
23
23
|
uniqueValues.add(key);
|
package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractEnapoFetchMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AACxD,yFAA+F;AAG/F,8EAAqE;AAErE,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,MAAsB,kCAAqD,SAAQ,iCAAe;IAG9F;QACI,KAAK,CAAC,6BAAiB,CAAC,CAAC;IAC7B,CAAC;IAES,KAAK,CAAC,mBAAmB,CAAC,IAA6B,EAAE,aAAsB,KAAK;QAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE;YAC3D,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;YAEvD,IAAI,CAAC,UAAU,EAAE;gBACb,KAAK,GAAG,4DAA+B,CAAC,MAAM,CAAC,KAAK,CAA4B,CAAC;aACpF;YAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;YACvC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"AbstractEnapoFetchMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AACxD,yFAA+F;AAG/F,8EAAqE;AAErE,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,MAAsB,kCAAqD,SAAQ,iCAAe;IAG9F;QACI,KAAK,CAAC,6BAAiB,CAAC,CAAC;IAC7B,CAAC;IAES,KAAK,CAAC,mBAAmB,CAAC,IAA6B,EAAE,aAAsB,KAAK;QAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,uBAAuB,EAAE;YAC3D,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC;YAEvD,IAAI,CAAC,UAAU,EAAE;gBACb,KAAK,GAAG,4DAA+B,CAAC,MAAM,CAAC,KAAK,CAA4B,CAAC;aACpF;YAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;YACvC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBAClF,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,OAAO,KAAK,CAAC;gBACxC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtB,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,MAAM,EAAE;gBACd,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACrD;SACJ;IACL,CAAC;CACJ;AA5BD,gFA4BC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { EnapoMeasurementsRepository } from "../../repositories/EnapoMeasurementsRepository";
|
|
2
|
+
import { PreIncomingDataLogRepository } from "../../repositories/PreIncomingDataLogRepository";
|
|
3
|
+
import { PreDailyMeasurementsTransformation } from "../../transformations/pre/PreDailyMeasurementsTransformation";
|
|
4
|
+
import { PreMeasurementsTransformation } from "../../transformations/pre/PreMeasurementsTransformation";
|
|
5
|
+
import { PreMetadataTransformation } from "../../transformations/pre/PreMetadataTransfromation";
|
|
6
|
+
import { IPrediInputData } from "../../../../schema-definitions/datasources/interfaces/enapo/IPrediInputData";
|
|
7
|
+
import { ILogger } from "@golemio/core/dist/helpers";
|
|
8
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
9
|
+
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
10
|
+
import { AbstractTaskJsonSchema } from "@golemio/core/dist/integration-engine/workers/AbstractTaskJsonSchema";
|
|
11
|
+
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
12
|
+
export declare class EnapoPrediTask extends AbstractTaskJsonSchema<IPrediInputData> {
|
|
13
|
+
protected config: ISimpleConfig;
|
|
14
|
+
protected measurementsRepository: EnapoMeasurementsRepository;
|
|
15
|
+
protected logger: ILogger;
|
|
16
|
+
protected preMeasurementsTransformation: PreMeasurementsTransformation;
|
|
17
|
+
protected preDailyMeasurementsTransformation: PreDailyMeasurementsTransformation;
|
|
18
|
+
protected preMetadataTransformation: PreMetadataTransformation;
|
|
19
|
+
protected dbConnector: IDatabaseConnector;
|
|
20
|
+
protected preIncomingDataLogRepository: PreIncomingDataLogRepository;
|
|
21
|
+
queueName: string;
|
|
22
|
+
queueTtl: number;
|
|
23
|
+
schema: JSONSchemaValidator;
|
|
24
|
+
constructor(config: ISimpleConfig, measurementsRepository: EnapoMeasurementsRepository, logger: ILogger, preMeasurementsTransformation: PreMeasurementsTransformation, preDailyMeasurementsTransformation: PreDailyMeasurementsTransformation, preMetadataTransformation: PreMetadataTransformation, dbConnector: IDatabaseConnector, preIncomingDataLogRepository: PreIncomingDataLogRepository);
|
|
25
|
+
protected execute(data: IPrediInputData): Promise<void>;
|
|
26
|
+
}
|