@golemio/energetics 1.4.13-dev.2001462306 → 1.4.13-dev.2008390014

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 (42) hide show
  1. package/db/example/00_clear_test_data.sql +1 -2
  2. package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-down.sql +3 -1
  3. package/db/migrations/postgresql/sqls/20250819094030-enapo-pre-up.sql +24 -21
  4. package/dist/input-gateway/pre/PreJsonInputController.js +2 -2
  5. package/dist/input-gateway/pre/PreJsonInputController.js.map +1 -1
  6. package/dist/integration-engine/enapo/ioc/Di.js +1 -4
  7. package/dist/integration-engine/enapo/ioc/Di.js.map +1 -1
  8. package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js +1 -1
  9. package/dist/integration-engine/enapo/repositories/PreIncomingDataLogRepository.js.map +1 -1
  10. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js +2 -1
  11. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js.map +1 -1
  12. package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js +12 -8
  13. package/dist/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.js.map +1 -1
  14. package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js +15 -8
  15. package/dist/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.js.map +1 -1
  16. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.d.ts +2 -10
  17. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js +13 -36
  18. package/dist/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.js.map +1 -1
  19. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.d.ts +4 -0
  20. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js +35 -0
  21. package/dist/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.js.map +1 -0
  22. package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js +1 -1
  23. package/dist/integration-engine/enapo/workers/task/AbstractEnapoFetchMeasurementsTask.js.map +1 -1
  24. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.d.ts +1 -3
  25. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js +10 -12
  26. package/dist/integration-engine/enapo/workers/task/EnapoPrediTask.js.map +1 -1
  27. package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js +1 -2
  28. package/dist/schema-definitions/datasources/enapo/EnapoPreInputSchema.js.map +1 -1
  29. package/dist/schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog.d.ts +12 -4
  30. package/dist/schema-definitions/datasources/interfaces/enapo/IPrediInputData.d.ts +1 -1
  31. package/dist/schema-definitions/models/enapo/EnapoMeasurementsModel.d.ts +2 -1
  32. package/dist/schema-definitions/models/enapo/EnapoMeasurementsModel.js +7 -3
  33. package/dist/schema-definitions/models/enapo/EnapoMeasurementsModel.js.map +1 -1
  34. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.d.ts +13 -5
  35. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js +48 -32
  36. package/dist/schema-definitions/models/enapo/PreIncomingDataLogModel.js.map +1 -1
  37. package/dist/schema-definitions/models/enapo/interfaces/IEnapoMeasurmentsDto.d.ts +2 -1
  38. package/docs/implementation_documentation.md +7 -0
  39. package/package.json +1 -1
  40. package/dist/integration-engine/enapo/repositories/EnapoMetadataRepository.d.ts +0 -5
  41. package/dist/integration-engine/enapo/repositories/EnapoMetadataRepository.js +0 -32
  42. package/dist/integration-engine/enapo/repositories/EnapoMetadataRepository.js.map +0 -1
@@ -8,5 +8,4 @@ truncate organizations_buildings;
8
8
  truncate organizations;
9
9
  truncate access_limitation;
10
10
  truncate enapo_measurements;
11
- truncate enapo_log_pre;
12
- truncate enapo_metadata;
11
+ truncate enapo_pre_metadata_history;
@@ -1 +1,3 @@
1
- /* Replace with your SQL commands */
1
+ drop table enapo_pre_metadata_history;
2
+ ALTER TABLE enapo_measurements RENAME COLUMN id TO eic;
3
+ ALTER TABLE enapo_measurements DROP COLUMN id_type;
@@ -1,28 +1,31 @@
1
- CREATE TABLE enapo_log_pre (
2
- id uuid DEFAULT gen_random_uuid() NOT NULL,
3
- "year" int NULL,
4
- "month" int NULL,
1
+ CREATE TABLE enapo_pre_metadata_history (
2
+ ean varchar NOT NULL,
3
+ "year" int4 NOT NULL,
4
+ "month" int4 NOT NULL,
5
5
  month_name varchar NULL,
6
- days_in_stored_month int NULL,
7
- company_ids _varchar NULL,
8
- ean_list _varchar NULL,
9
- ean_with_meter_replaced _varchar NULL,
10
- created_at timestamp NULL,
11
- updated_at timestamp NULL,
12
- CONSTRAINT enapo_log_pre_pk PRIMARY KEY (id)
13
- );
14
-
15
-
16
- CREATE TABLE enapo_metadata (
17
- id varchar NOT NULL,
18
- id_type varchar NOT NULL,
19
- source varchar NOT NULL,
6
+ days_in_stored_month int4 NULL,
7
+ consumption_point varchar NULL,
20
8
  address varchar NULL,
21
9
  location_type varchar NULL,
22
10
  company_name varchar NULL,
23
11
  company_id varchar NULL,
24
- custom_fields jsonb NULL,
12
+ tarif_type varchar NULL,
13
+ tarif_1t2t varchar NULL,
14
+ phases varchar NULL,
15
+ circuit_breaker varchar NULL,
16
+ type_b_meter varchar NULL,
17
+ meter_replaced varchar NULL,
25
18
  created_at timestamp NULL,
26
19
  updated_at timestamp NULL,
27
- CONSTRAINT enapo_metadata_pk PRIMARY KEY (id, id_type)
28
- );
20
+ CONSTRAINT enapo_log_pre_pk PRIMARY KEY (ean, "year", "month")
21
+ );
22
+
23
+ COMMENT ON COLUMN enapo_pre_metadata_history.meter_replaced IS 'Změna elekroměru na odběrném místě v daném měsíci je indikována takto:
24
+ "meter_replaced": "53435572" ==> beze změny
25
+ "meter_replaced": "2025-06-19|54292510|55505332" ==> změna "datumZměny|starý|nový"
26
+ "meter_replaced": "2025-06-19|54292510|55505332|2025-06-30|55505332|96933662" ==> případně dvě a více změn';
27
+
28
+ ALTER TABLE enapo_measurements RENAME COLUMN eic TO id;
29
+ ALTER TABLE enapo_measurements ADD id_type varchar DEFAULT 'eic' NOT NULL;
30
+ ALTER TABLE enapo_measurements ALTER COLUMN created_at TYPE timestamptz USING created_at::timestamptz;
31
+ ALTER TABLE enapo_measurements ALTER COLUMN updated_at TYPE timestamptz USING updated_at::timestamptz;
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PreJsonInputController = void 0;
4
- const constants_1 = require("../../integration-engine/commodity-providers/constants");
4
+ const constants_1 = require("../../integration-engine/enapo/constants");
5
5
  const EnapoPreInputSchema_1 = require("../../schema-definitions/datasources/enapo/EnapoPreInputSchema");
