@golemio/energetics 1.9.0-dev.2544690351 → 1.9.0-dev.2567800850

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 (47) hide show
  1. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/AveDataTypeEnum.d.ts +4 -4
  2. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/AveDataTypeEnum.js +5 -5
  3. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/AveDataTypeEnum.js.map +1 -1
  4. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.d.ts +1 -1
  5. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.js +16 -13
  6. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.js.map +1 -1
  7. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/ArchiveDataTypeStrategy.d.ts +6 -0
  8. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/ArchiveDataTypeStrategy.js +26 -0
  9. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/ArchiveDataTypeStrategy.js.map +1 -0
  10. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.d.ts +4 -23
  11. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.js +3 -67
  12. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.js.map +1 -1
  13. package/dist/integration-engine/commodity-providers/datasources/ppas-ave-api/interfaces/IAveApiDeviceDataParams.d.ts +3 -5
  14. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +6 -3
  15. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +3 -3
  16. package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -1
  17. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js +11 -11
  18. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map +1 -1
  19. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.d.ts +4 -7
  20. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js +20 -24
  21. package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -1
  22. package/dist/integration-engine/enapo/interfaces/IPPasPlaces.d.ts +3 -46
  23. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.d.ts +1 -0
  24. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js +4 -4
  25. package/dist/integration-engine/enapo/transformations/PPasMeasurementTransformation.js.map +1 -1
  26. package/dist/integration-engine/enapo/workers/task/EnapoPpasTask.d.ts +2 -5
  27. package/dist/integration-engine/enapo/workers/task/EnapoPpasTask.js +21 -24
  28. package/dist/integration-engine/enapo/workers/task/EnapoPpasTask.js.map +1 -1
  29. package/dist/output-gateway/repositories/MeasurementRepository.js +5 -1
  30. package/dist/output-gateway/repositories/MeasurementRepository.js.map +1 -1
  31. package/dist/schema-definitions/datasources/commodity-providers/AveApiArchiveResponseJsonSchema.d.ts +3 -0
  32. package/dist/schema-definitions/datasources/commodity-providers/AveApiArchiveResponseJsonSchema.js +37 -0
  33. package/dist/schema-definitions/datasources/commodity-providers/AveApiArchiveResponseJsonSchema.js.map +1 -0
  34. package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.js +2 -2
  35. package/dist/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.js.map +1 -1
  36. package/dist/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.js +5 -4
  37. package/dist/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.js.map +1 -1
  38. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveHeaderDto.d.ts +5 -0
  39. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveHeaderDto.js +3 -0
  40. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveHeaderDto.js.map +1 -0
  41. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveResponseDto.d.ts +10 -0
  42. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveResponseDto.js +3 -0
  43. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveResponseDto.js.map +1 -0
  44. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto.d.ts +1 -1
  45. package/dist/schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto.d.ts +4 -3
  46. package/docs/implementation_documentation.md +5 -3
  47. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  export declare enum AveDataType {
2
- RawData = 0,
3
- HourlyData = 1,
4
- DailyData = 2,
5
- MonthlyData = 3
2
+ RawData = "RawData",
3
+ HourlyData = "HourlyData",
4
+ DailyData = "DailyData",
5
+ MonthlyData = "MonthlyData"
6
6
  }
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AveDataType = void 0;
4
- // takeover from original C# scraper [OIct.ECG.AveDataGrabber](https://gitlab.com/operator-ict/oddeleni-vyvoje/energetika/spotreby-energii-mestskych-budov/stahovani-dat-meridel/-/blob/main/src/OIct.ECG.AveDataGrabber/Models/DataType.cs?ref_type=heads)
4
+ // String values match the `dataType` query parameter of the new PPAS AVE REST API V1.
5
5
  var AveDataType;
6
6
  (function (AveDataType) {
7
- AveDataType[AveDataType["RawData"] = 0] = "RawData";
8
- AveDataType[AveDataType["HourlyData"] = 1] = "HourlyData";
9
- AveDataType[AveDataType["DailyData"] = 2] = "DailyData";
10
- AveDataType[AveDataType["MonthlyData"] = 3] = "MonthlyData";
7
+ AveDataType["RawData"] = "RawData";
8
+ AveDataType["HourlyData"] = "HourlyData";
9
+ AveDataType["DailyData"] = "DailyData";
10
+ AveDataType["MonthlyData"] = "MonthlyData";
11
11
  })(AveDataType || (exports.AveDataType = AveDataType = {}));
12
12
  //# sourceMappingURL=AveDataTypeEnum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AveDataTypeEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/AveDataTypeEnum.ts"],"names":[],"mappings":";;;AAAA,2PAA2P;AAC3P,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,mDAAW,CAAA;IACX,yDAAc,CAAA;IACd,uDAAa,CAAA;IACb,2DAAe,CAAA;AACnB,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB"}
1
+ {"version":3,"file":"AveDataTypeEnum.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/AveDataTypeEnum.ts"],"names":[],"mappings":";;;AAAA,sFAAsF;AACtF,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,0CAA2B,CAAA;AAC/B,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB"}
@@ -8,7 +8,7 @@ export declare class PpasAveApiDataSourceProvider implements IDataSourceProvider
8
8
  private static readonly DATASOURCE_NAME;
9
9
  private static readonly MAX_RESULTS;
10
10
  constructor(config: ISimpleConfig);
11
- getDataSource(resourceType: string, sessionId: string, params?: IAveApiDeviceDataParams): IDataSource<CemApiDtoUnion[]>;
11
+ getDataSource(resourceType: string, apiKey: string, params?: IAveApiDeviceDataParams): IDataSource<CemApiDtoUnion[]>;
12
12
  private getProtocolStrategy;
13
13
  private getDataTypeStrategy;
14
14
  private getJsonSchemaValidator;
