@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.
Files changed (135) hide show
  1. package/db/example/00_clear_test_data.sql +2 -1
  2. package/db/migrations/postgresql/20250213141826-add-device-serial-id.js +53 -0
  3. package/db/migrations/postgresql/20250819094030-enapo-pre.js +53 -0
  4. package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-down.sql +1 -0
  5. package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-up.sql +1 -0
  6. package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-down.sql +3 -0
  7. package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-up.sql +31 -0
  8. package/dist/input-gateway/pre/PreInputRouter.js +5 -6
  9. package/dist/input-gateway/pre/PreInputRouter.js.map +1 -1
  10. package/dist/input-gateway/pre/PreJsonInputController.d.ts +2 -4
  11. package/dist/input-gateway/pre/PreJsonInputController.js +8 -12
  12. package/dist/input-gateway/pre/PreJsonInputController.js.map +1 -1
  13. package/dist/integration-engine/commodity-providers/helper/EnapoMeasurementsDataNormalizer.d.ts +1 -1
  14. package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.d.ts +1 -2
  15. package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.js +4 -4
  16. package/dist/integration-engine/commodity-providers/helper/PreMeasurementFilter.js.map +1 -1
  17. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +3 -2
  18. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +2 -1
  19. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -1
  20. package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.d.ts +2 -0
  21. package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js +1 -0
  22. package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js.map +1 -1
  23. package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js +1 -0
  24. package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js.map +1 -1
  25. package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js +1 -0
  26. package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js.map +1 -1
  27. package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js +1 -0
  28. package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js.map +1 -1
  29. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js +2 -1
  30. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map +1 -1
  31. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js +2 -1
  32. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -1
  33. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js +1 -1
  34. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map +1 -1
  35. package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js +3 -1
  36. package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map +1 -1
  37. package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js +4 -1
  38. package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js.map +1 -1
  39. package/dist/integration-engine/enapo/helpers/MeasurementsDataNormalizer.d.ts +1 -1
  40. package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.d.ts +17 -0
  41. package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.js +3 -0
  42. package/dist/integration-engine/enapo/interfaces/predi/IPrediMetadata.js.map +1 -0
  43. package/dist/integration-engine/enapo/ioc/Di.js +14 -5
  44. package/dist/integration-engine/enapo/ioc/Di.js.map +1 -1
  45. package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.d.ts +6 -0
  46. package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js +6 -0
  47. package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js.map +1 -1
  48. package/dist/integration-engine/enapo/repositories/EnapoMeasurementsRepository.js +1 -1
  49. package/dist/integration-engine/enapo/repositories/EnapoMeasurementsRepository.js.map +1 -1
  50. package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.d.ts +5 -0
  51. package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js +32 -0
  52. package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js.map +1 -0
  53. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.d.ts +1 -1
  54. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js +4 -3
  55. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js.map +1 -1
  56. package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.d.ts +8 -0
  57. package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js +64 -0
  58. package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js.map +1 -0
  59. package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.d.ts +7 -0
  60. package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js +66 -0
  61. package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js.map +1 -0
  62. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.d.ts +7 -0
  63. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js +43 -0
  64. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js.map +1 -0
  65. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.d.ts +4 -0
  66. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js +35 -0
  67. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js.map +1 -0
  68. package/dist/integration-engine/enapo/workers/EnapoWorker.js +1 -0
  69. package/dist/integration-engine/enapo/workers/EnapoWorker.js.map +1 -1
  70. package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.d.ts +1 -1
  71. package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js +1 -1
  72. package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js.map +1 -1
  73. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.d.ts +26 -0
  74. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js +81 -0
  75. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js.map +1 -0
  76. package/dist/output-gateway/controllers/helpers/parsePaginationParams.d.ts +1 -1
  77. package/dist/output-gateway/controllers/helpers/parsePaginationParams.js +4 -2
  78. package/dist/output-gateway/controllers/helpers/parsePaginationParams.js.map +1 -1
  79. package/dist/output-gateway/controllers/v2/BuildingsController.js +3 -1
  80. package/dist/output-gateway/controllers/v2/BuildingsController.js.map +1 -1
  81. package/dist/output-gateway/controllers/v2/V2MeasurementsController.js +13 -10
  82. package/dist/output-gateway/controllers/v2/V2MeasurementsController.js.map +1 -1
  83. package/dist/output-gateway/controllers/v2/V2OrganizationsController.js +3 -1
  84. package/dist/output-gateway/controllers/v2/V2OrganizationsController.js.map +1 -1
  85. package/dist/output-gateway/routers/v2/V2DevicesRouter.js +1 -1
  86. package/dist/output-gateway/routers/v2/V2DevicesRouter.js.map +1 -1
  87. package/dist/output-gateway/routers/v2/V2MeasurementsRouter.js +2 -2
  88. package/dist/output-gateway/routers/v2/V2MeasurementsRouter.js.map +1 -1
  89. package/dist/output-gateway/routers/v2/V2OrganizationsRouter.js +1 -1
  90. package/dist/output-gateway/routers/v2/V2OrganizationsRouter.js.map +1 -1
  91. package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js +4 -3
  92. package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js.map +1 -1
  93. package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.d.ts +3 -0
  94. package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js +113 -0
  95. package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js.map +1 -0
  96. package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.d.ts +6 -1
  97. package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.js +5 -0
  98. package/dist/schema-definitions/datasources/helpers/MeasurementVariableEnum.js.map +1 -1
  99. package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.d.ts +3 -2
  100. package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.d.ts +17 -0
  101. package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.js +3 -0
  102. package/dist/schema-definitions/datasources/interfaces/enapo/IEnapoMetadata.js.map +1 -0
  103. package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.d.ts +18 -0
  104. package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.js +3 -0
  105. package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.js.map +1 -0
  106. package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.d.ts +37 -0
  107. package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.js +3 -0
  108. package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.js.map +1 -0
  109. package/dist/schema-definitions/models/MeasurementsModel.d.ts +1 -0
  110. package/dist/schema-definitions/models/MeasurementsModel.js +15 -1
  111. package/dist/schema-definitions/models/MeasurementsModel.js.map +1 -1
  112. package/dist/schema-definitions/models/{EnapoMeasurementsModel.d.ts → enapo/EnapoMeasurementsModel.d.ts} +2 -1
  113. package/dist/schema-definitions/models/{EnapoMeasurementsModel.js → enapo/EnapoMeasurementsModel.js} +9 -5
  114. package/dist/schema-definitions/models/enapo/EnapoMeasurementsModel.js.map +1 -0
  115. package/dist/schema-definitions/models/enapo/EnapoMetadataModel.d.ts +18 -0
  116. package/dist/schema-definitions/models/enapo/EnapoMetadataModel.js +60 -0
  117. package/dist/schema-definitions/models/enapo/EnapoMetadataModel.js.map +1 -0
  118. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.d.ts +26 -0
  119. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js +89 -0
  120. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js.map +1 -0
  121. package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.d.ts +4 -0
  122. package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.js +9 -0
  123. package/dist/schema-definitions/models/enapo/helpers/ProviderTypeEnum.js.map +1 -0
  124. package/dist/schema-definitions/models/{interfaces → enapo/interfaces}/IEnapoMeasurmentsDto.d.ts +2 -1
  125. package/dist/schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto.js.map +1 -0
  126. package/dist/schema-definitions/models/interfaces/IMeasurementDto.d.ts +1 -0
  127. package/docs/implementation_documentation.md +30 -3
  128. package/docs/openapi-input.yaml +27 -1
  129. package/package.json +4 -4
  130. package/dist/input-gateway/helpers/PreDataExtractor.d.ts +0 -5
  131. package/dist/input-gateway/helpers/PreDataExtractor.js +0 -20
  132. package/dist/input-gateway/helpers/PreDataExtractor.js.map +0 -1
  133. package/dist/schema-definitions/models/EnapoMeasurementsModel.js.map +0 -1
  134. package/dist/schema-definitions/models/interfaces/IEnapoMeasurmentsDto.js.map +0 -1
  135. /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,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IPrediMetadata.js.map