6
6
  const controllers_1 = require("@golemio/core/dist/input-gateway/controllers");
7
7
  const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
8
8
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
9
9
  class PreJsonInputController extends controllers_1.BaseController {
10
10
  constructor() {
11
- super(constants_1.WORKER_NAME, new golemio_validator_1.JSONSchemaValidator("PreJsonInputController", EnapoPreInputSchema_1.enapoPreInputSchema));
11
+ super(constants_1.ENAPO_WORKER_NAME, new golemio_validator_1.JSONSchemaValidator("PreJsonInputController", EnapoPreInputSchema_1.enapoPreInputSchema));
12
12
  this.processData = async (inputData) => {
13
13
  try {
14
14
  await this.validator.Validate(inputData);
@@ -1 +1 @@
1
- {"version":3,"file":"PreJsonInputController.js","sourceRoot":"","sources":["../../../src/input-gateway/pre/PreJsonInputController.ts"],"names":[],"mappings":";;;AAAA,sFAAgE;AAChE,wGAAiF;AAEjF,8EAA8E;AAC9E,6EAA8F;AAC9F,mFAAkF;AAElF,MAAa,sBAAuB,SAAQ,4BAAc;IACtD;QACI,KAAK,CAAC,uBAAW,EAAE,IAAI,uCAAmB,CAAC,wBAAwB,EAAE,yCAAmB,CAAC,CAAC,CAAC;QAGxF,gBAAW,GAAG,KAAK,EAAE,SAAwB,EAAE,EAAE;YACpD,IAAI;gBACA,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;oBAC3G,UAAU,EAAE,IAAI;iBACnB,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;qBAAM;oBACH,MAAM,IAAI,6BAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBACrF;aACJ;QACL,CAAC,CAAC;IAfF,CAAC;CAgBJ;AAnBD,wDAmBC"}
1
+ {"version":3,"file":"PreJsonInputController.js","sourceRoot":"","sources":["../../../src/input-gateway/pre/PreJsonInputController.ts"],"names":[],"mappings":";;;AAAA,wEAAwD;AACxD,wGAAiF;AAEjF,8EAA8E;AAC9E,6EAA8F;AAC9F,mFAAkF;AAElF,MAAa,sBAAuB,SAAQ,4BAAc;IACtD;QACI,KAAK,CAAC,6BAAiB,EAAE,IAAI,uCAAmB,CAAC,wBAAwB,EAAE,yCAAmB,CAAC,CAAC,CAAC;QAG9F,gBAAW,GAAG,KAAK,EAAE,SAAwB,EAAE,EAAE;YACpD,IAAI;gBACA,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;oBAC3G,UAAU,EAAE,IAAI;iBACnB,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;qBAAM;oBACH,MAAM,IAAI,6BAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBACrF;aACJ;QACL,CAAC,CAAC;IAfF,CAAC;CAgBJ;AAnBD,wDAmBC"}
@@ -15,7 +15,6 @@ const EnapoPpasTask_1 = require("../workers/task/EnapoPpasTask");
15
15
  const EnapoPrediTask_1 = require("../workers/task/EnapoPrediTask");
16
16
  const EnapoWorkerContainerToken_1 = require("./EnapoWorkerContainerToken");
17
17
  const PreIncomingDataLogRepository_1 = require("../repositories/PreIncomingDataLogRepository");
18
- const EnapoMetadataRepository_1 = require("../repositories/EnapoMetadataRepository");
19
18
  //#region Initialization
20
19
  const EnapoContainer = Di_1.IntegrationEngineContainer.createChildContainer();
21
20
  exports.EnapoContainer = EnapoContainer;
@@ -26,9 +25,7 @@ EnapoContainer.register(WorkerContainerToken_1.WorkerContainerToken.PpasAveApiDa
26
25
  EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.CommodityProviderDataSourceFactory, CommodityProviderDataSourceFactory_1.CommodityProviderDataSourceFactory);
27
26
  //#endregion
28
27
  //#region Repositories
29
- EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMeasurementsRepository, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository)
30
- .register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMetadataRepository, EnapoMetadataRepository_1.EnapoMetadataRepository)
31
- .register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreIncomingDataLogRepository, PreIncomingDataLogRepository_1.PreIncomingDataLogRepository);
28
+ EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMeasurementsRepository, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository).register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreIncomingDataLogRepository, PreIncomingDataLogRepository_1.PreIncomingDataLogRepository);
32
29
  //#endregion
33
30
  //#region Transformation
34
31
  EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PPasMeasurementTransformation, PPasMeasurementTransformation_1.PPasMeasurementTransformation);
@@ -1 +1 @@
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;AAC5F,qFAAkF;AAElF,wBAAwB;AACxB,MAAM,cAAc,GAAwB,+BAA0B,CAAC,oBAAoB,EAAE,CAAC;AAgCrF,wCAAc;AA/BvB,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;KACtG,QAAQ,CAAC,qDAAyB,CAAC,uBAAuB,EAAE,iDAAuB,CAAC;KACpF,QAAQ,CAAC,qDAAyB,CAAC,4BAA4B,EAAE,2DAA4B,CAAC,CAAC;AACpG,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
+ {"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"}
@@ -21,7 +21,7 @@ let PreIncomingDataLogRepository = exports.PreIncomingDataLogRepository = class
21
21
  pgTableName: PreIncomingDataLogModel_1.PreIncomingDataLogModel.TABLE_NAME,
22
22
  pgSchema: _sch_1.EnergeticsSchema.pgSchema,
23
23
  outputSequelizeAttributes: PreIncomingDataLogModel_1.PreIncomingDataLogModel.attributeModel,
24
- savingType: "insertOnly",
24
+ savingType: "insertOrUpdate",
25
25
  }, new golemio_validator_1.JSONSchemaValidator(PreIncomingDataLogModel_1.PreIncomingDataLogModel.JSON_SCHEMA_VALIDATOR_NAME, PreIncomingDataLogModel_1.PreIncomingDataLogModel.jsonSchema));
26
26
  }
27
27
  };