@@ -22,31 +22,34 @@ const HTTPFetchProtocolStrategy_1 = require("@golemio/core/dist/integration-engi
22
22
  const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
23
23
  const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
24
24
  const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
25
+ const ArchiveDataTypeStrategy_1 = require("./helpers/ArchiveDataTypeStrategy");
25
26
  const PpasAveApiHelper_1 = require("./helpers/PpasAveApiHelper");
26
27
  let PpasAveApiDataSourceProvider = exports.PpasAveApiDataSourceProvider = PpasAveApiDataSourceProvider_1 = class PpasAveApiDataSourceProvider {
27
28
  constructor(config) {
28
29
  this.config = config;
29
30
  }
30
- getDataSource(resourceType, sessionId, params) {
31
+ getDataSource(resourceType, apiKey, params) {
31
32
  const baseUrl = this.config.getValue("module.energetics.commodityProviders.ppas_ave_api.baseUrl");
32
33
  const url = new URL(baseUrl);
33
- url.pathname += "/" + resourceType;
34
- url.searchParams.append("sessionId", sessionId);
35
- url.searchParams.append("limit", PpasAveApiDataSourceProvider_1.MAX_RESULTS.toString());
36
- if (params) {
37
- url.searchParams.append("placeId", params.placeId.toString());
38
- url.searchParams.append("dateFrom", params.dateFrom);
39
- url.searchParams.append("dateTo", params.dateTo);
40
- url.searchParams.append("isoDate", params.isoDate);
34
+ if (resourceType === PpasAveApiHelper_1.PpasAveApiHelper.resourceType.Places) {
35
+ url.pathname += "/devices";
36
+ url.searchParams.append("parameters.limit", PpasAveApiDataSourceProvider_1.MAX_RESULTS.toString());
37
+ }
38
+ else if (resourceType === PpasAveApiHelper_1.PpasAveApiHelper.resourceType.DeviceData && params) {
39
+ url.pathname += `/devices/${params.deviceId}/data/archive`;
41
40
  url.searchParams.append("dataType", params.dataType);
41
+ url.searchParams.append("from", params.from);
42
+ url.searchParams.append("to", params.to);
43
+ url.searchParams.append("dstAware", "false");
42
44
  }
43
- return new integration_engine_1.DataSource(PpasAveApiDataSourceProvider_1.DATASOURCE_NAME, this.getProtocolStrategy(url, sessionId), this.getDataTypeStrategy(resourceType), this.getJsonSchemaValidator(resourceType));
45
+ return new integration_engine_1.DataSource(PpasAveApiDataSourceProvider_1.DATASOURCE_NAME, this.getProtocolStrategy(url, apiKey), this.getDataTypeStrategy(resourceType), this.getJsonSchemaValidator(resourceType));
44
46
  }
45
- getProtocolStrategy(url, sessionId) {
47
+ getProtocolStrategy(url, apiKey) {
46
48
  return new HTTPFetchProtocolStrategy_1.HTTPFetchProtocolStrategy({
47
49
  method: "GET",
48
50
  headers: {
49
51
  Accept: "application/json",
52
+ [PpasAveApiHelper_1.PpasAveApiHelper.API_KEY_HEADER]: apiKey,
50
53
  },
51
54
  timeoutInSeconds: 20,
52
55
  url: url.toString(),
@@ -55,9 +58,9 @@ let PpasAveApiDataSourceProvider = exports.PpasAveApiDataSourceProvider = PpasAv
55
58
  getDataTypeStrategy(resourceType) {
56
59
  switch (resourceType) {
57
60
  case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.Places:
58
- return new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "PageItems" });
61
+ return new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "pageItems" });
59
62
  case PpasAveApiHelper_1.PpasAveApiHelper.resourceType.DeviceData:
60
- return new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "" });
63
+ return new ArchiveDataTypeStrategy_1.ArchiveDataTypeStrategy({ resultsPath: "" });
61
64
  default:
62
65
  throw new golemio_errors_1.GeneralError(`Unknown resource type: ${resourceType}`, PpasAveApiDataSourceProvider_1.name);
63
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PpasAveApiDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PpasAveApiDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/PpasAveApiDataSourceProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0IAA6G;AAC7G,kIAAqG;AAErG,wEAAqE;AACrE,8EAAsG;AACtG,6IAA0I;AAE1I,6EAAwE;AACxE,mFAAkF;AAClF,iEAAwE;AAGxE,+EAA4E;AAC5E,iEAA8D;AAIvD,IAAM,4BAA4B,2EAAlC,MAAM,4BAA4B;IAIrC,YAAoD,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtE,aAAa,CAAC,YAAoB,EAAE,MAAc,EAAE,MAAgC;QACvF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAS,2DAA2D,CAAC,CAAC;QAC1G,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,YAAY,KAAK,mCAAgB,CAAC,YAAY,CAAC,MAAM,EAAE;YACvD,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC;YAC3B,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,kBAAkB,EAAE,8BAA4B,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;SACpG;aAAM,IAAI,YAAY,KAAK,mCAAgB,CAAC,YAAY,CAAC,UAAU,IAAI,MAAM,EAAE;YAC5E,GAAG,CAAC,QAAQ,IAAI,YAAY,MAAM,CAAC,QAAQ,eAAe,CAAC;YAC3D,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7C,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACzC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;SAChD;QAED,OAAO,IAAI,+BAAU,CACjB,8BAA4B,CAAC,eAAe,EAC5C,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,EACrC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EACtC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAC5C,CAAC;IACN,CAAC;IAEO,mBAAmB,CAAC,GAAQ,EAAE,MAAc;QAChD,OAAO,IAAI,qDAAyB,CAAC;YACjC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACL,MAAM,EAAE,kBAAkB;gBAC1B,CAAC,mCAAgB,CAAC,cAAc,CAAC,EAAE,MAAM;aAC5C;YACD,gBAAgB,EAAE,EAAE;YACpB,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC,CAAC;IACP,CAAC;IAEO,mBAAmB,CAAC,YAAoB;QAC5C,QAAQ,YAAY,EAAE;YAClB,KAAK,mCAAgB,CAAC,YAAY,CAAC,MAAM;gBACrC,OAAO,IAAI,yCAAoB,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;YAClE,KAAK,mCAAgB,CAAC,YAAY,CAAC,UAAU;gBACzC,OAAO,IAAI,iDAAuB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5D;gBACI,MAAM,IAAI,6BAAY,CAAC,0BAA0B,YAAY,EAAE,EAAE,8BAA4B,CAAC,IAAI,CAAC,CAAC;SAC3G;IACL,CAAC;IAEO,sBAAsB,CAAC,YAAoB;QAC/C,QAAQ,YAAY,EAAE;YAClB,KAAK,mCAAgB,CAAC,YAAY,CAAC,MAAM;gBACrC,OAAO,IAAI,uCAAmB,CAAC,8BAA4B,CAAC,eAAe,GAAG,QAAQ,EAAE,+CAAsB,CAAC,CAAC;YACpH,KAAK,mCAAgB,CAAC,YAAY,CAAC,UAAU;gBACzC,OAAO,IAAI,uCAAmB,CAC1B,8BAA4B,CAAC,eAAe,GAAG,YAAY,EAC3D,uDAA0B,CAC7B,CAAC;YACN;gBACI,MAAM,IAAI,6BAAY,CAAC,0BAA0B,YAAY,EAAE,EAAE,8BAA4B,CAAC,IAAI,CAAC,CAAC;SAC3G;IACL,CAAC;;AA/DuB,4CAAe,GAAG,sBAAsB,AAAzB,CAA0B;AACzC,wCAAW,GAAG,KAAK,AAAR,CAAS;uCAFnC,4BAA4B;IADxC,IAAA,qBAAU,GAAE;IAKI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GAJlC,4BAA4B,CAiExC"}
@@ -0,0 +1,6 @@
1
+ import { IAveApiDeviceDataDto } from "../../../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiDeviceDataDto";
2
+ import { JSONDataTypeStrategy } from "@golemio/core/dist/integration-engine";
3
+ export declare class ArchiveDataTypeStrategy extends JSONDataTypeStrategy {
4
+ private readonly archiveResponseValidator;
5
+ parseData(data: unknown): Promise<IAveApiDeviceDataDto[]>;
6
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArchiveDataTypeStrategy = void 0;
4
+ const AveApiArchiveResponseJsonSchema_1 = require("../../../../../schema-definitions/datasources/commodity-providers/AveApiArchiveResponseJsonSchema");
5
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
6
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
7
+ // Api response has column names in the array headers: []
8
+ // and values are in a separate array called rows: []
9
+ // test\integration-engine\data\aveapi-ppas-data-archive.json
10
+ class ArchiveDataTypeStrategy extends integration_engine_1.JSONDataTypeStrategy {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.archiveResponseValidator = new golemio_validator_1.JSONSchemaValidator("PpasAveApiArchiveResponse", AveApiArchiveResponseJsonSchema_1.aveApiArchiveResponseJsonSchema);
14
+ }
15
+ async parseData(data) {
16
+ const response = (await super.parseData(data));
17
+ if (!response || !Array.isArray(response.rows) || !Array.isArray(response.headers)) {
18
+ return [];
19
+ }
20
+ await this.archiveResponseValidator.Validate(response);
21
+ const { headers, rows } = response;
22
+ return rows.map((row) => Object.fromEntries(headers.map((header, i) => [header.key, row[i]])));
23
+ }
24
+ }
25
+ exports.ArchiveDataTypeStrategy = ArchiveDataTypeStrategy;
26
+ //# sourceMappingURL=ArchiveDataTypeStrategy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveDataTypeStrategy.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/ArchiveDataTypeStrategy.ts"],"names":[],"mappings":";;;AAAA,uJAAuH;AAMvH,8EAA6E;AAC7E,mFAAkF;AAElF,yDAAyD;AACzD,qDAAqD;AACrD,6DAA6D;AAC7D,MAAa,uBAAwB,SAAQ,yCAAoB;IAAjE;;QACqB,6BAAwB,GAAG,IAAI,uCAAmB,CAC/D,2BAA2B,EAC3B,iEAA+B,CAClC,CAAC;IAmBN,CAAC;IAjBmB,KAAK,CAAC,SAAS,CAAC,IAAa;QACzC,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAuC,CAAC;QACrF,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAChF,OAAO,EAAE,CAAC;SACb;QAED,MAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEvD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QACnC,OAAO,IAAI,CAAC,GAAG,CACX,CAAC,GAAG,EAAE,EAAE,CACJ,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAG1C,CAChC,CAAC;IACN,CAAC;CACJ;AAvBD,0DAuBC"}
@@ -1,32 +1,13 @@
1
1
  export interface IAveConfig {
2
- user: string;
3
- pass: string;
2
+ apikey: string;
4
3
  excludelist: string[] | null;
5
4
  }
6
- /**
7
- * Helper class for requesting additional data from PPAS InternetAVE API
8
- */
9
5
  declare class PpasAveApiHelper {
10
- private baseUrl;
11
- private config;
12
6
  static API_DATE_TZ: string;
13
- constructor(baseUrl: string, config: IAveConfig);
14
- /**
15
- * Create API session and return session ID
16
- */
17
- createSession: () => Promise<string>;
18
- /**
19
- * Terminate current session/invalidate session ID
20
- */
21
- terminateSession: (sessionId: string) => Promise<void>;
22
- /**
23
- * Return resource types/identifiers
24
- */
7
+ static API_KEY_HEADER: string;
25
8
  static get resourceType(): {
26
- readonly Logon: "logon.rails";
27
- readonly LogOff: "LogOff.rails";
28
- readonly Places: "GetPlaces.rails";
29
- readonly DeviceData: "GetDeviceData.rails";
9
+ readonly Places: "Places";
10
+ readonly DeviceData: "DeviceData";
30
11
  };
31
12
  }
32
13
  export { PpasAveApiHelper };
@@ -1,79 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PpasAveApiHelper = void 0;
4
- const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
5
- /**
6
- * Helper class for requesting additional data from PPAS InternetAVE API
7
- */
8
4
  class PpasAveApiHelper {
9
- constructor(baseUrl, config) {
10
- this.baseUrl = baseUrl;
11
- this.config = config;
12
- /**
13
- * Create API session and return session ID
14
- */
15
- this.createSession = async () => {
16
- const { user, pass } = this.config;
17
- try {
18
- const url = new URL(this.baseUrl);
19
- url.pathname += "/" + PpasAveApiHelper.resourceType.Logon;
20
- const result = await fetch(url.toString(), {
21
- method: "post",
22
- headers: new Headers({
23
- Accept: "application/json",
24
- "Content-Type": "application/x-www-form-urlencoded",
25
- }),
26
- body: new URLSearchParams({
27
- name: user,
28
- password: pass,
29
- }),
30
- signal: AbortSignal.timeout(10000),
31
- });
32
- const data = await result.json();
33
- if (data?.success && typeof data?.sessionId === "string") {
34
- return data.sessionId;
35
- }
36
- throw new golemio_errors_1.GeneralError("Cannot parse PPAS AVE Session ID from the server response", PpasAveApiHelper.name, new Error(data?.message));
37
- }
38
- catch (err) {
39
- if (err instanceof golemio_errors_1.AbstractGolemioError) {
40
- throw err;
41
- }
42
- throw new golemio_errors_1.GeneralError("Cannot retrieve PPAS AVE Session ID " + err.message, PpasAveApiHelper.name, err);
43
- }
44
- };
45
- /**
46
- * Terminate current session/invalidate session ID
47
- */
48
- this.terminateSession = async (sessionId) => {
49
- try {
50
- const url = new URL(this.baseUrl);
51
- url.pathname += "/" + PpasAveApiHelper.resourceType.LogOff;
52
- url.searchParams.append("sessionId", sessionId);
53
- await fetch(url.toString(), {
54
- method: "get",
55
- signal: AbortSignal.timeout(10000),
56
- });
57
- }
58
- catch (err) {
59
- throw new golemio_errors_1.GeneralError("Cannot terminate PPAS AVE API session", PpasAveApiHelper.name, err);
60
- }
61
- };
62
- }
63
- /**
64
- * Return resource types/identifiers
65
- */
66
5
  static get resourceType() {
67
6
  return {
68
- Logon: "logon.rails",
69
- LogOff: "LogOff.rails",
70
- Places: "GetPlaces.rails",
71
- DeviceData: "GetDeviceData.rails",
7
+ Places: "Places",
8
+ DeviceData: "DeviceData",
72
9
  };
73
10
  }
74
11
  }
75
12
  exports.PpasAveApiHelper = PpasAveApiHelper;
76
- // based on analysis it seems API PPAS is handling timezones incorrectly, we deciced to follow PPAS UI approach to timezones.
77
- // https://gitlab.com/operator-ict/golemio/projekty/energetika/p0262.prevzeti-energeticke-databaze/-/issues/37#note_2010344938
78
13
  PpasAveApiHelper.API_DATE_TZ = "UTC+1";
14
+ PpasAveApiHelper.API_KEY_HEADER = "X-API-Key";
79
15
  //# sourceMappingURL=PpasAveApiHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PpasAveApiHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.ts"],"names":[],"mappings":";;;AAAA,6EAA8F;AAO9F;;GAEG;AACH,MAAM,gBAAgB;IAKlB,YAAoB,OAAe,EAAU,MAAkB;QAA3C,YAAO,GAAP,OAAO,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAY;QAC/D;;WAEG;QACI,kBAAa,GAAG,KAAK,IAAqB,EAAE;YAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YAEnC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,GAAG,CAAC,QAAQ,IAAI,GAAG,GAAG,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC;gBAE1D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;oBACvC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,IAAI,OAAO,CAAC;wBACjB,MAAM,EAAE,kBAAkB;wBAC1B,cAAc,EAAE,mCAAmC;qBACtD,CAAC;oBACF,IAAI,EAAE,IAAI,eAAe,CAAC;wBACtB,IAAI,EAAE,IAAI;wBACV,QAAQ,EAAE,IAAI;qBACjB,CAAC;oBACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBACrC,CAAC,CAAC;gBAEH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEjC,IAAI,IAAI,EAAE,OAAO,IAAI,OAAO,IAAI,EAAE,SAAS,KAAK,QAAQ,EAAE;oBACtD,OAAO,IAAI,CAAC,SAAS,CAAC;iBACzB;gBAED,MAAM,IAAI,6BAAY,CAClB,2DAA2D,EAC3D,gBAAgB,CAAC,IAAI,EACrB,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAC3B,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;gBAED,MAAM,IAAI,6BAAY,CAAC,sCAAsC,GAAG,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC5G;QACL,CAAC,CAAC;QAEF;;WAEG;QACI,qBAAgB,GAAG,KAAK,EAAE,SAAiB,EAAiB,EAAE;YACjE,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,GAAG,CAAC,QAAQ,IAAI,GAAG,GAAG,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC3D,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;gBAEhD,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;oBACxB,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;iBACrC,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,uCAAuC,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC/F;QACL,CAAC,CAAC;IA5DgE,CAAC;IA8DnE;;OAEG;IACI,MAAM,KAAK,YAAY;QAC1B,OAAO;YACH,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,iBAAiB;YACzB,UAAU,EAAE,qBAAqB;SAC3B,CAAC;IACf,CAAC;;AAGI,4CAAgB;AA/ErB,6HAA6H;AAC7H,8HAA8H;AAChH,4BAAW,GAAG,OAAO,AAAV,CAAW"}
1
+ {"version":3,"file":"PpasAveApiHelper.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/PpasAveApiHelper.ts"],"names":[],"mappings":";;;AAKA,MAAM,gBAAgB;IAIX,MAAM,KAAK,YAAY;QAC1B,OAAO;YACH,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,YAAY;SAClB,CAAC;IACf,CAAC;;AAGI,4CAAgB;AAXP,4BAAW,GAAG,OAAO,CAAC;AACtB,+BAAc,GAAG,WAAW,CAAC"}
@@ -1,8 +1,6 @@
1
1
  export interface IAveApiDeviceDataParams {
2
- placeId: number;
3
- dateFrom: string;
4
- dateTo: string;
5
- isoDate: string;
2
+ deviceId: string;
3
+ from: string;
4
+ to: string;
6
5
  dataType: string;
7
- truncateData?: string;
8
6
  }
@@ -2,9 +2,12 @@ import { IAveApiDeviceDataDto } from "../../../schema-definitions/datasources/co
2
2
  import { IMeasurementOption } from "../../../schema-definitions/datasources/interfaces/IStaticMeterSettings";
3
3
  import { IMeasurementDto } from "../../../schema-definitions/models/interfaces/IMeasurementDto";
4
4
  import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
5
- import { IAveApiPlaceDto } from "../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto";
6
- export declare class AveMeasurementTransformation extends AbstractTransformation<IMeasurementOption & IAveApiDeviceDataDto & IAveApiPlaceDto, IMeasurementDto> {
5
+ export declare class AveMeasurementTransformation extends AbstractTransformation<IMeasurementOption & IAveApiDeviceDataDto & {
6
+ serialNumber?: number;
7
+ }, IMeasurementDto> {
7
8
  name: string;
8
- protected transformInternal: (data: IMeasurementOption & IAveApiDeviceDataDto & IAveApiPlaceDto) => IMeasurementDto;
9
+ protected transformInternal: (data: IMeasurementOption & IAveApiDeviceDataDto & {
10
+ serialNumber?: number;
11
+ }) => IMeasurementDto;
9
12
  private getValue;
10
13
  }
@@ -22,14 +22,14 @@ let AveMeasurementTransformation = exports.AveMeasurementTransformation = class
22
22
  source: CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi,
23
23
  measurement_category: data.Name,
24
24
  addr: data.Addr,
25
- meter: data.Eic,
26
- timestamp: luxon_1.DateTime.fromISO(data.StandardTime, {
25
+ meter: data.EIC ?? data.Meter ?? "",
26
+ timestamp: luxon_1.DateTime.fromISO(data.Timestamp, {
27
27
  zone: PpasAveApiHelper_1.PpasAveApiHelper.API_DATE_TZ,
28
28
  }).toJSDate(),
29
29
  variable: data.Var,
30
30
  type: data.Type,
31
31
  value: this.getValue(data, data.Var),
32
- device_serial_number: data.DeviceSerialNumber,
32
+ device_serial_number: data.serialNumber !== undefined ? String(data.serialNumber) : null,
33
33
  };
34
34
  };
35
35
  this.getValue = (data, variable) => {
@@ -1 +1 @@
1
- {"version":3,"file":"AveMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAGA,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAChE,wFAAiF;AACjF,2FAAwF;AACxF,qHAAuF;AAIhF,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAAC,IAAiE,EAAmB,EAAE;YACjH,OAAO;gBACH,MAAM,EAAE,yCAAiB,CAAC,kBAAkB;gBAC5C,oBAAoB,EAAE,IAAI,CAAC,IAAI;gBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,GAAG;gBACf,SAAS,EAAE,gBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE;oBAC3C,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAA0B,CAAC;gBAC3D,oBAAoB,EAAE,IAAI,CAAC,kBAAkB;aAChD,CAAC;QACN,CAAC,CAAC;QAEM,aAAQ,GAAG,CAAC,IAA0B,EAAE,QAA6B,EAAU,EAAE;YACrF,QAAQ,QAAQ,EAAE;gBACd,KAAK,6CAAmB,CAAC,IAAI,CAAC;gBAC9B;oBACI,OAAO,IAAI,CAAC,eAAe,CAAC;gBAChC,KAAK,6CAAmB,CAAC,KAAK;oBAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC;aACrC;QACL,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCA/BY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CA+BxC"}
1
+ {"version":3,"file":"AveMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAGA,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAChE,wFAAiF;AACjF,2FAAwF;AACxF,qHAAuF;AAGhF,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,IAA2E,EAC5D,EAAE;YACjB,OAAO;gBACH,MAAM,EAAE,yCAAiB,CAAC,kBAAkB;gBAC5C,oBAAoB,EAAE,IAAI,CAAC,IAAI;gBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE;gBACnC,SAAS,EAAE,gBAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;oBACxC,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAA0B,CAAC;gBAC3D,oBAAoB,EAAE,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;aAC3F,CAAC;QACN,CAAC,CAAC;QAEM,aAAQ,GAAG,CAAC,IAA0B,EAAE,QAA6B,EAAU,EAAE;YACrF,QAAQ,QAAQ,EAAE;gBACd,KAAK,6CAAmB,CAAC,IAAI,CAAC;gBAC9B;oBACI,OAAO,IAAI,CAAC,eAAe,CAAC;gBAChC,KAAK,6CAAmB,CAAC,KAAK;oBAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC;aACrC;QACL,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCAjCY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CAiCxC"}
@@ -13,7 +13,6 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.FetchPpasEEMeasurementsTask = void 0;
16
- const PpasAveApiHelper_1 = require("../../datasources/ppas-ave-api/helpers/PpasAveApiHelper");
17
16
  const WorkerContainerToken_1 = require("../../ioc/WorkerContainerToken");
18
17
  const MeasurementRepository_1 = require("../../repositories/MeasurementRepository");
19
18
  const StaticMeterSettingsRepository_1 = require("../../repositories/StaticMeterSettingsRepository");
@@ -39,25 +38,23 @@ let FetchPpasEEMeasurementsTask = exports.FetchPpasEEMeasurementsTask = class Fe
39
38
  else {
40
39
  measurementOptions = this.splitOptionsByVars(measurementOptions);
41
40
  }
42
- const { baseUrl, config } = this.getProviderConfig(data);
43
- const aveApiHelper = new PpasAveApiHelper_1.PpasAveApiHelper(baseUrl, config);
44
- const sessionId = await aveApiHelper.createSession();
41
+ const { apikey: apiKey } = this.getProviderConfig(data);
45
42
  try {
46
- const places = await this.getDataFromDataSource("Places", sessionId);
43
+ const places = await this.getDataFromDataSource("Places", apiKey);
47
44
  let consumptionData = [];
48
45
  for (const place of places) {
49
- const options = measurementOptions.filter((item) => item.EIC === place.Eic);
46
+ const options = measurementOptions.filter((item) => item.EIC === place.eic);
50
47
  if (options.length === 0) {
51
48
  continue;
52
49
  }
53
- this.logger.info(`Fetching data for device ${place.DeviceSerialNumber}`);
54
- const measurementChunkGenerator = this.generateMeasurements({ ...data, placeId: place.Id }, sessionId);
50
+ this.logger.info(`Fetching data for device ${place.serialNumber}`);
51
+ const measurementChunkGenerator = this.generateMeasurements({ ...data, deviceId: place.deviceId }, apiKey);
55
52
  for await (const measurements of measurementChunkGenerator) {
56
53
  for (const option of options) {
57
54
  const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement({
58
55
  ...item,
59
56
  ...option,
60
- ...place,
57
+ serialNumber: place.serialNumber,
61
58
  }));
62
59
  consumptionData = consumptionData.concat(consumptionBatch);
63
60
  }
@@ -65,8 +62,11 @@ let FetchPpasEEMeasurementsTask = exports.FetchPpasEEMeasurementsTask = class Fe
65
62
  }
66
63
  await this.saveConsumptionData(consumptionData);
67
64
  }
68
- finally {
69
- await aveApiHelper.terminateSession(sessionId);
65
+ catch (err) {
66
+ if (err instanceof golemio_errors_1.AbstractGolemioError) {
67
+ throw err;
68
+ }
69
+ throw new golemio_errors_1.GeneralError(`Unable to download ppas ee measurements`, this.constructor.name, err);
70
70
  }
71
71
  }
72
72
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FetchPpasEEMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,8FAA6G;AAC7G,yEAAwF;AACxF,oFAAmG;AACnG,oGAAmH;AACnH,qGAAoH;AAEpH,yHAAwF;AAIxF,wEAAqE;AACrE,6EAAwE;AACxE,iEAAwE;AAExE,6EAAoF;AACpF,2EAAwE;AAGjE,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,qDAAyB;IAKtE,YACoC,MAAqB,EAC3B,MAAe,EAEzC,iBAAsD,EAEtD,yBAAuD,EACH,qBAA4C,EACpC,uBAAsD;QAElH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,uBAAuB,CAAC,CAAC;QAdxG,cAAS,GAAG,yBAAyB,CAAC;QACtC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,yDAAgC,CAAC;IAa1D,CAAC;IAEe,KAAK,CAAC,OAAO,CAAC,IAA6B;QACvD,IAAI,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAC/D,IAAI,CAAC,YAAY,EACjB,mDAAsB,CAAC,kBAAkB,CAC5C,CAAC;QAEF,IAAI,CAAC,kBAAkB,EAAE;YACrB,MAAM,IAAI,6BAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAClF;aAAM;YACH,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;SACpE;QAED,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,IAAI,mCAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,aAAa,EAAE,CAAC;QAErD,IAAI;YACA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAkB,QAAQ,EAAE,SAAS,CAAC,CAAC;YAEtF,IAAI,eAAe,GAAsB,EAAE,CAAC;YAE5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBACxB,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtB,SAAS;iBACZ;gBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;gBACzE,MAAM,yBAAyB,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;gBAEvG,IAAI,KAAK,EAAE,MAAM,YAAY,IAAI,yBAAyB,EAAE;oBACxD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;wBAC1B,MAAM,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/C,IAAI,CAAC,yBAAyB,CAAC,gBAAgB,CAAC;4BAC5C,GAAG,IAAI;4BACP,GAAG,MAAM;4BACT,GAAG,KAAK;yBACX,CAAC,CACL,CAAC;wBAEF,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;qBAC9D;iBACJ;aACJ;YAED,MAAM,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;SACnD;gBAAS;YACN,MAAM,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;SAClD;IACL,CAAC;CACJ,CAAA;sCApEY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;IAOJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;IAC9B,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;IACxB,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,kCAAkC,CAAC,CAAA;IAE/D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,4BAA4B,CAAC,CAAA;IAEzD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,qBAAqB,CAAC,CAAA;IAClD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAA;6DAFhC,2DAA4B;QACoB,6CAAqB;QACX,6DAA6B;GAb7G,2BAA2B,CAoEvC"}
1
+ {"version":3,"file":"FetchPpasEEMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.ts"],"names":[],"mappings":"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"}
@@ -23,14 +23,11 @@ export declare class FetchPpasMeasurementsTask extends AbstractFetchMeasurements
23
23
  schema: typeof PpasMeasurementsValidationSchema;
24
24
  constructor(config: ISimpleConfig, logger: ILogger, dataSourceFactory: ICommodityProviderDataSourceFactory, measurementTransformation: AveMeasurementTransformation, measurementRepository: MeasurementRepository, meterSettingsRepository: StaticMeterSettingsRepository);
25
25
  execute(data: IPpasMeasurementsParams): Promise<void>;
26
- protected getProviderConfig(data: IPpasMeasurementsParams): {
27
- baseUrl: string;
28
- config: IAveConfig;
29
- };
26
+ protected getProviderConfig(data: IPpasMeasurementsParams): IAveConfig;
30
27
  /** Splits the measurement options into individual options (multiple variables) */
31
28
  protected splitOptionsByVars(options: IMeasurementOption[]): IMeasurementOption[];
32
29
  protected generateMeasurements(data: IPpasMeasurementsParams & {
33
- placeId: number;
34
- }, sessionId: string): AsyncGenerator<IAveApiDeviceDataDto[]>;
35
- protected getDataFromDataSource<T extends AveApiDtoUnion>(resourceTypeKey: keyof typeof PpasAveApiHelper.resourceType, sessionId: string, params?: IAveApiDeviceDataParams): Promise<T[]>;
30
+ deviceId: string;
31
+ }, apiKey: string): AsyncGenerator<IAveApiDeviceDataDto[]>;
32
+ protected getDataFromDataSource<T extends AveApiDtoUnion>(resourceTypeKey: keyof typeof PpasAveApiHelper.resourceType, apiKey: string, params?: IAveApiDeviceDataParams): Promise<T[]>;
36
33
  }
@@ -48,25 +48,23 @@ let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchP
48
48
  else {
49
49
  measurementOptions = this.splitOptionsByVars(measurementOptions);
50
50
  }
51
- const { baseUrl, config } = this.getProviderConfig(data);
52
- const aveApiHelper = new PpasAveApiHelper_1.PpasAveApiHelper(baseUrl, config);
53
- const sessionId = await aveApiHelper.createSession();
51
+ const { apikey: apiKey } = this.getProviderConfig(data);
54
52
  try {
55
- const places = await this.getDataFromDataSource("Places", sessionId);
53
+ const places = await this.getDataFromDataSource("Places", apiKey);
56
54
  let consumptionData = [];
57
55
  for (const place of places) {
58
- const options = measurementOptions.filter((item) => item.EIC === place.Eic);
56
+ const options = measurementOptions.filter((item) => item.EIC === place.eic);
59
57
  if (options.length === 0) {
60
58
  continue;
61
59
  }
62
- this.logger.info(`Fetching data for device ${place.DeviceSerialNumber}`);
63
- const measurementChunkGenerator = this.generateMeasurements({ ...data, placeId: place.Id }, sessionId);
60
+ this.logger.info(`Fetching data for device ${place.serialNumber}`);
61
+ const measurementChunkGenerator = this.generateMeasurements({ ...data, deviceId: place.deviceId }, apiKey);
64
62
  for await (const measurements of measurementChunkGenerator) {
65
63
  for (const option of options) {
66
64
  const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement({
67
65
  ...item,
68
66
  ...option,
69
- ...place,
67
+ serialNumber: place.serialNumber,
70
68
  }));
71
69
  consumptionData = consumptionData.concat(consumptionBatch);
72
70
  }
@@ -74,15 +72,15 @@ let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchP
74
72
  }
75
73
  await this.saveConsumptionData(consumptionData);
76
74
  }
77
- finally {
78
- await aveApiHelper.terminateSession(sessionId);
75
+ catch (err) {
76
+ if (err instanceof golemio_errors_1.AbstractGolemioError) {
77
+ throw err;
78
+ }
79
+ throw new golemio_errors_1.GeneralError(`Unable to download ppas measurements`, this.constructor.name, err);
79
80
  }
80
81
  }
81
82
  getProviderConfig(data) {
82
- return {
83
- baseUrl: this.config.getValue("module.energetics.commodityProviders.ppas_ave_api.baseUrl"),
84
- config: this.config.getValue(`module.energetics.commodityProviders.${data.providerType}`),
85
- };
83
+ return this.config.getValue(`module.energetics.commodityProviders.${data.providerType}`);
86
84
  }
87
85
  /** Splits the measurement options into individual options (multiple variables) */
88
86
  splitOptionsByVars(options) {
@@ -93,25 +91,23 @@ let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchP
93
91
  }
94
92
  return result;
95
93
  }