@@ -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 CommodityProviderDataSourceFactory_1 = require("../../commodity-providers/datasources/CommodityProviderDataSourceFactory");
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,iEAA8D;AAC9D,2EAAwE;AACxE,iIAA4H;AAC5H,kIAA6H;AAC7H,qHAAgH;AAChH,6FAAwF;AAExF,wBAAwB;AACxB,MAAM,cAAc,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAuBrF,wCAAc;AAtBvB,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;AAC5G,YAAY;AAEZ,wBAAwB;AACxB,cAAc,CAAC,iBAAiB,CAAC,qDAAyB,CAAC,6BAA6B,EAAE,6DAA6B,CAAC,CAAC;AACzH,YAAY;AAEZ,eAAe;AACf,cAAc,CAAC,QAAQ,CAAC,qDAAyB,CAAC,aAAa,EAAE,6BAAa,CAAC,CAAC"}
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;IACZ,yBAAyB;IACzB,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IACZ,eAAe;IACf,aAAa,EAAE,MAAM,EAAE;IACvB,YAAY;CACf,CAAC;AAEO,8DAAyB"}
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,sGAA4E;AAE5E,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"}
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
- eic: data.Eic,
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: CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi,
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,+GAAsG;AACtG,kHAA6G;AAE7G,qHAAuF;AAEvF,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,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,SAAS,EAAE,gBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;oBAC3C,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,MAAM,EAAE,yCAAiB,CAAC,kBAAkB;gBAC5C,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;wCAzCY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;GACA,6BAA6B,CAyCzC"}
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"}
@@ -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
+ }
@@ -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
@@ -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
@@ -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"}
@@ -0,0 +1,4 @@
1
+ export declare class DeviceSerialNumberExtractor {
2
+ private static readonly DEFAULT_CHANGE_TIME;
3
+ static extractActual(meterReplaced: string, date: Date, isDaily?: boolean): string;
4
+ }
@@ -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
@@ -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;QAS5B,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;QAPE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,mBAAc,CAAC,OAAO,CAAQ,qDAAyB,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9F,CAAC;CAMJ;AAdD,kCAcC"}
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.eic}`;
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);
@@ -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,GAAG,EAAE,CAAC;gBACnF,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"}
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
+ }