@@ -1 +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,YAAY;SAC3B,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
+ {"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"}
@@ -19,7 +19,8 @@ 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(),
@@ -1 +1 @@
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,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,+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;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"}
@@ -12,6 +12,7 @@ const ProviderTypeEnum_1 = require("../../../../schema-definitions/models/enapo/
12
12
  const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
13
13
  const luxon_1 = require("@golemio/core/dist/shared/luxon");
14
14
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
15
+ const DeviceSerialNumberExtractor_1 = require("./helpers/DeviceSerialNumberExtractor");
15
16
  let PreDailyMeasurementsTransformation = exports.PreDailyMeasurementsTransformation = class PreDailyMeasurementsTransformation extends AbstractTransformation_1.AbstractTransformation {
16
17
  constructor() {
17
18
  super(...arguments);
@@ -25,30 +26,33 @@ let PreDailyMeasurementsTransformation = exports.PreDailyMeasurementsTransformat
25
26
  const t1WhTotalArray = eanData.daily_data_Wh_per_EAN.T1_Wh_total;
26
27
  for (let index = 0; index < t1WhTotalArray.length; index++) {
27
28
  const element = t1WhTotalArray[index];
28
- output.push(this.prepareMeasurement(ean, data, index, company, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_DaySum, eanData.device_serial_number));
29
+ output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_DaySum, eanData.meter_replaced));
29
30
  }
30
31
  const t2WhTotalArray = eanData.daily_data_Wh_per_EAN.T2_Wh_total;
31
32
  for (let index = 0; index < t2WhTotalArray.length; index++) {
32
33
  const element = t2WhTotalArray[index];
33
- output.push(this.prepareMeasurement(ean, data, index, company, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_NT_DaySum, eanData.device_serial_number));
34
+ output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_NT_DaySum, eanData.meter_replaced));
34
35
  }
35
36
  const t1t2WhTotalArray = eanData.daily_data_Wh_per_EAN.T1_plus_T2_Wh_total;
36
37
  for (let index = 0; index < t1t2WhTotalArray.length; index++) {
37
38
  const element = t1t2WhTotalArray[index];
38
- output.push(this.prepareMeasurement(ean, data, index, company, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_NT_DaySum, eanData.device_serial_number));
39
+ output.push(this.prepareMeasurement(ean, data, index, eanData.consumption_point, element, MeasurementVariableEnum_1.MeasurementVariable.EActi_VT_NT_DaySum, eanData.meter_replaced));
39
40
  }
40
41
  }
41
42
  }
42
43
  return output;
43
44
  };
44
45
  }
45
- prepareMeasurement(ean, data, index, company, element, type, device_serial_number) {
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);
46
49
  return {
47
- eic: ean,
48
- timestamp: luxon_1.DateTime.fromObject({ year: data.stored_month.year, month: data.stored_month.month, day: index + 1 }, { zone: "UTC" }).toJSDate(),
50
+ id: ean,
51
+ id_type: "ean",
52
+ timestamp: currentDate,
49
53
  source: ProviderTypeEnum_1.ProviderType.PREdi,
50
- place_id: company,
51
- device_serial_number: device_serial_number,
54
+ place_id: placeId,
55
+ device_serial_number: deviceSerialNumber,
52
56
  value: Number(element),
53
57
  var: type,
54
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"PreDailyMeasurementsTransformation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreDailyMeasurementsTransformation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ const ProviderTypeEnum_1 = require("../../../../schema-definitions/models/enapo/
13
13
  const helpers_1 = require("@golemio/core/dist/helpers");
14
14
  const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
15
15
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
16
+ const DeviceSerialNumberExtractor_1 = require("./helpers/DeviceSerialNumberExtractor");
16
17
  let PreMeasurementsTransformation = exports.PreMeasurementsTransformation = class PreMeasurementsTransformation extends AbstractTransformation_1.AbstractTransformation {
17
18
  constructor() {
18
19
  super(...arguments);
@@ -25,24 +26,30 @@ let PreMeasurementsTransformation = exports.PreMeasurementsTransformation = clas
25
26
  const eanData = companyData.EAN_list[ean];
26
27
  const measurementsT1 = PreMeasurementFilter_1.PreMeasurementFilter.sumDuplicates(eanData.daily_data_Wh_per_EAN.T1_Wh_raw_data.flat());
27
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);
28
31
  output.push({
29
- eic: ean,
30
- timestamp: helpers_1.DateTime.fromFormat(measurement[0], "dd.MM.yyyy T", { timeZone: "UTC" }).toDate(),
32
+ id: ean,
33
+ id_type: "ean",
34
+ timestamp: date,
31
35
  source: ProviderTypeEnum_1.ProviderType.PREdi,
32
- place_id: company,
33
- device_serial_number: eanData.device_serial_number,
36
+ place_id: eanData.consumption_point,
37
+ device_serial_number: deviceSerialNumber,
34
38
  value: Number(measurement[1]),
35
39
  var: MeasurementVariableEnum_1.MeasurementVariable.EFwActi_VT,
36
40
  });
37
41
  }
38
42
  const measurementsT2 = PreMeasurementFilter_1.PreMeasurementFilter.sumDuplicates(eanData.daily_data_Wh_per_EAN.T2_Wh_raw_data.flat());
39
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);
40
46
  output.push({
41
- eic: ean,
42
- timestamp: helpers_1.DateTime.fromFormat(measurement[0], "dd.MM.yyyy T", { timeZone: "UTC" }).toDate(),
47
+ id: ean,
48
+ id_type: "ean",
49
+ timestamp: date,
43
50
  source: ProviderTypeEnum_1.ProviderType.PREdi,
44
- place_id: company,
45
- device_serial_number: eanData.device_serial_number,
51
+ place_id: eanData.consumption_point,
52
+ device_serial_number: deviceSerialNumber,
46
53
  value: Number(measurement[1]),
47
54
  var: MeasurementVariableEnum_1.MeasurementVariable.EFwActi_NT,
48
55
  });
@@ -1 +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;AAGzD,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,CAAC,IAAI,CAAC;4BACR,GAAG,EAAE,GAAG;4BACR,SAAS,EAAE,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;4BAC5F,MAAM,EAAE,+BAAY,CAAC,KAAK;4BAC1B,QAAQ,EAAE,OAAO;4BACjB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;4BAClD,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,CAAC,IAAI,CAAC;4BACR,GAAG,EAAE,GAAG;4BACR,SAAS,EAAE,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;4BAC5F,MAAM,EAAE,+BAAY,CAAC,KAAK;4BAC1B,QAAQ,EAAE,OAAO;4BACjB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;4BAClD,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;wCAxCY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;GACA,6BAA6B,CAwCzC"}
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"}
@@ -1,15 +1,7 @@
1
- import { IEnapoMetadata } from "../../../../schema-definitions/datasources/interfaces/enapo/IEnapoMetadata";
2
1
  import { IPreIncomingDataLog } from "../../../../schema-definitions/datasources/interfaces/enapo/IPreIncomingDataLog";