96
- async *generateMeasurements(data, sessionId) {
94
+ async *generateMeasurements(data, apiKey) {
97
95
  const dateFrom = luxon_1.DateTime.fromISO(data.dateFrom).startOf("day");
98
96
  const dateTo = luxon_1.DateTime.fromISO(data.dateTo).startOf("day");
99
97
  const intervals = luxon_1.Interval.fromDateTimes(dateFrom, dateTo).splitBy({ days: 5 });
100
98
  for (const interval of intervals) {
101
99
  const start = interval.start.startOf("day");
102
100
  const end = interval.end.startOf("day");
103
- yield this.getDataFromDataSource("DeviceData", sessionId, {
104
- placeId: data.placeId,
105
- dateFrom: start.toISODate(),
106
- dateTo: end.toISODate(),
107
- isoDate: "1",
108
- // fill all measurement values (we need the OperatingAmount and ConvertDifference values)
109
- dataType: AveDataTypeEnum_1.AveDataType.RawData.toString(),
101
+ yield this.getDataFromDataSource("DeviceData", apiKey, {
102
+ deviceId: data.deviceId,
103
+ from: start.toUTC().toISO({ suppressMilliseconds: true }),
104
+ to: end.toUTC().toISO({ suppressMilliseconds: true }),
105
+ dataType: AveDataTypeEnum_1.AveDataType.HourlyData,
110
106
  });
111
107
  }
112
108
  }
113
- getDataFromDataSource(resourceTypeKey, sessionId, params) {
114
- const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi, PpasAveApiHelper_1.PpasAveApiHelper.resourceType[resourceTypeKey], sessionId, params);
109
+ getDataFromDataSource(resourceTypeKey, apiKey, params) {
110
+ const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi, PpasAveApiHelper_1.PpasAveApiHelper.resourceType[resourceTypeKey], apiKey, params);
115
111
  return dataSource.getAll();
116
112
  }
117
113
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FetchPpasMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FetchPpasMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,5 @@
1
1
  export interface IPPasPlaces {
2
- Id: number;
3
- Eic: string;
4
- CustomerName: string;
5
- PlaceName: string;
6
- PayerName: string;
7
- PayerId: string;
8
- CustomerId: string;
9
- PlaceId: string;
10
- DeviceLocation: string;
11
- Terminated: boolean;
12
- Region: string;
13
- RegionId: number;
14
- ConnectionMethod: string;
15
- PurchaseCategory: string;
16
- ConvertCoefficient: number;
17
- DeviceType: string;
18
- IdentificationNumber: string;
19
- LastData: string;
20
- DeviceSerialNumber: string;
21
- PlaceStreet: string;
22
- PayerStreet: string;
23
- PlaceCity: string;
24
- PayerCity: string;
25
- PlaceZipCode: string;
26
- PayerZipCode: string;
27
- Dealer: string;
28
- ReadingCategory: string;
29
- ValidatedBy: string;
30
- ValidatedTill: string;
31
- IsDataValidated: boolean;
32
- ValidationNote: string;
33
- Gps: string;
34
- Device: number;
35
- ReadRequestStatus: number;
36
- ReadDescription: string;
37
- Note: string;
38
- Group: string;
39
- Workplace: string;
40
- HasTimeWindows: boolean;
41
- HasBattery: boolean;
42
- HasGasComposition: boolean;
43
- BatteryCapacity: number;
44
- BatteryVoltage: number;
45
- DailyData: boolean;
46
- ScadaId: string;
47
- ParentDevice: string;
2
+ eic: string;
3
+ placeId: number;
4
+ serialNumber: number;
48
5
  }
@@ -5,6 +5,7 @@ import { IPPasPlaces } from "../interfaces/IPPasPlaces";
5
5
  export declare class PPasMeasurementTransformation extends AbstractTransformation<IAveApiDeviceDataDto & IPPasPlaces, {
6
6
  operatingAmount: IEnapoMeasurementsDto;
7
7
  convertDifference: IEnapoMeasurementsDto;
8
+ operatingDifference: IEnapoMeasurementsDto;
8
9
  }> {
9
10
  name: string;
10
11
  protected transformInternal: (data: IAveApiDeviceDataDto & IPPasPlaces) => {
@@ -19,14 +19,14 @@ let PPasMeasurementTransformation = exports.PPasMeasurementTransformation = clas
19
19
  this.name = "PPasMeasurementTransformation";
20
20
  this.transformInternal = (data) => {
21
21
  const baseData = {
22
- id: data.Eic,
22
+ id: data.eic,
23
23
  id_type: "eic",
24
- timestamp: luxon_1.DateTime.fromISO(data.StandardTime, {
24
+ timestamp: luxon_1.DateTime.fromISO(data.Timestamp, {
25
25
  zone: PpasAveApiHelper_1.PpasAveApiHelper.API_DATE_TZ,
26
26
  }).toJSDate(),
27
27
  source: ProviderTypeEnum_1.ProviderType.PpasInternetAveApi,
28
- place_id: data.PlaceId,
29
- device_serial_number: data.DeviceSerialNumber,
28
+ place_id: String(data.placeId),
29
+ device_serial_number: String(data.serialNumber),
30
30
  };
31
31
  return {
32
32
  operatingAmount: {
@@ -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,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"}
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,+CAOlD;IAPM;;QAQI,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,SAAS,EAAE;oBACxC,IAAI,EAAE,mCAAgB,CAAC,WAAW;iBACrC,CAAC,CAAC,QAAQ,EAAE;gBACb,MAAM,EAAE,+BAAY,CAAC,kBAAkB;gBACvC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;gBAC9B,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;aAClD,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;wCA9CY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;GACA,6BAA6B,CA8CzC"}
@@ -21,9 +21,6 @@ export declare class EnapoPpasTask extends AbstractEnapoFetchMeasurementsTask<IE
21
21
  constructor(config: ISimpleConfig, measurementsRepository: EnapoMeasurementsRepository, transformation: PPasMeasurementTransformation, logger: ILogger, dataSourceFactory: ICommodityProviderDataSourceFactory);
22
22
  execute(params: IPpasMeasurementsParams): Promise<void>;
23
23
  private fetchAndSave;
24
- protected getProviderConfig(data: IPpasMeasurementsParams): {
25
- baseUrl: string;
26
- config: IAveConfig;
27
- };
28
- protected getDataFromDataSource<T extends AveApiDtoUnion>(resourceTypeKey: keyof typeof PpasAveApiHelper.resourceType, sessionId: string, params?: IAveApiDeviceDataParams): Promise<T[]>;
24
+ protected getProviderConfig(data: IPpasMeasurementsParams): IAveConfig;
25
+ protected getDataFromDataSource<T extends AveApiDtoUnion>(resourceTypeKey: keyof typeof PpasAveApiHelper.resourceType, apiKey: string, params?: IAveApiDeviceDataParams): Promise<T[]>;
29
26
  }
@@ -39,24 +39,25 @@ let EnapoPpasTask = exports.EnapoPpasTask = class EnapoPpasTask extends Abstract
39
39
  this.schema = EnapoPpasMeasurementsParamsValidationSchema_1.EnapoPpasMeasurementsParamsValidationSchema;
40
40
  }
41
41
  async execute(params) {
42
- const { baseUrl, config } = this.getProviderConfig(params);
43
- const aveApiHelper = new PpasAveApiHelper_1.PpasAveApiHelper(baseUrl, config);
44
- const sessionId = await aveApiHelper.createSession();
42
+ const config = this.getProviderConfig(params);
45
43
  try {
46
- const places = await this.getDataFromDataSource("Places", sessionId);
44
+ const places = await this.getDataFromDataSource("Places", config.apikey);
47
45
  for (const place of places) {
48
- if (config.excludelist && config.excludelist.includes(place.Eic)) {
46
+ if (config.excludelist && config.excludelist.includes(place.eic)) {
49
47
  continue;
50
48
  }
51
- this.logger.info(`Fetching data for device ${place.DeviceSerialNumber}`);
52
- await this.fetchAndSave(place, sessionId, params);
49
+ this.logger.info(`Fetching data for device ${place.serialNumber}`);
50
+ await this.fetchAndSave(place, config.apikey, params);
53
51
  }
54
52
  }
55
- finally {
56
- await aveApiHelper.terminateSession(sessionId);
53
+ catch (err) {
54
+ if (err instanceof golemio_errors_1.AbstractGolemioError) {
55
+ throw err;
56
+ }
57
+ throw new golemio_errors_1.GeneralError(`Unable to download ppas measurements`, this.constructor.name, err);
57
58
  }
58
59
  }
59
- async fetchAndSave(place, sessionId, params) {
60
+ async fetchAndSave(place, apiKey, params) {
60
61
  try {
61
62
  if (!params?.targetDays && (!params?.dateFrom || !params?.dateTo)) {
62
63
  throw new golemio_errors_1.GeneralError("Both dateFrom and dateTo must be provided when targetDays is not specified", this.constructor.name);
@@ -67,14 +68,11 @@ let EnapoPpasTask = exports.EnapoPpasTask = class EnapoPpasTask extends Abstract
67
68
  for (const interval of intervals) {
68
69
  const start = interval.start.startOf("day");
69
70
  const end = interval.end.startOf("day");
70
- const measurementRawData = await this.getDataFromDataSource("DeviceData", sessionId, {
71
- placeId: place.Id,
72
- dateFrom: start.toISODate(),
73
- dateTo: end.toISODate(),
74
- isoDate: "1",
75
- // fill all measurement values (we need the OperatingAmount and ConvertDifference values)
76
- truncateData: "0",
77
- dataType: AveDataTypeEnum_1.AveDataType.RawData.toString(),
71
+ const measurementRawData = await this.getDataFromDataSource("DeviceData", apiKey, {
72
+ deviceId: place.deviceId,
73
+ from: start.toUTC().toISO({ suppressMilliseconds: true }),
74
+ to: end.toUTC().toISO({ suppressMilliseconds: true }),
75
+ dataType: AveDataTypeEnum_1.AveDataType.HourlyData,
78
76
  });
79
77
  const measurementRawDataWithPlace = measurementRawData.map((item) => ({
80
78
  ...place,
@@ -88,19 +86,18 @@ let EnapoPpasTask = exports.EnapoPpasTask = class EnapoPpasTask extends Abstract
88
86
  if (err instanceof golemio_errors_1.AbstractGolemioError) {
89
87
  throw err;
90
88
  }
91
- throw new golemio_errors_1.GeneralError(`Unable to download data for place id: ${place.Id} eic: ${place.Eic}`, this.constructor.name, err);
89
+ throw new golemio_errors_1.GeneralError(`Unable to download data for deviceId: ${place.deviceId} eic: ${place.eic}`, this.constructor.name, err);
92
90
  }
93
91
  }
94
92
  getProviderConfig(data) {
95
93
  const rawConfig = this.config.getValue(`module.energetics.commodityProviders.${data.providerType}`);
96
- rawConfig.excludelist = rawConfig.excludelist ? Object.values(rawConfig.excludelist) : null;
97
94
  return {
98
- baseUrl: this.config.getValue("module.energetics.commodityProviders.ppas_ave_api.baseUrl"),
99
- config: this.config.getValue(`module.energetics.commodityProviders.${data.providerType}`),
95
+ ...rawConfig,
96
+ excludelist: rawConfig.excludelist ? Object.values(rawConfig.excludelist) : null,
100
97
  };
101
98
  }
102
- getDataFromDataSource(resourceTypeKey, sessionId, params) {
103
- const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi, PpasAveApiHelper_1.PpasAveApiHelper.resourceType[resourceTypeKey], sessionId, params);
99
+ getDataFromDataSource(resourceTypeKey, apiKey, params) {
100
+ const dataSource = this.dataSourceFactory.getDataSource(CommodityProviderEnum_1.CommodityProvider.PpasInternetAveApi, PpasAveApiHelper_1.PpasAveApiHelper.resourceType[resourceTypeKey], apiKey, params);
104
101
  return dataSource.getAll();
105
102
  }
106
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EnapoPpasTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/EnapoPpasTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnapoPpasTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/workers/task/EnapoPpasTask.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,11 @@ let MeasurementRepository = exports.MeasurementRepository = class MeasurementRep
49
49
  return await this.sequelizeModel.findAll({
50
50
  attributes: [["timestamp", "time"], "value", "addr", "meter", "type", "var"],
51
51
  where,
52
- order: [["timestamp", "DESC"]],
52
+ order: [
53
+ ["timestamp", "DESC"],
54
+ ["addr", "ASC"],
55
+ ["var", "DESC"],
56
+ ],
53
57
  limit: options.limit,
54
58
  offset: options.offset,
55
59
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MeasurementRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/MeasurementRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MeasurementRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/MeasurementRepository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
2
+ import { IAveApiArchiveResponseDto } from "./interfaces/IAveApiArchiveResponseDto";
3
+ export declare const aveApiArchiveResponseJsonSchema: JSONSchemaType<IAveApiArchiveResponseDto>;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.aveApiArchiveResponseJsonSchema = void 0;
4
+ exports.aveApiArchiveResponseJsonSchema = {
5
+ type: "object",
6
+ properties: {
7
+ deviceId: { type: "string" },
8
+ dataType: { type: "string" },
9
+ headers: {
10
+ type: "array",
11
+ items: {
12
+ type: "object",
13
+ properties: {
14
+ key: { type: "string" },
15
+ name: { type: "string" },
16
+ type: { type: "string" },
17
+ },
18
+ required: ["key", "name", "type"],
19
+ additionalProperties: false,
20
+ },
21
+ },
22
+ rows: {
23
+ type: "array",
24
+ items: {
25
+ type: "array",
26
+ items: {
27
+ anyOf: [{ type: "string" }, { type: "number" }, { type: "null", nullable: true }],
28
+ },
29
+ },
30
+ },
31
+ count: { type: "integer" },
32
+ totalCount: { type: "integer" },
33
+ },
34
+ required: ["deviceId", "dataType", "headers", "rows", "count", "totalCount"],
35
+ additionalProperties: true,
36
+ };
37
+ //# sourceMappingURL=AveApiArchiveResponseJsonSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AveApiArchiveResponseJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiArchiveResponseJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,+BAA+B,GAA8C;IACtF,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,OAAO,EAAE;YACL,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC3B;gBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,oBAAoB,EAAE,KAAK;aAC9B;SACJ;QACD,IAAI,EAAE;YACF,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACH,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;iBACpF;aACJ;SACJ;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;KAClC;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;IAC5E,oBAAoB,EAAE,IAAI;CAC7B,CAAC"}
@@ -6,12 +6,12 @@ exports.aveApiDeviceDataJsonSchema = {
6
6
  items: {
7
7
  type: "object",
8
8
  properties: {
9
- StandardTime: { type: "string" },
9
+ Timestamp: { type: "string" },
10
10
  OperatingAmount: { type: "number" },
11
11
  ConvertDifference: { type: "number" },
12
12
  OperatingDifference: { type: "number" },
13
13
  },
14
- required: ["StandardTime", "OperatingAmount", "ConvertDifference", "OperatingDifference"],
14
+ required: ["Timestamp", "OperatingAmount", "ConvertDifference", "OperatingDifference"],
15
15
  },
16
16
  };
17
17
  //# sourceMappingURL=AveApiDeviceDataJsonSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AveApiDeviceDataJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,0BAA0B,GAA2C;IAC9E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACrC,mBAAmB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC1C;QACD,QAAQ,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;KAC5F;CACJ,CAAC"}
1
+ {"version":3,"file":"AveApiDeviceDataJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,0BAA0B,GAA2C;IAC9E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACnC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACrC,mBAAmB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC1C;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;KACzF;CACJ,CAAC"}
@@ -6,11 +6,12 @@ exports.aveApiPlacesJsonSchema = {
6
6
  items: {
7
7
  type: "object",
8
8
  properties: {
9
- Id: { type: "number" },
10
- Eic: { type: "string" },
11
- DeviceSerialNumber: { type: "string" },
9
+ deviceId: { type: "string" },
10
+ eic: { type: "string" },
11
+ serialNumber: { type: "number" },
12
+ placeId: { type: "number" },
12
13
  },
13
- required: ["Id", "Eic", "DeviceSerialNumber"],
14
+ required: ["deviceId", "eic", "serialNumber", "placeId"],
14
15
  },
15
16
  };
16
17
  //# sourceMappingURL=AveApiPlacesJsonSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AveApiPlacesJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,sBAAsB,GAAsC;IACrE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SACzC;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC;KAChD;CACJ,CAAC"}
1
+ {"version":3,"file":"AveApiPlacesJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,sBAAsB,GAAsC;IACrE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC9B;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,CAAC;KAC3D;CACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface IAveApiArchiveHeaderDto {
2
+ key: string;
3
+ name: string;
4
+ type: string;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IAveApiArchiveHeaderDto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAveApiArchiveHeaderDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveHeaderDto.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { IAveApiArchiveHeaderDto } from "./IAveApiArchiveHeaderDto";
2
+ export type ArchiveCell = string | number | null;
3
+ export interface IAveApiArchiveResponseDto {
4
+ deviceId: string;
5
+ dataType: string;
6
+ headers: IAveApiArchiveHeaderDto[];
7
+ rows: ArchiveCell[][];
8
+ count: number;
9
+ totalCount: number;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IAveApiArchiveResponseDto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAveApiArchiveResponseDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/IAveApiArchiveResponseDto.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  export interface IAveApiDeviceDataDto {
2
- StandardTime: string;
2
+ Timestamp: string;
3
3
  OperatingAmount: number;
4
4
  ConvertDifference: number;
5
5
  OperatingDifference: number;
@@ -1,5 +1,6 @@
1
1
  export interface IAveApiPlaceDto {
2
- Id: number;
3
- Eic: string;
4
- DeviceSerialNumber: string;
2
+ deviceId: string;
3
+ eic: string;
4
+ serialNumber: number;
5
+ placeId: number;
5
6
  }
@@ -115,11 +115,13 @@ https://gitlab.com/operator-ict/golemio/projekty/energetika/p0262.prevzeti-energ
115
115
  #### _PPAS (Pražská plynárenská) InternetAVE API_
116
116
 
117
117
  - zdroj dat
118
- - url: https://iave.ppas.cz/website/api (module.energetics.commodityProviders.ppas_ave_api.baseUrl)
119
- - API dokumentace: https://www.ave-system.com/Content/download/AveRestApiDocumentation.pdf
118
+ - url: https://aveapi.ppas.cz/api/v1 (module.energetics.commodityProviders.ppas_ave_api.baseUrl)
119
+ - API dokumentace: https://aveapi.ppas.cz/api/docs/v1 (interaktivní Swagger: https://aveapi.ppas.cz/api/swagger/ui/index)
120
+ - endpointy: `/devices` (seznam OM), `/devices/{deviceId}/data/archive` (archivní data)
121
+ - autentizace: HTTP header `X-API-Key` (per-uživatel apiKey v configu, např. `module.energetics.commodityProviders.ppas_ave_api_mo.apiKey`)
120
122
  - formát dat
121
123
  - protokol: http
122
- - datový typ: json
124
+ - datový typ: json (archive endpoint vrací columnar `{ headers, rows }` — rozbaluje se v [ArchiveDataTypeStrategy](../src/integration-engine/commodity-providers/datasources/ppas-ave-api/helpers/ArchiveDataTypeStrategy.ts))
123
125
  - validační schéma: [Places](../src/schema-definitions/datasources/commodity-providers/AveApiPlacesJsonSchema.ts), [DeviceData](../src/schema-definitions/datasources/commodity-providers/AveApiDeviceDataJsonSchema.ts)
124
126
  - příklad vstupnich dat: viz [test](../test/integration-engine/commodity-providers/FetchPpasMeasurementsTask.test.ts)
125
127
  - frekvence stahování
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/energetics",
3
- "version": "1.9.0-dev.2544690351",
3
+ "version": "1.9.0-dev.2567800850",
4
4
  "description": "Golemio Energetics Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",