@golemio/energetics 1.2.11 → 1.2.12-dev.1210136153
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/example/.config.json +3 -0
- package/db/example/00_clear_test_data.sql +1 -0
- package/db/migrations/postgresql/20240304150326-commodity.js +53 -0
- package/db/migrations/postgresql/sqls/20240304150326-commodity-down.sql +2 -0
- package/db/migrations/postgresql/sqls/20240304150326-commodity-up.sql +38 -0
- package/dist/integration-engine/commodity-providers/constants.d.ts +1 -0
- package/dist/integration-engine/commodity-providers/constants.js +5 -0
- package/dist/integration-engine/commodity-providers/constants.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.d.ts +8 -0
- package/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.js +34 -0
- package/dist/integration-engine/commodity-providers/datasources/CommodityProviderDataSourceFactory.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/CemApiDataSourceProvider.d.ts +13 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/CemApiDataSourceProvider.js +70 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/CemApiDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/interfaces/ICemApiMeasurementsParams.d.ts +5 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/interfaces/ICemApiMeasurementsParams.js +3 -0
- package/dist/integration-engine/commodity-providers/datasources/cem-api/interfaces/ICemApiMeasurementsParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.d.ts +3 -0
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js +8 -0
- package/dist/integration-engine/commodity-providers/datasources/helpers/CommodityProviderEnum.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.d.ts +13 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.js +4 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/ICommodityProviderDataSourceFactory.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/IDataSourceProvider.d.ts +4 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/IDataSourceProvider.js +3 -0
- package/dist/integration-engine/commodity-providers/datasources/interfaces/IDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceProvider.d.ts +11 -0
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceProvider.js +49 -0
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/commodity-providers/ioc/Di.d.ts +3 -0
- package/dist/integration-engine/commodity-providers/ioc/Di.js +37 -0
- package/dist/integration-engine/commodity-providers/ioc/Di.js.map +1 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.d.ts +12 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js +16 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js.map +1 -0
- package/dist/integration-engine/commodity-providers/repositories/MeasurementRepository.d.ts +13 -0
- package/dist/integration-engine/commodity-providers/repositories/MeasurementRepository.js +67 -0
- package/dist/integration-engine/commodity-providers/repositories/MeasurementRepository.js.map +1 -0
- package/dist/integration-engine/commodity-providers/repositories/StaticMeterSettingsRepository.d.ts +16 -0
- package/dist/integration-engine/commodity-providers/repositories/StaticMeterSettingsRepository.js +80 -0
- package/dist/integration-engine/commodity-providers/repositories/StaticMeterSettingsRepository.js.map +1 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.d.ts +8 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js +34 -0
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.d.ts +6 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js +23 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IDataEntrypointParams.d.ts +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IDataEntrypointParams.js +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IDataEntrypointParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IMeasurementsParams.d.ts +4 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IMeasurementsParams.js +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IMeasurementsParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IVeoliaMeasurementsParams.d.ts +5 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IVeoliaMeasurementsParams.js +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IVeoliaMeasurementsParams.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/schema/DataEntrypointSchema.d.ts +4 -0
- package/dist/integration-engine/commodity-providers/workers/schema/DataEntrypointSchema.js +21 -0
- package/dist/integration-engine/commodity-providers/workers/schema/DataEntrypointSchema.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/schema/MeasurementsSchema.d.ts +5 -0
- package/dist/integration-engine/commodity-providers/workers/schema/MeasurementsSchema.js +25 -0
- package/dist/integration-engine/commodity-providers/workers/schema/MeasurementsSchema.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/schema/VeoliaMeasurementsSchema.d.ts +6 -0
- package/dist/integration-engine/commodity-providers/workers/schema/VeoliaMeasurementsSchema.js +23 -0
- package/dist/integration-engine/commodity-providers/workers/schema/VeoliaMeasurementsSchema.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.d.ts +14 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js +78 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.d.ts +11 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.js +69 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromProvidersTask.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.d.ts +26 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js +173 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchVeoliaMeasurementsTask.js.map +1 -0
- package/dist/integration-engine/datasources/vpalace/VpalaceMeasurementDataSource.js +2 -2
- package/dist/integration-engine/datasources/vpalace/VpalaceMeasurementDataSource.js.map +1 -1
- package/dist/integration-engine/datasources/vpalace/VpalaceMeasuringEquipmentDataSource.js +2 -2
- package/dist/integration-engine/datasources/vpalace/VpalaceMeasuringEquipmentDataSource.js.map +1 -1
- package/dist/integration-engine/datasources/vpalace/VpalaceMeterTypeDataSource.js +2 -2
- package/dist/integration-engine/datasources/vpalace/VpalaceMeterTypeDataSource.js.map +1 -1
- package/dist/integration-engine/datasources/vpalace/VpalaceTypeMeasuringEquipmentDataSource.js +2 -2
- package/dist/integration-engine/datasources/vpalace/VpalaceTypeMeasuringEquipmentDataSource.js.map +1 -1
- package/dist/integration-engine/datasources/vpalace/VpalaceUnitsDataSource.js +2 -2
- package/dist/integration-engine/datasources/vpalace/VpalaceUnitsDataSource.js.map +1 -1
- package/dist/integration-engine/helpers/UnimonitorCemApiHelper.d.ts +19 -11
- package/dist/integration-engine/helpers/UnimonitorCemApiHelper.js +23 -39
- package/dist/integration-engine/helpers/UnimonitorCemApiHelper.js.map +1 -1
- package/dist/integration-engine/index.js +2 -1
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/ioc/Di.js +4 -6
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainer.d.ts +0 -1
- package/dist/integration-engine/ioc/ModuleContainer.js +0 -2
- package/dist/integration-engine/ioc/ModuleContainer.js.map +1 -1
- package/dist/integration-engine/tasks/vpalace/FetchXDaysDataTask.d.ts +5 -5
- package/dist/integration-engine/tasks/vpalace/FetchXDaysDataTask.js +15 -10
- package/dist/integration-engine/tasks/vpalace/FetchXDaysDataTask.js.map +1 -1
- package/dist/integration-engine/tasks/vpalace/FetchXHoursDataTask.d.ts +5 -3
- package/dist/integration-engine/tasks/vpalace/FetchXHoursDataTask.js +15 -7
- package/dist/integration-engine/tasks/vpalace/FetchXHoursDataTask.js.map +1 -1
- package/dist/schema-definitions/constants.d.ts +1 -0
- package/dist/schema-definitions/constants.js +5 -0
- package/dist/schema-definitions/constants.js.map +1 -0
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js +29 -0
- package/dist/schema-definitions/datasources/StaticMeterSettingsJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiCountersJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiCountersJsonSchema.js +15 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiCountersJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiDevicesJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiDevicesJsonSchema.js +15 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiDevicesJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.js +15 -0
- package/dist/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto.d.ts +4 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto.js +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto.d.ts +4 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto.js +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto.js.map +1 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiMeasurementDto.d.ts +4 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiMeasurementDto.js +3 -0
- package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiMeasurementDto.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.d.ts +13 -0
- package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/IStaticMeterSettings.js.map +1 -0
- package/dist/schema-definitions/models/MeasurementsModel.d.ts +17 -0
- package/dist/schema-definitions/models/MeasurementsModel.js +56 -0
- package/dist/schema-definitions/models/MeasurementsModel.js.map +1 -0
- package/dist/schema-definitions/models/StaticMeterSettingsModel.d.ts +13 -0
- package/dist/schema-definitions/models/StaticMeterSettingsModel.js +35 -0
- package/dist/schema-definitions/models/StaticMeterSettingsModel.js.map +1 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.d.ts +4 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js +9 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js.map +1 -0
- package/dist/schema-definitions/models/helpers/StaticDataResourceTypeEnum.d.ts +3 -0
- package/dist/schema-definitions/models/helpers/StaticDataResourceTypeEnum.js +8 -0
- package/dist/schema-definitions/models/helpers/StaticDataResourceTypeEnum.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IMeasurementDto.d.ts +10 -0
- package/dist/schema-definitions/models/interfaces/IMeasurementDto.js +3 -0
- package/dist/schema-definitions/models/interfaces/IMeasurementDto.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IStaticDataOutputDto.d.ts +11 -0
- package/dist/schema-definitions/models/interfaces/IStaticDataOutputDto.js +4 -0
- package/dist/schema-definitions/models/interfaces/IStaticDataOutputDto.js.map +1 -0
- package/package.json +2 -1
|
@@ -32,14 +32,15 @@ const luxon_1 = require("@golemio/core/dist/shared/luxon");
|
|
|
32
32
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
33
33
|
const FetchDateFactory_1 = require("./FetchDateFactory");
|
|
34
34
|
let FetchXDaysDataTask = class FetchXDaysDataTask extends AbstractTask_1.AbstractTask {
|
|
35
|
-
constructor(
|
|
35
|
+
constructor(config, fetchDataFactory) {
|
|
36
36
|
super(_sch_1.EnergeticsSchema.name.toLowerCase());
|
|
37
|
+
this.config = config;
|
|
37
38
|
this.fetchDataFactory = fetchDataFactory;
|
|
38
|
-
this.unimonitorCemApi = unimonitorCemApi;
|
|
39
|
-
this.databaseConnector = databaseConnector;
|
|
40
39
|
this.queueName = "fetchVpalacXDaysData";
|
|
41
40
|
this.schema = FetchXDaysDataValidationSchema_1.FetchXDaysDataValidationSchema;
|
|
42
41
|
this.queueTtl = 24 * 60 * 60 * 1000; // 24 hours
|
|
42
|
+
const { url, config: cemConfig } = this.getProviderConfig();
|
|
43
|
+
this.unimonitorCemApi = new helpers_1.UnimonitorCemApiHelper(url, cemConfig);
|
|
43
44
|
}
|
|
44
45
|
execute(msg) {
|
|
45
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -50,8 +51,8 @@ let FetchXDaysDataTask = class FetchXDaysDataTask extends AbstractTask_1.Abstrac
|
|
|
50
51
|
const dateFrom = currentDate.minus({ days: targetDays });
|
|
51
52
|
const intervals = luxon_1.Interval.fromDateTimes(dateFrom, currentDate).splitBy({ days: 1 });
|
|
52
53
|
for (const interval of intervals) {
|
|
53
|
-
const from = interval.start.startOf("day").toFormat(helpers_1.
|
|
54
|
-
const to = interval.end.startOf("day").toFormat(helpers_1.
|
|
54
|
+
const from = interval.start.startOf("day").toFormat(helpers_1.UnimonitorCemApiHelper.API_DATE_FORMAT);
|
|
55
|
+
const to = interval.end.startOf("day").toFormat(helpers_1.UnimonitorCemApiHelper.API_DATE_FORMAT);
|
|
55
56
|
yield this.fetchDataFactory.fetchAndSaveData(from, to, authCookie);
|
|
56
57
|
}
|
|
57
58
|
}
|
|
@@ -63,14 +64,18 @@ let FetchXDaysDataTask = class FetchXDaysDataTask extends AbstractTask_1.Abstrac
|
|
|
63
64
|
}
|
|
64
65
|
});
|
|
65
66
|
}
|
|
67
|
+
getProviderConfig() {
|
|
68
|
+
return {
|
|
69
|
+
url: this.config.getValue("module.UnimonitorCemApiEnergetics.url"),
|
|
70
|
+
config: this.config.getValue("module.UnimonitorCemApiEnergetics"),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
66
73
|
};
|
|
67
74
|
FetchXDaysDataTask = __decorate([
|
|
68
75
|
(0, tsyringe_1.injectable)(),
|
|
69
|
-
__param(0, (0, tsyringe_1.inject)(
|
|
70
|
-
__param(1, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.
|
|
71
|
-
|
|
72
|
-
__metadata("design:paramtypes", [FetchDateFactory_1.FetchDateFactory,
|
|
73
|
-
helpers_1.UnimonitorCemApi, Object])
|
|
76
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
77
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.FetchDateFactory)),
|
|
78
|
+
__metadata("design:paramtypes", [Object, FetchDateFactory_1.FetchDateFactory])
|
|
74
79
|
], FetchXDaysDataTask);
|
|
75
80
|
exports.default = FetchXDaysDataTask;
|
|
76
81
|
//# sourceMappingURL=FetchXDaysDataTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchXDaysDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/tasks/vpalace/FetchXDaysDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"FetchXDaysDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/tasks/vpalace/FetchXDaysDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAiE;AAEjE,+DAA+D;AAC/D,wGAAmG;AACnG,sDAAwC;AAExC,wEAAqE;AACrE,6FAA0F;AAC1F,6EAAwE;AACxE,2DAAqE;AACrE,iEAAwE;AACxE,yDAAsD;AAGvC,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,2BAA6B;IAMzE,YACoC,MAA6B,EAE7D,gBAAmD;QAEnD,KAAK,CAAC,uBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAJH,WAAM,GAAN,MAAM,CAAe;QAE5C,qBAAgB,GAAhB,gBAAgB,CAAkB;QARvC,cAAS,GAAG,sBAAsB,CAAC;QACnC,WAAM,GAAG,+DAA8B,CAAC;QACxC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;QAUvD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC5D,IAAI,CAAC,gBAAgB,GAAG,IAAI,gCAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACvE,CAAC;IAEe,OAAO,CAAC,GAAoB;;YACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;YAC/D,IAAI;gBACA,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;gBAClC,MAAM,WAAW,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;gBACzD,MAAM,SAAS,GAAG,gBAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;gBAErF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;oBAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,gCAAsB,CAAC,eAAe,CAAC,CAAC;oBAC5F,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,gCAAsB,CAAC,eAAe,CAAC,CAAC;oBAExF,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;iBACtE;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,2CAA2C,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACnG;oBAAS;gBACN,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;aAC5D;QACL,CAAC;KAAA;IAEO,iBAAiB;QACrB,OAAO;YACH,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,uCAAuC,CAAW;YAC5E,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,mCAAmC,CAAe;SAClF,CAAC;IACN,CAAC;CACJ,CAAA;AA5CoB,kBAAkB;IADtC,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;IAC9B,WAAA,IAAA,iBAAM,EAAC,sCAAoB,CAAC,gBAAgB,CAAC,CAAA;6CACX,mCAAgB;GATtC,kBAAkB,CA4CtC;kBA5CoB,kBAAkB"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import { UnimonitorCemApi } from "../../helpers";
|
|
2
1
|
import { IFetchXHoursDataInput } from "../../interfaces/vpalace/IFetchXHoursDataInput";
|
|
3
2
|
import { FetchXHoursDataValidationSchema } from "../../schema/vpalace/FetchXHoursDataValidationSchema";
|
|
3
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
4
4
|
import { AbstractTask } from "@golemio/core/dist/integration-engine/workers/AbstractTask";
|
|
5
5
|
import { FetchDateFactory } from "./FetchDateFactory";
|
|
6
6
|
export default class FetchXHoursDataTask extends AbstractTask<IFetchXHoursDataInput> {
|
|
7
|
+
private config;
|
|
7
8
|
private readonly fetchDataFactory;
|
|
8
|
-
private readonly unimonitorCemApi;
|
|
9
9
|
readonly queueName = "fetchVpalacXHoursData";
|
|
10
10
|
readonly schema: typeof FetchXHoursDataValidationSchema;
|
|
11
11
|
readonly queueTtl: number;
|
|
12
|
-
|
|
12
|
+
private readonly unimonitorCemApi;
|
|
13
|
+
constructor(config: ISimpleConfig, fetchDataFactory: FetchDateFactory);
|
|
13
14
|
protected execute(msg: IFetchXHoursDataInput): Promise<void>;
|
|
15
|
+
private getProviderConfig;
|
|
14
16
|
}
|
|
@@ -26,25 +26,28 @@ const ModuleContainer_1 = require("../../ioc/ModuleContainer");
|
|
|
26
26
|
const FetchXHoursDataValidationSchema_1 = require("../../schema/vpalace/FetchXHoursDataValidationSchema");
|
|
27
27
|
const _sch_1 = require("../../../schema-definitions");
|
|
28
28
|
const helpers_2 = require("@golemio/core/dist/helpers");
|
|
29
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
29
30
|
const AbstractTask_1 = require("@golemio/core/dist/integration-engine/workers/AbstractTask");
|
|
30
31
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
31
32
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
32
33
|
const FetchDateFactory_1 = require("./FetchDateFactory");
|
|
33
34
|
let FetchXHoursDataTask = class FetchXHoursDataTask extends AbstractTask_1.AbstractTask {
|
|
34
|
-
constructor(
|
|
35
|
+
constructor(config, fetchDataFactory) {
|
|
35
36
|
super(_sch_1.EnergeticsSchema.name.toLowerCase());
|
|
37
|
+
this.config = config;
|
|
36
38
|
this.fetchDataFactory = fetchDataFactory;
|
|
37
|
-
this.unimonitorCemApi = unimonitorCemApi;
|
|
38
39
|
this.queueName = "fetchVpalacXHoursData";
|
|
39
40
|
this.schema = FetchXHoursDataValidationSchema_1.FetchXHoursDataValidationSchema;
|
|
40
41
|
this.queueTtl = 60 * 60 * 1000; //> 1 hour
|
|
42
|
+
const { url, config: cemConfig } = this.getProviderConfig();
|
|
43
|
+
this.unimonitorCemApi = new helpers_1.UnimonitorCemApiHelper(url, cemConfig);
|
|
41
44
|
}
|
|
42
45
|
execute(msg) {
|
|
43
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
47
|
const authCookie = yield this.unimonitorCemApi.createSession();
|
|
45
48
|
try {
|
|
46
49
|
const targetHours = msg.targetHours;
|
|
47
|
-
const now = (0, helpers_2.dateTime)(new Date()).setTimeZone(helpers_1.
|
|
50
|
+
const now = (0, helpers_2.dateTime)(new Date()).setTimeZone(helpers_1.UnimonitorCemApiHelper.API_DATE_TZ);
|
|
48
51
|
const timeFrom = now.clone().subtract(targetHours, "hours").valueOf().toString();
|
|
49
52
|
const timeTo = now.valueOf().toString();
|
|
50
53
|
yield this.fetchDataFactory.fetchAndSaveData(timeFrom, timeTo, authCookie);
|
|
@@ -57,13 +60,18 @@ let FetchXHoursDataTask = class FetchXHoursDataTask extends AbstractTask_1.Abstr
|
|
|
57
60
|
}
|
|
58
61
|
});
|
|
59
62
|
}
|
|
63
|
+
getProviderConfig() {
|
|
64
|
+
return {
|
|
65
|
+
url: this.config.getValue("module.UnimonitorCemApiEnergetics.url"),
|
|
66
|
+
config: this.config.getValue("module.UnimonitorCemApiEnergetics"),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
60
69
|
};
|
|
61
70
|
FetchXHoursDataTask = __decorate([
|
|
62
71
|
(0, tsyringe_1.injectable)(),
|
|
63
|
-
__param(0, (0, tsyringe_1.inject)(
|
|
64
|
-
__param(1, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.
|
|
65
|
-
__metadata("design:paramtypes", [FetchDateFactory_1.FetchDateFactory
|
|
66
|
-
helpers_1.UnimonitorCemApi])
|
|
72
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
73
|
+
__param(1, (0, tsyringe_1.inject)(ModuleContainer_1.ModuleContainerToken.FetchDateFactory)),
|
|
74
|
+
__metadata("design:paramtypes", [Object, FetchDateFactory_1.FetchDateFactory])
|
|
67
75
|
], FetchXHoursDataTask);
|
|
68
76
|
exports.default = FetchXHoursDataTask;
|
|
69
77
|
//# sourceMappingURL=FetchXHoursDataTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchXHoursDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/tasks/vpalace/FetchXHoursDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"FetchXHoursDataTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/tasks/vpalace/FetchXHoursDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAiE;AAEjE,+DAA+D;AAC/D,0GAAqG;AACrG,sDAAwC;AACxC,wDAAsD;AAEtD,wEAAqE;AACrE,6FAA0F;AAC1F,6EAAwE;AACxE,iEAAwE;AACxE,yDAAsD;AAGvC,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,2BAAmC;IAMhF,YACoC,MAA6B,EAE7D,gBAAmD;QAEnD,KAAK,CAAC,uBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAJH,WAAM,GAAN,MAAM,CAAe;QAE5C,qBAAgB,GAAhB,gBAAgB,CAAkB;QARvC,cAAS,GAAG,uBAAuB,CAAC;QACpC,WAAM,GAAG,iEAA+B,CAAC;QACzC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,UAAU;QAUjD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC5D,IAAI,CAAC,gBAAgB,GAAG,IAAI,gCAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACvE,CAAC;IAEe,OAAO,CAAC,GAA0B;;YAC9C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;YAC/D,IAAI;gBACA,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;gBACpC,MAAM,GAAG,GAAG,IAAA,kBAAQ,EAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,gCAAsB,CAAC,WAAW,CAAC,CAAC;gBACjF,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACjF,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACxC,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;aAC9E;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,4CAA4C,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACpG;oBAAS;gBACN,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;aAC5D;QACL,CAAC;KAAA;IAEO,iBAAiB;QACrB,OAAO;YACH,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,uCAAuC,CAAW;YAC5E,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,mCAAmC,CAAe;SAClF,CAAC;IACN,CAAC;CACJ,CAAA;AAtCoB,mBAAmB;IADvC,IAAA,qBAAU,GAAE;IAQJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;IAC9B,WAAA,IAAA,iBAAM,EAAC,sCAAoB,CAAC,gBAAgB,CAAC,CAAA;6CACX,mCAAgB;GATtC,mBAAmB,CAsCvC;kBAtCoB,mBAAmB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const PG_SCHEMA = "energetics";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/schema-definitions/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.staticMeterSettingsJsonSchema = void 0;
|
|
4
|
+
exports.staticMeterSettingsJsonSchema = {
|
|
5
|
+
type: "object",
|
|
6
|
+
additionalProperties: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
MeasurementOptions: {
|
|
10
|
+
type: "array",
|
|
11
|
+
items: {
|
|
12
|
+
type: "object",
|
|
13
|
+
properties: {
|
|
14
|
+
MeterSerialNumber: { type: "string" },
|
|
15
|
+
Name: { type: "string" },
|
|
16
|
+
Addr: { type: "string" },
|
|
17
|
+
Meter: { type: "string" },
|
|
18
|
+
Type: { type: "string" },
|
|
19
|
+
Var: { type: "string" },
|
|
20
|
+
},
|
|
21
|
+
required: ["Name", "Addr", "Meter", "Type", "Var"],
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
required: ["MeasurementOptions"],
|
|
26
|
+
},
|
|
27
|
+
required: [],
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=StaticMeterSettingsJsonSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StaticMeterSettingsJsonSchema.js","sourceRoot":"","sources":["../../../src/schema-definitions/datasources/StaticMeterSettingsJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,6BAA6B,GAAyC;IAC/E,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,kBAAkB,EAAE;gBAChB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACR,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACrC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBAC1B;oBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;iBACrD;aACJ;SACJ;QACD,QAAQ,EAAE,CAAC,oBAAoB,CAAC;KACnC;IACD,QAAQ,EAAE,EAAE;CACf,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cemApiCountersJsonSchema = void 0;
|
|
4
|
+
exports.cemApiCountersJsonSchema = {
|
|
5
|
+
type: "array",
|
|
6
|
+
items: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
me_id: { type: "number" },
|
|
10
|
+
var_id: { type: "number" },
|
|
11
|
+
},
|
|
12
|
+
required: ["me_id", "var_id"],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=CemApiCountersJsonSchema.js.map
|
package/dist/schema-definitions/datasources/commodity-providers/CemApiCountersJsonSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CemApiCountersJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/CemApiCountersJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,wBAAwB,GAAwC;IACzE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC7B;QACD,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;KAChC;CACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cemApiDevicesJsonSchema = void 0;
|
|
4
|
+
exports.cemApiDevicesJsonSchema = {
|
|
5
|
+
type: "array",
|
|
6
|
+
items: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
me_id: { type: "number" },
|
|
10
|
+
me_serial: { type: "string" },
|
|
11
|
+
},
|
|
12
|
+
required: ["me_id", "me_serial"],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=CemApiDevicesJsonSchema.js.map
|
package/dist/schema-definitions/datasources/commodity-providers/CemApiDevicesJsonSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CemApiDevicesJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/CemApiDevicesJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,uBAAuB,GAAuC;IACvE,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAChC;QACD,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;KACnC;CACJ,CAAC"}
|
package/dist/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cemApiMeasurementsJsonSchema = void 0;
|
|
4
|
+
exports.cemApiMeasurementsJsonSchema = {
|
|
5
|
+
type: "array",
|
|
6
|
+
items: {
|
|
7
|
+
type: "object",
|
|
8
|
+
properties: {
|
|
9
|
+
value: { type: "number" },
|
|
10
|
+
timestamp: { type: "number" },
|
|
11
|
+
},
|
|
12
|
+
required: ["value", "timestamp"],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=CemApiMeasurementsJsonSchema.js.map
|
package/dist/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CemApiMeasurementsJsonSchema.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/commodity-providers/CemApiMeasurementsJsonSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,4BAA4B,GAA4C;IACjF,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAChC;QACD,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;KACnC;CACJ,CAAC"}
|
package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ICemApiCounterDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/ICemApiCounterDto.ts"],"names":[],"mappings":""}
|
package/dist/schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ICemApiDeviceDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/ICemApiDeviceDto.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ICemApiMeasurementDto.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/commodity-providers/interfaces/ICemApiMeasurementDto.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface IStaticMeterSettings {
|
|
2
|
+
[providerOptionKey: string]: {
|
|
3
|
+
MeasurementOptions: IMeasurementOption[];
|
|
4
|
+
};
|
|
5
|
+
}
|
|
6
|
+
export interface IMeasurementOption {
|
|
7
|
+
MeterSerialNumber: string;
|
|
8
|
+
Name: string;
|
|
9
|
+
Addr: string;
|
|
10
|
+
Meter: string;
|
|
11
|
+
Type: string;
|
|
12
|
+
Var: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IStaticMeterSettings.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/interfaces/IStaticMeterSettings.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
|
|
2
|
+
import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
|
|
3
|
+
import { IMeasurementDto } from "./interfaces/IMeasurementDto";
|
|
4
|
+
export declare class MeasurementModel extends Model<MeasurementModel, IMeasurementDto> implements IMeasurementDto {
|
|
5
|
+
static tableName: string;
|
|
6
|
+
timestamp: Date;
|
|
7
|
+
value: number;
|
|
8
|
+
addr: string;
|
|
9
|
+
variable: string;
|
|
10
|
+
type: string;
|
|
11
|
+
meter: string;
|
|
12
|
+
source: string;
|
|
13
|
+
measurement_category: string;
|
|
14
|
+
static attributeModel: ModelAttributes<MeasurementModel, IMeasurementDto>;
|
|
15
|
+
static attributesToUpdate: string[];
|
|
16
|
+
static arrayJsonSchema: JSONSchemaType<IMeasurementDto[]>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MeasurementModel = void 0;
|
|
4
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
5
|
+
class MeasurementModel extends sequelize_1.Model {
|
|
6
|
+
}
|
|
7
|
+
exports.MeasurementModel = MeasurementModel;
|
|
8
|
+
MeasurementModel.tableName = "consumption_energy_measurements";
|
|
9
|
+
MeasurementModel.attributeModel = {
|
|
10
|
+
timestamp: {
|
|
11
|
+
primaryKey: true,
|
|
12
|
+
type: sequelize_1.DataTypes.DATE,
|
|
13
|
+
},
|
|
14
|
+
value: sequelize_1.DataTypes.NUMBER({
|
|
15
|
+
precision: 30,
|
|
16
|
+
scale: 15,
|
|
17
|
+
}),
|
|
18
|
+
addr: {
|
|
19
|
+
primaryKey: true,
|
|
20
|
+
type: sequelize_1.DataTypes.STRING(255),
|
|
21
|
+
},
|
|
22
|
+
variable: {
|
|
23
|
+
primaryKey: true,
|
|
24
|
+
type: sequelize_1.DataTypes.STRING(255),
|
|
25
|
+
field: "var",
|
|
26
|
+
},
|
|
27
|
+
type: sequelize_1.DataTypes.STRING(255),
|
|
28
|
+
meter: {
|
|
29
|
+
primaryKey: true,
|
|
30
|
+
type: sequelize_1.DataTypes.STRING(255),
|
|
31
|
+
},
|
|
32
|
+
source: sequelize_1.DataTypes.STRING(20),
|
|
33
|
+
measurement_category: sequelize_1.DataTypes.STRING(50),
|
|
34
|
+
};
|
|
35
|
+
MeasurementModel.attributesToUpdate = Object.keys(MeasurementModel.attributeModel).concat("updated_at");
|
|
36
|
+
MeasurementModel.arrayJsonSchema = {
|
|
37
|
+
type: "array",
|
|
38
|
+
items: {
|
|
39
|
+
type: "object",
|
|
40
|
+
properties: {
|
|
41
|
+
timestamp: {
|
|
42
|
+
type: "object",
|
|
43
|
+
required: ["toISOString"],
|
|
44
|
+
},
|
|
45
|
+
value: { type: "number" },
|
|
46
|
+
addr: { type: "string" },
|
|
47
|
+
variable: { type: "string" },
|
|
48
|
+
type: { type: "string" },
|
|
49
|
+
meter: { type: "string" },
|
|
50
|
+
source: { type: "string" },
|
|
51
|
+
measurement_category: { type: "string" },
|
|
52
|
+
},
|
|
53
|
+
required: ["timestamp", "value", "addr", "variable", "type", "meter", "source", "measurement_category"],
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=MeasurementsModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MeasurementsModel.js","sourceRoot":"","sources":["../../../src/schema-definitions/models/MeasurementsModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAGxF,MAAa,gBAAiB,SAAQ,iBAAwC;;AAA9E,4CA6DC;AA5DiB,0BAAS,GAAG,iCAAiC,CAAC;AAW9C,+BAAc,GAAuD;IAC/E,SAAS,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,IAAI;KACvB;IACD,KAAK,EAAE,qBAAS,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,EAAE;KACZ,CAAC;IACF,IAAI,EAAE;QACF,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;KAC9B;IACD,QAAQ,EAAE;QACN,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;QAC3B,KAAK,EAAE,KAAK;KACf;IACD,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE;QACH,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,GAAG,CAAC;KAC9B;IACD,MAAM,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;IAC5B,oBAAoB,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;CAC7C,CAAC;AAEY,mCAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAEvF,gCAAe,GAAsC;IAC/D,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC5B;YACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1B,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3C;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC;KAC1G;CACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
|
|
2
|
+
import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
|
|
3
|
+
import { CommodityProviderType } from "./helpers/CommodityProviderTypeEnum";
|
|
4
|
+
import { StaticDataResourceType } from "./helpers/StaticDataResourceTypeEnum";
|
|
5
|
+
import { IStaticDataOutputDto, ResourceTypeDict } from "./interfaces/IStaticDataOutputDto";
|
|
6
|
+
export declare class StaticMeterSettingsModel extends Model<IStaticDataOutputDto> implements IStaticDataOutputDto {
|
|
7
|
+
static tableName: string;
|
|
8
|
+
provider: CommodityProviderType;
|
|
9
|
+
resource_type: StaticDataResourceType;
|
|
10
|
+
data: ResourceTypeDict[StaticDataResourceType];
|
|
11
|
+
static attributeModel: ModelAttributes<StaticMeterSettingsModel, IStaticDataOutputDto>;
|
|
12
|
+
static jsonSchema: JSONSchemaType<IStaticDataOutputDto>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StaticMeterSettingsModel = void 0;
|
|
4
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
5
|
+
class StaticMeterSettingsModel extends sequelize_1.Model {
|
|
6
|
+
}
|
|
7
|
+
exports.StaticMeterSettingsModel = StaticMeterSettingsModel;
|
|
8
|
+
StaticMeterSettingsModel.tableName = "commodity_static_meter_settings";
|
|
9
|
+
StaticMeterSettingsModel.attributeModel = {
|
|
10
|
+
provider: {
|
|
11
|
+
type: sequelize_1.DataTypes.STRING(30),
|
|
12
|
+
primaryKey: true,
|
|
13
|
+
},
|
|
14
|
+
resource_type: {
|
|
15
|
+
type: sequelize_1.DataTypes.STRING(30),
|
|
16
|
+
primaryKey: true,
|
|
17
|
+
},
|
|
18
|
+
data: {
|
|
19
|
+
type: sequelize_1.DataTypes.JSON,
|
|
20
|
+
allowNull: false,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
StaticMeterSettingsModel.jsonSchema = {
|
|
24
|
+
type: "object",
|
|
25
|
+
properties: {
|
|
26
|
+
provider: { type: "string" },
|
|
27
|
+
resource_type: { type: "string" },
|
|
28
|
+
data: {
|
|
29
|
+
type: "array",
|
|
30
|
+
items: { type: "object", required: [] },
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
required: ["provider", "resource_type", "data"],
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=StaticMeterSettingsModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StaticMeterSettingsModel.js","sourceRoot":"","sources":["../../../src/schema-definitions/models/StaticMeterSettingsModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAKxF,MAAa,wBAAyB,SAAQ,iBAA2B;;AAAzE,4DAkCC;AAjCiB,kCAAS,GAAG,iCAAiC,CAAC;AAM9C,uCAAc,GAAoE;IAC5F,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,UAAU,EAAE,IAAI;KACnB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,UAAU,EAAE,IAAI;KACnB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEY,mCAAU,GAAyC;IAC7D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,IAAI,EAAE;YACF,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;SAC1C;KACJ;IACD,QAAQ,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC;CAClD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommodityProviderType = void 0;
|
|
4
|
+
var CommodityProviderType;
|
|
5
|
+
(function (CommodityProviderType) {
|
|
6
|
+
CommodityProviderType["CemApiVeoliaWater"] = "cem_api_veolia_water";
|
|
7
|
+
CommodityProviderType["CemApiVeoliaElectro"] = "cem_api_veolia_electro";
|
|
8
|
+
})(CommodityProviderType || (exports.CommodityProviderType = CommodityProviderType = {}));
|
|
9
|
+
//# sourceMappingURL=CommodityProviderTypeEnum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommodityProviderTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/CommodityProviderTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC7B,mEAA0C,CAAA;IAC1C,uEAA8C,CAAA;AAClD,CAAC,EAHW,qBAAqB,qCAArB,qBAAqB,QAGhC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StaticDataResourceType = void 0;
|
|
4
|
+
var StaticDataResourceType;
|
|
5
|
+
(function (StaticDataResourceType) {
|
|
6
|
+
StaticDataResourceType["MeasurementOptions"] = "MeasurementOptions";
|
|
7
|
+
})(StaticDataResourceType || (exports.StaticDataResourceType = StaticDataResourceType = {}));
|
|
8
|
+
//# sourceMappingURL=StaticDataResourceTypeEnum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StaticDataResourceTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/StaticDataResourceTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAC9B,mEAAyC,CAAA;AAC7C,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IMeasurementDto.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/interfaces/IMeasurementDto.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IMeasurementOption } from "../../datasources/interfaces/IStaticMeterSettings";
|
|
2
|
+
import { CommodityProviderType } from "../helpers/CommodityProviderTypeEnum";
|
|
3
|
+
import { StaticDataResourceType } from "../helpers/StaticDataResourceTypeEnum";
|
|
4
|
+
export interface IStaticDataOutputDto {
|
|
5
|
+
provider: CommodityProviderType;
|
|
6
|
+
resource_type: StaticDataResourceType;
|
|
7
|
+
data: ResourceTypeDict[StaticDataResourceType];
|
|
8
|
+
}
|
|
9
|
+
export type ResourceTypeDict = {
|
|
10
|
+
[StaticDataResourceType.MeasurementOptions]: IMeasurementOption[];
|
|
11
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IStaticDataOutputDto.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/interfaces/IStaticDataOutputDto.ts"],"names":[],"mappings":";;AAEA,sFAA+E"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/energetics",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.12-dev.1210136153",
|
|
4
4
|
"description": "Golemio Energetics Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
"build": "rimraf ./dist && tspc -p ./tsconfig.build.json",
|
|
9
9
|
"build-minimal": "run-s 'build -- --sourceMap false --declaration false'",
|
|
10
10
|
"build-watch": "run-s 'build -- --watch --preserveWatchOutput'",
|
|
11
|
+
"pretest": "golemio import-db-data",
|
|
11
12
|
"test": "cross-env NODE_ENV=test mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r tsconfig-paths/register -r dotenv/config --file 'test/setup.ts' 'test/**/*.test.ts'",
|
|
12
13
|
"test-debug": "run-s 'test -- --inspect-brk=9230'",
|
|
13
14
|
"code-coverage": "nyc run-s 'test -- -r source-map-support/register'",
|