3
2
  import { IPrediInputData } from "../../../../schema-definitions/datasources/interfaces/enapo/IPrediInputData";
4
3
  import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
- export declare class PreMetadataTransformation extends AbstractTransformation<IPrediInputData, {
6
- metadata: IEnapoMetadata[];
7
- log: IPreIncomingDataLog;
8
- }> {
4
+ export declare class PreMetadataTransformation extends AbstractTransformation<IPrediInputData, IPreIncomingDataLog[]> {
9
5
  name: string;
10
- protected transformInternal: (element: IPrediInputData) => {
11
- metadata: IEnapoMetadata[];
12
- log: IPreIncomingDataLog;
13
- };
14
- private extractDataFromStructure;
6
+ protected transformInternal: (element: IPrediInputData) => IPreIncomingDataLog[];
15
7
  }
@@ -1,64 +1,41 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PreMetadataTransformation = void 0;
4
- const ProviderTypeEnum_1 = require("../../../../schema-definitions/models/enapo/helpers/ProviderTypeEnum");
5
4
  const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
6
5
  class PreMetadataTransformation extends AbstractTransformation_1.AbstractTransformation {
7
6
  constructor() {
8
7
  super(...arguments);
9
8
  this.name = "PreMetadataTransformation";
10
9
  this.transformInternal = (element) => {
11
- const { companyIds, eans, eanWithMeterReplaced } = this.extractDataFromStructure(element);
12
- const log = {
10
+ const header = {
13
11
  year: element.stored_month.year,
14
12
  month: element.stored_month.month,
15
13
  month_name: element.stored_month.month_name,
16
14
  days_in_stored_month: element.stored_month.days_in_stored_month,
17
- company_ids: companyIds,
18
- ean_list: eans,
19
- ean_with_meter_replaced: eanWithMeterReplaced,
20
15
  };
21
- const metadata = [];
16
+ const log = [];
22
17
  for (const company of Object.keys(element.stored_month.companies)) {
23
18
  const companyData = element.stored_month.companies[company];
24
19
  for (const ean of Object.keys(companyData.EAN_list)) {
25
20
  const eanData = companyData.EAN_list[ean];
26
- metadata.push({
27
- id: ean,
28
- id_type: "ean",
29
- source: ProviderTypeEnum_1.ProviderType.PREdi,
21
+ log.push({
22
+ ...header,
23
+ ean: ean,
24
+ consumption_point: eanData.consumption_point,
30
25
  address: eanData.address,
31
26
  location_type: eanData.location_type,
32
27
  company_name: companyData.trade_name,
33
28
  company_id: company,
34
- custom_fields: {
35
- tarif_type: eanData.tarif_type,
36
- tarif_1T2T: eanData.tarif_1T2T,
37
- phases: eanData.phases,
38
- circuit_breaker: eanData.circuit_breaker,
39
- type_B_meter: eanData.type_B_meter === "YES",
40
- },
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,
41
35
  });
42
36
  }
43
37
  }
44
- return { metadata, log };
45
- };
46
- this.extractDataFromStructure = (data) => {
47
- const companyIds = [];
48
- const eans = [];
49
- const eanWithMeterReplaced = [];
50
- for (const company of Object.keys(data.stored_month.companies)) {
51
- const companyData = data.stored_month.companies[company];
52
- companyIds.push(company);
53
- for (const ean of Object.keys(companyData.EAN_list)) {
54
- const eanData = companyData.EAN_list[ean];
55
- eans.push(ean);
56
- if (eanData.meter_replaced === "YES") {
57
- eanWithMeterReplaced.push(ean);
58
- }
59
- }
60
- }
61
- return { companyIds, eans, eanWithMeterReplaced };
38
+ return log;
62
39
  };
63
40
  }
64
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PreMetadataTransfromation.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.ts"],"names":[],"mappings":";;;AAGA,2GAA0E;AAC1E,6GAA0G;AAE1G,MAAa,yBAA0B,SAAQ,+CAG9C;IAHD;;QAIW,SAAI,GAAG,2BAA2B,CAAC;QAEhC,sBAAiB,GAAG,CAAC,OAAwB,EAA4D,EAAE;YACjH,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAC1F,MAAM,GAAG,GAAwB;gBAC7B,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;gBAC/D,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,IAAI;gBACd,uBAAuB,EAAE,oBAAoB;aACzB,CAAC;YAEzB,MAAM,QAAQ,GAAqB,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,QAAQ,CAAC,IAAI,CAAC;wBACV,EAAE,EAAE,GAAG;wBACP,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,+BAAY,CAAC,KAAK;wBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,YAAY,EAAE,WAAW,CAAC,UAAU;wBACpC,UAAU,EAAE,OAAO;wBACnB,aAAa,EAAE;4BACX,UAAU,EAAE,OAAO,CAAC,UAAU;4BAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;4BAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,YAAY,EAAE,OAAO,CAAC,YAAY,KAAK,KAAK;yBAC/C;qBACc,CAAC,CAAC;iBACxB;aACJ;YAED,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;QAC7B,CAAC,CAAC;QAEM,6BAAwB,GAAG,CAC/B,IAAqB,EAKvB,EAAE;YACA,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,MAAM,oBAAoB,GAAa,EAAE,CAAC;YAE1C,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,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,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,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAEf,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,EAAE;wBAClC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;qBAClC;iBACJ;aACJ;YAED,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;QACtD,CAAC,CAAC;IACN,CAAC;CAAA;AAzED,8DAyEC"}
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"}
@@ -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"}
@@ -1,5 +1,4 @@
1
1
  import { EnapoMeasurementsRepository } from "../../repositories/EnapoMeasurementsRepository";
2
- import { EnapoMetadataRepository } from "../../repositories/EnapoMetadataRepository";
3
2
  import { PreIncomingDataLogRepository } from "../../repositories/PreIncomingDataLogRepository";
4
3
  import { PreDailyMeasurementsTransformation } from "../../transformations/pre/PreDailyMeasurementsTransformation";
5
4
  import { PreMeasurementsTransformation } from "../../transformations/pre/PreMeasurementsTransformation";
@@ -18,11 +17,10 @@ export declare class EnapoPrediTask extends AbstractTaskJsonSchema<IPrediInputDa
18
17
  protected preDailyMeasurementsTransformation: PreDailyMeasurementsTransformation;
19
18
  protected preMetadataTransformation: PreMetadataTransformation;
20
19
  protected dbConnector: IDatabaseConnector;
21
- protected metadataRepository: EnapoMetadataRepository;
22
20
  protected preIncomingDataLogRepository: PreIncomingDataLogRepository;
23
21
  queueName: string;
24
22
  queueTtl: number;
25
23
  schema: JSONSchemaValidator;
26
- constructor(config: ISimpleConfig, measurementsRepository: EnapoMeasurementsRepository, logger: ILogger, preMeasurementsTransformation: PreMeasurementsTransformation, preDailyMeasurementsTransformation: PreDailyMeasurementsTransformation, preMetadataTransformation: PreMetadataTransformation, dbConnector: IDatabaseConnector, metadataRepository: EnapoMetadataRepository, preIncomingDataLogRepository: PreIncomingDataLogRepository);
24
+ constructor(config: ISimpleConfig, measurementsRepository: EnapoMeasurementsRepository, logger: ILogger, preMeasurementsTransformation: PreMeasurementsTransformation, preDailyMeasurementsTransformation: PreDailyMeasurementsTransformation, preMetadataTransformation: PreMetadataTransformation, dbConnector: IDatabaseConnector, preIncomingDataLogRepository: PreIncomingDataLogRepository);
27
25
  protected execute(data: IPrediInputData): Promise<void>;
28
26
  }
@@ -16,7 +16,6 @@ exports.EnapoPrediTask = void 0;
16
16
  const constants_1 = require("../../constants");
17
17
  const EnapoWorkerContainerToken_1 = require("../../ioc/EnapoWorkerContainerToken");
18
18
  const EnapoMeasurementsRepository_1 = require("../../repositories/EnapoMeasurementsRepository");
19
- const EnapoMetadataRepository_1 = require("../../repositories/EnapoMetadataRepository");
20
19
  const PreIncomingDataLogRepository_1 = require("../../repositories/PreIncomingDataLogRepository");
21
20
  const PreDailyMeasurementsTransformation_1 = require("../../transformations/pre/PreDailyMeasurementsTransformation");
22
21
  const PreMeasurementsTransformation_1 = require("../../transformations/pre/PreMeasurementsTransformation");
@@ -28,7 +27,7 @@ const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
28
27
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
29
28
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
30
29
  let EnapoPrediTask = exports.EnapoPrediTask = class EnapoPrediTask extends AbstractTaskJsonSchema_1.AbstractTaskJsonSchema {
31
- constructor(config, measurementsRepository, logger, preMeasurementsTransformation, preDailyMeasurementsTransformation, preMetadataTransformation, dbConnector, metadataRepository, preIncomingDataLogRepository) {
30
+ constructor(config, measurementsRepository, logger, preMeasurementsTransformation, preDailyMeasurementsTransformation, preMetadataTransformation, dbConnector, preIncomingDataLogRepository) {
32
31
  super(constants_1.ENAPO_WORKER_NAME);
33
32
  this.config = config;
34
33
  this.measurementsRepository = measurementsRepository;
@@ -37,22 +36,23 @@ let EnapoPrediTask = exports.EnapoPrediTask = class EnapoPrediTask extends Abstr
37
36
  this.preDailyMeasurementsTransformation = preDailyMeasurementsTransformation;
38
37
  this.preMetadataTransformation = preMetadataTransformation;
39
38
  this.dbConnector = dbConnector;
40
- this.metadataRepository = metadataRepository;
41
39
  this.preIncomingDataLogRepository = preIncomingDataLogRepository;
42
40
  this.queueName = "processPrediData";
43
41
  this.queueTtl = 60 * 60 * 1000;
44
42
  this.schema = new golemio_validator_1.JSONSchemaValidator("PrediInputDataValidator", EnapoPreInputSchema_1.enapoPreInputSchema);
45
43
  }
46
44
  async execute(data) {
47
- const transformedMeasurements = this.preMeasurementsTransformation.transformElement(data);
48
- const transformedDailyMeasurements = this.preDailyMeasurementsTransformation.transformElement(data);
49
- const { metadata, log } = this.preMetadataTransformation.transformElement(data);
50
45
  const transaction = await this.dbConnector.getConnection().transaction();
51
46
  try {
47
+ let transformedMeasurements = this.preMeasurementsTransformation.transformElement(data);
52
48
  await this.measurementsRepository.bulkSave(transformedMeasurements, undefined, undefined, undefined, transaction);
49
+ transformedMeasurements = [];
50
+ let transformedDailyMeasurements = this.preDailyMeasurementsTransformation.transformElement(data);
53
51
  await this.measurementsRepository.bulkSave(transformedDailyMeasurements, undefined, undefined, undefined, transaction);
54
- await this.metadataRepository.bulkSave(metadata, undefined, undefined, undefined, transaction);
55
- await this.preIncomingDataLogRepository.bulkSave([log], undefined, undefined, undefined, transaction);
52
+ transformedDailyMeasurements = [];
53
+ let prelog = this.preMetadataTransformation.transformElement(data);
54
+ await this.preIncomingDataLogRepository.bulkSave(prelog, undefined, undefined, undefined, transaction);
55
+ prelog = [];
56
56
  await transaction.commit();
57
57
  }
58
58
  catch (err) {
@@ -73,11 +73,9 @@ exports.EnapoPrediTask = EnapoPrediTask = __decorate([
73
73
  __param(4, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreDailyMeasurementsTransformation)),
74
74
  __param(5, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreMetadataTransformation)),
75
75
  __param(6, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.PostgresConnector)),
76
- __param(7, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMetadataRepository)),
77
- __param(8, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreIncomingDataLogRepository)),
76
+ __param(7, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PreIncomingDataLogRepository)),
78
77
  __metadata("design:paramtypes", [Object, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository, Object, PreMeasurementsTransformation_1.PreMeasurementsTransformation,
79
78
  PreDailyMeasurementsTransformation_1.PreDailyMeasurementsTransformation,
80
- PreMetadataTransfromation_1.PreMetadataTransformation, Object, EnapoMetadataRepository_1.EnapoMetadataRepository,
81
- PreIncomingDataLogRepository_1.PreIncomingDataLogRepository])
79
+ PreMetadataTransfromation_1.PreMetadataTransformation, Object, PreIncomingDataLogRepository_1.PreIncomingDataLogRepository])
82
80
  ], EnapoPrediTask);
