@golemio/energetics 1.14.0 → 1.15.0-dev.2817183709
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 +1 -0
- package/db/example/10_enapo_budova_spotrebic.sql +14 -0
- package/db/migrations/postgresql/20260821090000-enapo-gid-mapping-sync-comment.js +53 -0
- package/db/migrations/postgresql/20260827090000-enapo-gid-mapping-pk.js +53 -0
- package/db/migrations/postgresql/20260901090000-enapo-budova-spotrebic.js +53 -0
- package/db/migrations/postgresql/sqls/20260821090000-enapo-gid-mapping-sync-comment-down.sql +3 -0
- package/db/migrations/postgresql/sqls/20260821090000-enapo-gid-mapping-sync-comment-up.sql +4 -0
- package/db/migrations/postgresql/sqls/20260827090000-enapo-gid-mapping-pk-down.sql +4 -0
- package/db/migrations/postgresql/sqls/20260827090000-enapo-gid-mapping-pk-up.sql +17 -0
- package/db/migrations/postgresql/sqls/20260901090000-enapo-budova-spotrebic-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20260901090000-enapo-budova-spotrebic-up.sql +20 -0
- package/db/scripts/ded_gid_mapping_mock_import.sql +4 -1
- package/dist/integration-engine/enapo/datasources/gid-mapping/EnapoGidMappingDataSource.d.ts +14 -0
- package/dist/integration-engine/enapo/datasources/gid-mapping/EnapoGidMappingDataSource.js +56 -0
- package/dist/integration-engine/enapo/datasources/gid-mapping/EnapoGidMappingDataSource.js.map +1 -0
- package/dist/integration-engine/enapo/helpers/EnapoGidMappingNormalizer.d.ts +43 -0
- package/dist/integration-engine/enapo/helpers/EnapoGidMappingNormalizer.js +193 -0
- package/dist/integration-engine/enapo/helpers/EnapoGidMappingNormalizer.js.map +1 -0
- package/dist/integration-engine/enapo/ioc/Di.js +11 -3
- package/dist/integration-engine/enapo/ioc/Di.js.map +1 -1
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.d.ts +4 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js +4 -0
- package/dist/integration-engine/enapo/ioc/EnapoWorkerContainerToken.js.map +1 -1
- package/dist/integration-engine/enapo/repositories/EnapoGidMappingRepository.d.ts +13 -0
- package/dist/integration-engine/enapo/repositories/EnapoGidMappingRepository.js +42 -0
- package/dist/integration-engine/enapo/repositories/EnapoGidMappingRepository.js.map +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js +1 -0
- package/dist/integration-engine/enapo/workers/EnapoWorker.js.map +1 -1
- package/dist/integration-engine/enapo/workers/task/EnapoGidMappingSyncTask.d.ts +45 -0
- package/dist/integration-engine/enapo/workers/task/EnapoGidMappingSyncTask.js +121 -0
- package/dist/integration-engine/enapo/workers/task/EnapoGidMappingSyncTask.js.map +1 -0
- package/dist/output-gateway/repositories/EnoBuildingDetailRepository.d.ts +1 -0
- package/dist/output-gateway/repositories/EnoBuildingDetailRepository.js +10 -2
- package/dist/output-gateway/repositories/EnoBuildingDetailRepository.js.map +1 -1
- package/dist/output-gateway/repositories/EnoBuildingHeatSourcesRepository.d.ts +8 -0
- package/dist/output-gateway/repositories/EnoBuildingHeatSourcesRepository.js +51 -0
- package/dist/output-gateway/repositories/EnoBuildingHeatSourcesRepository.js.map +1 -0
- package/dist/output-gateway/repositories/interfaces/IEnoBuildingDetailAggregate.d.ts +2 -0
- package/dist/output-gateway/routers/interfaces/IEnoBuildingDetailResponse.d.ts +15 -0
- package/dist/output-gateway/routers/v2/V2EnoBuildingsRouter.js +1 -1
- package/dist/output-gateway/routers/v2/V2EnoBuildingsRouter.js.map +1 -1
- package/dist/output-gateway/transformations/EnoBuildingDetailTransformation.d.ts +1 -0
- package/dist/output-gateway/transformations/EnoBuildingDetailTransformation.js +17 -0
- package/dist/output-gateway/transformations/EnoBuildingDetailTransformation.js.map +1 -1
- package/dist/schema-definitions/datasources/enapo/gid-mapping/EnapoGidMappingCsvSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/enapo/gid-mapping/EnapoGidMappingCsvSchema.js +23 -0
- package/dist/schema-definitions/datasources/enapo/gid-mapping/EnapoGidMappingCsvSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/enapo/gid-mapping/interfaces/IEnapoGidMappingCsvRow.d.ts +15 -0
- package/dist/schema-definitions/datasources/enapo/gid-mapping/interfaces/IEnapoGidMappingCsvRow.js +3 -0
- package/dist/schema-definitions/datasources/enapo/gid-mapping/interfaces/IEnapoGidMappingCsvRow.js.map +1 -0
- package/dist/schema-definitions/models/enapo/EnapoBudovaSpotrebicModel.d.ts +22 -0
- package/dist/schema-definitions/models/enapo/EnapoBudovaSpotrebicModel.js +58 -0
- package/dist/schema-definitions/models/enapo/EnapoBudovaSpotrebicModel.js.map +1 -0
- package/dist/schema-definitions/models/enapo/EnapoGidMappingModel.js +0 -1
- package/dist/schema-definitions/models/enapo/EnapoGidMappingModel.js.map +1 -1
- package/dist/schema-definitions/models/enapo/interfaces/IEnapoBudovaSpotrebic.d.ts +15 -0
- package/dist/schema-definitions/models/enapo/interfaces/IEnapoBudovaSpotrebic.js +3 -0
- package/dist/schema-definitions/models/enapo/interfaces/IEnapoBudovaSpotrebic.js.map +1 -0
- package/docs/implementation_documentation.md +43 -2
- package/docs/openapi-output.yaml +69 -37
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2EnoBuildingsRouter.js","sourceRoot":"","sources":["../../../../src/output-gateway/routers/v2/V2EnoBuildingsRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2EAAkF;AAClF,uEAAmG;AACnG,iDAAwD;AACxD,+DAA0D;AAE1D,qCAAmD;AACnD,yEAAoE;AACpE,sFAAmF;AAEnF,6EAA2E;AAC3E,+DAAuE;AACvE,mFAA2E;AAC3E,iEAAgE;AAGzD,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,+BAAc;IASpD;QACI,KAAK,CAAC,2BAAY,CAAC,EAAE,EAAE,yBAAiB,CAAC,CAAC;QAPtC,WAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;QAChC,yBAAoB,GAAG,EAAE,CAAC,CAAC,WAAW;QAC9C,oGAAoG;QAC5F,iBAAY,GAAG,EAAE,CAAC,CAAC,WAAW;QAC9B,+BAA0B,GAAG,EAAE,CAAC,CAAC,aAAa;QAIlD,IAAI,CAAC,UAAU,GAAG,0BAAqB,CAAC,OAAO,CAAyB,2CAAoB,CAAC,sBAAsB,CAAC,CAAC;QACrH,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,CACX,GAAG,EACH,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,8CAA2B,EAAE,CAAC,EAC5G,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,uCAAoB,EAAE,CAAC,CAAC,KAAK,EAAE,EAC9E,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,0BAA0B,CAAC,EAC5F,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,OAAO,EACP,IAAA,yBAAK,EAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"V2EnoBuildingsRouter.js","sourceRoot":"","sources":["../../../../src/output-gateway/routers/v2/V2EnoBuildingsRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2EAAkF;AAClF,uEAAmG;AACnG,iDAAwD;AACxD,+DAA0D;AAE1D,qCAAmD;AACnD,yEAAoE;AACpE,sFAAmF;AAEnF,6EAA2E;AAC3E,+DAAuE;AACvE,mFAA2E;AAC3E,iEAAgE;AAGzD,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,+BAAc;IASpD;QACI,KAAK,CAAC,2BAAY,CAAC,EAAE,EAAE,yBAAiB,CAAC,CAAC;QAPtC,WAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;QAChC,yBAAoB,GAAG,EAAE,CAAC,CAAC,WAAW;QAC9C,oGAAoG;QAC5F,iBAAY,GAAG,EAAE,CAAC,CAAC,WAAW;QAC9B,+BAA0B,GAAG,EAAE,CAAC,CAAC,aAAa;QAIlD,IAAI,CAAC,UAAU,GAAG,0BAAqB,CAAC,OAAO,CAAyB,2CAAoB,CAAC,sBAAsB,CAAC,CAAC;QACrH,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,CACX,GAAG,EACH,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,8CAA2B,EAAE,CAAC,EAC5G,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,uCAAoB,EAAE,CAAC,CAAC,KAAK,EAAE,EAC9E,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,0BAA0B,CAAC,EAC5F,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,OAAO,EACP,IAAA,yBAAK,EAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EACvD,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,mDAA8B,EAAE,CAAC,CAAC,KAAK,EAAE,EACzF,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,EAChF,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ,CAAA;AAnCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,qBAAU,GAAE;;GACA,oBAAoB,CAmChC"}
|
|
@@ -4,6 +4,7 @@ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformatio
|
|
|
4
4
|
export declare class EnoBuildingDetailTransformation extends AbstractTransformation<IEnoBuildingDetailAggregate, IEnoBuildingDetailResponse> {
|
|
5
5
|
name: string;
|
|
6
6
|
protected transformInternal: (element: IEnoBuildingDetailAggregate) => IEnoBuildingDetailResponse;
|
|
7
|
+
private transformHeatSources;
|
|
7
8
|
private resolveName;
|
|
8
9
|
private resolveBuildingAddress;
|
|
9
10
|
private transformConsumptionHistory;
|
|
@@ -31,6 +31,23 @@ let EnoBuildingDetailTransformation = class EnoBuildingDetailTransformation exte
|
|
|
31
31
|
energy_management: this.transformEnergyManagement(element),
|
|
32
32
|
consumption_history: this.transformConsumptionHistory(element),
|
|
33
33
|
consumption_points: element.points.map((point) => this.transformPoint(point, element)),
|
|
34
|
+
heat_sources: this.transformHeatSources(element),
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
this.transformHeatSources = (aggregate) => {
|
|
38
|
+
const rated = aggregate.heatSources.map((source) => source.vykon_kw).filter((value) => value !== null);
|
|
39
|
+
return {
|
|
40
|
+
count: aggregate.heatSources.length,
|
|
41
|
+
total_rated_output_kw: rated.length === 0 ? null : rated.reduce((sum, value) => sum + value, 0),
|
|
42
|
+
sources: aggregate.heatSources.map((source) => ({
|
|
43
|
+
appliance_name: source.nazev_spotrebic,
|
|
44
|
+
note: source.poznamka,
|
|
45
|
+
rated_output_kw: source.vykon_kw,
|
|
46
|
+
fuel_code: source.palivo,
|
|
47
|
+
is_monitored: source.monitoring,
|
|
48
|
+
appliance_type: source.nazev_typ_bud_spotrebic,
|
|
49
|
+
operating_since: source.provoz_od,
|
|
50
|
+
})),
|
|
34
51
|
};
|
|
35
52
|
};
|
|
36
53
|
this.resolveName = (aggregate) => aggregate.building?.nazev ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnoBuildingDetailTransformation.js","sourceRoot":"","sources":["../../../src/output-gateway/transformations/EnoBuildingDetailTransformation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EnoBuildingDetailTransformation.js","sourceRoot":"","sources":["../../../src/output-gateway/transformations/EnoBuildingDetailTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,4DAAkE;AAoBlE,mFAAkG;AAClG,iEAAgF;AAGhF,6GAA0G;AAC1G,iEAAgE;AAGzD,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,+CAGpD;IAHM;;QAII,SAAI,GAAW,iCAAiC,CAAC;QAE9C,sBAAiB,GAAG,CAAC,OAAoC,EAA8B,EAAE;YAC/F,OAAO;gBACH,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;gBAC/B,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;gBAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACnF,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrF,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC3C,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;oBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;oBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;iBACzB,CAAC,CAAC;gBACH,iBAAiB,EAAE,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;gBAC1D,mBAAmB,EAAE,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;gBAC9D,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACtF,YAAY,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;aACnD,CAAC;QACN,CAAC,CAAC;QAEM,yBAAoB,GAAG,CAAC,SAAsC,EAAmB,EAAE;YACvF,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;YAExH,OAAO;gBACH,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM;gBACnC,qBAAqB,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC;gBAC/F,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAC5C,cAAc,EAAE,MAAM,CAAC,eAAe;oBACtC,IAAI,EAAE,MAAM,CAAC,QAAQ;oBACrB,eAAe,EAAE,MAAM,CAAC,QAAQ;oBAChC,SAAS,EAAE,MAAM,CAAC,MAAM;oBACxB,YAAY,EAAE,MAAM,CAAC,UAAU;oBAC/B,cAAc,EAAE,MAAM,CAAC,uBAAuB;oBAC9C,eAAe,EAAE,MAAM,CAAC,SAAS;iBACpC,CAAC,CAAC;aACN,CAAC;QACN,CAAC,CAAC;QAEM,gBAAW,GAAG,CAAC,SAAsC,EAAiB,EAAE,CAC5E,SAAS,CAAC,QAAQ,EAAE,KAAK;YACzB,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,aAAa;YACxF,IAAI,CAAC;QAED,2BAAsB,GAAG,CAAC,SAAsC,EAAiB,EAAE;YACvF,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;YAChF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC,KAAK,CAAC;YAC3B,CAAC;YAED,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,OAAO,IAAI,CAAC,cAAc,CACtB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,qBAAqB,EAC5B,MAAM,CAAC,sBAAsB,EAC7B,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,iBAAiB,CAC3B,CAAC;QACN,CAAC,CAAC;QAEM,gCAA2B,GAAG,CAAC,SAAsC,EAA0B,EAAE;YACrG,MAAM,WAAW,GAAG,CAAC,SAAyB,EAA2B,EAAE,CACvE,qDAAyB,CAAC,KAAK,CAC3B,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,EACzE,SAAS,CAAC,aAAa,CAC1B,CAAC;YAEN,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YAEnC,OAAO;gBACH,WAAW,EAAE,SAAS,CAAC,aAAa,CAAC,UAAU;gBAC/C,SAAS,EAAE,SAAS,CAAC,aAAa,CAAC,QAAQ;gBAC3C,MAAM,EAAE,SAAS,CAAC,aAAa,CAAC,MAAM;gBACtC,qBAAqB,EAAE,qDAAyB,CAAC,mBAAmB,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;gBACjH,iBAAiB,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;gBAClD,WAAW;gBACX,GAAG;gBACH,IAAI;gBACJ,KAAK;aACR,CAAC;QACN,CAAC,CAAC;QAEM,oBAAe,GAAG,CAAC,SAAsC,EAAW,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzG,sBAAiB,GAAG,CACxB,KAA+B,EAC/B,SAAsC,EACf,EAAE,CACzB,qDAAyB,CAAC,KAAK,CAC3B,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,EAClH,SAAS,CAAC,aAAa,CAC1B,CAAC;QAEE,oBAAe,GAAG,CAAC,QAAgC,EAAwB,EAAE;YACjF,OAAO,IAAA,wBAAQ,EAAC,QAAQ,EAAE;gBACtB,KAAK;gBACL,OAAO;gBACP,QAAQ;gBACR,UAAU;gBACV,QAAQ;gBACR,QAAQ;gBACR,SAAS;gBACT,WAAW;gBACX,QAAQ;gBACR,SAAS;gBACT,QAAQ;gBACR,SAAS;gBACT,WAAW;gBACX,QAAQ;gBACR,SAAS;aACZ,CAAC,CAAC;QACP,CAAC,CAAC;QAEM,sBAAiB,GAAG,CAAC,QAAgC,EAA+B,EAAE;YAC1F,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACpD,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE3D,IAAI,gBAAgB,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC3E,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,OAAO;gBACH,iBAAiB,EAAE,gBAAgB;gBACnC,QAAQ,EAAE;oBACN,OAAO;oBACP,eAAe,EAAE,cAAc;iBAClC;aACJ,CAAC;QACN,CAAC,CAAC;QAEM,0BAAqB,GAAG,CAAC,QAAgC,EAA+B,EAAE;YAC9F,MAAM,IAAI,GAAG,IAAA,2BAAW,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1C,CAAC,CAAC;QAEM,iBAAY,GAAG,CAAC,QAAgC,EAAE,MAAuB,EAAsB,EAAE;YACrG,MAAM,OAAO,GAAG,IAAA,2BAAW,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC;QAEM,mBAAc,GAAG,CACrB,KAA+B,EAC/B,SAAsC,EACV,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAEzD,OAAO;gBACH,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC;gBACnD,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBACnC,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClH,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrG,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3F,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChG,CAAC;QACN,CAAC,CAAC;QAEM,oBAAe,GAAG,CAAC,KAA+B,EAAE,SAAsC,EAAwB,EAAE,CACxH,SAAS,CAAC,YAAY;aACjB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;aACtD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAE3D,yBAAoB,GAAG,CAC3B,KAA+B,EAC/B,QAAkC,EAClC,OAAgC,EACZ,EAAE;YACtB,OAAO;gBACH,QAAQ,EAAE,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,2BAAW,EAAC,KAAK,EAAE,KAAK,CAAC;gBACnE,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;gBAC1C,mBAAmB,EAAE,OAAO;aAC/B,CAAC;QACN,CAAC,CAAC;QAEM,iBAAY,GAAG,CACnB,KAA+B,EAC/B,SAAsC,EACtC,QAAkC,EAClC,OAAgC,EACpB,EAAE;YACd,OAAO;gBACH,mBAAmB,EAAE,OAAO;gBAC5B,YAAY,EACR,KAAK,CAAC,KAAK,KAAK,IAAI;oBAChB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC;wBACI,OAAO,EAAE,IAAA,2BAAW,EAAC,KAAK,EAAE,KAAK,CAAC;wBAClC,YAAY,EAAE,IAAA,wBAAQ,EAAC,IAAA,2BAAW,EAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;wBAClE,OAAO,EAAE,SAAS,CAAC,mBAAmB;6BACjC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,cAAc,CAAC;6BACjG,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,wBAAQ,EAAC,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;wBAClE,MAAM,EAAE,SAAS,CAAC,kBAAkB;6BAC/B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,cAAc,CAAC;6BAC9F,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,wBAAQ,EAAC,KAAK,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;qBAClF;gBACX,UAAU,EACN,KAAK,CAAC,KAAK,KAAK,IAAI;oBAChB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC;wBACI,OAAO,EAAE,IAAA,2BAAW,EAAC,KAAK,EAAE,KAAK,CAAC;wBAClC,YAAY,EAAE,IAAA,wBAAQ,EAAC,IAAA,2BAAW,EAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;wBAClE,OAAO,EAAE,SAAS,CAAC,iBAAiB;6BAC/B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,cAAc,CAAC;6BACjG,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,wBAAQ,EAAC,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;wBAClE,MAAM,EAAE,SAAS,CAAC,gBAAgB;6BAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,cAAc,CAAC;6BAC9F,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,wBAAQ,EAAC,KAAK,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;qBAClF;gBACX,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;aAC7C,CAAC;QACN,CAAC,CAAC;QAEM,uBAAkB,GAAG,CACzB,KAA+B,EAC/B,SAAsC,EACd,EAAE;YAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,IAAI,CACzC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,KAAK,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,IAAI,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,CACrH,CAAC;YACF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,OAAO;gBACH,MAAM,EAAE;oBACJ,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;oBAC7C,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;oBAC/C,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;iBACxB;gBACD,WAAW,EAAE,SAAS,CAAC,eAAe;qBACjC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,gBAAgB,KAAK,MAAM,CAAC,SAAS,CAAC;qBACtE,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;oBACjB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,WAAW,EAAE,SAAS,CAAC,WAAW;iBACrC,CAAC,CAAC;aACV,CAAC;QACN,CAAC,CAAC;QAEM,8BAAyB,GAAG,CAAC,SAAsC,EAA+B,EAAE;YACxG,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC;YAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,MAAM,OAAO,GAA2B,OAAO,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO;gBACH,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,OAAO,EAAE,IAAI,CAAC,cAAc,CACxB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,sBAAsB,EAC9B,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,iBAAiB,CAC5B;gBACD,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,MAAM;gBAC9E,OAAO,EAAE,mCAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC;aAClE,CAAC;QACN,CAAC,CAAC;QAEM,mBAAc,GAAG,CAAC,KAA+B,EAAiB,EAAE;YACxE,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC5B,OAAO,KAAK,CAAC,UAAU,CAAC;YAC5B,CAAC;YAED,OAAO,CACH,IAAI,CAAC,cAAc,CACf,KAAK,CAAC,oBAAoB,EAC1B,KAAK,CAAC,0BAA0B,EAChC,KAAK,CAAC,8BAA8B,EACpC,KAAK,CAAC,kBAAkB,EACxB,KAAK,CAAC,uBAAuB,CAChC;gBACD,IAAI,CAAC,cAAc,CACf,KAAK,CAAC,oBAAoB,EAC1B,KAAK,CAAC,0BAA0B,EAChC,KAAK,CAAC,8BAA8B,EACpC,KAAK,CAAC,kBAAkB,EACxB,KAAK,CAAC,uBAAuB,CAChC,CACJ,CAAC;QACN,CAAC,CAAC;QAEM,mBAAc,GAAG,CACrB,MAAqB,EACrB,WAA0B,EAC1B,cAA6B,EAC7B,IAAmB,EACnB,QAAuB,EACV,EAAE;YACf,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1G,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjG,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;YAE1F,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;AApUY,0EAA+B;0CAA/B,+BAA+B;IAD3C,IAAA,qBAAU,GAAE;GACA,+BAA+B,CAoU3C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.enapoGidMappingCsvSchema = void 0;
|
|
4
|
+
// Guards only the shape of the export contract: every column present as a string (CSV yields an empty
|
|
5
|
+
// string for a blank cell). Value normalization and business rules live in the transformation.
|
|
6
|
+
exports.enapoGidMappingCsvSchema = {
|
|
7
|
+
type: "array",
|
|
8
|
+
items: {
|
|
9
|
+
type: "object",
|
|
10
|
+
properties: {
|
|
11
|
+
place_id: { type: "string" },
|
|
12
|
+
id_type: { type: "string" },
|
|
13
|
+
commodity: { type: "string" },
|
|
14
|
+
gid: { type: "string" },
|
|
15
|
+
is_first_gid: { type: "string" },
|
|
16
|
+
link_source: { type: "string" },
|
|
17
|
+
valid_from: { type: "string" },
|
|
18
|
+
valid_to: { type: "string" },
|
|
19
|
+
},
|
|
20
|
+
required: ["place_id", "id_type", "commodity", "gid", "is_first_gid", "link_source", "valid_from", "valid_to"],
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=EnapoGidMappingCsvSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnapoGidMappingCsvSchema.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/datasources/enapo/gid-mapping/EnapoGidMappingCsvSchema.ts"],"names":[],"mappings":";;;AAGA,sGAAsG;AACtG,+FAA+F;AAClF,QAAA,wBAAwB,GAA6C;IAC9E,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC/B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC/B;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,CAAC;KACjH;CACJ,CAAC"}
|
package/dist/schema-definitions/datasources/enapo/gid-mapping/interfaces/IEnapoGidMappingCsvRow.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Raw row of the ded_gid_mapping CSV export as delivered to blob storage by the data team.
|
|
3
|
+
* Every value arrives as a string (or empty string for a missing value); normalization and typing
|
|
4
|
+
* happen in the transformation, so the ingest never trusts the raw shape.
|
|
5
|
+
*/
|
|
6
|
+
export interface IEnapoGidMappingCsvRow {
|
|
7
|
+
place_id: string;
|
|
8
|
+
id_type: string;
|
|
9
|
+
commodity: string;
|
|
10
|
+
gid: string;
|
|
11
|
+
is_first_gid: string;
|
|
12
|
+
link_source: string;
|
|
13
|
+
valid_from: string;
|
|
14
|
+
valid_to: string;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEnapoGidMappingCsvRow.js","sourceRoot":"","sources":["../../../../../../src/schema-definitions/datasources/enapo/gid-mapping/interfaces/IEnapoGidMappingCsvRow.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { JSONSchemaType } from "@golemio/core/dist/shared/ajv";
|
|
2
|
+
import { Model, ModelAttributes } from "@golemio/core/dist/shared/sequelize";
|
|
3
|
+
import { IEnapoBudovaSpotrebic } from "./interfaces/IEnapoBudovaSpotrebic";
|
|
4
|
+
export declare class EnapoBudovaSpotrebicModel extends Model<IEnapoBudovaSpotrebic> implements IEnapoBudovaSpotrebic {
|
|
5
|
+
static TABLE_NAME: string;
|
|
6
|
+
static REPOSITORY_NAME: string;
|
|
7
|
+
id_bud_spotrebic: number;
|
|
8
|
+
gid: string;
|
|
9
|
+
kod_eno: string;
|
|
10
|
+
id_budova: number | null;
|
|
11
|
+
id_typ_bud_spotrebic: number | null;
|
|
12
|
+
nazev_typ_bud_spotrebic: string | null;
|
|
13
|
+
nazev_spotrebic: string | null;
|
|
14
|
+
poznamka: string | null;
|
|
15
|
+
palivo: number | null;
|
|
16
|
+
vykon_kw: number | null;
|
|
17
|
+
monitoring: boolean | null;
|
|
18
|
+
provoz_od: string | null;
|
|
19
|
+
adresa: string | null;
|
|
20
|
+
static attributeModel: ModelAttributes<EnapoBudovaSpotrebicModel, IEnapoBudovaSpotrebic>;
|
|
21
|
+
static jsonSchema: JSONSchemaType<IEnapoBudovaSpotrebic[]>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnapoBudovaSpotrebicModel = void 0;
|
|
4
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
5
|
+
class EnapoBudovaSpotrebicModel extends sequelize_1.Model {
|
|
6
|
+
}
|
|
7
|
+
exports.EnapoBudovaSpotrebicModel = EnapoBudovaSpotrebicModel;
|
|
8
|
+
EnapoBudovaSpotrebicModel.TABLE_NAME = "enapo_budova_spotrebic";
|
|
9
|
+
EnapoBudovaSpotrebicModel.REPOSITORY_NAME = "EnapoBudovaSpotrebicRepository";
|
|
10
|
+
EnapoBudovaSpotrebicModel.attributeModel = {
|
|
11
|
+
id_bud_spotrebic: {
|
|
12
|
+
type: sequelize_1.DataTypes.INTEGER,
|
|
13
|
+
allowNull: false,
|
|
14
|
+
primaryKey: true,
|
|
15
|
+
},
|
|
16
|
+
gid: {
|
|
17
|
+
type: sequelize_1.DataTypes.STRING,
|
|
18
|
+
allowNull: false,
|
|
19
|
+
primaryKey: true,
|
|
20
|
+
},
|
|
21
|
+
kod_eno: {
|
|
22
|
+
type: sequelize_1.DataTypes.STRING(50),
|
|
23
|
+
allowNull: false,
|
|
24
|
+
},
|
|
25
|
+
id_budova: sequelize_1.DataTypes.INTEGER,
|
|
26
|
+
id_typ_bud_spotrebic: sequelize_1.DataTypes.INTEGER,
|
|
27
|
+
nazev_typ_bud_spotrebic: sequelize_1.DataTypes.STRING(50),
|
|
28
|
+
nazev_spotrebic: sequelize_1.DataTypes.STRING(255),
|
|
29
|
+
poznamka: sequelize_1.DataTypes.STRING(500),
|
|
30
|
+
palivo: sequelize_1.DataTypes.INTEGER,
|
|
31
|
+
vykon_kw: sequelize_1.DataTypes.DECIMAL(12, 2),
|
|
32
|
+
monitoring: sequelize_1.DataTypes.BOOLEAN,
|
|
33
|
+
provoz_od: sequelize_1.DataTypes.DATEONLY,
|
|
34
|
+
adresa: sequelize_1.DataTypes.STRING(255),
|
|
35
|
+
};
|
|
36
|
+
EnapoBudovaSpotrebicModel.jsonSchema = {
|
|
37
|
+
type: "array",
|
|
38
|
+
items: {
|
|
39
|
+
type: "object",
|
|
40
|
+
properties: {
|
|
41
|
+
id_bud_spotrebic: { type: "integer" },
|
|
42
|
+
gid: { type: "string" },
|
|
43
|
+
kod_eno: { type: "string" },
|
|
44
|
+
id_budova: { oneOf: [{ type: "integer" }, { type: "null", nullable: true }] },
|
|
45
|
+
id_typ_bud_spotrebic: { oneOf: [{ type: "integer" }, { type: "null", nullable: true }] },
|
|
46
|
+
nazev_typ_bud_spotrebic: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
|
|
47
|
+
nazev_spotrebic: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
|
|
48
|
+
poznamka: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
|
|
49
|
+
palivo: { oneOf: [{ type: "integer" }, { type: "null", nullable: true }] },
|
|
50
|
+
vykon_kw: { oneOf: [{ type: "number" }, { type: "null", nullable: true }] },
|
|
51
|
+
monitoring: { oneOf: [{ type: "boolean" }, { type: "null", nullable: true }] },
|
|
52
|
+
provoz_od: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
|
|
53
|
+
adresa: { oneOf: [{ type: "string" }, { type: "null", nullable: true }] },
|
|
54
|
+
},
|
|
55
|
+
required: ["id_bud_spotrebic", "gid", "kod_eno"],
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=EnapoBudovaSpotrebicModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnapoBudovaSpotrebicModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/EnapoBudovaSpotrebicModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnapoGidMappingModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/EnapoGidMappingModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAGxF,MAAa,oBAAqB,SAAQ,iBAAuB;;AAAjE,
|
|
1
|
+
{"version":3,"file":"EnapoGidMappingModel.js","sourceRoot":"","sources":["../../../../src/schema-definitions/models/enapo/EnapoGidMappingModel.ts"],"names":[],"mappings":";;;AACA,mEAAwF;AAGxF,MAAa,oBAAqB,SAAQ,iBAAuB;;AAAjE,oDAkEC;AAjEiB,+BAAU,GAAG,mBAAmB,CAAC;AACjC,oCAAe,GAAG,2BAA2B,CAAC;AAW9C,mCAAc,GAA4D;IACpF,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,IAAI;KACnB;IACD,YAAY,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,KAAK;KACtB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,SAAS,EAAE,KAAK;KACnB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,QAAQ;KAC3B;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,QAAQ;KAC3B;CACJ,CAAC;AAEY,+BAAU,GAAuC;IAC3D,IAAI,EAAE,OAAO;IACb,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;YACjD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAC5E,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACjC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC/B,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE;YAC7E,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE;SAC9E;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,CAAC;KACvF;CACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface IEnapoBudovaSpotrebic {
|
|
2
|
+
id_bud_spotrebic: number;
|
|
3
|
+
gid: string;
|
|
4
|
+
kod_eno: string;
|
|
5
|
+
id_budova: number | null;
|
|
6
|
+
id_typ_bud_spotrebic: number | null;
|
|
7
|
+
nazev_typ_bud_spotrebic: string | null;
|
|
8
|
+
nazev_spotrebic: string | null;
|
|
9
|
+
poznamka: string | null;
|
|
10
|
+
palivo: number | null;
|
|
11
|
+
vykon_kw: number | null;
|
|
12
|
+
monitoring: boolean | null;
|
|
13
|
+
provoz_od: string | null;
|
|
14
|
+
adresa: string | null;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEnapoBudovaSpotrebic.js","sourceRoot":"","sources":["../../../../../src/schema-definitions/models/enapo/interfaces/IEnapoBudovaSpotrebic.ts"],"names":[],"mappings":""}
|
|
@@ -700,6 +700,40 @@ Task přegeneruje materializovaný pohled `mv_enapo_om_consumption`, ze kterého
|
|
|
700
700
|
- unit testy
|
|
701
701
|
- [EnapoConsumptionHistoryRefreshTask.test.ts](../test/integration-engine/enapo/task/EnapoConsumptionHistoryRefreshTask.test.ts)
|
|
702
702
|
|
|
703
|
+
#### _task: EnapoGidMappingSyncTask_
|
|
704
|
+
|
|
705
|
+
Task denně synchronizuje mapování odběrných míst (EAN/EIC) na GID budov z CSV exportu v blob storage do tabulky `energetics.enapo_gid_mapping`. Rozsah je elektřina a plyn; voda a teplo se filtrují jako mimo rozsah.
|
|
706
|
+
|
|
707
|
+
- zdroj dat
|
|
708
|
+
- CSV `ded_gid_mapping` v Azure Blob Storage, kontejner `golem-energetics` (prod) / `rabin-energetics` (rabin)
|
|
709
|
+
- plná URL z configu `module.energetics.enapo.gidMapping.url` — jedna hodnota, ne base + path, aby unesla i SAS token v query stringu
|
|
710
|
+
- CSV dodává datový tým (výstup z dbt), modul ho jen konzumuje; za obsah a denní obnovu odpovídá producent
|
|
711
|
+
- formát: UTF-8, delimiter `,`, hlavička na prvním řádku
|
|
712
|
+
- CSV kontrakt (sloupce = `enapo_gid_mapping` bez vody/tepla)
|
|
713
|
+
- `place_id` (EAN/EIC, ≤ 50 znaků), `id_type` (`ean` = elektřina / `eic` = plyn), `commodity` (`electricity` / `gas`), `gid` (GID budovy/stavby), `is_first_gid` (bool), `link_source` (v CSV např. `eb_ean_eic`; slouží už jen k odfiltrování vody/tepla přes `eb_cis_odb_mista`, do tabulky se neukládá), `valid_from` a `valid_to` (date `YYYY-MM-DD`, případná časová část se zahazuje; u `valid_to` je `1900-01-01` nebo prázdno = nezrušeno = NULL)
|
|
714
|
+
- normalizaci a validaci provádí [EnapoGidMappingNormalizer](../src/integration-engine/enapo/helpers/EnapoGidMappingNormalizer.ts) podle [ded_gid_mapping_mock_import.sql](../db/scripts/ded_gid_mapping_mock_import.sql): dopočet `id_type`↔`commodity`, zahození rozporných párů, `1900-01-01`→NULL, výběr aktivního a nejnovějšího mapování mezi duplicitami
|
|
715
|
+
- dedupuje na PK (`place_id`, `gid`) a `link_source` u všech řádků nastavuje na `manual_entry` (hodnota z CSV se neukládá)
|
|
716
|
+
- vstupní rabbitmq fronta
|
|
717
|
+
- název: dataplatform.enapoenergetics.syncEnapoGidMapping
|
|
718
|
+
- TTL: 30 minut (starší zpráva už je překonaná novější)
|
|
719
|
+
- parametry: žádné — task vždy ingestuje celý export, takže není co validovat a `schema` je záměrně `undefined`
|
|
720
|
+
- cron definice
|
|
721
|
+
- cron.dataplatform.enapoenergetics.syncEnapoGidMapping — denní běh, nejlépe krátce po obnově CSV producentem
|
|
722
|
+
- rabin `0 15 3 * * *`
|
|
723
|
+
- prod `0 15 3 * * *`
|
|
724
|
+
- samotná definice cronu je vedena mimo tento repozitář (deployment konfigurace); hodnoty výše jsou zamýšlený rozvrh
|
|
725
|
+
- data modely
|
|
726
|
+
- [EnapoGidMappingRepository](../src/integration-engine/enapo/repositories/EnapoGidMappingRepository.ts) — `savingType: "insertOrUpdate"` nad `enapo_gid_mapping` (PK `place_id` + `gid`)
|
|
727
|
+
- funkce
|
|
728
|
+
- **upsert-only, nic se nemaže**: nové mapování se vloží, existující aktualizuje, chybějící v tabulce zůstane. Opakovaný běh nad stejnými vstupy dá stejný výsledek bez duplicit
|
|
729
|
+
- **robustní vůči nečistým datům**: producenta k čistému exportu nedonutíme, takže co task neumí zpracovat, přeskočí a **zaloguje warning** se souhrnem (počet a pár vzorků na každý důvod: `missing_required`, `place_id_too_long`, `invalid_date`, `contradicting_pair`, `unresolvable_commodity`). Jeden vadný řádek běh neshodí — délkové a datové limity chrání typované cílové sloupce před hodnotou, která by jinak shodila celou dávku
|
|
730
|
+
- **voda a teplo nejsou chyba, jen mimo rozsah**: filtrují se jako první a pouze se spočítají. Jejich počet jde do `logger.info`, `logger.warn` zůstává vyhrazený pro skutečné defekty, aby velký očekávaný objem nepřehlušil pár reálných anomálií
|
|
731
|
+
- zápis běží v jedné transakci po dávkách 5 000 řádků — jeden `INSERT` nad celým exportem by narazil na limit 65535 bind parametrů Postgresu. Dedup před zápisem je nutný i technicky (`insertOrUpdate` nesmí v jedné dávce zasáhnout stejný PK dvakrát); selhání kterékoli dávky rolluje celý běh
|
|
732
|
+
- join na měření: `enapo_gid_mapping.place_id` je kód EAN/EIC (`enapo_measurements.place_id` je naopak interní PPAS place id — viz [Sémantika `var`](#sémantika-var-v-enapo_measurements-ověřeno-proti-produkci-2026-08-13))
|
|
733
|
+
- unit testy
|
|
734
|
+
- [EnapoGidMappingSyncTask.test.ts](../test/integration-engine/enapo/task/EnapoGidMappingSyncTask.test.ts)
|
|
735
|
+
- [EnapoGidMappingNormalizer.test.ts](../test/integration-engine/enapo/helpers/EnapoGidMappingNormalizer.test.ts)
|
|
736
|
+
|
|
703
737
|
#### _Sémantika `var` v `enapo_measurements` (ověřeno proti produkci 2026-08-13)_
|
|
704
738
|
|
|
705
739
|
Sloupec `value` míchá **kumulativní stavy měřidla** a **rozdíly za interval**, rozlišené pouze podle `(source, var)`. Agregace bez tohoto rozlišení dává nesmysly.
|
|
@@ -988,16 +1022,23 @@ Přehled endpointů a parametru `accessLimit`:
|
|
|
988
1022
|
- `UNION ALL` větev pro OM známá pouze z Porsenny (e-manažer): hlavní měřidla (`level = main`) z `enapo_porsenna_devices`, jejichž `identifier` není namapován na daný GID v `enapo_gid_mapping`; `commodity` z typu měřidla (v reálných datech existují pouze `electricity_meter` / `gasometer` / `heat_meter` / `water_meter`), `id_type` odvozen přímo z komodity (elektřina → ean, plyn → eic, teplo a voda → `om` — standardní identifikátor nemají), `link_source = 'porsenna'`, `is_active` z `disabled_at`
|
|
989
1023
|
- `v_enapo_building_porsenna_devices` — měřidla Porsenny s budovou (`enapo_porsenna_devices` × `enapo_porsenna_buildings` přes `(source, building_id)`); slouží pro obohacení OM o blok `porsenna` (měřidlo + podružná měřidla) a pro blok `energy_management` na úrovni budovy; spotřeby Porsenny blok nenese — jdou přes `mv_enapo_om_consumption` do `consumption_history` daného OM, kde mají navíc pokrytí a počty přispěvatelů
|
|
990
1024
|
- `enapo_ppas_distribution_invoice_device` / `_price`, `enapo_ppas_commercial_invoice_device` / `_price` — dotahované podle id faktury a filtrované podle `place_id` instalace (jedna faktura může účtovat více OM, bez filtru by se řádky mísily)
|
|
1025
|
+
- `enapo_budova_spotrebic` — kotelny (zdroje vytápění) budovy; jednorázový snapshot, dotahovaný přes `GetByGid` podle normalizovaného GIDu
|
|
991
1026
|
- mapovací tabulka `enapo_gid_mapping`
|
|
992
|
-
- vlastní kontrakt modulu;
|
|
993
|
-
-
|
|
1027
|
+
- vlastní kontrakt modulu; plněná denně synchronizačním taskem [EnapoGidMappingSyncTask](#task-enapogidmappingsynctask) z CSV exportu (synchronizované řádky mají `link_source = 'manual_entry'`)
|
|
1028
|
+
- PK je (`place_id`, `gid`); mock data (`link_source = 'mock'`) z ruční přípravy zůstávají, dokud je sync nepřepíše — synchronizovaný řádek pro stejné (`place_id`, `gid`) mock řádek přepíše
|
|
994
1029
|
- sloupec `is_active` v pohledu je odvozený z `valid_to` (NULL nebo v budoucnu = aktivní); expirovaná mapování se vracejí s příznakem
|
|
1030
|
+
- tabulka kotelen `enapo_budova_spotrebic`
|
|
1031
|
+
- jednorázový snapshot od energetického specialisty (`Zdroje_vytápění.xlsx`, list `odbmisto_budova_spotrebic`) — **bez cronu, bez živé integrace**; obsah se mění jen zopakováním importu podle [kotelny_priprava_dat.md](./eno/kotelny_priprava_dat.md)
|
|
1032
|
+
- PK je (`id_bud_spotrebic`, `gid`)
|
|
1033
|
+
- vazba na `eno_budova` je soft (bez FK) — snapshot není vázaný na životní cyklus ENO ingestu a GID chybějící v ENO nesmí import zablokovat; takové kotelny se v API prostě neprojeví
|
|
995
1034
|
- struktura odpovědi
|
|
996
1035
|
- komoditně specifická data jsou vnořená pod klíči `electricity` / `gas` u každého OM; v odpovědi je pouze klíč odpovídající poli `commodity`, ostatní jsou zcela vynechány
|
|
997
1036
|
- detail existuje, pokud pro GID máme jakákoli data — zná ho alespoň jeden zdroj (`eno_budova`, `eno_adresa`, `enapo_gid_mapping`, nebo Porsenna): pokud GID není v `eno_budova`, ale má adresy, namapovaná OM či měřidla, vrací se 200 s `building: null` a chybějící části jako `null` / prázdná pole (cca 29 % GIDů z mapování nemá záznam v ENO); 404 pouze pokud GID nezná žádný zdroj
|
|
998
1037
|
- OM známé z obou zdrojů (mapování i Porsenna) je v odpovědi jednou — data Porsenny jsou vnořená jako blok `porsenna` v příslušném komoditním klíči; duplicitní záznamy nevznikají
|
|
999
1038
|
- `monthly` řada zdroje, který reportuje jen roční agregáty (Porsenna), je prázdné pole, ne 36 `null` položek — spina samých `null` by tvrdila, že zdroj měsíce zná a nemá je, což pro zdroj bez měsíční granularity neplatí; roční data jsou v `yearly`
|
|
1000
1039
|
- budoucí komodity (teplo, voda) se přidají jako nové klíče bez breaking change
|
|
1040
|
+
- `heat_sources` — kotelny budovy: `count`, `total_rated_output_kw` a pole `sources` řazené podle výkonu (nejsilnější první). API pole jsou anglicky (`appliance_name`, `note`, `rated_output_kw`, `fuel_code`, `is_monitored`, `appliance_type`, `operating_since`) a mapují se z českých sloupců snapshotu (`nazev_spotrebic`, `poznamka`, `vykon_kw`, `palivo`, `monitoring`, `nazev_typ_bud_spotrebic`, `provoz_od`) v `EnoBuildingDetailTransformation`. Budova bez kotelen vrací `count: 0` a prázdné `sources`, ne chybějící klíč
|
|
1041
|
+
- `total_rated_output_kw` sčítá jen kotelny s uvedeným výkonem
|
|
1001
1042
|
- `name` / `address` na nejvyšší úrovni: `building` je pro cca 29 % GIDů `null`, ale kartu je pořád potřeba nadepsat — název se proto řeší stejným fallbackem jako ve vyhledávání (`eno_budova.nazev` → název budovy z Porsenny → `null`), adresa jako první popsaná `eno_adresa` (řazené hlavní adresou napřed) → adresa z Porsenny → `null`. Kdyby to zůstalo na klientech, každý si řetězec poskládá jinak.
|
|
1002
1043
|
- provenience agregátů (aby klient nemusel sečtené číslo vydávat za přesné)
|
|
1003
1044
|
- `points_total` / `points_with_data` u každého období: kolik OM do něj přispělo a kolik z nich mělo hodnotu. Rozdíl proti `points` celé řady je to, co odliší „budova spotřebovala míň“ od „chybí jedno OM“; u prázdného období spiny jsou obě nuly, nikdy `null`
|
package/docs/openapi-output.yaml
CHANGED
|
@@ -151,40 +151,7 @@ paths:
|
|
|
151
151
|
summary: ENO building detail with consumption points (OM) and technical parameters
|
|
152
152
|
description: >-
|
|
153
153
|
Returns the ENO building (eno_budova) identified by GID together with its addresses and all
|
|
154
|
-
consumption points mapped to it.
|
|
155
|
-
`electricity`/`gas`/`heat`/`water` keys of each consumption point; only the key matching the
|
|
156
|
-
`commodity` field is present, the others are omitted entirely.
|
|
157
|
-
|
|
158
|
-
Consumption points come from two independent sources: the energobroker mapping (EAN/EIC,
|
|
159
|
-
enriched with PRE metadata and PPAS invoices) and Porsenna e-manazer devices
|
|
160
|
-
(`link_source: porsenna`) — heat and water meters, plus any EAN/EIC the mapping lacks.
|
|
161
|
-
An OM known to both sources is returned once, with the Porsenna data nested as a `porsenna`
|
|
162
|
-
sub-block (device, sub-meters, yearly consumption) inside its commodity block. Buildings
|
|
163
|
-
tracked in Porsenna also carry an `energy_management` summary.
|
|
164
|
-
|
|
165
|
-
The endpoint returns whatever data exists for the GID: if there is any building record,
|
|
166
|
-
address, or consumption point, the response is 200 with the missing parts as `null` or
|
|
167
|
-
empty arrays (e.g. `building: null` when only consumption points or addresses are known).
|
|
168
|
-
404 is returned only when no source holds any data for the GID.
|
|
169
|
-
|
|
170
|
-
`consumption_history` carries monthly and yearly consumption per commodity, at building
|
|
171
|
-
level and again per consumption point. Sources are returned **in parallel** rather than
|
|
172
|
-
merged into one canonical series: metered readings and invoiced amounts legitimately
|
|
173
|
-
disagree, and which one a client wants depends on what it shows. `is_metered`
|
|
174
|
-
distinguishes them.
|
|
175
|
-
|
|
176
|
-
Coverage differs sharply by commodity and is a property of the data, not of the endpoint.
|
|
177
|
-
Gas has roughly three years of invoice history for about three quarters of its points.
|
|
178
|
-
Electricity is metered-only and starts in 2025, covering under a tenth of its points, so
|
|
179
|
-
most months come back `null`. Heat and water exist only as Porsenna yearly figures.
|
|
180
|
-
`measurement_data_from` and the per-series `data_from` say when data actually begins, so a
|
|
181
|
-
run of leading `null`s is explicable rather than looking like a fault.
|
|
182
|
-
|
|
183
|
-
Every aggregate carries its own provenance, so a client never has to present a summed
|
|
184
|
-
figure as if it were exact: `points_total`/`points_with_data` say how many consumption
|
|
185
|
-
points stand behind a period, `invoice_ids` names the billing documents an allocated
|
|
186
|
-
period came from, `coverage_count`/`expected_count` mark a partial period, and a point's
|
|
187
|
-
`shared_with` names the other buildings its meters also serve.
|
|
154
|
+
consumption points mapped to it.
|
|
188
155
|
parameters:
|
|
189
156
|
- in: path
|
|
190
157
|
name: gid
|
|
@@ -1001,6 +968,73 @@ components:
|
|
|
1001
968
|
type: array
|
|
1002
969
|
items:
|
|
1003
970
|
$ref: "#/components/schemas/EnergeticsEnoConsumptionPoint"
|
|
971
|
+
heat_sources:
|
|
972
|
+
$ref: "#/components/schemas/EnergeticsEnoHeatSources"
|
|
973
|
+
EnergeticsEnoHeatSources:
|
|
974
|
+
type: object
|
|
975
|
+
description: >-
|
|
976
|
+
Heat sources (boiler rooms) recorded for the building.
|
|
977
|
+
properties:
|
|
978
|
+
count:
|
|
979
|
+
type: integer
|
|
980
|
+
description: Number of heat sources recorded for this building.
|
|
981
|
+
example: 3
|
|
982
|
+
total_rated_output_kw:
|
|
983
|
+
type: number
|
|
984
|
+
nullable: true
|
|
985
|
+
description: >-
|
|
986
|
+
Sum of `rated_output_kw` over the building's heat sources
|
|
987
|
+
example: 650.5
|
|
988
|
+
sources:
|
|
989
|
+
type: array
|
|
990
|
+
description: >-
|
|
991
|
+
The individual appliances, strongest rated output first. .
|
|
992
|
+
items:
|
|
993
|
+
type: object
|
|
994
|
+
properties:
|
|
995
|
+
appliance_name:
|
|
996
|
+
type: string
|
|
997
|
+
nullable: true
|
|
998
|
+
description: >-
|
|
999
|
+
Free-text appliance name from the snapshot.
|
|
1000
|
+
example: 2x gas boiler Viessmann Vitocrossal 200
|
|
1001
|
+
note:
|
|
1002
|
+
type: string
|
|
1003
|
+
nullable: true
|
|
1004
|
+
description: Note from the snapshot, e.g. where the figure came from.
|
|
1005
|
+
example: boiler nameplates
|
|
1006
|
+
rated_output_kw:
|
|
1007
|
+
type: number
|
|
1008
|
+
nullable: true
|
|
1009
|
+
description: >-
|
|
1010
|
+
Rated output in kW. `0` means the snapshot states no output
|
|
1011
|
+
example: 530
|
|
1012
|
+
fuel_code:
|
|
1013
|
+
type: integer
|
|
1014
|
+
nullable: true
|
|
1015
|
+
description: >-
|
|
1016
|
+
Fuel/energy-source code
|
|
1017
|
+
example: 2
|
|
1018
|
+
is_monitored:
|
|
1019
|
+
type: boolean
|
|
1020
|
+
nullable: true
|
|
1021
|
+
description: >-
|
|
1022
|
+
Monitoring flag from the source system. Its exact meaning in the source
|
|
1023
|
+
is not documented in the snapshot.
|
|
1024
|
+
example: false
|
|
1025
|
+
appliance_type:
|
|
1026
|
+
type: string
|
|
1027
|
+
nullable: true
|
|
1028
|
+
description: >-
|
|
1029
|
+
Appliance type from the source system. Every row of the current snapshot
|
|
1030
|
+
is `boiler`.
|
|
1031
|
+
example: boiler
|
|
1032
|
+
operating_since:
|
|
1033
|
+
type: string
|
|
1034
|
+
format: date
|
|
1035
|
+
nullable: true
|
|
1036
|
+
description: Date the appliance has been in operation since.
|
|
1037
|
+
example: 2025-01-01
|
|
1004
1038
|
EnergeticsEnoConsumptionEntry:
|
|
1005
1039
|
type: object
|
|
1006
1040
|
description: >-
|
|
@@ -1019,9 +1053,7 @@ components:
|
|
|
1019
1053
|
nullable: true
|
|
1020
1054
|
description: >-
|
|
1021
1055
|
Comparable energy. For gas this is derived (normometers_nm3 * combustion_heat) and is
|
|
1022
|
-
null whenever the conversion inputs are missing;
|
|
1023
|
-
A yearly entry withholds it unless every contributing month has one, so it can never
|
|
1024
|
-
imply a conversion rate that did not exist.
|
|
1056
|
+
null whenever the conversion inputs are missing;
|
|
1025
1057
|
coverage_count:
|
|
1026
1058
|
type: number
|
|
1027
1059
|
description: Days of the period carrying data.
|