@golemio/energetics 1.8.3 → 1.9.0-dev.2544690351
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/migrations/postgresql/20250213141826-add-device-serial-id.js +53 -0
- package/db/migrations/postgresql/20260427093000-enapo-porsenna.js +53 -0
- package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20250213141826-add-device-serial-id-up.sql +1 -0
- package/db/migrations/postgresql/sqls/20260427093000-enapo-porsenna-down.sql +3 -0
- package/db/migrations/postgresql/sqls/20260427093000-enapo-porsenna-up.sql +85 -0
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +3 -2
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +2 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.d.ts +2 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js +1 -0
- package/dist/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js +2 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js +2 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js +3 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSource.d.ts +15 -0
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSource.js +67 -0
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSource.js.map +1 -0
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSourceProvider.d.ts +10 -0
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSourceProvider.js +52 -0
- package/dist/integration-engine/enapo/datasources/porsenna/PorsennaDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.d.ts +7 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.js +3 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.js.map +1 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IGaugeApiDto.d.ts +5 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IGaugeApiDto.js +3 -0
- package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IGaugeApiDto.js.map +1 -0
- package/dist/integration-engine/enapo/helpers/IntervalGenerator.d.ts +1 -0
- package/dist/integration-engine/enapo/helpers/IntervalGenerator.js +6 -0
- package/dist/integration-engine/enapo/helpers/IntervalGenerator.js.map +1 -1
- package/dist/integration-engine/enapo/ioc/Di.js +24 -8
- package/dist/integration-engine/enapo/ioc/Di.js.map +1 -1
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.d.ts +8 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js +8 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaBuildingsRepository.d.ts +5 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaBuildingsRepository.js +32 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaBuildingsRepository.js.map +1 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaConsumptionRepository.d.ts +5 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaConsumptionRepository.js +32 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaConsumptionRepository.js.map +1 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaDevicesRepository.d.ts +5 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaDevicesRepository.js +32 -0
- package/dist/integration-engine/enapo/repositories/porsenna/PorsennaDevicesRepository.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaConsumptionTransformation.d.ts +8 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaConsumptionTransformation.js +47 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaConsumptionTransformation.js.map +1 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaGaugeTransformation.d.ts +15 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaGaugeTransformation.js +62 -0
- package/dist/integration-engine/enapo/transformations/porsenna/PorsennaGaugeTransformation.js.map +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js.map +1 -1
- package/dist/integration-engine/enapo/workers/interfaces/IEnapoPorsennaDistributionParams.d.ts +5 -0
- package/dist/integration-engine/enapo/workers/interfaces/IEnapoPorsennaDistributionParams.js +3 -0
- package/dist/integration-engine/enapo/workers/interfaces/IEnapoPorsennaDistributionParams.js.map +1 -0
- package/dist/integration-engine/enapo/workers/schema/EnapoPorsennaDistributionParamsSchema.d.ts +6 -0
- package/dist/integration-engine/enapo/workers/schema/EnapoPorsennaDistributionParamsSchema.js +34 -0
- package/dist/integration-engine/enapo/workers/schema/EnapoPorsennaDistributionParamsSchema.js.map +1 -0
- package/dist/integration-engine/enapo/workers/task/PorsennaDistributionTask.d.ts +27 -0
- package/dist/integration-engine/enapo/workers/task/PorsennaDistributionTask.js +125 -0
- package/dist/integration-engine/enapo/workers/task/PorsennaDistributionTask.js.map +1 -0
- package/dist/output-gateway/controllers/v2/AbstractController.js +4 -1
- package/dist/output-gateway/controllers/v2/AbstractController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/BuildingsController.js +2 -1
- package/dist/output-gateway/controllers/v2/BuildingsController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2DevicesController.js +1 -1
- package/dist/output-gateway/controllers/v2/V2DevicesController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js +1 -1
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js.map +1 -1
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js +4 -3
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js.map +1 -1
- package/dist/schema-definitions/datasources/enapo/porsenna/PorsennaJsonSchema.d.ts +5 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/PorsennaJsonSchema.js +92 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/PorsennaJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IConsumptionApiEntry.d.ts +15 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IConsumptionApiEntry.js +3 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IConsumptionApiEntry.js.map +1 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IGaugeApiDto.d.ts +41 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IGaugeApiDto.js +3 -0
- package/dist/schema-definitions/datasources/enapo/porsenna/interfaces/IGaugeApiDto.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.d.ts +3 -2
- package/dist/schema-definitions/models/MeasurementsModel.d.ts +1 -0
- package/dist/schema-definitions/models/MeasurementsModel.js +15 -1
- package/dist/schema-definitions/models/MeasurementsModel.js.map +1 -1
- package/dist/schema-definitions/models/interfaces/IMeasurementDto.d.ts +1 -0
- package/dist/schema-definitions/models/porsenna/PorsennaBuildingsModel.d.ts +21 -0
- package/dist/schema-definitions/models/porsenna/PorsennaBuildingsModel.js +77 -0
- package/dist/schema-definitions/models/porsenna/PorsennaBuildingsModel.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/PorsennaConsumptionModel.d.ts +20 -0
- package/dist/schema-definitions/models/porsenna/PorsennaConsumptionModel.js +72 -0
- package/dist/schema-definitions/models/porsenna/PorsennaConsumptionModel.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/PorsennaDevicesModel.d.ts +27 -0
- package/dist/schema-definitions/models/porsenna/PorsennaDevicesModel.js +107 -0
- package/dist/schema-definitions/models/porsenna/PorsennaDevicesModel.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/index.d.ts +3 -0
- package/dist/schema-definitions/models/porsenna/index.js +20 -0
- package/dist/schema-definitions/models/porsenna/index.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IBuildings.d.ts +11 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IBuildings.js +3 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IBuildings.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IConsumption.d.ts +10 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IConsumption.js +3 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IConsumption.js.map +1 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IDevices.d.ts +17 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IDevices.js +3 -0
- package/dist/schema-definitions/models/porsenna/interfaces/IDevices.js.map +1 -0
- package/docs/implementation_documentation.md +39 -0
- package/package.json +12 -8
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var dbm;
|
|
4
|
+
var type;
|
|
5
|
+
var seed;
|
|
6
|
+
var fs = require('fs');
|
|
7
|
+
var path = require('path');
|
|
8
|
+
var Promise;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* We receive the dbmigrate dependency from dbmigrate initially.
|
|
12
|
+
* This enables us to not have to rely on NODE_PATH.
|
|
13
|
+
*/
|
|
14
|
+
exports.setup = function(options, seedLink) {
|
|
15
|
+
dbm = options.dbmigrate;
|
|
16
|
+
type = dbm.dataType;
|
|
17
|
+
seed = seedLink;
|
|
18
|
+
Promise = options.Promise;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.up = function(db) {
|
|
22
|
+
var filePath = path.join(__dirname, 'sqls', '20250213141826-add-device-serial-id-up.sql');
|
|
23
|
+
return new Promise( function( resolve, reject ) {
|
|
24
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
25
|
+
if (err) return reject(err);
|
|
26
|
+
console.log('received data: ' + data);
|
|
27
|
+
|
|
28
|
+
resolve(data);
|
|
29
|
+
});
|
|
30
|
+
})
|
|
31
|
+
.then(function(data) {
|
|
32
|
+
return db.runSql(data);
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
exports.down = function(db) {
|
|
37
|
+
var filePath = path.join(__dirname, 'sqls', '20250213141826-add-device-serial-id-down.sql');
|
|
38
|
+
return new Promise( function( resolve, reject ) {
|
|
39
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
40
|
+
if (err) return reject(err);
|
|
41
|
+
console.log('received data: ' + data);
|
|
42
|
+
|
|
43
|
+
resolve(data);
|
|
44
|
+
});
|
|
45
|
+
})
|
|
46
|
+
.then(function(data) {
|
|
47
|
+
return db.runSql(data);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
exports._meta = {
|
|
52
|
+
"version": 1
|
|
53
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var dbm;
|
|
4
|
+
var type;
|
|
5
|
+
var seed;
|
|
6
|
+
var fs = require('fs');
|
|
7
|
+
var path = require('path');
|
|
8
|
+
var Promise;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* We receive the dbmigrate dependency from dbmigrate initially.
|
|
12
|
+
* This enables us to not have to rely on NODE_PATH.
|
|
13
|
+
*/
|
|
14
|
+
exports.setup = function(options, seedLink) {
|
|
15
|
+
dbm = options.dbmigrate;
|
|
16
|
+
type = dbm.dataType;
|
|
17
|
+
seed = seedLink;
|
|
18
|
+
Promise = options.Promise;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.up = function(db) {
|
|
22
|
+
var filePath = path.join(__dirname, 'sqls', '20260427093000-enapo-porsenna-up.sql');
|
|
23
|
+
return new Promise( function( resolve, reject ) {
|
|
24
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
25
|
+
if (err) return reject(err);
|
|
26
|
+
console.log('received data: ' + data);
|
|
27
|
+
|
|
28
|
+
resolve(data);
|
|
29
|
+
});
|
|
30
|
+
})
|
|
31
|
+
.then(function(data) {
|
|
32
|
+
return db.runSql(data);
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
exports.down = function(db) {
|
|
37
|
+
var filePath = path.join(__dirname, 'sqls', '20260427093000-enapo-porsenna-down.sql');
|
|
38
|
+
return new Promise( function( resolve, reject ) {
|
|
39
|
+
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
40
|
+
if (err) return reject(err);
|
|
41
|
+
console.log('received data: ' + data);
|
|
42
|
+
|
|
43
|
+
resolve(data);
|
|
44
|
+
});
|
|
45
|
+
})
|
|
46
|
+
.then(function(data) {
|
|
47
|
+
return db.runSql(data);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
exports._meta = {
|
|
52
|
+
"version": 1
|
|
53
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE consumption_energy_measurements DROP COLUMN device_serial_number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE consumption_energy_measurements ADD COLUMN device_serial_number varchar(50);
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
-- Buildings registry sourced from Porsenna (e-manažer)
|
|
2
|
+
-- Populated from the embedded `building` object in /gauges/{id} responses.
|
|
3
|
+
-- The (source, id) PK reflects that Porsenna building ids are integers local to each tenant instance.
|
|
4
|
+
CREATE TABLE enapo_porsenna_buildings (
|
|
5
|
+
source varchar(50) NOT NULL,
|
|
6
|
+
id int4 NOT NULL,
|
|
7
|
+
name varchar NULL,
|
|
8
|
+
street varchar NULL,
|
|
9
|
+
house_number varchar NULL,
|
|
10
|
+
street_number varchar NULL,
|
|
11
|
+
city varchar NULL,
|
|
12
|
+
postcode varchar NULL,
|
|
13
|
+
gid varchar NULL,
|
|
14
|
+
created_at timestamptz DEFAULT now() NULL,
|
|
15
|
+
updated_at timestamptz NULL,
|
|
16
|
+
CONSTRAINT enapo_porsenna_buildings_pk PRIMARY KEY (source, id)
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
COMMENT ON COLUMN enapo_porsenna_buildings.source IS 'Tenant identifier, e.g. porsenna_p7. Matches ProviderType enum.';
|
|
20
|
+
COMMENT ON COLUMN enapo_porsenna_buildings.gid IS 'gid string as supplied by Porsenna. Suspected RUIAN building identifier based on format (8-digit numeric in sample payload) but not confirmed with the source system. If confirmed, becomes a soft link to eno_budova.gid (no FK).';
|
|
21
|
+
|
|
22
|
+
CREATE INDEX enapo_porsenna_buildings_gid_idx ON enapo_porsenna_buildings (gid);
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
-- Devices sourced from Porsenna Gauges. Identification fields flattened onto the device.
|
|
26
|
+
-- DisableReason endpoint is not accessible to us; we keep only the numeric id parsed from the IRI.
|
|
27
|
+
CREATE TABLE enapo_porsenna_devices (
|
|
28
|
+
source varchar(50) NOT NULL,
|
|
29
|
+
id uuid NOT NULL,
|
|
30
|
+
building_id int4 NULL,
|
|
31
|
+
parent_device_id uuid NULL,
|
|
32
|
+
"level" varchar NULL,
|
|
33
|
+
"type" varchar NULL,
|
|
34
|
+
name varchar NULL,
|
|
35
|
+
measurement_target varchar NULL,
|
|
36
|
+
disabled_at timestamptz NULL,
|
|
37
|
+
disable_reason_id int4 NULL,
|
|
38
|
+
show_in_output bool NULL,
|
|
39
|
+
-- flattened Identification
|
|
40
|
+
identifier varchar NULL,
|
|
41
|
+
supply_point_number varchar NULL,
|
|
42
|
+
meter_number varchar NULL,
|
|
43
|
+
identification_gid varchar NULL,
|
|
44
|
+
created_at timestamptz DEFAULT now() NULL,
|
|
45
|
+
updated_at timestamptz NULL,
|
|
46
|
+
CONSTRAINT enapo_porsenna_devices_pk PRIMARY KEY (source, id)
|
|
47
|
+
);
|
|
48
|
+
|
|
49
|
+
COMMENT ON COLUMN enapo_porsenna_devices.source IS 'Tenant identifier, e.g. porsenna_p7. Matches ProviderType enum.';
|
|
50
|
+
COMMENT ON COLUMN enapo_porsenna_devices.building_id IS 'Soft ref to enapo_porsenna_buildings (source, id); no FK.';
|
|
51
|
+
COMMENT ON COLUMN enapo_porsenna_devices.parent_device_id IS 'Soft self-ref to enapo_porsenna_devices (source, id); no FK. Used for sub-meter hierarchy.';
|
|
52
|
+
COMMENT ON COLUMN enapo_porsenna_devices."level" IS 'main / sub';
|
|
53
|
+
COMMENT ON COLUMN enapo_porsenna_devices."type" IS 'gasometer / electrometer / heatmeter / watermeter / ...';
|
|
54
|
+
COMMENT ON COLUMN enapo_porsenna_devices.disable_reason_id IS 'Numeric id parsed from the /disable_reasons/{n} IRI. The lookup endpoint is not accessible to us, so the human-readable name is not retrievable.';
|
|
55
|
+
COMMENT ON COLUMN enapo_porsenna_devices.identifier IS 'Primary identifier from Porsenna Identification. Can be an EAN (prefix 859182400, typically electricity_meter), an EIC code (prefix 27ZG100Z, typically gasometer), or a numerical OM identifier (heat_meter, water_meter).';
|
|
56
|
+
|
|
57
|
+
CREATE INDEX enapo_porsenna_devices_identifier_idx ON enapo_porsenna_devices (identifier);
|
|
58
|
+
CREATE INDEX enapo_porsenna_devices_building_idx ON enapo_porsenna_devices (source, building_id);
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
-- Yearly consumption aggregates per device per period.
|
|
62
|
+
-- 'var' is the period kind (yearly today; monthly/daily reserved for future use).
|
|
63
|
+
-- @type from the Hydra payload is always "Consumption" and is implicit in this table.
|
|
64
|
+
CREATE TABLE enapo_porsenna_consumption (
|
|
65
|
+
source varchar(50) NOT NULL,
|
|
66
|
+
device_id uuid NOT NULL,
|
|
67
|
+
"var" varchar(20) NOT NULL,
|
|
68
|
+
"period" varchar(20) NOT NULL,
|
|
69
|
+
value numeric(30, 15) NOT NULL,
|
|
70
|
+
unit varchar(20) NOT NULL,
|
|
71
|
+
commodity varchar(20) NULL,
|
|
72
|
+
"count" int4 NULL,
|
|
73
|
+
created_at timestamptz DEFAULT now() NULL,
|
|
74
|
+
updated_at timestamptz NULL,
|
|
75
|
+
CONSTRAINT enapo_porsenna_consumption_pk PRIMARY KEY (source, device_id, "var", "period")
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
COMMENT ON COLUMN enapo_porsenna_consumption.source IS 'Tenant identifier, e.g. porsenna_p7. Matches ProviderType enum.';
|
|
79
|
+
COMMENT ON COLUMN enapo_porsenna_consumption.device_id IS 'Soft ref to enapo_porsenna_devices (source, id); no FK.';
|
|
80
|
+
COMMENT ON COLUMN enapo_porsenna_consumption."var" IS 'Period kind: yearly | monthly | daily. Currently only yearly is ingested.';
|
|
81
|
+
COMMENT ON COLUMN enapo_porsenna_consumption."period" IS 'Period identifier as supplied by the API (e.g. "2023" for yearly aggregates).';
|
|
82
|
+
COMMENT ON COLUMN enapo_porsenna_consumption.commodity IS 'Denormalised from enapo_porsenna_devices.type for fast filtered reads.';
|
|
83
|
+
COMMENT ON COLUMN enapo_porsenna_consumption."count" IS 'Days covered by the period; useful for partial periods (e.g. current year).';
|
|
84
|
+
|
|
85
|
+
CREATE INDEX enapo_porsenna_consumption_period_idx ON enapo_porsenna_consumption ("period");
|
|
@@ -2,8 +2,9 @@ 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
|
-
|
|
5
|
+
import { IAveApiPlaceDto } from "../../../schema-definitions/datasources/commodity-providers/interfaces/IAveApiPlaceDto";
|
|
6
|
+
export declare class AveMeasurementTransformation extends AbstractTransformation<IMeasurementOption & IAveApiDeviceDataDto & IAveApiPlaceDto, IMeasurementDto> {
|
|
6
7
|
name: string;
|
|
7
|
-
protected transformInternal: (data: IMeasurementOption & IAveApiDeviceDataDto) => IMeasurementDto;
|
|
8
|
+
protected transformInternal: (data: IMeasurementOption & IAveApiDeviceDataDto & IAveApiPlaceDto) => IMeasurementDto;
|
|
8
9
|
private getValue;
|
|
9
10
|
}
|
package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js
CHANGED
|
@@ -22,13 +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.
|
|
25
|
+
meter: data.Eic,
|
|
26
26
|
timestamp: luxon_1.DateTime.fromISO(data.StandardTime, {
|
|
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
33
|
};
|
|
33
34
|
};
|
|
34
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;
|
|
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"}
|
|
@@ -4,10 +4,12 @@ import { IMeasurementDto } from "../../../schema-definitions/models/interfaces/I
|
|
|
4
4
|
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
5
5
|
export declare class CemMeasurementTransformation extends AbstractTransformation<IMeasurementOption & ICemApiMeasurementDto & {
|
|
6
6
|
counterTypeId: number;
|
|
7
|
+
meSerial: string;
|
|
7
8
|
}, IMeasurementDto> {
|
|
8
9
|
name: string;
|
|
9
10
|
protected transformInternal: (data: IMeasurementOption & ICemApiMeasurementDto & {
|
|
10
11
|
counterTypeId: number;
|
|
12
|
+
meSerial: string;
|
|
11
13
|
}) => IMeasurementDto;
|
|
12
14
|
private getVariable;
|
|
13
15
|
}
|
package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js
CHANGED
|
@@ -25,6 +25,7 @@ let CemMeasurementTransformation = exports.CemMeasurementTransformation = class
|
|
|
25
25
|
variable: this.getVariable(data.Var, data.counterTypeId),
|
|
26
26
|
type: data.Type,
|
|
27
27
|
value: data.value,
|
|
28
|
+
device_serial_number: data.meSerial,
|
|
28
29
|
};
|
|
29
30
|
};
|
|
30
31
|
this.getVariable = (variable, counterTypeId) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CemMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAGA,6GAA0G;AAC1G,iEAAgE;AAChE,wFAAiF;AAEjF,wFAAmF;AAG5E,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,
|
|
1
|
+
{"version":3,"file":"CemMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAGA,6GAA0G;AAC1G,iEAAgE;AAChE,wFAAiF;AAEjF,wFAAmF;AAG5E,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,IAA8F,EAC/E,EAAE;YACjB,OAAO;gBACH,MAAM,EAAE,yCAAiB,CAAC,gBAAgB;gBAC1C,oBAAoB,EAAE,IAAI,CAAC,IAAI;gBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAM;gBAClB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;gBACnC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;gBACxD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,oBAAoB,EAAE,IAAI,CAAC,QAAQ;aACtC,CAAC;QACN,CAAC,CAAC;QAEM,gBAAW,GAAG,CAAC,QAAgB,EAAE,aAAqB,EAAU,EAAE;YACtE,IAAI,aAAa,KAAK,+CAAsB,CAAC,WAAW,CAAC,YAAY,EAAE;gBACnE,OAAO,IAAI,CAAC,CAAC,eAAe;aAC/B;iBAAM,IAAI,aAAa,KAAK,+CAAsB,CAAC,WAAW,CAAC,WAAW,EAAE;gBACzE,OAAO,IAAI,CAAC,CAAC,cAAc;aAC9B;YAED,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCA/BY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CA+BxC"}
|
package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js
CHANGED
|
@@ -24,6 +24,7 @@ let PreElectroTransformation = exports.PreElectroTransformation = class PreElect
|
|
|
24
24
|
value: Number(data.measurement["Stav [kWh]"]),
|
|
25
25
|
source: CommodityProviderTypeEnum_1.CommodityProviderType.PreOptions,
|
|
26
26
|
measurement_category: data.option.Name,
|
|
27
|
+
device_serial_number: data.measurement.ELM,
|
|
27
28
|
};
|
|
28
29
|
};
|
|
29
30
|
}
|
package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreElectroTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PreElectroTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAEA,oHAAsF;AAEtF,6GAA0G;AAC1G,iEAAgE;AAGzD,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,+CAG7C;IAHM;;QAII,SAAI,GAAG,0BAA0B,CAAC;QAE/B,sBAAiB,GAAG,CAC1B,IAAoF,EACrE,EAAE;YACjB,OAAO;gBACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"PreElectroTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PreElectroTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAEA,oHAAsF;AAEtF,6GAA0G;AAC1G,iEAAgE;AAGzD,IAAM,wBAAwB,sCAA9B,MAAM,wBAAyB,SAAQ,+CAG7C;IAHM;;QAII,SAAI,GAAG,0BAA0B,CAAC;QAE/B,sBAAiB,GAAG,CAC1B,IAAoF,EACrE,EAAE;YACjB,OAAO;gBACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAM;gBACzB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;gBAC5D,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;gBACzB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC7C,MAAM,EAAE,iDAAqB,CAAC,UAAU;gBACxC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtC,oBAAoB,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG;aAC7C,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;mCArBY,wBAAwB;IADpC,IAAA,qBAAU,GAAE;GACA,wBAAwB,CAqBpC"}
|
package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js
CHANGED
|
@@ -27,6 +27,7 @@ let PreMeasurementTransformation = exports.PreMeasurementTransformation = class
|
|
|
27
27
|
value: Number(measurement[1]),
|
|
28
28
|
source: CommodityProviderTypeEnum_1.CommodityProviderType.PreInputOptions,
|
|
29
29
|
measurement_category: data.option.Name,
|
|
30
|
+
device_serial_number: null,
|
|
30
31
|
});
|
|
31
32
|
}
|
|
32
33
|
return output;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAChE,oHAAsF;AAEtF,wDAAsD;AAI/C,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,IAA+E,EAC9D,EAAE;YACnB,MAAM,MAAM,GAAsB,EAAE,CAAC;YACrC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;gBAC5D,MAAM,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG;oBAChC,SAAS,EAAE,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC5F,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;oBACzB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC7B,MAAM,EAAE,iDAAqB,CAAC,eAAe;oBAC7C,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"PreMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAChE,oHAAsF;AAEtF,wDAAsD;AAI/C,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,IAA+E,EAC9D,EAAE;YACnB,MAAM,MAAM,GAAsB,EAAE,CAAC;YACrC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;gBAC5D,MAAM,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG;oBAChC,SAAS,EAAE,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC5F,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;oBACzB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC7B,MAAM,EAAE,iDAAqB,CAAC,eAAe;oBAC7C,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtC,oBAAoB,EAAE,IAAI;iBAC7B,CAAC,CAAC;aACN;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCAzBY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CAyBxC"}
|
|
@@ -30,6 +30,7 @@ let PtasWebMeasurementTransformation = exports.PtasWebMeasurementTransformation
|
|
|
30
30
|
type: data.option.Type,
|
|
31
31
|
value: parseFloat(data.measurement["Odečet"].replaceAll(" ", "").replace(",", ".")),
|
|
32
32
|
measurement_category: data.option.Name,
|
|
33
|
+
device_serial_number: data.measurement["Výrobní číslo"],
|
|
33
34
|
};
|
|
34
35
|
};
|
|
35
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PtasWebMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAEA,oHAAsF;AAEtF,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAGzD,IAAM,gCAAgC,8CAAtC,MAAM,gCAAiC,SAAQ,+CAGrD;IAHM;;QAII,SAAI,GAAG,kCAAkC,CAAC;QACzC,sBAAiB,GAAG,eAAe,CAAC;QAElC,sBAAiB,GAAG,CAAC,IAAwE,EAAmB,EAAE;YACxH,OAAO;gBACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,MAAM,EAAE,iDAAqB,CAAC,WAAW;gBACzC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"PtasWebMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PtasWebMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAEA,oHAAsF;AAEtF,6GAA0G;AAC1G,2DAA2D;AAC3D,iEAAgE;AAGzD,IAAM,gCAAgC,8CAAtC,MAAM,gCAAiC,SAAQ,+CAGrD;IAHM;;QAII,SAAI,GAAG,kCAAkC,CAAC;QACzC,sBAAiB,GAAG,eAAe,CAAC;QAElC,sBAAiB,GAAG,CAAC,IAAwE,EAAmB,EAAE;YACxH,OAAO;gBACH,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,MAAM,EAAE,iDAAqB,CAAC,WAAW;gBACzC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAM;gBACzB,SAAS,EAAE,gBAAQ,CAAC,UAAU,CAC1B,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,EACvE,IAAI,CAAC,iBAAiB,EACtB;oBACI,IAAI,EAAE,eAAe;iBACxB,CACJ;qBACI,KAAK,EAAE;qBACP,QAAQ,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;gBACzB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnF,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtC,oBAAoB,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;aAC1D,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;2CA5BY,gCAAgC;IAD5C,IAAA,qBAAU,GAAE;GACA,gCAAgC,CA4B5C"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js
CHANGED
|
@@ -46,7 +46,7 @@ let FetchPpasEEMeasurementsTask = exports.FetchPpasEEMeasurementsTask = class Fe
|
|
|
46
46
|
const places = await this.getDataFromDataSource("Places", sessionId);
|
|
47
47
|
let consumptionData = [];
|
|
48
48
|
for (const place of places) {
|
|
49
|
-
const options = measurementOptions.filter((item) => item.
|
|
49
|
+
const options = measurementOptions.filter((item) => item.EIC === place.Eic);
|
|
50
50
|
if (options.length === 0) {
|
|
51
51
|
continue;
|
|
52
52
|
}
|
|
@@ -57,6 +57,7 @@ let FetchPpasEEMeasurementsTask = exports.FetchPpasEEMeasurementsTask = class Fe
|
|
|
57
57
|
const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement({
|
|
58
58
|
...item,
|
|
59
59
|
...option,
|
|
60
|
+
...place,
|
|
60
61
|
}));
|
|
61
62
|
consumptionData = consumptionData.concat(consumptionBatch);
|
|
62
63
|
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js
CHANGED
|
@@ -55,7 +55,7 @@ let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchP
|
|
|
55
55
|
const places = await this.getDataFromDataSource("Places", sessionId);
|
|
56
56
|
let consumptionData = [];
|
|
57
57
|
for (const place of places) {
|
|
58
|
-
const options = measurementOptions.filter((item) => item.
|
|
58
|
+
const options = measurementOptions.filter((item) => item.EIC === place.Eic);
|
|
59
59
|
if (options.length === 0) {
|
|
60
60
|
continue;
|
|
61
61
|
}
|
|
@@ -66,6 +66,7 @@ let FetchPpasMeasurementsTask = exports.FetchPpasMeasurementsTask = class FetchP
|
|
|
66
66
|
const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement({
|
|
67
67
|
...item,
|
|
68
68
|
...option,
|
|
69
|
+
...place,
|
|
69
70
|
}));
|
|
70
71
|
consumptionData = consumptionData.concat(consumptionBatch);
|
|
71
72
|
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchPpasMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2FAAsG;AAKtG,oFAA+F;AAC/F,8FAAyH;AAEzH,yEAAwF;AACxF,oFAAmG;AACnG,oGAAmH;AACnH,qGAAoH;AAIpH,yHAAwF;AAIxF,wEAAqE;AACrE,6EAAwE;AACxE,2DAAqE;AACrE,iEAAwE;AAExE,6EAAoF;AACpF,mFAAgF;AAGzE,IAAM,yBAAyB,uCAA/B,MAAM,yBAA0B,SAAQ,6DAAsD;IAKjG,YACoC,MAA+B,EACrC,MAAyB,EAEnD,iBAAgE,EAEhE,yBAAiE,EACb,qBAAsD,EAE1G,uBAAgE;QAEhE,KAAK,EAAE,CAAC;QAVkC,WAAM,GAAN,MAAM,CAAe;QAC3B,WAAM,GAAN,MAAM,CAAS;QAEzC,sBAAiB,GAAjB,iBAAiB,CAAqC;QAEtD,8BAAyB,GAAzB,yBAAyB,CAA8B;QACH,0BAAqB,GAArB,qBAAqB,CAAuB;QAEhG,4BAAuB,GAAvB,uBAAuB,CAA+B;QAb7D,cAAS,GAAG,uBAAuB,CAAC;QACpC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,yDAAgC,CAAC;IAcjD,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAA6B;QAC9C,IAAI,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAC/D,IAAI,CAAC,YAAY,EACjB,mDAAsB,CAAC,kBAAkB,CAC5C,CAAC;QACF,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;YACtF,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,
|
|
1
|
+
{"version":3,"file":"FetchPpasMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js
CHANGED
|
@@ -51,7 +51,7 @@ let FetchPreMeasurementDataTask = exports.FetchPreMeasurementDataTask = class Fe
|
|
|
51
51
|
let batch = [];
|
|
52
52
|
const { data: measurements } = await this.dataSourceProvider.getMeasurements(file);
|
|
53
53
|
for (const measurement of measurements) {
|
|
54
|
-
const option = measurementOptions.find((item) => item.
|
|
54
|
+
const option = measurementOptions.find((item) => item.Meter === measurement["EAN"]);
|
|
55
55
|
if (!option) {
|
|
56
56
|
continue;
|
|
57
57
|
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchPreMeasurementDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,uHAAsI;AACtI,iGAAgH;AAChH,yEAAwF;AACxF,oFAAmG;AACnG,oGAAmH;AACnH,6FAA4G;AAE5G,uHAAsF;AACtF,yHAAwF;AACxF,8EAAqE;AACrE,6EAAwE;AACxE,iEAAwE;AAExE,2EAAwE;AAGjE,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,iCAAoC;IAKjF,YAEI,uBAA8D,EACV,qBAAsD,EACnD,cAAkD,EAEzG,kBAA6D,EAE7D,MAAkC;QAElC,KAAK,CAAC,uBAAW,CAAC,CAAC;QARX,4BAAuB,GAAvB,uBAAuB,CAA+B;QACA,0BAAqB,GAArB,qBAAqB,CAAuB;QACzC,mBAAc,GAAd,cAAc,CAA0B;QAE/F,uBAAkB,GAAlB,kBAAkB,CAAiC;QAEnD,WAAM,GAAN,MAAM,CAAkB;QAZ5B,WAAM,GAAG,6CAAqB,CAAC;QACzB,cAAS,GAAG,iCAAiC,CAAC;QAC9C,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAa1C,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,IAA4B;QAChD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CACjE,iDAAqB,CAAC,UAAU,EAChC,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;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9E,IAAI,CAAC,KAAK,EAAE;YACR,MAAM,IAAI,6BAAY,CAAC,oBAAoB,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACvE;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAEnF,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;gBACpC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"FetchPreMeasurementDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js
CHANGED
|
@@ -52,7 +52,7 @@ let FetchVeoliaMeasurementsTask = exports.FetchVeoliaMeasurementsTask = class Fe
|
|
|
52
52
|
const counters = await this.getDataFromDataSource("Counters", authCookie);
|
|
53
53
|
let consumptionData = [];
|
|
54
54
|
for (const device of devices) {
|
|
55
|
-
const options = measurementOptions.find((item) => item.
|
|
55
|
+
const options = measurementOptions.find((item) => item.MeId.toString() === device.me_id.toString());
|
|
56
56
|
if (!options) {
|
|
57
57
|
continue;
|
|
58
58
|
}
|
|
@@ -64,7 +64,9 @@ let FetchVeoliaMeasurementsTask = exports.FetchVeoliaMeasurementsTask = class Fe
|
|
|
64
64
|
const consumptionBatch = measurements.map((item) => this.measurementTransformation.transformElement({
|
|
65
65
|
...item,
|
|
66
66
|
...options,
|
|
67
|
+
...device,
|
|
67
68
|
counterTypeId: counter.pot_id,
|
|
69
|
+
meSerial: device.me_serial,
|
|
68
70
|
}));
|
|
69
71
|
consumptionData = consumptionData.concat(consumptionBatch);
|
|
70
72
|
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchVeoliaMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,2FAAsG;AAKtG,yEAAwF;AACxF,oFAAmG;AACnG,oGAAmH;AACnH,qGAAoH;AACpH,2FAA+F;AAI/F,yHAAwF;AAIxF,wEAAqE;AACrE,6EAAwE;AACxE,2DAAqE;AACrE,iEAAwE;AAExE,iFAAwF;AACxF,mFAAgF;AAGzE,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,6DAAwD;IAKrG,YACoC,MAA6B,EACnC,MAAuB,EAEjD,iBAA8D,EAE9D,yBAA+D,EACX,qBAAsD,EAC9C,uBAA8D;QAE1H,KAAK,EAAE,CAAC;QATgC,WAAM,GAAN,MAAM,CAAe;QAC3B,WAAM,GAAN,MAAM,CAAS;QAEzC,sBAAiB,GAAjB,iBAAiB,CAAqC;QAEtD,8BAAyB,GAAzB,yBAAyB,CAA8B;QACD,0BAAqB,GAArB,qBAAqB,CAAuB;QACtC,4BAAuB,GAAvB,uBAAuB,CAA+B;QAZ9G,cAAS,GAAG,yBAAyB,CAAC;QACtC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC1B,WAAM,GAAG,6DAAkC,CAAC;IAa5D,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAA+B;QAChD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CACjE,IAAI,CAAC,YAAY,EACjB,mDAAsB,CAAC,kBAAkB,CAC5C,CAAC;QACF,IAAI,CAAC,kBAAkB,EAAE;YACrB,MAAM,IAAI,6BAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAClF;QAED,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,IAAI,+CAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,aAAa,EAAE,CAAC;QAEtD,IAAI;YACA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAmB,SAAS,EAAE,UAAU,CAAC,CAAC;YAC1F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAoB,UAAU,EAAE,UAAU,CAAC,CAAC;YAC7F,IAAI,eAAe,GAAsB,EAAE,CAAC;YAE5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"FetchVeoliaMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IConsumptionApiCollection } from "../../../../schema-definitions/datasources/enapo/porsenna/interfaces/IConsumptionApiEntry";
|
|
2
|
+
import { IGaugeApiCollection, IGaugeApiDto } from "../../../../schema-definitions/datasources/enapo/porsenna/interfaces/IGaugeApiDto";
|
|
3
|
+
import { PorsennaDataSourceProvider } from "./PorsennaDataSourceProvider";
|
|
4
|
+
export declare class PorsennaDataSource {
|
|
5
|
+
private dataSourceBuilder;
|
|
6
|
+
private static readonly DATASOURCE_NAME;
|
|
7
|
+
private BASE_ENDPOINT;
|
|
8
|
+
private gaugeValidator;
|
|
9
|
+
private consumptionValidator;
|
|
10
|
+
constructor(dataSourceBuilder: PorsennaDataSourceProvider);
|
|
11
|
+
getAllGaugesByPage(source: string, page: number): Promise<IGaugeApiCollection>;
|
|
12
|
+
getGaugeConsumption(source: string, id: string, from: string | number, to: string | number): Promise<IConsumptionApiCollection>;
|
|
13
|
+
generateAsyncPages(source: string): AsyncGenerator<IGaugeApiDto>;
|
|
14
|
+
private parseLastPage;
|
|
15
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var PorsennaDataSource_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.PorsennaDataSource = void 0;
|
|
17
|
+
const EnapoWorkerContainerToken_1 = require("../../ioc/EnapoWorkerContainerToken");
|
|
18
|
+
const PorsennaJsonSchema_1 = require("../../../../schema-definitions/datasources/enapo/porsenna/PorsennaJsonSchema");
|
|
19
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
20
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
21
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
22
|
+
const PorsennaDataSourceProvider_1 = require("./PorsennaDataSourceProvider");
|
|
23
|
+
let PorsennaDataSource = exports.PorsennaDataSource = PorsennaDataSource_1 = class PorsennaDataSource {
|
|
24
|
+
constructor(dataSourceBuilder) {
|
|
25
|
+
this.dataSourceBuilder = dataSourceBuilder;
|
|
26
|
+
this.BASE_ENDPOINT = "/gauges";
|
|
27
|
+
this.gaugeValidator = new golemio_validator_1.JSONSchemaValidator(PorsennaDataSource_1.DATASOURCE_NAME + "Gauges", PorsennaJsonSchema_1.porsennaGaugeCollectionJsonSchema);
|
|
28
|
+
this.consumptionValidator = new golemio_validator_1.JSONSchemaValidator(PorsennaDataSource_1.DATASOURCE_NAME + "Consumption", PorsennaJsonSchema_1.porsennaConsumptionCollectionJsonSchema);
|
|
29
|
+
}
|
|
30
|
+
async getAllGaugesByPage(source, page) {
|
|
31
|
+
const result = this.dataSourceBuilder.getDataSource(source, this.BASE_ENDPOINT, this.gaugeValidator, { page });
|
|
32
|
+
return (await result.getAll());
|
|
33
|
+
}
|
|
34
|
+
async getGaugeConsumption(source, id, from, to) {
|
|
35
|
+
const endpoint = `${this.BASE_ENDPOINT}/${id}/consumption/yearly`;
|
|
36
|
+
const result = this.dataSourceBuilder.getDataSource(source, endpoint, this.consumptionValidator, { from, to });
|
|
37
|
+
return (await result.getAll());
|
|
38
|
+
}
|
|
39
|
+
async *generateAsyncPages(source) {
|
|
40
|
+
const firstPage = await this.getAllGaugesByPage(source, 1);
|
|
41
|
+
const lastPage = this.parseLastPage(firstPage);
|
|
42
|
+
for (const member of firstPage.member ?? [])
|
|
43
|
+
yield member;
|
|
44
|
+
for (let index = 2; index <= lastPage; index++) {
|
|
45
|
+
const nextPage = await this.getAllGaugesByPage(source, index);
|
|
46
|
+
for (const member of nextPage.member ?? [])
|
|
47
|
+
yield member;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
parseLastPage(page) {
|
|
51
|
+
const lastUrl = page.view?.last;
|
|
52
|
+
if (!lastUrl)
|
|
53
|
+
return 1;
|
|
54
|
+
const match = lastUrl.match(/page=(\d+)/);
|
|
55
|
+
if (!match) {
|
|
56
|
+
throw new golemio_errors_1.GeneralError(`Cannot parse last page from view.last: ${lastUrl}`, "PorsennaDataSource", undefined, 500);
|
|
57
|
+
}
|
|
58
|
+
return parseInt(match[1], 10);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
PorsennaDataSource.DATASOURCE_NAME = "PorsennaDataSource";
|
|
62
|
+
exports.PorsennaDataSource = PorsennaDataSource = PorsennaDataSource_1 = __decorate([
|
|
63
|
+
(0, tsyringe_1.injectable)(),
|
|
64
|
+
__param(0, (0, tsyringe_1.inject)(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaDataSourceProvider)),
|
|
65
|
+
__metadata("design:paramtypes", [PorsennaDataSourceProvider_1.PorsennaDataSourceProvider])
|
|
66
|
+
], PorsennaDataSource);
|
|
67
|
+
//# sourceMappingURL=PorsennaDataSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PorsennaDataSource.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/datasources/porsenna/PorsennaDataSource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mFAAoF;AACpF,qHAG4D;AAG5D,6EAAwE;AACxE,mFAAkF;AAClF,iEAAwE;AACxE,6EAA0E;AAGnE,IAAM,kBAAkB,uDAAxB,MAAM,kBAAkB;IAM3B,YACkE,iBAAqD;QAA7C,sBAAiB,GAAjB,iBAAiB,CAA4B;QAL/G,kBAAa,GAAG,SAAS,CAAC;QAO9B,IAAI,CAAC,cAAc,GAAG,IAAI,uCAAmB,CACzC,oBAAkB,CAAC,eAAe,GAAG,QAAQ,EAC7C,sDAAiC,CACpC,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,IAAI,uCAAmB,CAC/C,oBAAkB,CAAC,eAAe,GAAG,aAAa,EAClD,4DAAuC,CAC1C,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAc,EAAE,IAAY;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/G,OAAO,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAwB,CAAC;IAC1D,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC5B,MAAc,EACd,EAAU,EACV,IAAqB,EACrB,EAAmB;QAEnB,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,qBAAqB,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/G,OAAO,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAA8B,CAAC;IAChE,CAAC;IAEM,KAAK,CAAC,CAAC,kBAAkB,CAAC,MAAc;QAC3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAE/C,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,MAAM,IAAI,EAAE;YAAE,MAAM,MAAM,CAAC;QAE1D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9D,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE;gBAAE,MAAM,MAAM,CAAC;SAC5D;IACL,CAAC;IAEO,aAAa,CAAC,IAAyB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC;QAEvB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,EAAE;YACR,MAAM,IAAI,6BAAY,CAAC,0CAA0C,OAAO,EAAE,EAAE,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;SACrH;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;;AAvDuB,kCAAe,GAAG,oBAAoB,AAAvB,CAAwB;6BADtD,kBAAkB;IAD9B,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,qDAAyB,CAAC,0BAA0B,CAAC,CAAA;qCAA4B,uDAA0B;GAP9G,kBAAkB,CAyD9B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
2
|
+
import { DataSource } from "@golemio/core/dist/integration-engine";
|
|
3
|
+
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
4
|
+
export declare class PorsennaDataSourceProvider {
|
|
5
|
+
private simpleConfig;
|
|
6
|
+
private static readonly DATASOURCE_NAME;
|
|
7
|
+
constructor(simpleConfig: ISimpleConfig);
|
|
8
|
+
getDataSource(source: string, endpoint: string, schema: JSONSchemaValidator, params?: Record<string, string | number>): DataSource;
|
|
9
|
+
private getDistrictConfig;
|
|
10
|
+
}
|