83
81
  //# sourceMappingURL=EnapoPrediTask.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EnapoPrediTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/EnapoPrediTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnapoPrediTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/EnapoPrediTask.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,7 @@ exports.enapoPreInputSchema = {
66
66
  "T2_Wh_raw_data",
67
67
  ],
68
68
  },
69
+ consumption_point: { type: "string" },
69
70
  address: { type: "string" },
70
71
  tarif_type: { type: "string" },
71
72
  tarif_1T2T: { type: "string" },
@@ -75,7 +76,6 @@ exports.enapoPreInputSchema = {
75
76
  found_in_converge_reports: { type: "string" },
76
77
  type_B_meter: { type: "string" },
77
78
  meter_replaced: { type: "string" },
78
- device_serial_number: { type: "string" },
79
79
  },
80
80
  additionalProperties: true,
81
81
  required: [
@@ -87,7 +87,6 @@ exports.enapoPreInputSchema = {
87
87
  "circuit_breaker",
88
88
  "location_type",
89
89
  "meter_replaced",
90
- "device_serial_number",
91
90
  ],
92
91
  },
93
92
  },
@@ -1 +1 @@
1
- {"version":3,"file":"EnapoPreInputSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/enapo/EnapoPreInputSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnapoPreInputSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/enapo/EnapoPreInputSchema.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,18 @@
1
1
  export interface IPreIncomingDataLog {
2
- id: string;
2
+ ean: string;
3
3
  year: number;
4
4
  month: number;
5
5
  month_name: string;
6
6
  days_in_stored_month: number;
7
- company_ids: string[];
8
- ean_list: string[];
9
- ean_with_meter_replaced: string[];
7
+ consumption_point: string;
8
+ address: string;
9
+ location_type: string;
10
+ company_name: string;
11
+ company_id: string;
12
+ tarif_type: string;
13
+ tarif_1t2t: string;
14
+ phases: string;
15
+ circuit_breaker: string;
16
+ type_b_meter: string;
17
+ meter_replaced: string;
10
18
  }
@@ -16,6 +16,7 @@ export interface IPrediCompany {
16
16
  EAN_list: Record<string, IPrediEanDetail>;
17
17
  }
18
18
  export interface IPrediEanDetail {
19
+ consumption_point: string;
19
20
  address: string;
20
21
  tarif_type: string;
21
22
  tarif_1T2T: string;
@@ -25,7 +26,6 @@ export interface IPrediEanDetail {
25
26
  found_in_converge_reports: string;
26
27
  type_B_meter: string;
27
28
  meter_replaced: string;
28
- device_serial_number: string;
29
29
  daily_data_Wh_per_EAN: IPrediDailyDataPerEan;
30
30
  }
31
31
  export interface IPrediDailyDataPerEan {
@@ -5,7 +5,8 @@ export declare class EnapoMeasurementsModel extends Model<IEnapoMeasurementsDto>
5
5
  static TABLE_NAME: string;
6
6
  static REPOSITORY_NAME: string;
7
7
  static JSON_SCHEMA_VALIDATOR_NAME: string;
8
- eic: string;
8
+ id: string;
9
+ id_type: string;
9
10
  value: number;
10
11
  timestamp: Date;
11
12
  var: string;
@@ -10,11 +10,14 @@ EnapoMeasurementsModel.TABLE_NAME = "enapo_measurements";
10
10
  EnapoMeasurementsModel.REPOSITORY_NAME = "EnapoMeasurementsRepository";
11
11
  EnapoMeasurementsModel.JSON_SCHEMA_VALIDATOR_NAME = "EnapoMeasurementsRepositoryValidator";
12
12
  EnapoMeasurementsModel.attributeModel = {
13
- eic: {
13
+ id: {
14
14
  type: sequelize_1.DataTypes.STRING(50),
15
15
  allowNull: false,
16
16
  primaryKey: true,
17
17
  },
18
+ id_type: {
19
+ type: sequelize_1.DataTypes.STRING,
20
+ },
18
21
  value: {
19
22
  type: sequelize_1.DataTypes.DECIMAL(30, 15),
20
23
  allowNull: false,
@@ -48,7 +51,8 @@ EnapoMeasurementsModel.jsonSchema = {
48
51
  items: {
49
52
  type: "object",
50
53
  properties: {
51
- eic: { type: "string" },
54
+ id: { type: "string" },
55
+ id_type: { type: "string" },
52
56
  value: { type: "number" },
53
57
  timestamp: { type: "object", required: ["toISOString"] },
54
58
  var: { type: "string", enum: Object.values(MeasurementVariableEnum_1.MeasurementVariable) },
@@ -56,7 +60,7 @@ EnapoMeasurementsModel.jsonSchema = {
56
60
  place_id: { type: "string" },
57
61
  device_serial_number: { type: "string" },
58
62
  },
59
- required: ["eic", "value", "timestamp", "var", "source", "place_id", "device_serial_number"],
63
+ required: ["id", "id_type", "value", "timestamp", "var", "source", "place_id", "device_serial_number"],
60
64
  },
61
65
  };
62
66
  //# sourceMappingURL=EnapoMeasurementsModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EnapoMeasurementsModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/EnapoMeasurementsModel.ts"],"names":[],"mappings":";;;AAAA,+FAAuF;AAEvF,mEAAwF;AAGxF,MAAa,sBAAuB,SAAQ,iBAA4B;;AAAxE,wDAgEC;AA/DiB,iCAAU,GAAG,oBAAoB,CAAC;AAClC,sCAAe,GAAG,6BAA6B,CAAC;AAChD,iDAA0B,GAAG,sCAAsC,CAAC;AAUpE,qCAAc,GAAmE;IAC3F,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,KAAK,EAAE;QACH,IAAI,EAAE,qBAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;QAC/B,SAAS,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,iCAAU,GAA4C;IAChE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;YACxD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,6CAAmB,CAAC,EAAE;YACjE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3C;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,sBAAsB,CAAC;KAC/F;CACJ,CAAC"}
1
+ {"version":3,"file":"EnapoMeasurementsModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/EnapoMeasurementsModel.ts"],"names":[],"mappings":";;;AAAA,+FAAuF;AAEvF,mEAAwF;AAGxF,MAAa,sBAAuB,SAAQ,iBAA4B;;AAAxE,wDAqEC;AApEiB,iCAAU,GAAG,oBAAoB,CAAC;AAClC,sCAAe,GAAG,6BAA6B,CAAC;AAChD,iDAA0B,GAAG,sCAAsC,CAAC;AAWpE,qCAAc,GAAmE;IAC3F,EAAE,EAAE;QACA,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,KAAK,EAAE;QACH,IAAI,EAAE,qBAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;QAC/B,SAAS,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,iCAAU,GAA4C;IAChE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE;YACxD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,6CAAmB,CAAC,EAAE;YACjE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3C;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,sBAAsB,CAAC;KACzG;CACJ,CAAC"}
@@ -1,18 +1,26 @@
1
1
  import { IPreIncomingDataLog } from "../../datasources/interfaces/enapo/IPreIncomingDataLog";
2
2
  import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
3
- import { CreationOptional, Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
3
+ import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
4
4
  export declare class PreIncomingDataLogModel extends Model<IPreIncomingDataLog> implements IPreIncomingDataLog {
5
5
  static TABLE_NAME: string;
6
6
  static REPOSITORY_NAME: string;
7
7
  static JSON_SCHEMA_VALIDATOR_NAME: string;
8
- id: CreationOptional<string>;
8
+ ean: string;
9
9
  year: number;
10
10
  month: number;
11
11
  month_name: string;
12
12
  days_in_stored_month: number;
13
- company_ids: string[];
14
- ean_list: string[];
15
- ean_with_meter_replaced: string[];
13
+ consumption_point: string;
14
+ address: string;
15
+ location_type: string;
16
+ company_name: string;
17
+ company_id: string;
18
+ tarif_type: string;
19
+ tarif_1t2t: string;
20
+ phases: string;
21
+ circuit_breaker: string;
22
+ type_b_meter: string;
23
+ meter_replaced: string;
16
24
  static attributeModel: ModelAttributes<PreIncomingDataLogModel, IPreIncomingDataLog>;
17
25
  static jsonSchema: JSONSchemaType<IPreIncomingDataLog[]>;
18
26
  }
@@ -5,20 +5,21 @@ const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
5
5
  class PreIncomingDataLogModel extends sequelize_1.Model {
6
6
  }
7
7
  exports.PreIncomingDataLogModel = PreIncomingDataLogModel;
8
- PreIncomingDataLogModel.TABLE_NAME = "enapo_log_pre";
8
+ PreIncomingDataLogModel.TABLE_NAME = "enapo_pre_metadata_history";
9
9
  PreIncomingDataLogModel.REPOSITORY_NAME = "PreIncomingDataLogRepository";
10
10
  PreIncomingDataLogModel.JSON_SCHEMA_VALIDATOR_NAME = "PreIncomingDataLogModelRepositoryValidator";
11
11
  PreIncomingDataLogModel.attributeModel = {
12
- id: {
13
- type: sequelize_1.DataTypes.UUIDV4,
12
+ ean: {
13
+ type: sequelize_1.DataTypes.STRING,
14
14
  primaryKey: true,
15
- autoIncrement: true,
16
15
  },
17
16
  year: {
18
17
  type: sequelize_1.DataTypes.INTEGER,
18
+ primaryKey: true,
19
19
  },
20
20
  month: {
21
21
  type: sequelize_1.DataTypes.INTEGER,
22
+ primaryKey: true,
22
23
  },
23
24
  month_name: {
24
25
  type: sequelize_1.DataTypes.STRING,
@@ -26,14 +27,38 @@ PreIncomingDataLogModel.attributeModel = {
26
27
  days_in_stored_month: {
27
28
  type: sequelize_1.DataTypes.INTEGER,
28
29
  },
29
- company_ids: {
30
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.STRING),
30
+ consumption_point: {
31
+ type: sequelize_1.DataTypes.STRING,
32
+ },
33
+ address: {
34
+ type: sequelize_1.DataTypes.STRING,
35
+ },
36
+ location_type: {
37
+ type: sequelize_1.DataTypes.STRING,
38
+ },
39
+ company_name: {
40
+ type: sequelize_1.DataTypes.STRING,
41
+ },
42
+ company_id: {
43
+ type: sequelize_1.DataTypes.STRING,
44
+ },
45
+ tarif_type: {
46
+ type: sequelize_1.DataTypes.STRING,
31
47
  },
32
- ean_list: {
33
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.STRING),
48
+ tarif_1t2t: {
49
+ type: sequelize_1.DataTypes.STRING,
50
+ },
51
+ phases: {
52
+ type: sequelize_1.DataTypes.STRING,
34
53
  },
35
- ean_with_meter_replaced: {
36
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.STRING),
54
+ circuit_breaker: {
55
+ type: sequelize_1.DataTypes.STRING,
56
+ },
57
+ type_b_meter: {
58
+ type: sequelize_1.DataTypes.STRING,
59
+ },
60
+ meter_replaced: {
61
+ type: sequelize_1.DataTypes.STRING,
37
62
  },
38
63
  };
39
64
  PreIncomingDataLogModel.jsonSchema = {
@@ -41,33 +66,24 @@ PreIncomingDataLogModel.jsonSchema = {
41
66
  items: {
42
67
  type: "object",
43
68
  properties: {
44
- id: { type: "string" },
69
+ ean: { type: "string" },
45
70
  year: { type: "integer" },
46
71
  month: { type: "integer" },
47
72
  month_name: { type: "string" },
48
73
  days_in_stored_month: { type: "integer" },
49
- company_ids: {
50
- type: "array",
51
- items: { type: "string" },
52
- },
53
- ean_list: {
54
- type: "array",
55
- items: { type: "string" },
56
- },
57
- ean_with_meter_replaced: {
58
- type: "array",
59
- items: { type: "string" },
60
- },
74
+ consumption_point: { type: "string" },
75
+ address: { type: "string" },
76
+ location_type: { type: "string" },
77
+ company_name: { type: "string" },
78
+ company_id: { type: "string" },
79
+ tarif_type: { type: "string" },
80
+ tarif_1t2t: { type: "string" },
81
+ phases: { type: "string" },
82
+ circuit_breaker: { type: "string" },
83
+ type_b_meter: { type: "string" },
84
+ meter_replaced: { type: "string" },
61
85
  },
62
- required: [
63
- "year",
64
- "month",
65
- "month_name",
66
- "days_in_stored_month",
67
- "company_ids",
68
- "ean_list",
69
- "ean_with_meter_replaced",
70
- ],
86
+ required: ["ean", "year", "month"],
71
87
  },
72
88
  };
73
89
  //# sourceMappingURL=PreIncomingDataLogModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreIncomingDataLogModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/PreIncomingDataLogModel.ts"],"names":[],"mappings":";;;AAEA,mEAA0G;AAE1G,MAAa,uBAAwB,SAAQ,iBAA0B;;AAAvE,0DA6EC;AA5EiB,kCAAU,GAAG,eAAe,CAAC;AAC7B,uCAAe,GAAG,8BAA8B,CAAC;AACjD,kDAA0B,GAAG,4CAA4C,CAAC;AAW1E,sCAAc,GAAkE;IAC1F,EAAE,EAAE;QACA,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,IAAI;KACtB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,KAAK,EAAE;QACH,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,MAAM,CAAC;KAC1C;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,MAAM,CAAC;KAC1C;IACD,uBAAuB,EAAE;QACrB,IAAI,EAAE,qBAAS,CAAC,KAAK,CAAC,qBAAS,CAAC,MAAM,CAAC;KAC1C;CACJ,CAAC;AAEY,kCAAU,GAA0C;IAC9D,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACzB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,oBAAoB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,WAAW,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B;YACD,QAAQ,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B;YACD,uBAAuB,EAAE;gBACrB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B;SACJ;QACD,QAAQ,EAAE;YACN,MAAM;YACN,OAAO;YACP,YAAY;YACZ,sBAAsB;YACtB,aAAa;YACb,UAAU;YACV,yBAAyB;SAC5B;KACJ;CACJ,CAAC"}
1
+ {"version":3,"file":"PreIncomingDataLogModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/PreIncomingDataLogModel.ts"],"names":[],"mappings":";;;AAEA,mEAAwF;AAExF,MAAa,uBAAwB,SAAQ,iBAA0B;;AAAvE,0DAqGC;AApGiB,kCAAU,GAAG,4BAA4B,CAAC;AAC1C,uCAAe,GAAG,8BAA8B,CAAC;AACjD,kDAA0B,GAAG,4CAA4C,CAAC;AAmB1E,sCAAc,GAAkE;IAC1F,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI;KACnB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,UAAU,EAAE,IAAI;KACnB;IACD,KAAK,EAAE;QACH,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,UAAU,EAAE,IAAI;KACnB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,OAAO;KAC1B;IACD,iBAAiB,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,eAAe,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;IACD,cAAc,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,MAAM;KACzB;CACJ,CAAC;AAEY,kCAAU,GAA0C;IAC9D,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACzB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,oBAAoB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SACrC;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC;KACrC;CACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export interface IEnapoMeasurementsDto {
2
- eic: string;
2
+ id: string;
3
+ id_type: string;
3
4
  value: number;
4
5
  timestamp: Date;
5
6
  var: string;
@@ -445,6 +445,13 @@ Task zpracovává zasílaná data o spotřebě elektřiny. Data jsou nám zasíl
445
445
  - [PreDailyMeasurementsTransformation](../src/integration-engine/enapo/transformations/pre/PreDailyMeasurementsTransformation.ts)
446
446
  - [PreMeasurementsTransformation](../src/integration-engine/enapo/transformations/pre/PreMeasurementsTransformation.ts)
447
447
  - [PreMetadataTransfromation](../src/integration-engine/enapo/transformations/pre/PreMetadataTransfromation.ts.ts)
448
+ - v případě, že se u measurementů vyskytnou dvě hodnoty ve stejném čase, tak se hodnoty sečtou viz [sumDuplicates](../src/integration-engine/commodity-providers/helper/PreMeasurementFilter.ts)
449
+ - device_serial_number is extracted from raw_data `meter_replaced` value
450
+ - default time for meter change is set to static value `10:00` Europe/Prague time
451
+ - If change occurs e.g. `"meter_replaced": "2025-06-19|54292510|55505332|2025-06-30|55505332|96933662"` measurements before 19.6.2025 will have serial number `54292510` measurements after `2025-06-19 10:00` will have serial number `55505332` and measurements after `2025-06-30 10:00` will have serial number `96933662`
452
+ - [DeviceSerialNumberExtractor](../src/integration-engine/enapo/transformations/pre/helpers/DeviceSerialNumberExtractor.ts)
453
+
454
+ -
448
455
  - data modely
449
456
  - [EnapoMeasurementsModel](../src/schema-definitions/models/enapo/EnapoMeasurementsModel.ts) tabulka `enapo_measurements`
450
457
  - [EnapoMetadataModel](../src/schema-definitions/models/enapo/EnapoMetadataModel.ts) tabulka `enapo_metadata`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/energetics",
3
- "version": "1.4.13-dev.2001462306",
3
+ "version": "1.4.13-dev.2008390014",
4
4
  "description": "Golemio Energetics Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,5 +0,0 @@
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 EnapoMetadataRepository extends PostgresModel implements IModel {
4
- constructor();
5
- }
@@ -1,32 +0,0 @@
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.EnapoMetadataRepository = void 0;
13
- const _sch_1 = require("../../../schema-definitions");
14
- const EnapoMetadataModel_1 = require("../../../schema-definitions/models/enapo/EnapoMetadataModel");
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 EnapoMetadataRepository = exports.EnapoMetadataRepository = class EnapoMetadataRepository extends PostgresModel_1.PostgresModel {
19
- constructor() {
20
- super(EnapoMetadataModel_1.EnapoMetadataModel.REPOSITORY_NAME, {
21
- pgTableName: EnapoMetadataModel_1.EnapoMetadataModel.TABLE_NAME,
22
- pgSchema: _sch_1.EnergeticsSchema.pgSchema,
23
- outputSequelizeAttributes: EnapoMetadataModel_1.EnapoMetadataModel.attributeModel,
24
- savingType: "insertOrUpdate",
25
- }, new golemio_validator_1.JSONSchemaValidator(EnapoMetadataModel_1.EnapoMetadataModel.JSON_SCHEMA_VALIDATOR_NAME, EnapoMetadataModel_1.EnapoMetadataModel.jsonSchema));
26
- }
27
- };
28
- exports.EnapoMetadataRepository = EnapoMetadataRepository = __decorate([
29
- (0, tsyringe_1.injectable)(),
30
- __metadata("design:paramtypes", [])
31
- ], EnapoMetadataRepository);
32
- //# sourceMappingURL=EnapoMetadataRepository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnapoMetadataRepository.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/repositories/EnapoMetadataRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAwC;AACxC,oGAA0E;AAE1E,8FAA2F;AAC3F,mFAAkF;AAClF,iEAAgE;AAGzD,IAAM,uBAAuB,qCAA7B,MAAM,uBAAwB,SAAQ,6BAAa;IACtD;QACI,KAAK,CACD,uCAAkB,CAAC,eAAe,EAClC;YACI,WAAW,EAAE,uCAAkB,CAAC,UAAU;YAC1C,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,uCAAkB,CAAC,cAAc;YAC5D,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,uCAAkB,CAAC,0BAA0B,EAAE,uCAAkB,CAAC,UAAU,CAAC,CACxG,CAAC;IACN,CAAC;CACJ,CAAA;kCAbY,uBAAuB;IADnC,IAAA,qBAAU,GAAE;;GACA,uBAAuB,CAanC"}