@golemio/energetics 1.3.8-dev.1352571662 → 1.3.8
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/00_clear_test_data.sql +0 -1
- package/db/example/04_measurements.sql +26 -26
- package/dist/integration-engine/commodity-providers/ioc/Di.js +4 -14
- package/dist/integration-engine/commodity-providers/ioc/Di.js.map +1 -1
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.d.ts +0 -6
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js +0 -6
- package/dist/integration-engine/commodity-providers/ioc/WorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.d.ts +1 -0
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js +4 -1
- package/dist/integration-engine/commodity-providers/transformations/AveMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.d.ts +1 -1
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js +6 -6
- package/dist/integration-engine/commodity-providers/transformations/CemMeasurementTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js +1 -1
- package/dist/integration-engine/commodity-providers/transformations/PreElectroTransformation.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js +0 -2
- package/dist/integration-engine/commodity-providers/workers/CommodityWorker.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/interfaces/IPpasMeasurementsParams.d.ts +1 -1
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.d.ts +1 -1
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.js +1 -7
- package/dist/integration-engine/commodity-providers/workers/schema/PpasMeasurementsSchema.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.d.ts +1 -3
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js +3 -12
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementOptionsStaticDataTask.js.map +1 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.d.ts +13 -22
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasMeasurementsTask.js.map +1 -1
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/workers/oict-energetika/OictEnergetikaWorker.js +0 -2
- package/dist/integration-engine/workers/oict-energetika/OictEnergetikaWorker.js.map +1 -1
- package/dist/output-gateway/controllers/v2/BuildingsController.d.ts +3 -6
- package/dist/output-gateway/controllers/v2/BuildingsController.js +13 -26
- package/dist/output-gateway/controllers/v2/BuildingsController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2DevicesController.d.ts +3 -5
- package/dist/output-gateway/controllers/v2/V2DevicesController.js +8 -15
- package/dist/output-gateway/controllers/v2/V2DevicesController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2MeasurementsController.d.ts +3 -5
- package/dist/output-gateway/controllers/v2/V2MeasurementsController.js +8 -15
- package/dist/output-gateway/controllers/v2/V2MeasurementsController.js.map +1 -1
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.d.ts +4 -6
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js +10 -17
- package/dist/output-gateway/controllers/v2/V2OrganizationsController.js.map +1 -1
- package/dist/output-gateway/ioc/Di.js +1 -9
- package/dist/output-gateway/ioc/Di.js.map +1 -1
- package/dist/output-gateway/ioc/ModuleContainerToken.d.ts +0 -2
- package/dist/output-gateway/ioc/ModuleContainerToken.js +0 -2
- package/dist/output-gateway/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/output-gateway/models/BuildingsPrimaryModel.js.map +1 -0
- package/dist/output-gateway/models/interfaces/IPrimaryBuildings.js.map +1 -0
- package/dist/output-gateway/repositories/DevicesRepository.d.ts +3 -4
- package/dist/output-gateway/repositories/DevicesRepository.js +5 -19
- package/dist/output-gateway/repositories/DevicesRepository.js.map +1 -1
- package/dist/output-gateway/repositories/MeasurementRepository.d.ts +2 -3
- package/dist/output-gateway/repositories/MeasurementRepository.js +20 -29
- package/dist/output-gateway/repositories/MeasurementRepository.js.map +1 -1
- package/dist/output-gateway/repositories/OrganizationsRepository.d.ts +3 -3
- package/dist/output-gateway/repositories/OrganizationsRepository.js +4 -7
- package/dist/output-gateway/repositories/OrganizationsRepository.js.map +1 -1
- package/dist/output-gateway/repositories/PrimaryBuildingsRepository.d.ts +4 -5
- package/dist/output-gateway/repositories/PrimaryBuildingsRepository.js +5 -20
- package/dist/output-gateway/repositories/PrimaryBuildingsRepository.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2BuildingsRouter.js +2 -2
- package/dist/output-gateway/routers/v2/V2BuildingsRouter.js.map +1 -1
- package/dist/output-gateway/transformations/BuildingTransformationFull.d.ts +1 -1
- package/dist/output-gateway/transformations/BuildingsTransformation.d.ts +1 -1
- package/dist/schema-definitions/models/MeasurementsModel.js +1 -0
- package/dist/schema-definitions/models/MeasurementsModel.js.map +1 -1
- package/dist/schema-definitions/models/constants/MeasurementConstants.js +0 -2
- package/dist/schema-definitions/models/constants/MeasurementConstants.js.map +1 -1
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.d.ts +0 -3
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js +0 -3
- package/dist/schema-definitions/models/helpers/CommodityProviderTypeEnum.js.map +1 -1
- package/docs/implementation_documentation.md +1 -24
- package/docs/openapi-output.yaml +0 -2
- package/package.json +3 -3
- package/db/example/05_access.sql +0 -5
- package/db/migrations/postgresql/20240621083051-access-limitation.js +0 -53
- package/db/migrations/postgresql/20240625134438-fix-pk-measurements.js +0 -53
- package/db/migrations/postgresql/sqls/20240621083051-access-limitation-down.sql +0 -1
- package/db/migrations/postgresql/sqls/20240621083051-access-limitation-up.sql +0 -7
- package/db/migrations/postgresql/sqls/20240625134438-fix-pk-measurements-down.sql +0 -2
- package/db/migrations/postgresql/sqls/20240625134438-fix-pk-measurements-up.sql +0 -2
- package/dist/integration-engine/commodity-providers/datasources/static-data/AccessConfigurationDataSource.d.ts +0 -9
- package/dist/integration-engine/commodity-providers/datasources/static-data/AccessConfigurationDataSource.js +0 -45
- package/dist/integration-engine/commodity-providers/datasources/static-data/AccessConfigurationDataSource.js.map +0 -1
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceCapitalDs.d.ts +0 -11
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceCapitalDs.js +0 -50
- package/dist/integration-engine/commodity-providers/datasources/static-data/StaticMeterSettingsDataSourceCapitalDs.js.map +0 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromEEProvidersTask.d.ts +0 -11
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromEEProvidersTask.js +0 -74
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchMeasurementsFromEEProvidersTask.js.map +0 -1
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.d.ts +0 -16
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js +0 -112
- package/dist/integration-engine/commodity-providers/workers/tasks/FetchPpasEEMeasurementsTask.js.map +0 -1
- package/dist/integration-engine/repositories/oict-energetika/AccessLimitationRepository.d.ts +0 -9
- package/dist/integration-engine/repositories/oict-energetika/AccessLimitationRepository.js +0 -78
- package/dist/integration-engine/repositories/oict-energetika/AccessLimitationRepository.js.map +0 -1
- package/dist/integration-engine/tasks/oict-energetika/FetchAccessConfigurationTask.d.ts +0 -9
- package/dist/integration-engine/tasks/oict-energetika/FetchAccessConfigurationTask.js +0 -32
- package/dist/integration-engine/tasks/oict-energetika/FetchAccessConfigurationTask.js.map +0 -1
- package/dist/output-gateway/controllers/v2/AbstractController.d.ts +0 -8
- package/dist/output-gateway/controllers/v2/AbstractController.js +0 -28
- package/dist/output-gateway/controllers/v2/AbstractController.js.map +0 -1
- package/dist/output-gateway/repositories/AccessLimitationRepository.d.ts +0 -11
- package/dist/output-gateway/repositories/AccessLimitationRepository.js +0 -43
- package/dist/output-gateway/repositories/AccessLimitationRepository.js.map +0 -1
- package/dist/schema-definitions/datasources/AccessConfigurationJsonSchema.d.ts +0 -3
- package/dist/schema-definitions/datasources/AccessConfigurationJsonSchema.js +0 -18
- package/dist/schema-definitions/datasources/AccessConfigurationJsonSchema.js.map +0 -1
- package/dist/schema-definitions/models/AccessLimitationModel.d.ts +0 -10
- package/dist/schema-definitions/models/AccessLimitationModel.js +0 -32
- package/dist/schema-definitions/models/AccessLimitationModel.js.map +0 -1
- package/dist/schema-definitions/models/BuildingsPrimaryModel.js.map +0 -1
- package/dist/schema-definitions/models/interfaces/IAccessLimitation.d.ts +0 -4
- package/dist/schema-definitions/models/interfaces/IAccessLimitation.js +0 -3
- package/dist/schema-definitions/models/interfaces/IAccessLimitation.js.map +0 -1
- package/dist/schema-definitions/models/interfaces/IPrimaryBuildings.js.map +0 -1
- /package/dist/{schema-definitions → output-gateway}/models/BuildingsPrimaryModel.d.ts +0 -0
- /package/dist/{schema-definitions → output-gateway}/models/BuildingsPrimaryModel.js +0 -0
- /package/dist/{schema-definitions → output-gateway}/models/interfaces/IPrimaryBuildings.d.ts +0 -0
- /package/dist/{schema-definitions → output-gateway}/models/interfaces/IPrimaryBuildings.js +0 -0
|
@@ -17,43 +17,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
17
17
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
21
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
22
|
+
};
|
|
20
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
24
|
exports.MeasurementRepository = void 0;
|
|
22
25
|
const _sch_1 = require("../../schema-definitions");
|
|
23
26
|
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
24
|
-
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
27
|
+
const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
|
|
25
28
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
26
29
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
27
30
|
const MeasurementsModel_1 = require("../../schema-definitions/models/MeasurementsModel");
|
|
28
|
-
const constants_1 = require("../../schema-definitions/constants");
|
|
29
31
|
let MeasurementRepository = exports.MeasurementRepository = class MeasurementRepository extends output_gateway_1.SequelizeModel {
|
|
30
32
|
constructor() {
|
|
31
33
|
super("MeasurementsRepository", MeasurementsModel_1.MeasurementModel.tableName, MeasurementsModel_1.MeasurementModel.attributeModel, {
|
|
32
34
|
schema: _sch_1.EnergeticsSchema.pgSchema,
|
|
33
35
|
});
|
|
34
|
-
this.getWhereAccessLimitation = (allowedOrganizations) => {
|
|
35
|
-
return {
|
|
36
|
-
[sequelize_1.Op.in]: (0, sequelize_1.literal)(`(select distinct d.addr from ${constants_1.PG_SCHEMA}.organizations_buildings b
|
|
37
|
-
inner join ${constants_1.PG_SCHEMA}.consumption_energy_devices d on b.building_id = d.building_id
|
|
38
|
-
where b.organization_id = any('{${allowedOrganizations.join(",")}}'::integer[]))`),
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
36
|
}
|
|
42
|
-
getMeasurements(options
|
|
37
|
+
getMeasurements(options) {
|
|
43
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
39
|
try {
|
|
45
40
|
const where = {
|
|
46
|
-
[sequelize_1.Op.and]: [
|
|
47
|
-
...(options.variable ? [{ var: { [sequelize_1.Op.eq]: options.variable } }] : []),
|
|
48
|
-
...(options.type ? [{ type: { [sequelize_1.Op.eq]: options.type } }] : []),
|
|
49
|
-
...(options.addr1 && options.addr2
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
: {
|
|
55
|
-
addr: this.getWhereAccessLimitation(allowedOrganizations),
|
|
56
|
-
},
|
|
41
|
+
[sequelize_1.default.Op.and]: [
|
|
42
|
+
...(options.variable ? [{ var: { [sequelize_1.default.Op.eq]: options.variable } }] : []),
|
|
43
|
+
...(options.type ? [{ type: { [sequelize_1.default.Op.eq]: options.type } }] : []),
|
|
44
|
+
...(options.addr1 && options.addr2
|
|
45
|
+
? [{ addr: { [sequelize_1.default.Op.like]: sequelize_1.default.literal(`'/${options.addr1}/${options.addr2}/%'`) } }]
|
|
46
|
+
: []),
|
|
47
|
+
...(options.dateFrom ? [{ timestamp: { [sequelize_1.default.Op.gte]: options.dateFrom } }] : []),
|
|
48
|
+
...(options.dateTo ? [{ timestamp: { [sequelize_1.default.Op.lte]: options.dateTo } }] : []),
|
|
57
49
|
],
|
|
58
50
|
};
|
|
59
51
|
return yield this.sequelizeModel.findAll({
|
|
@@ -69,19 +61,18 @@ let MeasurementRepository = exports.MeasurementRepository = class MeasurementRep
|
|
|
69
61
|
}
|
|
70
62
|
});
|
|
71
63
|
}
|
|
72
|
-
getMonthlyReadings(options
|
|
64
|
+
getMonthlyReadings(options) {
|
|
73
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
74
66
|
try {
|
|
75
67
|
const where = {
|
|
76
|
-
[sequelize_1.Op.and]:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
],
|
|
68
|
+
[sequelize_1.default.Op.and]: {
|
|
69
|
+
var: { [sequelize_1.default.Op.eq]: options.variable },
|
|
70
|
+
addr: { [sequelize_1.default.Op.eq]: options.address },
|
|
71
|
+
timestamp: { [sequelize_1.default.Op.between]: [options.from, options.to] },
|
|
72
|
+
},
|
|
82
73
|
};
|
|
83
74
|
return yield this.sequelizeModel.findAll({
|
|
84
|
-
attributes: [[
|
|
75
|
+
attributes: [[sequelize_1.default.fn("SUM", sequelize_1.default.col("value")), "value"], "meter", "type", "addr", "var"],
|
|
85
76
|
where,
|
|
86
77
|
raw: true,
|
|
87
78
|
group: ["meter", "type", "addr", "var"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeasurementRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/MeasurementRepository.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MeasurementRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/MeasurementRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export declare class OrganizationsRepository extends SequelizeModel {
|
|
|
11
11
|
private buildingsRepository;
|
|
12
12
|
constructor(userRepository: OrganizationResponsibleUsersRepository, organizationBuildingsRepository: OrganizationBuildingsRepository, buildingsRepository: PrimaryBuildingsRepository);
|
|
13
13
|
associate(): void;
|
|
14
|
-
GetAllPublic(params: IPaginationParams
|
|
15
|
-
GetAll(params: IPaginationParams
|
|
16
|
-
GetOne(id: string
|
|
14
|
+
GetAllPublic(params: IPaginationParams): Promise<IOrganizationDto[]>;
|
|
15
|
+
GetAll(params: IPaginationParams): Promise<IOrganizationDetailDto[]>;
|
|
16
|
+
GetOne(id: string): Promise<IOrganizationDetailDto | null>;
|
|
17
17
|
}
|
|
@@ -32,7 +32,6 @@ const OrganizationResponsibleUsersRepository_1 = require("./OrganizationResponsi
|
|
|
32
32
|
const PrimaryBuildingsRepository_1 = require("./PrimaryBuildingsRepository");
|
|
33
33
|
const OrganizationsAssociations_1 = require("./helpers/OrganizationsAssociations");
|
|
34
34
|
const OrganizationBuildingsRepository_1 = require("./OrganizationBuildingsRepository");
|
|
35
|
-
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
36
35
|
let OrganizationsRepository = exports.OrganizationsRepository = class OrganizationsRepository extends output_gateway_1.SequelizeModel {
|
|
37
36
|
constructor(userRepository, organizationBuildingsRepository, buildingsRepository) {
|
|
38
37
|
super("OrganizationsRepository", OrganizationsModel_1.OrganizationsModel.TABLE_NAME, OrganizationsModel_1.OrganizationsModel.attributeModel, {
|
|
@@ -47,12 +46,11 @@ let OrganizationsRepository = exports.OrganizationsRepository = class Organizati
|
|
|
47
46
|
OrganizationsAssociations_1.OrganizationsAssociations.associateResponsibleUsers(this.sequelizeModel, this.userRepository.sequelizeModel);
|
|
48
47
|
OrganizationsAssociations_1.OrganizationsAssociations.associateBuildings(this.sequelizeModel, this.buildingsRepository.sequelizeModel, this.organizationBuildingsRepository.sequelizeModel);
|
|
49
48
|
}
|
|
50
|
-
GetAllPublic(params
|
|
49
|
+
GetAllPublic(params) {
|
|
51
50
|
return __awaiter(this, void 0, void 0, function* () {
|
|
52
51
|
try {
|
|
53
52
|
return yield this.sequelizeModel.findAll({
|
|
54
53
|
attributes: ["id", "name"],
|
|
55
|
-
where: allowedOrganizations === null ? {} : { id: { [sequelize_1.Op.in]: allowedOrganizations } },
|
|
56
54
|
order: [["id", "ASC"]],
|
|
57
55
|
limit: params.limit,
|
|
58
56
|
offset: params.offset,
|
|
@@ -63,7 +61,7 @@ let OrganizationsRepository = exports.OrganizationsRepository = class Organizati
|
|
|
63
61
|
}
|
|
64
62
|
});
|
|
65
63
|
}
|
|
66
|
-
GetAll(params
|
|
64
|
+
GetAll(params) {
|
|
67
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
68
66
|
try {
|
|
69
67
|
return yield this.sequelizeModel.findAll({
|
|
@@ -80,7 +78,6 @@ let OrganizationsRepository = exports.OrganizationsRepository = class Organizati
|
|
|
80
78
|
through: { attributes: [] },
|
|
81
79
|
},
|
|
82
80
|
],
|
|
83
|
-
where: allowedOrganizations === null ? {} : { id: { [sequelize_1.Op.in]: allowedOrganizations } },
|
|
84
81
|
order: [
|
|
85
82
|
["id", "ASC"],
|
|
86
83
|
[{ model: this.userRepository.sequelizeModel, as: "responsible_user" }, "id", "ASC"],
|
|
@@ -95,7 +92,7 @@ let OrganizationsRepository = exports.OrganizationsRepository = class Organizati
|
|
|
95
92
|
}
|
|
96
93
|
});
|
|
97
94
|
}
|
|
98
|
-
GetOne(id
|
|
95
|
+
GetOne(id) {
|
|
99
96
|
return __awaiter(this, void 0, void 0, function* () {
|
|
100
97
|
try {
|
|
101
98
|
return yield this.sequelizeModel.findOne({
|
|
@@ -111,7 +108,7 @@ let OrganizationsRepository = exports.OrganizationsRepository = class Organizati
|
|
|
111
108
|
through: { attributes: [] },
|
|
112
109
|
},
|
|
113
110
|
],
|
|
114
|
-
where: {
|
|
111
|
+
where: { id },
|
|
115
112
|
order: [
|
|
116
113
|
[{ model: this.userRepository.sequelizeModel, as: "responsible_user" }, "id", "ASC"],
|
|
117
114
|
[{ model: this.buildingsRepository.sequelizeModel, as: "buildings" }, "id", "ASC"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationsRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/OrganizationsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,sEAAoE;AACpE,mDAAwC;AACxC,sEAAmE;AACnE,6EAAwE;AACxE,iEAAwE;AACxE,2FAAoE;AAEpE,qGAAiH;AAGjH,6EAAyF;AACzF,mFAA+F;AAC/F,uFAAmG;
|
|
1
|
+
{"version":3,"file":"OrganizationsRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/OrganizationsRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
+
import { IBuildingsPrimary } from "../models/interfaces/IPrimaryBuildings";
|
|
1
2
|
import { ISecondaryBuildingsOutput } from "../models/interfaces/ISecondaryBuildingsOutput";
|
|
2
|
-
import { IBuildingsPrimary } from "../../schema-definitions/models/interfaces/IPrimaryBuildings";
|
|
3
3
|
import { SequelizeModel } from "@golemio/core/dist/output-gateway";
|
|
4
4
|
export declare class PrimaryBuildingsRepository extends SequelizeModel {
|
|
5
5
|
private secondaryBuildingRepository;
|
|
6
6
|
constructor();
|
|
7
7
|
associate: () => void;
|
|
8
|
-
GetAll(
|
|
9
|
-
GetAllFull(
|
|
8
|
+
GetAll(): Promise<IBuildingsPrimary[]>;
|
|
9
|
+
GetAllFull(): Promise<Array<IBuildingsPrimary & {
|
|
10
10
|
secondary: ISecondaryBuildingsOutput;
|
|
11
11
|
}>>;
|
|
12
|
-
GetOne(id: number
|
|
12
|
+
GetOne(id: number): Promise<(IBuildingsPrimary & {
|
|
13
13
|
secondary: ISecondaryBuildingsOutput;
|
|
14
14
|
}) | null>;
|
|
15
|
-
private getWhereAccessLimitation;
|
|
16
15
|
}
|
|
@@ -19,13 +19,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
19
19
|
};
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
21
|
exports.PrimaryBuildingsRepository = void 0;
|
|
22
|
-
const BuildingsPrimaryModel_1 = require("
|
|
22
|
+
const BuildingsPrimaryModel_1 = require("../models/BuildingsPrimaryModel");
|
|
23
23
|
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
24
24
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
25
25
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
26
26
|
const SecondaryBuildingsRepository_1 = require("./SecondaryBuildingsRepository");
|
|
27
|
-
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
28
|
-
const constants_1 = require("../../schema-definitions/constants");
|
|
29
27
|
let PrimaryBuildingsRepository = exports.PrimaryBuildingsRepository = class PrimaryBuildingsRepository extends output_gateway_1.SequelizeModel {
|
|
30
28
|
constructor() {
|
|
31
29
|
super(BuildingsPrimaryModel_1.BuildingsPrimaryModel.modelName, BuildingsPrimaryModel_1.BuildingsPrimaryModel.tableName, BuildingsPrimaryModel_1.BuildingsPrimaryModel.attributeModel, {
|
|
@@ -38,20 +36,13 @@ let PrimaryBuildingsRepository = exports.PrimaryBuildingsRepository = class Prim
|
|
|
38
36
|
sourceKey: "id",
|
|
39
37
|
});
|
|
40
38
|
};
|
|
41
|
-
this.getWhereAccessLimitation = (allowedOrganizations) => {
|
|
42
|
-
return {
|
|
43
|
-
[sequelize_1.Op.in]: (0, sequelize_1.literal)(`(select distinct building_id from ${constants_1.PG_SCHEMA}.organizations_buildings
|
|
44
|
-
where organization_id = any('{${allowedOrganizations.join(",")}}'::integer[]))`),
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
39
|
this.secondaryBuildingRepository = new SecondaryBuildingsRepository_1.SecondaryBuildingsRepository();
|
|
48
40
|
this.associate();
|
|
49
41
|
}
|
|
50
|
-
GetAll(
|
|
42
|
+
GetAll() {
|
|
51
43
|
return __awaiter(this, void 0, void 0, function* () {
|
|
52
44
|
try {
|
|
53
45
|
return this.sequelizeModel.findAll({
|
|
54
|
-
where: allowedOrganizations === null ? {} : { id: this.getWhereAccessLimitation(allowedOrganizations) },
|
|
55
46
|
order: [["id", "DESC"]],
|
|
56
47
|
raw: true,
|
|
57
48
|
});
|
|
@@ -61,12 +52,11 @@ where organization_id = any('{${allowedOrganizations.join(",")}}'::integer[]))`)
|
|
|
61
52
|
}
|
|
62
53
|
});
|
|
63
54
|
}
|
|
64
|
-
GetAllFull(
|
|
55
|
+
GetAllFull() {
|
|
65
56
|
return __awaiter(this, void 0, void 0, function* () {
|
|
66
57
|
try {
|
|
67
58
|
return this.sequelizeModel.findAll({
|
|
68
59
|
include: [{ as: "secondary", model: this.secondaryBuildingRepository.sequelizeModel }],
|
|
69
|
-
where: allowedOrganizations === null ? {} : { id: this.getWhereAccessLimitation(allowedOrganizations) },
|
|
70
60
|
order: [["id", "DESC"]],
|
|
71
61
|
});
|
|
72
62
|
}
|
|
@@ -75,17 +65,12 @@ where organization_id = any('{${allowedOrganizations.join(",")}}'::integer[]))`)
|
|
|
75
65
|
}
|
|
76
66
|
});
|
|
77
67
|
}
|
|
78
|
-
GetOne(id
|
|
68
|
+
GetOne(id) {
|
|
79
69
|
return __awaiter(this, void 0, void 0, function* () {
|
|
80
70
|
try {
|
|
81
71
|
return yield this.sequelizeModel.findOne({
|
|
82
72
|
include: [{ as: "secondary", model: this.secondaryBuildingRepository.sequelizeModel }],
|
|
83
|
-
where: {
|
|
84
|
-
[sequelize_1.Op.and]: [
|
|
85
|
-
{ id: id },
|
|
86
|
-
allowedOrganizations === null ? {} : { id: this.getWhereAccessLimitation(allowedOrganizations) },
|
|
87
|
-
],
|
|
88
|
-
},
|
|
73
|
+
where: { id: id },
|
|
89
74
|
});
|
|
90
75
|
}
|
|
91
76
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrimaryBuildingsRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/PrimaryBuildingsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"PrimaryBuildingsRepository.js","sourceRoot":"","sources":["../../../src/output-gateway/repositories/PrimaryBuildingsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2EAAyE;AAGzE,sEAAmE;AACnE,6EAAwE;AACxE,iEAAgE;AAChE,iFAA8E;AAGvE,IAAM,0BAA0B,wCAAhC,MAAM,0BAA2B,SAAQ,+BAAc;IAE1D;QACI,KAAK,CAAC,6CAAqB,CAAC,SAAS,EAAE,6CAAqB,CAAC,SAAS,EAAE,6CAAqB,CAAC,cAAc,EAAE;YAC1G,MAAM,EAAE,YAAY;SACvB,CAAC,CAAC;QAKA,cAAS,GAAG,GAAG,EAAE;YACpB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE;gBACxE,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,IAAI;aAClB,CAAC,CAAC;QACP,CAAC,CAAC;QAVE,IAAI,CAAC,2BAA2B,GAAG,IAAI,2DAA4B,EAAE,CAAC;QACtE,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAUY,MAAM;;YACf,IAAI;gBACA,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAwB;oBACtD,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBACvB,GAAG,EAAE,IAAI;iBACZ,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,6CAA6C,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAC9F;QACL,CAAC;KAAA;IAEY,UAAU;;YACnB,IAAI;gBACA,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAmE;oBACjG,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,CAAC;oBACtF,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;iBAC1B,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,6CAA6C,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAC9F;QACL,CAAC;KAAA;IAEY,MAAM,CAAC,EAAU;;YAC1B,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAmE;oBACvG,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,CAAC;oBACtF,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;iBACpB,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,6CAA6C,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAC9F;QACL,CAAC;KAAA;CACJ,CAAA;qCAlDY,0BAA0B;IADtC,IAAA,qBAAU,GAAE;;GACA,0BAA0B,CAkDtC"}
|
|
@@ -12,8 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.V2BuildingsRouter = void 0;
|
|
13
13
|
const Links_1 = require("../../constants/Links");
|
|
14
14
|
const RouteVersion_1 = require("../../constants/RouteVersion");
|
|
15
|
+
const BuildingsController_1 = require("../../controllers/v2/BuildingsController");
|
|
15
16
|
const Di_1 = require("../../ioc/Di");
|
|
16
|
-
const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
|
|
17
17
|
const AbstractRouter_1 = require("@golemio/core/dist/helpers/routing/AbstractRouter");
|
|
18
18
|
const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
|
|
19
19
|
const ioc_1 = require("@golemio/core/dist/output-gateway/ioc");
|
|
@@ -23,7 +23,7 @@ let V2BuildingsRouter = exports.V2BuildingsRouter = class V2BuildingsRouter exte
|
|
|
23
23
|
constructor() {
|
|
24
24
|
super(RouteVersion_1.RouteVersion.v2, Links_1.BUILDING_PATH);
|
|
25
25
|
this.maxAge = 6 * 60 * 60; // 6 hours
|
|
26
|
-
this.controller =
|
|
26
|
+
this.controller = new BuildingsController_1.BuildingsController();
|
|
27
27
|
this.cacheHeaderMiddleware = Di_1.OGEnergeticsContainer.resolve(ioc_1.ContainerToken.CacheHeaderMiddleware);
|
|
28
28
|
this.initRoutes();
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2BuildingsRouter.js","sourceRoot":"","sources":["../../../../src/output-gateway/routers/v2/V2BuildingsRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAAoD;AACpD,+DAA0D;
|
|
1
|
+
{"version":3,"file":"V2BuildingsRouter.js","sourceRoot":"","sources":["../../../../src/output-gateway/routers/v2/V2BuildingsRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAAoD;AACpD,+DAA0D;AAC1D,kFAA6E;AAC7E,qCAAmD;AACnD,sFAAmF;AAEnF,6EAA2E;AAC3E,+DAAuE;AACvE,mFAAoE;AACpE,iEAAgE;AAGzD,IAAM,iBAAiB,+BAAvB,MAAM,iBAAkB,SAAQ,+BAAc;IAKjD;QACI,KAAK,CAAC,2BAAY,CAAC,EAAE,EAAE,qBAAa,CAAC,CAAC;QAHlC,WAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;QAIpC,IAAI,CAAC,UAAU,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAC5C,IAAI,CAAC,qBAAqB,GAAG,0BAAqB,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QACxH,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACpG,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,MAAM,EACN,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EACrD,IAAA,yBAAK,EAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAChD,wBAAW,EACX,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ,CAAA;4BAtBY,iBAAiB;IAD7B,IAAA,qBAAU,GAAE;;GACA,iBAAiB,CAsB7B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IFullTransformationSchemaItem } from "../models/interfaces/IFullTransformationSchemaItem";
|
|
2
|
+
import { IBuildingsPrimary } from "../models/interfaces/IPrimaryBuildings";
|
|
2
3
|
import { ISecondaryBuildingsOutput } from "../models/interfaces/ISecondaryBuildingsOutput";
|
|
3
|
-
import { IBuildingsPrimary } from "../../schema-definitions/models/interfaces/IPrimaryBuildings";
|
|
4
4
|
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
5
5
|
export declare class BuildingTransformationFull extends AbstractTransformation<IBuildingsPrimary & {
|
|
6
6
|
secondary: ISecondaryBuildingsOutput;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IBuildingsPrimary } from "
|
|
1
|
+
import { IBuildingsPrimary } from "../models/interfaces/IPrimaryBuildings";
|
|
2
2
|
import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
|
|
3
3
|
export declare class BuildingsTransformation extends AbstractTransformation<IBuildingsPrimary, IBuildingsTransformationOutput> {
|
|
4
4
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeasurementsModel.js","sourceRoot":"","sources":["../../../src/schema-definitions/models/MeasurementsModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAExF,2EAAsG;AAEtG,MAAa,gBAAiB,SAAQ,iBAAwC;;AAA9E,
|
|
1
|
+
{"version":3,"file":"MeasurementsModel.js","sourceRoot":"","sources":["../../../src/schema-definitions/models/MeasurementsModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAExF,2EAAsG;AAEtG,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,IAAI,EAAE,4CAAqB,EAAE;YACzD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,wCAAiB,EAAE;YACjD,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MeasurementConstants.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/constants/MeasurementConstants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG;IACjC,MAAM;IACN,OAAO;IACP,SAAS;IACT,WAAW;IACX,UAAU;IACV,UAAU;IACV,KAAK;IACL,GAAG;IACH,KAAK;IACL,IAAI;IACJ,WAAW;IACX,KAAK;
|
|
1
|
+
{"version":3,"file":"MeasurementConstants.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/constants/MeasurementConstants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG;IACjC,MAAM;IACN,OAAO;IACP,SAAS;IACT,WAAW;IACX,UAAU;IACV,UAAU;IACV,KAAK;IACL,GAAG;IACH,KAAK;IACL,IAAI;IACJ,WAAW;IACX,KAAK;CACR,CAAC;AAEW,QAAA,iBAAiB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC"}
|
|
@@ -3,9 +3,6 @@ export declare enum CommodityProviderType {
|
|
|
3
3
|
CemApiVeoliaElectro = "cem_api_veolia_electro",
|
|
4
4
|
PpasAveV = "ppas_ave_api_v",
|
|
5
5
|
PpasAveM = "ppas_ave_api_m",
|
|
6
|
-
PpasAveA = "ppas_ave_api_a",
|
|
7
|
-
PpasAveC = "ppas_ave_api_c",
|
|
8
|
-
PpasAveMO = "ppas_ave_api_mo",
|
|
9
6
|
PreOptions = "pre_electro_ftp",
|
|
10
7
|
PtasOptions = "ptas_hot_water"
|
|
11
8
|
}
|
|
@@ -7,9 +7,6 @@ var CommodityProviderType;
|
|
|
7
7
|
CommodityProviderType["CemApiVeoliaElectro"] = "cem_api_veolia_electro";
|
|
8
8
|
CommodityProviderType["PpasAveV"] = "ppas_ave_api_v";
|
|
9
9
|
CommodityProviderType["PpasAveM"] = "ppas_ave_api_m";
|
|
10
|
-
CommodityProviderType["PpasAveA"] = "ppas_ave_api_a";
|
|
11
|
-
CommodityProviderType["PpasAveC"] = "ppas_ave_api_c";
|
|
12
|
-
CommodityProviderType["PpasAveMO"] = "ppas_ave_api_mo";
|
|
13
10
|
CommodityProviderType["PreOptions"] = "pre_electro_ftp";
|
|
14
11
|
CommodityProviderType["PtasOptions"] = "ptas_hot_water";
|
|
15
12
|
})(CommodityProviderType || (exports.CommodityProviderType = CommodityProviderType = {}));
|
|
@@ -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,qBAOX;AAPD,WAAY,qBAAqB;IAC7B,mEAA0C,CAAA;IAC1C,uEAA8C,CAAA;IAC9C,oDAA2B,CAAA;IAC3B,oDAA2B,CAAA;IAC3B,uDAA8B,CAAA;IAC9B,uDAA8B,CAAA;AAClC,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC"}
|
|
@@ -22,9 +22,7 @@ Modul slouží k ukládání dat o spotřebě energií v budovách a jednotlivý
|
|
|
22
22
|
- Vrtbovský palác
|
|
23
23
|
- Veolia měření P10 - vodoměry a elektroměry
|
|
24
24
|
- PPAS (Pražská plynárenská) InternetAVE API
|
|
25
|
-
- Měření plynu pro P10
|
|
26
|
-
- Měření plynu pro zbytek Prahy pro odběratele různých kategorií A,C a MO
|
|
27
|
-
- Jedná se o odběratele různých kategorií odběru („A“ „C“ „MO“), konkrétně: účet Hl. m. Praha = „C“; Hlavní m. Praha = „MO“ a HlavníměstoPraha64581_1 = „A“
|
|
25
|
+
- Měření plynu pro P10
|
|
28
26
|
- Azure Blob Storage
|
|
29
27
|
- Mapovací JSON pro měření přímo od poskytovatelů komodit
|
|
30
28
|
|
|
@@ -307,24 +305,6 @@ Metoda sbírá data o spotřebách od různých poskytovalů API (consumption) a
|
|
|
307
305
|
- data modely
|
|
308
306
|
- ConsumptionModel `consumption_energy_consumption`
|
|
309
307
|
|
|
310
|
-
#### _task: FetchAccessConfigurationTask_
|
|
311
|
-
|
|
312
|
-
Task aktualizuje lookup tabulku pro limitaci přístupu k output API.
|
|
313
|
-
|
|
314
|
-
- vstupní rabbitmq fronta
|
|
315
|
-
- název: dataplatform.energeticsoict.fetchAccessConfiguration
|
|
316
|
-
- TTL: 10 minutes
|
|
317
|
-
- závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
|
|
318
|
-
- žádné
|
|
319
|
-
- datové zdroje
|
|
320
|
-
- blob storage
|
|
321
|
-
- rabín: https://rabingolemio.blob.core.windows.net/rabin-energetics/access_configuration.json
|
|
322
|
-
- golem: https://golemgolemio.blob.core.windows.net/golem-energetics/access_configuration.json
|
|
323
|
-
- transformace
|
|
324
|
-
- není
|
|
325
|
-
- data modely
|
|
326
|
-
- AccessLimitationModel `access_limitation`
|
|
327
|
-
|
|
328
308
|
### _EnergeticsVpalacWorker_
|
|
329
309
|
|
|
330
310
|
Worker se stará o stahování dat (odečty, měřidla a počítadla) z datového zdroje Unimonitor CEM API - Vrtbovský palác
|
|
@@ -393,9 +373,6 @@ Metoda sbírá historická data
|
|
|
393
373
|
- zdrojový soubor: [openapi-output.yaml](./openapi-output.yaml)
|
|
394
374
|
- rabin: https://rabin.golemio.cz/v2/docs/openapi/
|
|
395
375
|
- golem: https://api.golemio.cz/v2/docs/openapi/
|
|
396
|
-
- přístup je řízen pomocí interního parametru `accessLimit`, který musí být vždy nastaven a omezen z permission proxy
|
|
397
|
-
- při obdržení dotazu na API se stáhnou povolené organizace z tabulky `access_limit` a omezí se podle toho dotazy do databáze
|
|
398
|
-
- pokud je `accessLimit` nastaven na `admin`, tak se vždy dotazuje na všechny organizace
|
|
399
376
|
|
|
400
377
|
### API
|
|
401
378
|
|
package/docs/openapi-output.yaml
CHANGED
|
@@ -1041,8 +1041,6 @@ components:
|
|
|
1041
1041
|
RH - Relativní vlhkost [%]<br />
|
|
1042
1042
|
EFwActiNT - Odběr činné energie, nízký tarif [kVArh]<br />
|
|
1043
1043
|
VOC - Míra koncentrace těkavých látek [%]<br />
|
|
1044
|
-
VT - Vysoký tarif [kWh]<br />
|
|
1045
|
-
NT - Nízký tarif [kWh]<br />
|
|
1046
1044
|
EnergeticsTypes:
|
|
1047
1045
|
type: string
|
|
1048
1046
|
example: provider_value
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/energetics",
|
|
3
|
-
"version": "1.3.8
|
|
3
|
+
"version": "1.3.8",
|
|
4
4
|
"description": "Golemio Energetics Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"test-debug": "run-s 'test -- --inspect-brk=9230'",
|
|
14
14
|
"apidocs-test": "npm run apidocs-test-input && npm run apidocs-test-output",
|
|
15
15
|
"apidocs-test-input": "cross-env NODE_ENV=test golemio swagger api-test --oas docs/openapi-input.yaml --script test/api-docs/input-gateway/server.js",
|
|
16
|
-
"apidocs-test-output": "cross-env NODE_ENV=test golemio swagger api-test --oas docs/openapi-output.yaml --script test/api-docs/output-gateway/server.js
|
|
16
|
+
"apidocs-test-output": "cross-env NODE_ENV=test golemio swagger api-test --oas docs/openapi-output.yaml --script test/api-docs/output-gateway/server.js",
|
|
17
17
|
"code-coverage": "nyc run-s 'test -- -r source-map-support/register'",
|
|
18
18
|
"generate-docs": "typedoc --out docs/typedoc src",
|
|
19
19
|
"lint": "eslint \"{src,test}/**/*.ts\""
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"@commitlint/cli": "^11.0.0",
|
|
37
37
|
"@commitlint/config-conventional": "^11.0.0",
|
|
38
38
|
"@golemio/cli": "1.5.0",
|
|
39
|
-
"@golemio/core": "1.
|
|
39
|
+
"@golemio/core": "1.11.0",
|
|
40
40
|
"@golemio/db-common": "1.1.4",
|
|
41
41
|
"@golemio/eslint-config": "1.1.2",
|
|
42
42
|
"@types/chai": "4.2.3",
|
package/db/example/05_access.sql
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
INSERT INTO access_limitation (group_name, organization_ids, created_at, updated_at) VALUES('praha-10', '{64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,87,88,89,91,93,94,95,96,97,84,86,90,92}', '2024-06-24 10:47:50.349', '2024-06-24 13:08:00.920');
|
|
2
|
-
INSERT INTO access_limitation (group_name, organization_ids, created_at, updated_at) VALUES('test', '{1}', '2024-06-24 10:47:50.349', '2024-06-24 13:08:00.920');
|
|
3
|
-
INSERT INTO access_limitation (group_name, organization_ids, created_at, updated_at) VALUES('test2', '{2,3}', '2024-06-24 10:47:50.349', '2024-06-24 13:08:00.920');
|
|
4
|
-
INSERT INTO access_limitation (group_name, organization_ids, created_at, updated_at) VALUES('testAll', '{1,2,3}', '2024-06-24 10:47:50.349', '2024-06-24 13:08:00.920');
|
|
5
|
-
INSERT INTO access_limitation (group_name, organization_ids, created_at, updated_at) VALUES('removed', '{1,2,3}', '2024-06-24 10:47:50.349', '2024-06-24 13:08:00.920');
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var dbm;
|
|
4
|
-
var type;
|
|
5
|
-
var seed;
|
|
6
|
-
var fs = require('fs');
|
|
7
|
-
var path = require('path');
|
|
8
|
-
var Promise;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* We receive the dbmigrate dependency from dbmigrate initially.
|
|
12
|
-
* This enables us to not have to rely on NODE_PATH.
|
|
13
|
-
*/
|
|
14
|
-
exports.setup = function(options, seedLink) {
|
|
15
|
-
dbm = options.dbmigrate;
|
|
16
|
-
type = dbm.dataType;
|
|
17
|
-
seed = seedLink;
|
|
18
|
-
Promise = options.Promise;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.up = function(db) {
|
|
22
|
-
var filePath = path.join(__dirname, 'sqls', '20240621083051-access-limitation-up.sql');
|
|
23
|
-
return new Promise( function( resolve, reject ) {
|
|
24
|
-
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
25
|
-
if (err) return reject(err);
|
|
26
|
-
console.log('received data: ' + data);
|
|
27
|
-
|
|
28
|
-
resolve(data);
|
|
29
|
-
});
|
|
30
|
-
})
|
|
31
|
-
.then(function(data) {
|
|
32
|
-
return db.runSql(data);
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
exports.down = function(db) {
|
|
37
|
-
var filePath = path.join(__dirname, 'sqls', '20240621083051-access-limitation-down.sql');
|
|
38
|
-
return new Promise( function( resolve, reject ) {
|
|
39
|
-
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
40
|
-
if (err) return reject(err);
|
|
41
|
-
console.log('received data: ' + data);
|
|
42
|
-
|
|
43
|
-
resolve(data);
|
|
44
|
-
});
|
|
45
|
-
})
|
|
46
|
-
.then(function(data) {
|
|
47
|
-
return db.runSql(data);
|
|
48
|
-
});
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
exports._meta = {
|
|
52
|
-
"version": 1
|
|
53
|
-
};
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var dbm;
|
|
4
|
-
var type;
|
|
5
|
-
var seed;
|
|
6
|
-
var fs = require('fs');
|
|
7
|
-
var path = require('path');
|
|
8
|
-
var Promise;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* We receive the dbmigrate dependency from dbmigrate initially.
|
|
12
|
-
* This enables us to not have to rely on NODE_PATH.
|
|
13
|
-
*/
|
|
14
|
-
exports.setup = function(options, seedLink) {
|
|
15
|
-
dbm = options.dbmigrate;
|
|
16
|
-
type = dbm.dataType;
|
|
17
|
-
seed = seedLink;
|
|
18
|
-
Promise = options.Promise;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.up = function(db) {
|
|
22
|
-
var filePath = path.join(__dirname, 'sqls', '20240625134438-fix-pk-measurements-up.sql');
|
|
23
|
-
return new Promise( function( resolve, reject ) {
|
|
24
|
-
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
25
|
-
if (err) return reject(err);
|
|
26
|
-
console.log('received data: ' + data);
|
|
27
|
-
|
|
28
|
-
resolve(data);
|
|
29
|
-
});
|
|
30
|
-
})
|
|
31
|
-
.then(function(data) {
|
|
32
|
-
return db.runSql(data);
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
exports.down = function(db) {
|
|
37
|
-
var filePath = path.join(__dirname, 'sqls', '20240625134438-fix-pk-measurements-down.sql');
|
|
38
|
-
return new Promise( function( resolve, reject ) {
|
|
39
|
-
fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
|
|
40
|
-
if (err) return reject(err);
|
|
41
|
-
console.log('received data: ' + data);
|
|
42
|
-
|
|
43
|
-
resolve(data);
|
|
44
|
-
});
|
|
45
|
-
})
|
|
46
|
-
.then(function(data) {
|
|
47
|
-
return db.runSql(data);
|
|
48
|
-
});
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
exports._meta = {
|
|
52
|
-
"version": 1
|
|
53
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
DROP TABLE access_limitation;
|