@golemio/energetics 1.8.3-dev.2433808749 → 1.8.3-dev.2500885099
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/20260427093000-enapo-porsenna.js +53 -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/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/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/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 +10 -6
|
@@ -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,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");
|
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
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 PorsennaDataSourceProvider_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.PorsennaDataSourceProvider = void 0;
|
|
17
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
18
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
19
|
+
const HTTPFetchProtocolStrategy_1 = require("@golemio/core/dist/integration-engine/datasources/protocol-strategy/HTTPFetchProtocolStrategy");
|
|
20
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
21
|
+
const url_1 = require("url");
|
|
22
|
+
let PorsennaDataSourceProvider = exports.PorsennaDataSourceProvider = PorsennaDataSourceProvider_1 = class PorsennaDataSourceProvider {
|
|
23
|
+
constructor(simpleConfig) {
|
|
24
|
+
this.simpleConfig = simpleConfig;
|
|
25
|
+
}
|
|
26
|
+
getDataSource(source, endpoint, schema, params) {
|
|
27
|
+
const { url: baseUrl, token } = this.getDistrictConfig(source);
|
|
28
|
+
const queryEntries = params
|
|
29
|
+
? Object.entries(params).map(([paramName, paramValue]) => [paramName, String(paramValue)])
|
|
30
|
+
: [];
|
|
31
|
+
const queryString = queryEntries.length > 0 ? `?${new url_1.URLSearchParams(queryEntries).toString()}` : "";
|
|
32
|
+
const url = new URL(endpoint + queryString, baseUrl);
|
|
33
|
+
return new integration_engine_1.DataSource(PorsennaDataSourceProvider_1.DATASOURCE_NAME, new HTTPFetchProtocolStrategy_1.HTTPFetchProtocolStrategy({
|
|
34
|
+
headers: { Authorization: `Bearer ${token}` },
|
|
35
|
+
method: "GET",
|
|
36
|
+
timeoutInSeconds: 60,
|
|
37
|
+
url: url.toString(),
|
|
38
|
+
}), new integration_engine_1.JSONDataTypeStrategy({ resultsPath: "" }), schema);
|
|
39
|
+
}
|
|
40
|
+
getDistrictConfig(source) {
|
|
41
|
+
const url = this.simpleConfig.getValue(`module.energetics.porsenna.city_districts.${source}.url`);
|
|
42
|
+
const token = this.simpleConfig.getValue(`module.energetics.porsenna.city_districts.${source}.token`);
|
|
43
|
+
return { url, token };
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
PorsennaDataSourceProvider.DATASOURCE_NAME = "PorsennaDataSource";
|
|
47
|
+
exports.PorsennaDataSourceProvider = PorsennaDataSourceProvider = PorsennaDataSourceProvider_1 = __decorate([
|
|
48
|
+
(0, tsyringe_1.injectable)(),
|
|
49
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
50
|
+
__metadata("design:paramtypes", [Object])
|
|
51
|
+
], PorsennaDataSourceProvider);
|
|
52
|
+
//# sourceMappingURL=PorsennaDataSourceProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PorsennaDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/datasources/porsenna/PorsennaDataSourceProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,wEAAqE;AACrE,8EAAyF;AACzF,6IAA0I;AAE1I,iEAAwE;AACxE,6BAAsC;AAG/B,IAAM,0BAA0B,uEAAhC,MAAM,0BAA0B;IAGnC,YAAoD,YAA2B;QAA3B,iBAAY,GAAZ,YAAY,CAAe;IAAG,CAAC;IAE5E,aAAa,CAChB,MAAc,EACd,QAAgB,EAChB,MAA2B,EAC3B,MAAwC;QAExC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAE/D,MAAM,YAAY,GAAG,MAAM;YACvB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAoB,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5G,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,qBAAe,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,GAAG,WAAW,EAAE,OAAO,CAAC,CAAC;QAErD,OAAO,IAAI,+BAAU,CACjB,4BAA0B,CAAC,eAAe,EAC1C,IAAI,qDAAyB,CAAC;YAC1B,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;YAC7C,MAAM,EAAE,KAAK;YACb,gBAAgB,EAAE,EAAE;YACpB,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;SACtB,CAAC,EACF,IAAI,yCAAoB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EAC7C,MAAM,CACT,CAAC;IACN,CAAC;IAEO,iBAAiB,CAAC,MAAc;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAS,6CAA6C,MAAM,MAAM,CAAC,CAAC;QAC1G,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAS,6CAA6C,MAAM,QAAQ,CAAC,CAAC;QAC9G,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;;AAnCuB,0CAAe,GAAG,oBAAoB,AAAvB,CAAwB;qCADtD,0BAA0B;IADtC,IAAA,qBAAU,GAAE;IAII,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GAHlC,0BAA0B,CAqCtC"}
|
package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IConsumptionApiEntry } from "../../../../../schema-definitions/datasources/enapo/porsenna/interfaces/IConsumptionApiEntry";
|
|
2
|
+
export interface IConsumptionTransformationInput {
|
|
3
|
+
entry: IConsumptionApiEntry;
|
|
4
|
+
deviceId: string;
|
|
5
|
+
source: string;
|
|
6
|
+
gaugeType: string | undefined;
|
|
7
|
+
}
|
package/dist/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IConsumptionApiEntry.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/enapo/datasources/porsenna/interfaces/IConsumptionApiEntry.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IGaugeApiDto.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/enapo/datasources/porsenna/interfaces/IGaugeApiDto.ts"],"names":[],"mappings":""}
|
|
@@ -3,4 +3,5 @@ import { DateTime, Interval } from "@golemio/core/dist/shared/luxon";
|
|
|
3
3
|
export declare class IntervalGenerator {
|
|
4
4
|
static getIntervals(from: DateTime, to: DateTime, daySplit: number): Interval[];
|
|
5
5
|
static generateIntervalsFromTargetDays(data: IDataEntrypointParams, daySplit: number): Interval[];
|
|
6
|
+
static generateIntervalsFromYears(yearFrom: string, yearTo: string): Interval[];
|
|
6
7
|
}
|
|
@@ -15,6 +15,12 @@ class IntervalGenerator {
|
|
|
15
15
|
const intervals = luxon_1.Interval.fromDateTimes(leftBoundDate, currentDate).splitBy({ days: daySplit });
|
|
16
16
|
return intervals;
|
|
17
17
|
}
|
|
18
|
+
static generateIntervalsFromYears(yearFrom, yearTo) {
|
|
19
|
+
const startOfYearFrom = luxon_1.DateTime.fromISO(new Date(yearFrom).toISOString()).startOf("year");
|
|
20
|
+
const startOfYearTo = luxon_1.DateTime.fromISO(new Date(yearTo).toISOString()).startOf("year");
|
|
21
|
+
const intervals = luxon_1.Interval.fromDateTimes(startOfYearFrom, startOfYearTo).splitBy({ years: 1 });
|
|
22
|
+
return intervals;
|
|
23
|
+
}
|
|
18
24
|
}
|
|
19
25
|
exports.IntervalGenerator = IntervalGenerator;
|
|
20
26
|
//# sourceMappingURL=IntervalGenerator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntervalGenerator.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/helpers/IntervalGenerator.ts"],"names":[],"mappings":";;;AACA,2DAAqE;AAErE,MAAa,iBAAiB;IACnB,MAAM,CAAC,YAAY,CAAC,IAAc,EAAE,EAAY,EAAE,QAAgB;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEvF,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,+BAA+B,CAAC,IAA2B,EAAE,QAAgB;QACvF,MAAM,WAAW,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjG,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"IntervalGenerator.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/helpers/IntervalGenerator.ts"],"names":[],"mappings":";;;AACA,2DAAqE;AAErE,MAAa,iBAAiB;IACnB,MAAM,CAAC,YAAY,CAAC,IAAc,EAAE,EAAY,EAAE,QAAgB;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEvF,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,+BAA+B,CAAC,IAA2B,EAAE,QAAgB;QACvF,MAAM,WAAW,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjG,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,0BAA0B,CAAC,QAAgB,EAAE,MAAc;QACrE,MAAM,eAAe,GAAG,gBAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3F,MAAM,aAAa,GAAG,gBAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvF,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/F,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AAtBD,8CAsBC"}
|
|
@@ -7,6 +7,8 @@ const PpasAveApiDataSourceProvider_1 = require("../../commodity-providers/dataso
|
|
|
7
7
|
const WorkerContainerToken_1 = require("../../commodity-providers/ioc/WorkerContainerToken");
|
|
8
8
|
const Di_1 = require("@golemio/core/dist/integration-engine/ioc/Di");
|
|
9
9
|
const EnoDatasourceFactory_1 = require("../datasources/eno/EnoDatasourceFactory");
|
|
10
|
+
const PorsennaDataSourceProvider_1 = require("../datasources/porsenna/PorsennaDataSourceProvider");
|
|
11
|
+
const PorsennaDataSource_1 = require("../datasources/porsenna/PorsennaDataSource");
|
|
10
12
|
const PpasDistributionDatasource_1 = require("../datasources/ppas/distribution/PpasDistributionDatasource");
|
|
11
13
|
const EnapoMeasurementsRepository_1 = require("../repositories/EnapoMeasurementsRepository");
|
|
12
14
|
const PreIncomingDataLogRepository_1 = require("../repositories/PreIncomingDataLogRepository");
|
|
@@ -21,26 +23,32 @@ const EnoPropertyRepository_1 = require("../repositories/eno/EnoPropertyReposito
|
|
|
21
23
|
const EnoRemovedGIDRepository_1 = require("../repositories/eno/EnoRemovedGIDRepository");
|
|
22
24
|
const EnoStructureRepository_1 = require("../repositories/eno/EnoStructureRepository");
|
|
23
25
|
const EnoStructureTypeRepository_1 = require("../repositories/eno/EnoStructureTypeRepository");
|
|
26
|
+
const PorsennaBuildingsRepository_1 = require("../repositories/porsenna/PorsennaBuildingsRepository");
|
|
27
|
+
const PorsennaConsumptionRepository_1 = require("../repositories/porsenna/PorsennaConsumptionRepository");
|
|
28
|
+
const PorsennaDevicesRepository_1 = require("../repositories/porsenna/PorsennaDevicesRepository");
|
|
29
|
+
const PpasDistributionInvoiceDeviceRepository_1 = require("../repositories/ppas/PpasDistributionInvoiceDeviceRepository");
|
|
30
|
+
const PpasDistributionInvoicePriceRepository_1 = require("../repositories/ppas/PpasDistributionInvoicePriceRepository");
|
|
31
|
+
const PpasDistributionInvoiceRepository_1 = require("../repositories/ppas/PpasDistributionInvoiceRepository");
|
|
24
32
|
const PPasMeasurementTransformation_1 = require("../transformations/PPasMeasurementTransformation");
|
|
25
33
|
const EnoEJTransformation_1 = require("../transformations/eno/EnoEJTransformation");
|
|
26
34
|
const EnoManagerTransformation_1 = require("../transformations/eno/EnoManagerTransformation");
|
|
27
35
|
const EnoOrganizationTransformation_1 = require("../transformations/eno/EnoOrganizationTransformation");
|
|
28
36
|
const EnoStructureTypeTransformation_1 = require("../transformations/eno/EnoStructureTypeTransformation");
|
|
37
|
+
const PorsennaConsumptionTransformation_1 = require("../transformations/porsenna/PorsennaConsumptionTransformation");
|
|
38
|
+
const PorsennaGaugeTransformation_1 = require("../transformations/porsenna/PorsennaGaugeTransformation");
|
|
39
|
+
const PpasDistributionTransformation_1 = require("../transformations/ppas/PpasDistributionTransformation");
|
|
29
40
|
const PreDailyMeasurementsTransformation_1 = require("../transformations/pre/PreDailyMeasurementsTransformation");
|
|
30
41
|
const PreMeasurementsTransformation_1 = require("../transformations/pre/PreMeasurementsTransformation");
|
|
31
42
|
const PreMetadataTransfromation_1 = require("../transformations/pre/PreMetadataTransfromation");
|
|
43
|
+
const EnapoPpasDistributionTask_1 = require("../workers/task/EnapoPpasDistributionTask");
|
|
32
44
|
const EnapoPpasTask_1 = require("../workers/task/EnapoPpasTask");
|
|
33
45
|
const EnapoPrediTask_1 = require("../workers/task/EnapoPrediTask");
|
|
34
46
|
const EnoBuildingTask_1 = require("../workers/task/EnoBuildingTask");
|
|
35
47
|
const EnoGeometryTask_1 = require("../workers/task/EnoGeometryTask");
|
|
36
48
|
const EnoLookupTask_1 = require("../workers/task/EnoLookupTask");
|
|
37
49
|
const EnoStructureTask_1 = require("../workers/task/EnoStructureTask");
|
|
50
|
+
const PorsennaDistributionTask_1 = require("../workers/task/PorsennaDistributionTask");
|
|
38
51
|
const EnapoWorkerContainerToken_1 = require("./EnapoWorkerContainerToken");
|
|
39
|
-
const PpasDistributionTransformation_1 = require("../transformations/ppas/PpasDistributionTransformation");
|
|
40
|
-
const PpasDistributionInvoiceDeviceRepository_1 = require("../repositories/ppas/PpasDistributionInvoiceDeviceRepository");
|
|
41
|
-
const PpasDistributionInvoicePriceRepository_1 = require("../repositories/ppas/PpasDistributionInvoicePriceRepository");
|
|
42
|
-
const PpasDistributionInvoiceRepository_1 = require("../repositories/ppas/PpasDistributionInvoiceRepository");
|
|
43
|
-
const EnapoPpasDistributionTask_1 = require("../workers/task/EnapoPpasDistributionTask");
|
|
44
52
|
//#region Initialization
|
|
45
53
|
const EnapoContainer = Di_1.IntegrationEngineContainer.createChildContainer();
|
|
46
54
|
exports.EnapoContainer = EnapoContainer;
|
|
@@ -51,6 +59,8 @@ EnapoContainer.register(WorkerContainerToken_1.WorkerContainerToken.PpasAveApiDa
|
|
|
51
59
|
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.CommodityProviderDataSourceFactory, CommodityProviderDataSourceFactory_1.CommodityProviderDataSourceFactory);
|
|
52
60
|
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoDatasourceFactory, EnoDatasourceFactory_1.EnoDatasourceFactory);
|
|
53
61
|
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasDistributionDatasource, PpasDistributionDatasource_1.PpasDistributionDatasource);
|
|
62
|
+
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaDatasource, PorsennaDataSource_1.PorsennaDataSource);
|
|
63
|
+
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaDataSourceProvider, PorsennaDataSourceProvider_1.PorsennaDataSourceProvider);
|
|
54
64
|
//#endregion
|
|
55
65
|
//#region Repositories
|
|
56
66
|
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoMeasurementsRepository, EnapoMeasurementsRepository_1.EnapoMeasurementsRepository)
|
|
@@ -68,7 +78,10 @@ EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.En
|
|
|
68
78
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoGeometryRepository, EnoGeometryRepository_1.EnoGeometryRepository)
|
|
69
79
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionInvoiceDeviceRepository, PpasDistributionInvoiceDeviceRepository_1.PpasDistributionInvoiceDeviceRepository)
|
|
70
80
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionInvoicePriceRepository, PpasDistributionInvoicePriceRepository_1.PpasDistributionInvoicePriceRepository)
|
|
71
|
-
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionInvoiceRepository, PpasDistributionInvoiceRepository_1.PpasDistributionInvoiceRepository)
|
|
81
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionInvoiceRepository, PpasDistributionInvoiceRepository_1.PpasDistributionInvoiceRepository)
|
|
82
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaBuildingsRepository, PorsennaBuildingsRepository_1.PorsennaBuildingsRepository)
|
|
83
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaConsumptionRepository, PorsennaConsumptionRepository_1.PorsennaConsumptionRepository)
|
|
84
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaDevicesRepository, PorsennaDevicesRepository_1.PorsennaDevicesRepository);
|
|
72
85
|
//#endregion
|
|
73
86
|
//#region Transformation
|
|
74
87
|
EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PPasMeasurementTransformation, PPasMeasurementTransformation_1.PPasMeasurementTransformation);
|
|
@@ -79,7 +92,9 @@ EnapoContainer.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContaine
|
|
|
79
92
|
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoOrganizationTransformation, EnoOrganizationTransformation_1.EnoOrganizationTransformation)
|
|
80
93
|
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoManagerTransformation, EnoManagerTransformation_1.EnoManagerTransformation)
|
|
81
94
|
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoEJTransformation, EnoEJTransformation_1.EnoEJTransformation)
|
|
82
|
-
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionTransformation, PpasDistributionTransformation_1.PpasDistributionTransformation)
|
|
95
|
+
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PpasDistributionTransformation, PpasDistributionTransformation_1.PpasDistributionTransformation)
|
|
96
|
+
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaGaugeTransformation, PorsennaGaugeTransformation_1.PorsennaGaugeTransformation)
|
|
97
|
+
.registerSingleton(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaConsumptionTransformation, PorsennaConsumptionTransformation_1.PorsennaConsumptionTransformation);
|
|
83
98
|
//#endregion
|
|
84
99
|
//#region Tasks
|
|
85
100
|
EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasTask, EnapoPpasTask_1.EnapoPpasTask);
|
|
@@ -88,5 +103,6 @@ EnapoContainer.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.En
|
|
|
88
103
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoBuildingTask, EnoBuildingTask_1.EnoBuildingTask)
|
|
89
104
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoStructureTask, EnoStructureTask_1.EnoStructureTask)
|
|
90
105
|
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnoGeometryTask, EnoGeometryTask_1.EnoGeometryTask)
|
|
91
|
-
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasDistributionTask, EnapoPpasDistributionTask_1.EnapoPpasDistributionTask)
|
|
106
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.EnapoPpasDistributionTask, EnapoPpasDistributionTask_1.EnapoPpasDistributionTask)
|
|
107
|
+
.register(EnapoWorkerContainerToken_1.EnapoWorkerContainerToken.PorsennaDistributionTask, PorsennaDistributionTask_1.PorsennaDistributionTask);
|
|
92
108
|
//# sourceMappingURL=Di.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,iIAA4H;AAC5H,qHAAgH;AAChH,kIAA6H;AAC7H,6FAAwF;AACxF,qEAA0F;AAE1F,kFAA+E;AAC/E,4GAAyG;AACzG,6FAA0F;AAC1F,+FAA4F;AAC5F,mFAAgF;AAChF,qFAAkF;AAClF,yEAAsE;AACtE,qFAAkF;AAClF,qFAAkF;AAClF,mFAAgF;AAChF,6FAA0F;AAC1F,qFAAkF;AAClF,yFAAsF;AACtF,uFAAoF;AACpF,+FAA4F;AAC5F,oGAAiG;AACjG,oFAAiF;AACjF,8FAA2F;AAC3F,wGAAqG;AACrG,0GAAuG;AACvG,kHAA+G;AAC/G,wGAAqG;AACrG,gGAA6F;AAC7F,iEAA8D;AAC9D,mEAAgE;AAChE,qEAAkE;AAClE,qEAAkE;AAClE,iEAA8D;AAC9D,uEAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/Di.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
declare const EnapoWorkerContainerToken: {
|
|
2
2
|
CommodityProviderDataSourceFactory: symbol;
|
|
3
3
|
EnapoPpasDistributionDatasource: symbol;
|
|
4
|
+
PorsennaDatasource: symbol;
|
|
5
|
+
PorsennaDataSourceProvider: symbol;
|
|
4
6
|
EnapoMeasurementsRepository: symbol;
|
|
5
7
|
EnapoMetadataRepository: symbol;
|
|
6
8
|
PreIncomingDataLogRepository: symbol;
|
|
7
9
|
PpasDistributionInvoiceDeviceRepository: symbol;
|
|
8
10
|
PpasDistributionInvoicePriceRepository: symbol;
|
|
9
11
|
PpasDistributionInvoiceRepository: symbol;
|
|
12
|
+
PorsennaBuildingsRepository: symbol;
|
|
13
|
+
PorsennaConsumptionRepository: symbol;
|
|
14
|
+
PorsennaDevicesRepository: symbol;
|
|
10
15
|
PPasMeasurementTransformation: symbol;
|
|
11
16
|
PreMeasurementsTransformation: symbol;
|
|
12
17
|
PreDailyMeasurementsTransformation: symbol;
|
|
13
18
|
PreMetadataTransformation: symbol;
|
|
14
19
|
PpasDistributionTransformation: symbol;
|
|
20
|
+
PorsennaGaugeTransformation: symbol;
|
|
21
|
+
PorsennaConsumptionTransformation: symbol;
|
|
15
22
|
EnapoPpasTask: symbol;
|
|
16
23
|
EnapoPrediTask: symbol;
|
|
17
24
|
EnapoPpasDistributionTask: symbol;
|
|
25
|
+
PorsennaDistributionTask: symbol;
|
|
18
26
|
EnoDatasourceFactory: symbol;
|
|
19
27
|
EnoStructureTypeTransformation: symbol;
|
|
20
28
|
EnoOrganizationTransformation: symbol;
|
|
@@ -5,6 +5,8 @@ const EnapoWorkerContainerToken = {
|
|
|
5
5
|
//#region Datasource
|
|
6
6
|
CommodityProviderDataSourceFactory: Symbol(),
|
|
7
7
|
EnapoPpasDistributionDatasource: Symbol(),
|
|
8
|
+
PorsennaDatasource: Symbol(),
|
|
9
|
+
PorsennaDataSourceProvider: Symbol(),
|
|
8
10
|
//#endregion
|
|
9
11
|
//#region Repositories
|
|
10
12
|
EnapoMeasurementsRepository: Symbol(),
|
|
@@ -13,6 +15,9 @@ const EnapoWorkerContainerToken = {
|
|
|
13
15
|
PpasDistributionInvoiceDeviceRepository: Symbol(),
|
|
14
16
|
PpasDistributionInvoicePriceRepository: Symbol(),
|
|
15
17
|
PpasDistributionInvoiceRepository: Symbol(),
|
|
18
|
+
PorsennaBuildingsRepository: Symbol(),
|
|
19
|
+
PorsennaConsumptionRepository: Symbol(),
|
|
20
|
+
PorsennaDevicesRepository: Symbol(),
|
|
16
21
|
//#endregion
|
|
17
22
|
//#region Transformations
|
|
18
23
|
PPasMeasurementTransformation: Symbol(),
|
|
@@ -20,11 +25,14 @@ const EnapoWorkerContainerToken = {
|
|
|
20
25
|
PreDailyMeasurementsTransformation: Symbol(),
|
|
21
26
|
PreMetadataTransformation: Symbol(),
|
|
22
27
|
PpasDistributionTransformation: Symbol(),
|
|
28
|
+
PorsennaGaugeTransformation: Symbol(),
|
|
29
|
+
PorsennaConsumptionTransformation: Symbol(),
|
|
23
30
|
//#endregion
|
|
24
31
|
//#region Tasks
|
|
25
32
|
EnapoPpasTask: Symbol(),
|
|
26
33
|
EnapoPrediTask: Symbol(),
|
|
27
34
|
EnapoPpasDistributionTask: Symbol(),
|
|
35
|
+
PorsennaDistributionTask: Symbol(),
|
|
28
36
|
//#endregion
|
|
29
37
|
//#region Eno
|
|
30
38
|
EnoDatasourceFactory: Symbol(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnapoWorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/EnapoWorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,yBAAyB,GAAG;IAC9B,oBAAoB;IACpB,kCAAkC,EAAE,MAAM,EAAE;IAC5C,+BAA+B,EAAE,MAAM,EAAE;IACzC,YAAY;IAEZ,sBAAsB;IACtB,2BAA2B,EAAE,MAAM,EAAE;IACrC,uBAAuB,EAAE,MAAM,EAAE;IACjC,4BAA4B,EAAE,MAAM,EAAE;IACtC,uCAAuC,EAAE,MAAM,EAAE;IACjD,sCAAsC,EAAE,MAAM,EAAE;IAChD,iCAAiC,EAAE,MAAM,EAAE;IAC3C,YAAY;IAEZ,yBAAyB;IACzB,6BAA6B,EAAE,MAAM,EAAE;IACvC,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,yBAAyB,EAAE,MAAM,EAAE;IACnC,8BAA8B,EAAE,MAAM,EAAE;IACxC,YAAY;IAEZ,eAAe;IACf,aAAa,EAAE,MAAM,EAAE;IACvB,cAAc,EAAE,MAAM,EAAE;IACxB,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,aAAa;IACb,oBAAoB,EAAE,MAAM,EAAE;IAE9B,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,wBAAwB,EAAE,MAAM,EAAE;IAClC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,eAAe,EAAE,MAAM,EAAE;IACzB,qBAAqB,EAAE,MAAM,EAAE;IAC/B,oBAAoB,EAAE,MAAM,EAAE;IAC9B,qBAAqB,EAAE,MAAM,EAAE;IAC/B,qBAAqB,EAAE,MAAM,EAAE;IAC/B,uBAAuB,EAAE,MAAM,EAAE;IACjC,sBAAsB,EAAE,MAAM,EAAE;IAChC,qBAAqB,EAAE,MAAM,EAAE;IAE/B,aAAa,EAAE,MAAM,EAAE;IACvB,eAAe,EAAE,MAAM,EAAE;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,eAAe,EAAE,MAAM,EAAE;IACzB,YAAY;CACf,CAAC;AAEO,8DAAyB"}
|
|
1
|
+
{"version":3,"file":"EnapoWorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/enapo/ioc/EnapoWorkerContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,yBAAyB,GAAG;IAC9B,oBAAoB;IACpB,kCAAkC,EAAE,MAAM,EAAE;IAC5C,+BAA+B,EAAE,MAAM,EAAE;IACzC,kBAAkB,EAAE,MAAM,EAAE;IAC5B,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,sBAAsB;IACtB,2BAA2B,EAAE,MAAM,EAAE;IACrC,uBAAuB,EAAE,MAAM,EAAE;IACjC,4BAA4B,EAAE,MAAM,EAAE;IACtC,uCAAuC,EAAE,MAAM,EAAE;IACjD,sCAAsC,EAAE,MAAM,EAAE;IAChD,iCAAiC,EAAE,MAAM,EAAE;IAC3C,2BAA2B,EAAE,MAAM,EAAE;IACrC,6BAA6B,EAAE,MAAM,EAAE;IACvC,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,yBAAyB;IACzB,6BAA6B,EAAE,MAAM,EAAE;IACvC,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,yBAAyB,EAAE,MAAM,EAAE;IACnC,8BAA8B,EAAE,MAAM,EAAE;IACxC,2BAA2B,EAAE,MAAM,EAAE;IACrC,iCAAiC,EAAE,MAAM,EAAE;IAC3C,YAAY;IAEZ,eAAe;IACf,aAAa,EAAE,MAAM,EAAE;IACvB,cAAc,EAAE,MAAM,EAAE;IACxB,yBAAyB,EAAE,MAAM,EAAE;IACnC,wBAAwB,EAAE,MAAM,EAAE;IAClC,YAAY;IAEZ,aAAa;IACb,oBAAoB,EAAE,MAAM,EAAE;IAE9B,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,wBAAwB,EAAE,MAAM,EAAE;IAClC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,eAAe,EAAE,MAAM,EAAE;IACzB,qBAAqB,EAAE,MAAM,EAAE;IAC/B,oBAAoB,EAAE,MAAM,EAAE;IAC9B,qBAAqB,EAAE,MAAM,EAAE;IAC/B,qBAAqB,EAAE,MAAM,EAAE;IAC/B,uBAAuB,EAAE,MAAM,EAAE;IACjC,sBAAsB,EAAE,MAAM,EAAE;IAChC,qBAAqB,EAAE,MAAM,EAAE;IAE/B,aAAa,EAAE,MAAM,EAAE;IACvB,eAAe,EAAE,MAAM,EAAE;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,eAAe,EAAE,MAAM,EAAE;IACzB,YAAY;CACf,CAAC;AAEO,8DAAyB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IModel } from "@golemio/core/dist/integration-engine/models/IModel";
|
|
2
|
+
import { PostgresModel } from "@golemio/core/dist/integration-engine/models/PostgresModel";
|
|
3
|
+
export declare class PorsennaBuildingsRepository extends PostgresModel implements IModel {
|
|
4
|
+
constructor();
|
|
5
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PorsennaBuildingsRepository = void 0;
|
|
13
|
+
const _sch_1 = require("../../../../schema-definitions");
|
|
14
|
+
const porsenna_1 = require("../../../../schema-definitions/models/porsenna");
|
|
15
|
+
const PostgresModel_1 = require("@golemio/core/dist/integration-engine/models/PostgresModel");
|
|
16
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
17
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
18
|
+
let PorsennaBuildingsRepository = exports.PorsennaBuildingsRepository = class PorsennaBuildingsRepository extends PostgresModel_1.PostgresModel {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(porsenna_1.PorsennaBuildingsModel.REPOSITORY_NAME, {
|
|
21
|
+
pgTableName: porsenna_1.PorsennaBuildingsModel.TABLE_NAME,
|
|
22
|
+
pgSchema: _sch_1.EnergeticsSchema.pgSchema,
|
|
23
|
+
outputSequelizeAttributes: porsenna_1.PorsennaBuildingsModel.attributeModel,
|
|
24
|
+
savingType: "insertOrUpdate",
|
|
25
|
+
}, new golemio_validator_1.JSONSchemaValidator(porsenna_1.PorsennaBuildingsModel.JSON_SCHEMA_VALIDATOR_NAME, porsenna_1.PorsennaBuildingsModel.jsonSchema));
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
exports.PorsennaBuildingsRepository = PorsennaBuildingsRepository = __decorate([
|
|
29
|
+
(0, tsyringe_1.injectable)(),
|
|
30
|
+
__metadata("design:paramtypes", [])
|
|
31
|
+
], PorsennaBuildingsRepository);
|
|
32
|
+
//# sourceMappingURL=PorsennaBuildingsRepository.js.map
|
package/dist/integration-engine/enapo/repositories/porsenna/PorsennaBuildingsRepository.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PorsennaBuildingsRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/enapo/repositories/porsenna/PorsennaBuildingsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAwC;AACxC,6EAA8D;AAE9D,8FAA2F;AAC3F,mFAAkF;AAClF,iEAAgE;AAGzD,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,6BAAa;IAC1D;QACI,KAAK,CACD,iCAAsB,CAAC,eAAe,EACtC;YACI,WAAW,EAAE,iCAAsB,CAAC,UAAU;YAC9C,QAAQ,EAAE,uBAAgB,CAAC,QAAQ;YACnC,yBAAyB,EAAE,iCAAsB,CAAC,cAAc;YAChE,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,iCAAsB,CAAC,0BAA0B,EAAE,iCAAsB,CAAC,UAAU,CAAC,CAChH,CAAC;IACN,CAAC;CACJ,CAAA;sCAbY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;;GACA,2BAA2B,CAavC"}
|
package/dist/integration-engine/enapo/repositories/porsenna/PorsennaConsumptionRepository.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IModel } from "@golemio/core/dist/integration-engine/models/IModel";
|
|
2
|
+
import { PostgresModel } from "@golemio/core/dist/integration-engine/models/PostgresModel";
|
|
3
|
+
export declare class PorsennaConsumptionRepository extends PostgresModel implements IModel {
|
|
4
|
+
constructor();
|
|
5
|
+
}
|