@golemio/energetics 1.4.8 → 1.4.9-dev.1622712529
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/dist/input-gateway/helpers/PreDataExtractor.d.ts +5 -0
- package/dist/input-gateway/helpers/PreDataExtractor.js +20 -0
- package/dist/input-gateway/helpers/PreDataExtractor.js.map +1 -0
- package/dist/input-gateway/index.d.ts +1 -0
- package/dist/input-gateway/index.js +1 -0
- package/dist/input-gateway/index.js.map +1 -1
- package/dist/input-gateway/pre/PreInputController.d.ts +8 -0
- package/dist/input-gateway/pre/PreInputController.js +44 -0
- package/dist/input-gateway/pre/PreInputController.js.map +1 -0
- package/dist/input-gateway/pre/PreInputRouter.d.ts +11 -0
- package/dist/input-gateway/pre/PreInputRouter.js +39 -0
- package/dist/input-gateway/pre/PreInputRouter.js.map +1 -0
- package/dist/input-gateway/pre/index.d.ts +2 -0
- package/dist/input-gateway/pre/index.js +19 -0
- package/dist/input-gateway/pre/index.js.map +1 -0
- package/dist/integration-engine/commodity-providers/datasources/pre-elektro-api/PreElectroApiDataSourceProvider.js.map +1 -1
- package/dist/integration-engine/commodity-providers/ioc/Di.js +5 -1
- package/dist/integration-engine/commodity-providers/ioc/Di.js.map +1 -1
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.d.ts +2 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js +2 -0
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.d.ts +16 -0
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js +39 -0
- package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js +1 -0
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.d.ts +4 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.js +3 -0
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PreEanMeasurementSchema.d.ts +5 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PreEanMeasurementSchema.js +25 -0
- package/dist/integration-engine/commodity-providers/workers/schema/PreEanMeasurementSchema.js.map +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js +1 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.d.ts +16 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js +73 -0
- package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js.map +1 -0
- package/dist/schema-definitions/datasources/PreJsonInputSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/PreJsonInputSchema.js +51 -0
- package/dist/schema-definitions/datasources/PreJsonInputSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/IPreJsonInput.d.ts +15 -0
- package/dist/schema-definitions/datasources/interfaces/IPreJsonInput.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/IPreJsonInput.js.map +1 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.d.ts +2 -1
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js +1 -0
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js.map +1 -1
- package/docs/asyncapi.yaml +32 -2
- package/docs/implementation_documentation.md +24 -0
- package/docs/openapi-input.yaml +60 -0
- package/package.json +4 -2
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IPreJsonInput } from "../../schema-definitions/datasources/interfaces/IPreJsonInput";
|
|
2
|
+
import { IPreEanMeasurement } from "../../integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement";
|
|
3
|
+
export declare class PreDataExtractor {
|
|
4
|
+
extractEanMeasurements(inputData: IPreJsonInput): IPreEanMeasurement[];
|
|
5
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PreDataExtractor = void 0;
|
|
4
|
+
class PreDataExtractor {
|
|
5
|
+
extractEanMeasurements(inputData) {
|
|
6
|
+
const eans = [];
|
|
7
|
+
for (const company of Object.values(inputData.stored_month.companies)) {
|
|
8
|
+
for (const [ean, eanData] of Object.entries(company.EAN_list)) {
|
|
9
|
+
const dataArray = eanData.daily_data_Wh_per_EAN.T1_Wh_raw_data.flat();
|
|
10
|
+
eans.push({
|
|
11
|
+
ean,
|
|
12
|
+
T1_Wh_raw_data: dataArray,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return eans;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.PreDataExtractor = PreDataExtractor;
|
|
20
|
+
//# sourceMappingURL=PreDataExtractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreDataExtractor.js","sourceRoot":"","sources":["../../../src/input-gateway/helpers/PreDataExtractor.ts"],"names":[],"mappings":";;;AAGA,MAAa,gBAAgB;IAClB,sBAAsB,CAAC,SAAwB;QAClD,MAAM,IAAI,GAAyB,EAAE,CAAC;QAEtC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;YACnE,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC3D,MAAM,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBACtE,IAAI,CAAC,IAAI,CAAC;oBACN,GAAG;oBACH,cAAc,EAAE,SAAS;iBAC5B,CAAC,CAAC;aACN;SACJ;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAhBD,4CAgBC"}
|
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./ptas"), exports);
|
|
18
|
+
__exportStar(require("./pre"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/input-gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/input-gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,wCAAsB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseController } from "@golemio/core/dist/input-gateway/controllers";
|
|
2
|
+
import { IPreJsonInput } from "../../schema-definitions/datasources/interfaces/IPreJsonInput";
|
|
3
|
+
import { PreDataExtractor } from "../helpers/PreDataExtractor";
|
|
4
|
+
export declare class PreInputController extends BaseController {
|
|
5
|
+
private preDataExtractor;
|
|
6
|
+
constructor(preDataExtractor: PreDataExtractor);
|
|
7
|
+
processData: (inputData: IPreJsonInput) => Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PreInputController = void 0;
|
|
13
|
+
const controllers_1 = require("@golemio/core/dist/input-gateway/controllers");
|
|
14
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
15
|
+
const PreJsonInputSchema_1 = require("../../schema-definitions/datasources/PreJsonInputSchema");
|
|
16
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
17
|
+
const constants_1 = require("../../integration-engine/commodity-providers/constants");
|
|
18
|
+
class PreInputController extends controllers_1.BaseController {
|
|
19
|
+
constructor(preDataExtractor) {
|
|
20
|
+
super(constants_1.WORKER_NAME, new golemio_validator_1.JSONSchemaValidator("PreInputController", PreJsonInputSchema_1.preJsonInputSchema));
|
|
21
|
+
this.preDataExtractor = preDataExtractor;
|
|
22
|
+
this.processData = (inputData) => __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
try {
|
|
24
|
+
yield this.validator.Validate(inputData);
|
|
25
|
+
const eanMeasurements = this.preDataExtractor.extractEanMeasurements(inputData);
|
|
26
|
+
for (const eanMeasurement of eanMeasurements) {
|
|
27
|
+
yield this.sendMessageToExchange("input." + this.queuePrefix + ".processPreEanMeasurements", JSON.stringify(eanMeasurement), {
|
|
28
|
+
persistent: true,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
if (err instanceof golemio_errors_1.AbstractGolemioError) {
|
|
34
|
+
throw err;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
throw new golemio_errors_1.GeneralError("Error while validating input data.", this.name, err, 422);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.PreInputController = PreInputController;
|
|
44
|
+
//# sourceMappingURL=PreInputController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreInputController.js","sourceRoot":"","sources":["../../../src/input-gateway/pre/PreInputController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8EAA8E;AAC9E,mFAAkF;AAClF,gGAAyE;AAGzE,6EAA8F;AAC9F,sFAAgE;AAEhE,MAAa,kBAAmB,SAAQ,4BAAc;IAClD,YAAoB,gBAAkC;QAClD,KAAK,CAAC,uBAAW,EAAE,IAAI,uCAAmB,CAAC,oBAAoB,EAAE,uCAAkB,CAAC,CAAC,CAAC;QADtE,qBAAgB,GAAhB,gBAAgB,CAAkB;QAI/C,gBAAW,GAAG,CAAO,SAAwB,EAAE,EAAE;YACpD,IAAI;gBACA,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAChF,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE;oBAC1C,MAAM,IAAI,CAAC,qBAAqB,CAC5B,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,4BAA4B,EAC1D,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAC9B;wBACI,UAAU,EAAE,IAAI;qBACnB,CACJ,CAAC;iBACL;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,qCAAoB,EAAE;oBACrC,MAAM,GAAG,CAAC;iBACb;qBAAM;oBACH,MAAM,IAAI,6BAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBACrF;aACJ;QACL,CAAC,CAAA,CAAC;IAtBF,CAAC;CAuBJ;AA1BD,gDA0BC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="express" />
|
|
2
|
+
import { Router } from "@golemio/core/dist/shared/express";
|
|
3
|
+
export declare class PreInputRouter {
|
|
4
|
+
router: Router;
|
|
5
|
+
private controller;
|
|
6
|
+
constructor();
|
|
7
|
+
private initRoutes;
|
|
8
|
+
private postPreJson;
|
|
9
|
+
}
|
|
10
|
+
declare const preInputRouter: Router;
|
|
11
|
+
export { preInputRouter };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.preInputRouter = exports.PreInputRouter = void 0;
|
|
13
|
+
const express_1 = require("@golemio/core/dist/shared/express");
|
|
14
|
+
const helpers_1 = require("@golemio/core/dist/input-gateway/helpers");
|
|
15
|
+
const PreInputController_1 = require("./PreInputController");
|
|
16
|
+
const PreDataExtractor_1 = require("../helpers/PreDataExtractor");
|
|
17
|
+
class PreInputRouter {
|
|
18
|
+
constructor() {
|
|
19
|
+
this.initRoutes = () => {
|
|
20
|
+
this.router.post("/", (0, helpers_1.checkContentTypeMiddleware)(["application/json"]), this.postPreJson);
|
|
21
|
+
};
|
|
22
|
+
this.postPreJson = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
try {
|
|
24
|
+
yield this.controller.processData(req.body);
|
|
25
|
+
res.sendStatus(204);
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
next(err);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
this.router = (0, express_1.Router)();
|
|
32
|
+
this.controller = new PreInputController_1.PreInputController(new PreDataExtractor_1.PreDataExtractor());
|
|
33
|
+
this.initRoutes();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.PreInputRouter = PreInputRouter;
|
|
37
|
+
const preInputRouter = new PreInputRouter().router;
|
|
38
|
+
exports.preInputRouter = preInputRouter;
|
|
39
|
+
//# sourceMappingURL=PreInputRouter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreInputRouter.js","sourceRoot":"","sources":["../../../src/input-gateway/pre/PreInputRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA4F;AAC5F,sEAAsF;AACtF,6DAAgE;AAChE,kEAAgE;AAEhE,MAAa,cAAc;IAIvB;QAMQ,eAAU,GAAG,GAAS,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAA,oCAA0B,EAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9F,CAAC,CAAC;QAEM,gBAAW,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAiB,EAAE;YAC3F,IAAI;gBACA,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC5C,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACvB;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;QAhBE,IAAI,CAAC,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,uCAAkB,CAAC,IAAI,mCAAgB,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;CAcJ;AAtBD,wCAsBC;AAED,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC,MAAM,CAAC;AAC1C,wCAAc"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./PreInputRouter"), exports);
|
|
18
|
+
__exportStar(require("./PreInputController"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/input-gateway/pre/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,uDAAqC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreElectroApiDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/pre-elektro-api/PreElectroApiDataSourceProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sHAAyF;
|
|
1
|
+
{"version":3,"file":"PreElectroApiDataSourceProvider.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/datasources/pre-elektro-api/PreElectroApiDataSourceProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sHAAyF;AAEzF,wEAAqE;AACrE,uGAAoG;AACpG,iIAA8H;AAC9H,iIAA8H;AAC9H,mFAAkF;AAClF,iEAAwE;AAIjE,IAAM,+BAA+B,6CAArC,MAAM,+BAA+B;IACxC,YAAoD,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtE,eAAe,CAAC,QAAgB;QACnC,OAAO,IAAI,iCAAe,CACtB,iCAAiC,EACjC,IAAI,yCAAmB,CAAC;YACpB,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,GAAG;YACT,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sDAAsD,CAAkB;YAClG,QAAQ,EAAE,MAAM;SACnB,CAAC,EACF,IAAI,yCAAmB,CAAC;YACpB,aAAa,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;YAChD,SAAS,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI;SACjC,CAAC,EACF,IAAI,uCAAmB,CAAC,iCAAiC,EAAE,uDAA0B,CAAC,CACzF,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;CACJ,CAAA;0CAnBY,+BAA+B;IAD3C,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,YAAY,CAAC,CAAA;;GADlC,+BAA+B,CAmB3C"}
|
|
@@ -14,6 +14,7 @@ const PpasAveApiDataSourceProvider_1 = require("../datasources/ppas-ave-api/Ppas
|
|
|
14
14
|
const PreElectroApiDataSourceProvider_1 = require("../datasources/pre-elektro-api/PreElectroApiDataSourceProvider");
|
|
15
15
|
const PreElectroHelper_1 = require("../datasources/pre-elektro-api/helpers/PreElectroHelper");
|
|
16
16
|
const AccessConfigurationDataSource_1 = require("../datasources/static-data/AccessConfigurationDataSource");
|
|
17
|
+
const StaticMeterSettingsDataSourceCapitalDs_1 = require("../datasources/static-data/StaticMeterSettingsDataSourceCapitalDs");
|
|
17
18
|
const StaticMeterSettingsRepository_1 = require("../repositories/StaticMeterSettingsRepository");
|
|
18
19
|
const AveMeasurementTransformation_1 = require("../transformations/AveMeasurementTransformation");
|
|
19
20
|
const PreElectroTransformation_1 = require("../transformations/PreElectroTransformation");
|
|
@@ -25,7 +26,8 @@ const FetchPpasMeasurementsTask_1 = require("../workers/tasks/FetchPpasMeasureme
|
|
|
25
26
|
const FetchPreMeasurementDataTask_1 = require("../workers/tasks/FetchPreMeasurementDataTask");
|
|
26
27
|
const FetchPtasWebScrapedMeasurementsTask_1 = require("../workers/tasks/FetchPtasWebScrapedMeasurementsTask");
|
|
27
28
|
const WorkerContainerToken_1 = require("./WorkerContainerToken");
|
|
28
|
-
const
|
|
29
|
+
const PreMeasurementTransformation_1 = require("../transformations/PreMeasurementTransformation");
|
|
30
|
+
const ProcessPreEanMeasurementsTask_1 = require("../workers/tasks/ProcessPreEanMeasurementsTask");
|
|
29
31
|
//#region Initialization
|
|
30
32
|
const CommodityContainer = Di_1.VPalaceContainer.createChildContainer();
|
|
31
33
|
exports.CommodityContainer = CommodityContainer;
|
|
@@ -49,6 +51,7 @@ CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken
|
|
|
49
51
|
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.AveMeasurementTransformation, AveMeasurementTransformation_1.AveMeasurementTransformation);
|
|
50
52
|
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.PreElectroTransformation, PreElectroTransformation_1.PreElectroTransformation);
|
|
51
53
|
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.PtasWebMeasurementTransformation, PtasWebMeasurementTransformation_1.PtasWebMeasurementTransformation);
|
|
54
|
+
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.PreMeasurementTransformation, PreMeasurementTransformation_1.PreMeasurementTransformation);
|
|
52
55
|
//#endregion
|
|
53
56
|
//#region Factory
|
|
54
57
|
//#endregion
|
|
@@ -61,6 +64,7 @@ CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchPpa
|
|
|
61
64
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchMeasurementOptionsStaticDataTask, FetchMeasurementOptionsStaticDataTask_1.FetchMeasurementOptionsStaticDataTask);
|
|
62
65
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.FetchPreMeasurementDataTask, FetchPreMeasurementDataTask_1.FetchPreMeasurementDataTask);
|
|
63
66
|
CommodityContainer.registerSingleton(WorkerContainerToken_1.WorkerContainerToken.FetchPtasWebScrapedMeasurementsTask, FetchPtasWebScrapedMeasurementsTask_1.FetchPtasWebScrapedMeasurementsTask);
|
|
67
|
+
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.ProcessPreEanMeasurementsTask, ProcessPreEanMeasurementsTask_1.ProcessPreEanMeasurementsTask);
|
|
64
68
|
//#endregion
|
|
65
69
|
//#region Helpers
|
|
66
70
|
CommodityContainer.register(WorkerContainerToken_1.WorkerContainerToken.PreElectroHelper, PreElectroHelper_1.PreElectroHelper);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/Di.ts"],"names":[],"mappings":";;;AAAA,0GAA4H;AAC5H,8FAAgH;AAChH,4HAA8I;AAC9I,iFAAmG;AACnG,kGAAoH;AACpH,kHAAoI;AACpI,8FAAgH;AAChH,qCAA8C;AAC9C,8GAAyG;AAEzG,2GAAwG;AACxG,oHAAiH;AACjH,8FAA2F;AAC3F,4GAAyG;AACzG,iGAA8F;AAC9F,kGAA+F;AAC/F,0FAAuF;AACvF,0GAAuG;AACvG,gHAA6G;AAC7G,4GAAyG;AACzG,8FAA2F;AAC3F,0FAAuF;AACvF,8FAA2F;AAC3F,8GAA2G;AAC3G,iEAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"Di.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/Di.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,5 +23,7 @@ declare const WorkerContainerToken: {
|
|
|
23
23
|
PrimaryBuildingsRepositoryIE: symbol;
|
|
24
24
|
AccessConfigurationDataSource: symbol;
|
|
25
25
|
AccessLimitationRepository: symbol;
|
|
26
|
+
PreMeasurementTransformation: symbol;
|
|
27
|
+
ProcessPreEanMeasurementsTask: symbol;
|
|
26
28
|
};
|
|
27
29
|
export { WorkerContainerToken };
|
|
@@ -26,6 +26,8 @@ const WorkerContainerToken = {
|
|
|
26
26
|
PrimaryBuildingsRepositoryIE: Symbol(),
|
|
27
27
|
AccessConfigurationDataSource: Symbol(),
|
|
28
28
|
AccessLimitationRepository: Symbol(),
|
|
29
|
+
PreMeasurementTransformation: Symbol(),
|
|
30
|
+
ProcessPreEanMeasurementsTask: Symbol(),
|
|
29
31
|
};
|
|
30
32
|
exports.WorkerContainerToken = WorkerContainerToken;
|
|
31
33
|
//# sourceMappingURL=WorkerContainerToken.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/WorkerContainerToken.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"WorkerContainerToken.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/ioc/WorkerContainerToken.ts"],"names":[],"mappings":";;;AAEA,MAAM,oBAAoB,GAAG;IACzB,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,qCAAqC,EAAE,MAAM,EAAE;IAC/C,sCAAsC,EAAE,MAAM,EAAE;IAChD,4BAA4B,EAAE,MAAM,EAAE;IACtC,4BAA4B,EAAE,MAAM,EAAE;IACtC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,kCAAkC,EAAE,MAAM,EAAE;IAC5C,oCAAoC,EAAE,MAAM,EAAE;IAC9C,2BAA2B,EAAE,MAAM,EAAE;IACrC,yBAAyB,EAAE,MAAM,EAAE;IACnC,2BAA2B,EAAE,MAAM,EAAE;IACrC,qCAAqC,EAAE,MAAM,EAAE;IAC/C,2BAA2B,EAAE,MAAM,EAAE;IACrC,wBAAwB,EAAE,MAAM,EAAE;IAClC,+BAA+B,EAAE,MAAM,EAAE;IACzC,gBAAgB,EAAE,MAAM,EAAE;IAC1B,gCAAgC,EAAE,MAAM,EAAE;IAC1C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,4BAA4B,EAAE,MAAM,EAAE;IACtC,6BAA6B,EAAE,MAAM,EAAE;IACvC,0BAA0B,EAAE,MAAM,EAAE;IACpC,4BAA4B,EAAE,MAAM,EAAE;IACtC,6BAA6B,EAAE,MAAM,EAAE;CAC1C,CAAC;AAEO,oDAAoB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IMeasurementDto } from "../../../schema-definitions/models/interfaces/IMeasurementDto";
|
|
2
|
+
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
3
|
+
import { IPreEanMeasurement } from "../workers/interfaces/IPreEanMeasurement";
|
|
4
|
+
import { IMeasurementOption } from "../../../schema-definitions/datasources/interfaces/IStaticMeterSettings";
|
|
5
|
+
export declare class PreMeasurementTransformation extends AbstractTransformation<{
|
|
6
|
+
option: IMeasurementOption;
|
|
7
|
+
} & {
|
|
8
|
+
measurementInput: IPreEanMeasurement;
|
|
9
|
+
}, IMeasurementDto[]> {
|
|
10
|
+
name: string;
|
|
11
|
+
protected transformInternal: (data: {
|
|
12
|
+
option: IMeasurementOption;
|
|
13
|
+
} & {
|
|
14
|
+
measurementInput: IPreEanMeasurement;
|
|
15
|
+
}) => IMeasurementDto[];
|
|
16
|
+
}
|
package/dist/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PreMeasurementTransformation = void 0;
|
|
10
|
+
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
11
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
12
|
+
const CommodityProviderTypeEnum_1 = require("../../../schema-definitions/models/helpers/CommodityProviderTypeEnum");
|
|
13
|
+
const helpers_1 = require("@golemio/core/dist/helpers");
|
|
14
|
+
let PreMeasurementTransformation = exports.PreMeasurementTransformation = class PreMeasurementTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
15
|
+
constructor() {
|
|
16
|
+
super(...arguments);
|
|
17
|
+
this.name = "PreMeasurementTransformation";
|
|
18
|
+
this.transformInternal = (data) => {
|
|
19
|
+
const output = [];
|
|
20
|
+
for (const measurement of data.measurementInput.T1_Wh_raw_data) {
|
|
21
|
+
output.push({
|
|
22
|
+
addr: data.option.Addr,
|
|
23
|
+
meter: data.measurementInput.ean,
|
|
24
|
+
timestamp: helpers_1.DateTime.fromFormat(measurement[0], "dd.MM.yyyy hh:mm", { timeZone: "UTC" }).toDate(),
|
|
25
|
+
variable: data.option.Var,
|
|
26
|
+
type: data.option.Type,
|
|
27
|
+
value: Number(measurement[1]),
|
|
28
|
+
source: CommodityProviderTypeEnum_1.CommodityProviderType.PreInputOptions,
|
|
29
|
+
measurement_category: data.option.Name,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
return output;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
exports.PreMeasurementTransformation = PreMeasurementTransformation = __decorate([
|
|
37
|
+
(0, tsyringe_1.injectable)()
|
|
38
|
+
], PreMeasurementTransformation);
|
|
39
|
+
//# sourceMappingURL=PreMeasurementTransformation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreMeasurementTransformation.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.ts"],"names":[],"mappings":";;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAChE,oHAAsF;AAEtF,wDAAsD;AAI/C,IAAM,4BAA4B,0CAAlC,MAAM,4BAA6B,SAAQ,+CAGjD;IAHM;;QAII,SAAI,GAAG,8BAA8B,CAAC;QAEnC,sBAAiB,GAAG,CAC1B,IAA+E,EAC9D,EAAE;YACnB,MAAM,MAAM,GAAsB,EAAE,CAAC;YACrC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;gBAC5D,MAAM,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG;oBAChC,SAAS,EAAE,kBAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;oBACzB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;oBACtB,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC7B,MAAM,EAAE,iDAAqB,CAAC,eAAe;oBAC7C,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;iBACzC,CAAC,CAAC;aACN;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;uCAxBY,4BAA4B;IADxC,IAAA,qBAAU,GAAE;GACA,4BAA4B,CAwBxC"}
|
|
@@ -22,6 +22,7 @@ class CommodityWorker extends integration_engine_1.AbstractWorker {
|
|
|
22
22
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchPpasEEMeasurementsTask));
|
|
23
23
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchPreMeasurementDataTask));
|
|
24
24
|
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.FetchPtasWebScrapedMeasurementsTask));
|
|
25
|
+
this.registerTask(Di_1.CommodityContainer.resolve(WorkerContainerToken_1.WorkerContainerToken.ProcessPreEanMeasurementsTask));
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
28
|
exports.CommodityWorker = CommodityWorker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/workers/CommodityWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAuE;AAEvE,4CAA2C;AAC3C,kCAA+C;AAC/C,sEAAmE;AAEnE,MAAa,eAAgB,SAAQ,mCAAc;IAG/C;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,uBAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"CommodityWorker.js","sourceRoot":"","sources":["../../../../src/integration-engine/commodity-providers/workers/CommodityWorker.ts"],"names":[],"mappings":";;;AAAA,8EAAuE;AAEvE,4CAA2C;AAC3C,kCAA+C;AAC/C,sEAAmE;AAEnE,MAAa,eAAgB,SAAQ,mCAAc;IAG/C;QACI,KAAK,EAAE,CAAC;QAHF,SAAI,GAAG,uBAAW,CAAC;QAyBtB,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAvBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAE9G,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAEhH,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAEjH,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAEvG,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAErG,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAEvG,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAEvG,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAE/G,IAAI,CAAC,YAAY,CAAC,uBAAkB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC7G,CAAC;CAMJ;AA9BD,0CA8BC"}
|
package/dist/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPreEanMeasurement.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
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.PreEanMeasurementSchema = void 0;
|
|
13
|
+
const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
|
|
14
|
+
class PreEanMeasurementSchema {
|
|
15
|
+
}
|
|
16
|
+
exports.PreEanMeasurementSchema = PreEanMeasurementSchema;
|
|
17
|
+
__decorate([
|
|
18
|
+
(0, class_validator_1.IsArray)(),
|
|
19
|
+
__metadata("design:type", Array)
|
|
20
|
+
], PreEanMeasurementSchema.prototype, "T1_Wh_raw_data", void 0);
|
|
21
|
+
__decorate([
|
|
22
|
+
(0, class_validator_1.IsString)(),
|
|
23
|
+
__metadata("design:type", String)
|
|
24
|
+
], PreEanMeasurementSchema.prototype, "ean", void 0);
|
|
25
|
+
//# sourceMappingURL=PreEanMeasurementSchema.js.map
|
package/dist/integration-engine/commodity-providers/workers/schema/PreEanMeasurementSchema.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreEanMeasurementSchema.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/schema/PreEanMeasurementSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+EAA8E;AAE9E,MAAa,uBAAuB;CAMnC;AAND,0DAMC;AAJG;IADC,IAAA,yBAAO,GAAE;8BACO,KAAK;+DAAgC;AAGtD;IADC,IAAA,0BAAQ,GAAE;;oDACE"}
|
|
@@ -43,6 +43,7 @@ const optionLookupKeys = {
|
|
|
43
43
|
[CommodityProviderTypeEnum_1.CommodityProviderType.PpasAveMO]: "AveHlavni.mesto.Praha.64581ptions",
|
|
44
44
|
[CommodityProviderTypeEnum_1.CommodityProviderType.PreOptions]: "PreOptions",
|
|
45
45
|
[CommodityProviderTypeEnum_1.CommodityProviderType.PtasOptions]: "PtasOptions",
|
|
46
|
+
[CommodityProviderTypeEnum_1.CommodityProviderType.PreInputOptions]: "PreInputOptions",
|
|
46
47
|
};
|
|
47
48
|
let FetchMeasurementOptionsStaticDataTask = exports.FetchMeasurementOptionsStaticDataTask = class FetchMeasurementOptionsStaticDataTask extends AbstractEmptyTask_1.AbstractEmptyTask {
|
|
48
49
|
constructor(logger, staticDataSourceProvider, meterSettingsRepository, meterSettingsRepositoryCapitalDistrict) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchMeasurementOptionsStaticDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,+HAA8I;AAC9I,iIAAgJ;AAChJ,yEAAwF;AACxF,oGAAmH;AAEnH,uHAAsF;AACtF,yHAAwF;AACxF,wEAAqE;AAErE,uGAAoG;AACpG,6EAAwE;AACxE,iEAAwE;AAExE,MAAM,gBAAgB,GAAG;IACrB,CAAC,iDAAqB,CAAC,iBAAiB,CAAC,EAAE,iBAAiB;IAC5D,CAAC,iDAAqB,CAAC,mBAAmB,CAAC,EAAE,mBAAmB;IAChE,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,aAAa;IAC/C,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,aAAa;IAC/C,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,qBAAqB;IACvD,CAAC,iDAAqB,CAAC,QAAQ,CAAC,EAAE,yBAAyB;IAC3D,CAAC,iDAAqB,CAAC,SAAS,CAAC,EAAE,mCAAmC;IACtE,CAAC,iDAAqB,CAAC,UAAU,CAAC,EAAE,YAAY;IAChD,CAAC,iDAAqB,CAAC,WAAW,CAAC,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"FetchMeasurementOptionsStaticDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchPreMeasurementDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgE;AAChE,uHAAsI;AACtI,iGAAgH;
|
|
1
|
+
{"version":3,"file":"FetchPreMeasurementDataTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/FetchPreMeasurementDataTask.ts"],"names":[],"mappings":"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"}
|
package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PreMeasurementTransformation } from "../../transformations/PreMeasurementTransformation";
|
|
2
|
+
import { StaticMeterSettingsRepository } from "../../repositories/StaticMeterSettingsRepository";
|
|
3
|
+
import { MeasurementRepository } from "../../repositories/MeasurementRepository";
|
|
4
|
+
import { IPreEanMeasurement } from "../interfaces/IPreEanMeasurement";
|
|
5
|
+
import { PreEanMeasurementSchema } from "../schema/PreEanMeasurementSchema";
|
|
6
|
+
import { AbstractTask } from "@golemio/core/dist/integration-engine";
|
|
7
|
+
export declare class ProcessPreEanMeasurementsTask extends AbstractTask<IPreEanMeasurement> {
|
|
8
|
+
private meterSettingsRepository;
|
|
9
|
+
protected measurementRepository: MeasurementRepository;
|
|
10
|
+
protected transformation: PreMeasurementTransformation;
|
|
11
|
+
protected schema: typeof PreEanMeasurementSchema;
|
|
12
|
+
readonly queueName = "processPreEanMeasurements";
|
|
13
|
+
readonly queueTtl: number;
|
|
14
|
+
constructor(meterSettingsRepository: StaticMeterSettingsRepository, measurementRepository: MeasurementRepository, transformation: PreMeasurementTransformation);
|
|
15
|
+
protected execute(measurementInput: IPreEanMeasurement): Promise<void>;
|
|
16
|
+
}
|
package/dist/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.js
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.ProcessPreEanMeasurementsTask = void 0;
|
|
25
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
26
|
+
const WorkerContainerToken_1 = require("../../ioc/WorkerContainerToken");
|
|
27
|
+
const PreMeasurementTransformation_1 = require("../../transformations/PreMeasurementTransformation");
|
|
28
|
+
const StaticMeterSettingsRepository_1 = require("../../repositories/StaticMeterSettingsRepository");
|
|
29
|
+
const MeasurementRepository_1 = require("../../repositories/MeasurementRepository");
|
|
30
|
+
const PreEanMeasurementSchema_1 = require("../schema/PreEanMeasurementSchema");
|
|
31
|
+
const CommodityProviderTypeEnum_1 = require("../../../../schema-definitions/models/helpers/CommodityProviderTypeEnum");
|
|
32
|
+
const StaticDataResourceTypeEnum_1 = require("../../../../schema-definitions/models/helpers/StaticDataResourceTypeEnum");
|
|
33
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
34
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
35
|
+
const constants_1 = require("../../constants");
|
|
36
|
+
let ProcessPreEanMeasurementsTask = exports.ProcessPreEanMeasurementsTask = class ProcessPreEanMeasurementsTask extends integration_engine_1.AbstractTask {
|
|
37
|
+
constructor(meterSettingsRepository, measurementRepository, transformation) {
|
|
38
|
+
super(constants_1.WORKER_NAME);
|
|
39
|
+
this.meterSettingsRepository = meterSettingsRepository;
|
|
40
|
+
this.measurementRepository = measurementRepository;
|
|
41
|
+
this.transformation = transformation;
|
|
42
|
+
this.schema = PreEanMeasurementSchema_1.PreEanMeasurementSchema;
|
|
43
|
+
this.queueName = "processPreEanMeasurements";
|
|
44
|
+
this.queueTtl = 60 * 60 * 1000;
|
|
45
|
+
}
|
|
46
|
+
execute(measurementInput) {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
const measurementOptions = yield this.meterSettingsRepository.getData(CommodityProviderTypeEnum_1.CommodityProviderType.PreInputOptions, StaticDataResourceTypeEnum_1.StaticDataResourceType.MeasurementOptions);
|
|
49
|
+
if (!measurementOptions) {
|
|
50
|
+
throw new golemio_errors_1.GeneralError("Measurement options not found", this.constructor.name);
|
|
51
|
+
}
|
|
52
|
+
const option = measurementOptions.find((item) => item.Meter === measurementInput.ean);
|
|
53
|
+
if (!option) {
|
|
54
|
+
throw new golemio_errors_1.GeneralError("Measurement option not found for meter " + measurementInput.ean, this.constructor.name);
|
|
55
|
+
}
|
|
56
|
+
const measurements = this.transformation.transformElement({
|
|
57
|
+
option,
|
|
58
|
+
measurementInput,
|
|
59
|
+
});
|
|
60
|
+
yield this.measurementRepository.bulkSave(measurements);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
exports.ProcessPreEanMeasurementsTask = ProcessPreEanMeasurementsTask = __decorate([
|
|
65
|
+
(0, tsyringe_1.injectable)(),
|
|
66
|
+
__param(0, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.StaticMeterSettingsRepository)),
|
|
67
|
+
__param(1, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.MeasurementRepository)),
|
|
68
|
+
__param(2, (0, tsyringe_1.inject)(WorkerContainerToken_1.WorkerContainerToken.PreMeasurementTransformation)),
|
|
69
|
+
__metadata("design:paramtypes", [StaticMeterSettingsRepository_1.StaticMeterSettingsRepository,
|
|
70
|
+
MeasurementRepository_1.MeasurementRepository,
|
|
71
|
+
PreMeasurementTransformation_1.PreMeasurementTransformation])
|
|
72
|
+
], ProcessPreEanMeasurementsTask);
|
|
73
|
+
//# sourceMappingURL=ProcessPreEanMeasurementsTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProcessPreEanMeasurementsTask.js","sourceRoot":"","sources":["../../../../../src/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAwE;AACxE,yEAAwF;AAExF,qGAAoH;AACpH,oGAAmH;AACnH,oFAAmG;AAEnG,+EAAyG;AACzG,uHAAsF;AACtF,yHAAwF;AAExF,6EAAwE;AACxE,8EAAqE;AACrE,+CAAgE;AAGzD,IAAM,6BAA6B,2CAAnC,MAAM,6BAA8B,SAAQ,iCAAgC;IAK/E,YAEI,uBAA8D,EACV,qBAAsD,EAC/C,cAAsD;QAEjH,KAAK,CAAC,uBAAW,CAAC,CAAC;QAJX,4BAAuB,GAAvB,uBAAuB,CAA+B;QACA,0BAAqB,GAArB,qBAAqB,CAAuB;QACrC,mBAAc,GAAd,cAAc,CAA8B;QAR3G,WAAM,GAAG,iDAAuB,CAAC;QAC3B,cAAS,GAAG,2BAA2B,CAAC;QACxC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAS1C,CAAC;IAEe,OAAO,CAAC,gBAAoC;;YACxD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CACjE,iDAAqB,CAAC,eAAe,EACrC,mDAAsB,CAAC,kBAAkB,CAC5C,CAAC;YAEF,IAAI,CAAC,kBAAkB,EAAE;gBACrB,MAAM,IAAI,6BAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aAClF;YAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAwB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAE1G,IAAI,CAAC,MAAM,EAAE;gBACT,MAAM,IAAI,6BAAY,CAAC,yCAAyC,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aACnH;YAED,MAAM,YAAY,GAAsB,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;gBACzE,MAAM;gBACN,gBAAgB;aACnB,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC5D,CAAC;KAAA;CACJ,CAAA;wCArCY,6BAA6B;IADzC,IAAA,qBAAU,GAAE;IAOJ,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,6BAA6B,CAAC,CAAA;IAE1D,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,qBAAqB,CAAC,CAAA;IAClD,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,4BAA4B,CAAC,CAAA;qCAFzB,6DAA6B;QACuB,6CAAqB;QACrB,2DAA4B;GAT5G,6BAA6B,CAqCzC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.preJsonInputSchema = void 0;
|
|
4
|
+
exports.preJsonInputSchema = {
|
|
5
|
+
type: "object",
|
|
6
|
+
properties: {
|
|
7
|
+
stored_month: {
|
|
8
|
+
type: "object",
|
|
9
|
+
properties: {
|
|
10
|
+
companies: {
|
|
11
|
+
type: "object",
|
|
12
|
+
patternProperties: {
|
|
13
|
+
"^[0-9]+$": {
|
|
14
|
+
type: "object",
|
|
15
|
+
properties: {
|
|
16
|
+
EAN_list: {
|
|
17
|
+
type: "object",
|
|
18
|
+
patternProperties: {
|
|
19
|
+
"^[0-9]+$": {
|
|
20
|
+
type: "object",
|
|
21
|
+
properties: {
|
|
22
|
+
daily_data_Wh_per_EAN: {
|
|
23
|
+
type: "object",
|
|
24
|
+
additionalProperties: true,
|
|
25
|
+
required: ["T1_Wh_raw_data"],
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
additionalProperties: true,
|
|
29
|
+
required: ["daily_data_Wh_per_EAN"],
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
additionalProperties: true,
|
|
33
|
+
required: [],
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
additionalProperties: true,
|
|
37
|
+
required: ["EAN_list"],
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
additionalProperties: true,
|
|
41
|
+
required: [],
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
additionalProperties: true,
|
|
45
|
+
required: ["companies"],
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
additionalProperties: true,
|
|
49
|
+
required: ["stored_month"],
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=PreJsonInputSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreJsonInputSchema.js","sourceRoot":"","sources":["../../../src/schema-definitions/datasources/PreJsonInputSchema.ts"],"names":[],"mappings":";;;AAGa,QAAA,kBAAkB,GAAkC;IAC7D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,YAAY,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,SAAS,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,iBAAiB,EAAE;wBACf,UAAU,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACR,QAAQ,EAAE;oCACN,IAAI,EAAE,QAAQ;oCACd,iBAAiB,EAAE;wCACf,UAAU,EAAE;4CACR,IAAI,EAAE,QAAQ;4CACd,UAAU,EAAE;gDACR,qBAAqB,EAAE;oDACnB,IAAI,EAAE,QAAQ;oDACd,oBAAoB,EAAE,IAAI;oDAC1B,QAAQ,EAAE,CAAC,gBAAgB,CAAC;iDAC/B;6CACJ;4CACD,oBAAoB,EAAE,IAAI;4CAC1B,QAAQ,EAAE,CAAC,uBAAuB,CAAC;yCACtC;qCACJ;oCACD,oBAAoB,EAAE,IAAI;oCAC1B,QAAQ,EAAE,EAAE;iCACf;6BACJ;4BACD,oBAAoB,EAAE,IAAI;4BAC1B,QAAQ,EAAE,CAAC,UAAU,CAAC;yBACzB;qBACJ;oBACD,oBAAoB,EAAE,IAAI;oBAC1B,QAAQ,EAAE,EAAE;iBACf;aACJ;YACD,oBAAoB,EAAE,IAAI;YAC1B,QAAQ,EAAE,CAAC,WAAW,CAAC;SAC1B;KACJ;IACD,oBAAoB,EAAE,IAAI;IAC1B,QAAQ,EAAE,CAAC,cAAc,CAAC;CAC7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPreJsonInput.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/interfaces/IPreJsonInput.ts"],"names":[],"mappings":""}
|
|
@@ -12,5 +12,6 @@ var CommodityProviderType;
|
|
|
12
12
|
CommodityProviderType["PpasAveMO"] = "ppas_ave_api_mo";
|
|
13
13
|
CommodityProviderType["PreOptions"] = "pre_electro_ftp";
|
|
14
14
|
CommodityProviderType["PtasOptions"] = "ptas_hot_water";
|
|
15
|
+
CommodityProviderType["PreInputOptions"] = "pre_electro_input";
|
|
15
16
|
})(CommodityProviderType || (exports.CommodityProviderType = CommodityProviderType = {}));
|
|
16
17
|
//# sourceMappingURL=CommodityProviderTypeEnum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommodityProviderTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/CommodityProviderTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"CommodityProviderTypeEnum.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/helpers/CommodityProviderTypeEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC7B,mEAA0C,CAAA;IAC1C,uEAA8C,CAAA;IAC9C,oDAA2B,CAAA;IAC3B,oDAA2B,CAAA;IAC3B,oDAA2B,CAAA;IAC3B,oDAA2B,CAAA;IAC3B,sDAA6B,CAAA;IAC7B,uDAA8B,CAAA;IAC9B,uDAA8B,CAAA;IAC9B,8DAAqC,CAAA;AACzC,CAAC,EAXW,qBAAqB,qCAArB,qBAAqB,QAWhC"}
|
package/docs/asyncapi.yaml
CHANGED
|
@@ -125,6 +125,17 @@ channels:
|
|
|
125
125
|
messages:
|
|
126
126
|
targetDays:
|
|
127
127
|
$ref: "#/components/messages/energetics.fetchConsumptionMessage"
|
|
128
|
+
energetics.processPreEanMeasurementsTask:
|
|
129
|
+
address: dataplatform.energeticscommodity.processPreEanMeasurementsTask
|
|
130
|
+
description: process incoming measurements from PRE
|
|
131
|
+
bindings:
|
|
132
|
+
amqp:
|
|
133
|
+
is: queue
|
|
134
|
+
queue:
|
|
135
|
+
durable: true
|
|
136
|
+
messages:
|
|
137
|
+
preEanMeasurementMessage:
|
|
138
|
+
$ref: "#/components/messages/energetics.preEanMeasurementMessage"
|
|
128
139
|
energetics.savePtasMeasurements:
|
|
129
140
|
address: dataplatform.energeticscommodity.savePtasMeasurements
|
|
130
141
|
description: downloads measurements data from Pražská Teplárenská
|
|
@@ -200,6 +211,10 @@ operations:
|
|
|
200
211
|
action: "send"
|
|
201
212
|
channel:
|
|
202
213
|
$ref: "#/channels/energetics.fetchVeoliaMeasurements"
|
|
214
|
+
energetics.preEanMeasurementMessage:
|
|
215
|
+
action: "send"
|
|
216
|
+
channel:
|
|
217
|
+
$ref: "#/channels/energetics.processPreEanMeasurementsTask"
|
|
203
218
|
components:
|
|
204
219
|
messages:
|
|
205
220
|
emptyMessage:
|
|
@@ -234,6 +249,11 @@ components:
|
|
|
234
249
|
type: object
|
|
235
250
|
$ref: "#/components/schemas/energetics.IVeoliaMeasurementsMessages"
|
|
236
251
|
additionalProperties: false
|
|
252
|
+
energetics.preEanMeasurementMessage:
|
|
253
|
+
payload:
|
|
254
|
+
type: object
|
|
255
|
+
$ref: "#/components/schemas/energetics.preEanMeasurementMessage"
|
|
256
|
+
additionalProperties: false
|
|
237
257
|
schemas:
|
|
238
258
|
energetics.IFetchConsumptionInput:
|
|
239
259
|
type: object
|
|
@@ -314,7 +334,7 @@ components:
|
|
|
314
334
|
type: string
|
|
315
335
|
energetics.IVeoliaMeasurementsMessages:
|
|
316
336
|
type: object
|
|
317
|
-
properties:
|
|
337
|
+
properties:
|
|
318
338
|
dateFrom:
|
|
319
339
|
type: string
|
|
320
340
|
format: date
|
|
@@ -328,4 +348,14 @@ components:
|
|
|
328
348
|
description: The type of provider from which the measurements are to be fetched
|
|
329
349
|
enum:
|
|
330
350
|
- "cem_api_veolia_water"
|
|
331
|
-
- "cem_api_veolia_electro"
|
|
351
|
+
- "cem_api_veolia_electro"
|
|
352
|
+
energetics.preEanMeasurementMessage:
|
|
353
|
+
type: object
|
|
354
|
+
properties:
|
|
355
|
+
ean:
|
|
356
|
+
type: string
|
|
357
|
+
description: EAN code of measuring device
|
|
358
|
+
T1_Wh_raw_data:
|
|
359
|
+
type: array
|
|
360
|
+
description: Array of timestamps and values of measurements
|
|
361
|
+
|
|
@@ -13,6 +13,13 @@ Modul slouží k ukládání dat o spotřebě energií v budovách a jednotlivý
|
|
|
13
13
|
|
|
14
14
|
- POST (/ptas/{id}) s id odběrného místa jako parametrem => RabbitMQ send Message `savePtasMeasurements` ([Data example](../test/input-gateway/data/ptas-hot-water-data-input.csv))
|
|
15
15
|
|
|
16
|
+
#### _POST /pre_
|
|
17
|
+
|
|
18
|
+
- PRE posílá data na Input Gateway v JSON formátu (POST na /pre).
|
|
19
|
+
- Očekávaný [formát dat](../src/schema-definitions/datasources/interfaces/IPreJsonInput.ts)
|
|
20
|
+
- Na IG chodí větší soubory (např. 20M). Proto se na IG rozdělí podle měřidel a vyříznou se jen data, co zpracováváme.
|
|
21
|
+
Dál to postupuje na IE přes rabbit do [ProcessPreEanMeasurementsTask](../src/integration-engine/commodity-providers/workers/tasks/ProcessPreEanMeasurementsTask.ts).
|
|
22
|
+
|
|
16
23
|
### Data aktivně stahujeme
|
|
17
24
|
|
|
18
25
|
**Dostupní poskytovatelé**:
|
|
@@ -246,6 +253,23 @@ Metoda sbírá data o spotřebách od poskytovatele komodit - PRE (Pražská ene
|
|
|
246
253
|
- [StaticMeterSettingsModel](../src/schema-definitions/models/StaticMeterSettingsModel.ts) tabulka `commodity_static_meter_settings`
|
|
247
254
|
- [MeasurementModel](../src/schema-definitions/models/MeasurementsModel.ts) tabulka `consumption_energy_measurements`
|
|
248
255
|
|
|
256
|
+
#### _task: ProcessPreEanMeasurementsTask_
|
|
257
|
+
|
|
258
|
+
Přijímá data o spotřebách od PRE z IG (viz. nahoře)
|
|
259
|
+
|
|
260
|
+
- vstupní rabbitmq fronta
|
|
261
|
+
- název: dataplatform.energeticscommodity.processPreEanMeasurements
|
|
262
|
+
- TTL: 1 hodina
|
|
263
|
+
- parametry: [IPreEanMeasurement](../src/integration-engine/commodity-providers/workers/interfaces/IPreEanMeasurement.ts)
|
|
264
|
+
- validuje se na IG
|
|
265
|
+
- závislé fronty nejsou
|
|
266
|
+
- datový zdroj je PRE IG endpoint (viz. nahoře)
|
|
267
|
+
- transformace
|
|
268
|
+
- [PreMeasurementTransformation](../src/integration-engine/commodity-providers/transformations/PreMeasurementTransformation.ts)
|
|
269
|
+
- data modely
|
|
270
|
+
- odsud si bere statická data: [StaticMeterSettingsModel](../src/schema-definitions/models/StaticMeterSettingsModel.ts) tabulka `commodity_static_meter_settings`
|
|
271
|
+
- sem ukládá: [MeasurementModel](../src/schema-definitions/models/MeasurementsModel.ts) tabulka `consumption_energy_measurements`
|
|
272
|
+
|
|
249
273
|
#### _task: FetchPtasWebScrapedMeasurementsTask_
|
|
250
274
|
|
|
251
275
|
Pomocí tohoto tasku zpracováváme a ukládáme data z input gateway z fronty savePtasMeasurements. Podle původního scraperu z C# bereme pouze teplo horké vody.
|
package/docs/openapi-input.yaml
CHANGED
|
@@ -51,6 +51,56 @@ paths:
|
|
|
51
51
|
description: Not found
|
|
52
52
|
422:
|
|
53
53
|
description: Error while validating input data
|
|
54
|
+
/pre:
|
|
55
|
+
post:
|
|
56
|
+
description: Input for PRE json data
|
|
57
|
+
tags:
|
|
58
|
+
- ⚡ Energetics
|
|
59
|
+
requestBody:
|
|
60
|
+
content:
|
|
61
|
+
application/json:
|
|
62
|
+
schema:
|
|
63
|
+
$ref: "#/components/schemas/PreMeasurement"
|
|
64
|
+
examples:
|
|
65
|
+
application/json:
|
|
66
|
+
summary: Example input
|
|
67
|
+
value:
|
|
68
|
+
"{
|
|
69
|
+
\"project_name\": \"REPORT_PRAHA_OICT\",
|
|
70
|
+
\"stored_month\": {
|
|
71
|
+
\"year\": 2024,
|
|
72
|
+
\"month\": 11,
|
|
73
|
+
\"companies\": {
|
|
74
|
+
\"70872503\": {
|
|
75
|
+
\"EAN_list\": {
|
|
76
|
+
\"859182400306074267\": {
|
|
77
|
+
\"daily_data_Wh_per_EAN\": {
|
|
78
|
+
\"T1_Wh_raw_data\": [
|
|
79
|
+
[
|
|
80
|
+
[
|
|
81
|
+
\"30.11.2024 00:15\",
|
|
82
|
+
10
|
|
83
|
+
],
|
|
84
|
+
[
|
|
85
|
+
\"30.11.2024 00:30\",
|
|
86
|
+
12
|
|
87
|
+
]
|
|
88
|
+
]
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}"
|
|
97
|
+
responses:
|
|
98
|
+
204:
|
|
99
|
+
description: OK
|
|
100
|
+
401:
|
|
101
|
+
$ref: "#/components/responses/UnauthorizedError"
|
|
102
|
+
422:
|
|
103
|
+
description: Error while validating input data
|
|
54
104
|
|
|
55
105
|
components:
|
|
56
106
|
responses:
|
|
@@ -95,3 +145,13 @@ components:
|
|
|
95
145
|
type: string
|
|
96
146
|
Status odečtu:
|
|
97
147
|
type: string
|
|
148
|
+
PreMeasurement:
|
|
149
|
+
type: object
|
|
150
|
+
properties:
|
|
151
|
+
stored_month:
|
|
152
|
+
type: object
|
|
153
|
+
properties:
|
|
154
|
+
companies:
|
|
155
|
+
type: object
|
|
156
|
+
|
|
157
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/energetics",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.9-dev.1622712529",
|
|
4
4
|
"description": "Golemio Energetics Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -46,6 +46,8 @@
|
|
|
46
46
|
"@types/papaparse": "^5.3.14",
|
|
47
47
|
"@types/sinon": "^9.0.10",
|
|
48
48
|
"@types/supertest": "^6.0.2",
|
|
49
|
+
"body-parser": "^1.20.3",
|
|
50
|
+
"body-parser-xml": "^2.0.5",
|
|
49
51
|
"chai": "4.2.0",
|
|
50
52
|
"chai-as-promised": "7.1.1",
|
|
51
53
|
"cross-env": "^7.0.3",
|
|
@@ -69,7 +71,7 @@
|
|
|
69
71
|
"typescript-transform-paths": "^3.4.6"
|
|
70
72
|
},
|
|
71
73
|
"peerDependencies": {
|
|
72
|
-
"@golemio/core": "
|
|
74
|
+
"@golemio/core": "1.12.3-dev.1387916806"
|
|
73
75
|
},
|
|
74
76
|
"dependencies": {
|
|
75
77
|
"basic-ftp": "^5.0.2",
|